soul-create
Generate a SOUL.md identity file from source material, interactive prompts, or an existing voice profile
Best use case
soul-create is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
It is a strong fit for teams already working in Codex.
Generate a SOUL.md identity file from source material, interactive prompts, or an existing voice profile
Teams using soul-create should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/soul-create/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How soul-create Compares
| Feature / Agent | soul-create | Standard Approach |
|---|---|---|
| Platform Support | Codex | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Generate a SOUL.md identity file from source material, interactive prompts, or an existing voice profile
Which AI agents support this skill?
This skill is designed for Codex.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
Related Guides
Cursor vs Codex for AI Workflows
Compare Cursor and Codex for AI coding workflows, repository assistance, debugging, refactoring, and reusable developer skills.
AI Agents for Coding
Browse AI agent skills for coding, debugging, testing, refactoring, code review, and developer workflows across Claude, Cursor, and Codex.
AI Agents for Marketing
Discover AI agents for marketing workflows, from SEO and content production to campaign research, outreach, and analytics.
SKILL.md Source
# soul-create Generate a SOUL.md identity file from source material or interactive prompts. ## Triggers Alternate expressions and non-obvious activations (primary phrases are matched automatically from the skill description): - "SOUL.md" / "project identity" → project soul/identity definition - "write the soul file" → soul document creation ## Behavior When triggered, this skill generates a SOUL.md file following the community template structure. It can work from: 1. **Source material** — writing samples, blog posts, tweets, essays 2. **Interactive prompts** — guided questions to define identity 3. **Existing voice profile** — bridge from AIWG voice profile to SOUL.md 4. **Natural language description** — "a skeptical engineer who values simplicity" ### Generation Process 1. **Gather identity signals** from input: - Worldview patterns (what does this person believe?) - Opinion patterns (what specific takes emerge?) - Vocabulary fingerprint (signature terms, avoided terms) - Rhetorical style (how are arguments structured?) - Boundaries (what does this person refuse to do?) - Contradictions (where are they inconsistent?) 2. **Map to SOUL.md sections**: | Section | Source Signal | |---------|-------------| | Who I Am | Self-description, background, context | | Worldview | Recurring beliefs across samples | | Opinions | Specific takes organized by domain | | Interests | Topics that generate depth/enthusiasm | | Current Focus | Active projects, recent themes | | Influences | Referenced thinkers, cited works | | Vocabulary | Terms with specific personal meanings | | Tensions | Contradictory beliefs (a feature, not a bug) | | Boundaries | What triggers refusal or pushback | | Pet Peeves | What generates strong negative reactions | 3. **Validate quality**: - Opinions must be specific enough to be falsifiable - Vocabulary section must have actual terms, not categories - Boundaries must be concrete, not platitudes - Result should pass the prediction test: "could someone predict takes on new topics from this file?" 4. **Output** a complete SOUL.md file ### Output Location - Default: `./SOUL.md` (project root) - Alternative: `./.aiwg/SOUL.md` - Per-agent: `./.claude/agents/<name>.soul.md` ### Context Budget Generated SOUL.md should target: - Project soul: <5K tokens (~3,750 words) - Agent soul: <2K tokens (~1,500 words) ## Usage Examples ### From Natural Language Description ``` User: "Create a soul for a senior engineer who is skeptical of frameworks, values simplicity, thinks most best practices are cargo cult, and has strong opinions about testing" Output: SOUL.md with: - Worldview: simplicity > cleverness, question defaults - Opinions: specific takes on testing, frameworks, complexity - Vocabulary: "accidental complexity", "cargo cult", "yak shaving" - Boundaries: won't add abstraction without clear benefit - Pet Peeves: "enterprise architecture", unnecessary indirection ``` ### From Existing Voice Profile ``` User: "Create a soul from our technical-authority voice profile" Process: 1. Read voice-framework/voices/templates/technical-authority.yaml 2. Extract tone dimensions, vocabulary, perspective 3. Expand into full identity (voice → who generates that voice) 4. Generate complementary sections (worldview, opinions, boundaries) Output: SOUL.md that produces content matching the voice profile ``` ### From Writing Samples ``` User: "Build a soul from these blog posts: ./samples/*.md" Process: 1. Analyze writing patterns across samples 2. Extract recurring themes, opinions, vocabulary 3. Identify contradictions and tensions 4. Map to SOUL.md sections 5. Generate calibration examples (good-outputs.md) Output: SOUL.md + examples/good-outputs.md ``` ### Interactive Mode ``` User: "Create a soul interactively" Questions: Q1: What's your background? What shaped your thinking? Q2: What do you believe that most people disagree with? Q3: What are your strongest opinions in your domain? Q4: What terms do you use in specific ways? Q5: Where are you contradictory or inconsistent? Q6: What will you never do or say? Q7: What triggers your pushback? Q8: Who influenced your thinking, and what did you take from each? ``` ## Integration ### Voice Framework Bridge If a voice profile exists for the same context, this skill: - Uses voice dimensions as initial calibration - Ensures SOUL.md and voice profile are complementary - Offers to generate a compatible voice profile if none exists ### After Creation After generating SOUL.md, prompt: ``` SOUL.md created at ./SOUL.md (~2,400 tokens) Next steps: /soul-validate Check quality against best practices /soul-enable Wire into session context /soul-enhance Improve vague sections (future) ``` ## References - @$AIWG_ROOT/agentic/code/addons/voice-framework/skills/voice-create/SKILL.md — Voice creation (parallel pattern) - @$AIWG_ROOT/agentic/code/addons/aiwg-utils/commands/soul-enable.md — Enable enforcement - @$AIWG_ROOT/docs/soul-md-guide.md — SOUL.md integration guide - #437 — SOUL.md compatibility issue
Related Skills
voice-to-soul
Generate a SOUL.md from an existing AIWG voice profile
voice-create
Generate custom voice profiles from natural language descriptions by mapping tone, formality, and domain to voice dimensions
soul-validate
Validate a SOUL.md file against community best practices and quality criteria
soul-to-voice
Generate an AIWG voice profile from an existing SOUL.md identity file
soul-status
Show SOUL.md enforcement state across all installed providers with quality check
soul-enhance
Improve an existing SOUL.md by identifying vague sections, suggesting missing content, and generating calibration examples
soul-enable
Enable soul enforcement by wiring SOUL.md into platform context files and deploying the enforcement rule
soul-disable
Disable soul enforcement without deleting SOUL.md or soul files
soul-blend
Merge multiple SOUL.md files into a composite persona for team-level agents or multi-perspective characters
soul-apply
Apply a SOUL.md identity to content generation, incorporating worldview, opinions, and character
provenance-create
Create a W3C PROV-compliant provenance record for an artifact
issue-create
Create a new ticket/issue with configurable backend (Gitea, GitHub, Jira, Linear, or local files)