Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
210 changes: 59 additions & 151 deletions skills/core/character-architect/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,195 +1,103 @@
# Character Architect Skill
---
name: character-architect
description: "Develops psychologically coherent characters with want/need/lie profiles, distinct voice fingerprints, a scored relationship matrix, and image-generation-ready visual descriptions. Produces CHARACTER_SHEETS, RELATIONSHIP_MAP.json, and CAST_LIST.md. Use when LOGLINE_LOCK.md is approved and characters need to be developed before story structure."
---

## Purpose
Develop deep, psychologically coherent characters with distinct voices, trackable relationships, and image-generation-ready visual descriptions.
# Character Architect

## Trigger
LOGLINE_LOCK.md exists and is approved.
Develop deep, psychologically coherent characters with distinct voices, trackable relationships, and image-generation-ready visual descriptions. Each character drives conflict through their psychology, not just their plot function.

## Inputs Required
- `CREATIVE_BRIEF.md`
- `POWER_STACK.md`
- `LOGLINE_LOCK.md`
## Inputs

## Outputs Produced
- `CHARACTER_SHEETS/{NAME}.md` - Individual character profiles
- `RELATIONSHIP_MAP.json` - Machine-readable relationship matrix
- `CAST_LIST.md` - Summary of all characters
- `CREATIVE_BRIEF.md` β€” genre, protagonist, key relationship, aesthetic keywords
- `POWER_STACK.md` β€” story structure framework
- `LOGLINE_LOCK.md` β€” approved logline with protagonist flaw and stakes

## Process

### Step 1: Identify Required Characters
## Outputs

From CREATIVE_BRIEF.md and LOGLINE_LOCK.md, identify:
- `CHARACTER_SHEETS/{NAME}.md` β€” individual character profiles (identity, psychology, visual, voice, arc)
- `RELATIONSHIP_MAP.json` β€” machine-readable relationship matrix with 5 axes per pair
- `CAST_LIST.md` β€” summary of all characters with roles and tiers

**Tier 1 - Must Have (Pilot)**:
- Protagonist
- Key relationship character (from brief)
- Primary antagonist or obstacle character
## Process

**Tier 2 - Series Regulars**:
- Supporting cast needed for series engine
- Additional relationship dynamics
- Typically 3-5 additional characters
### Step 1: Identify Required Characters

**Tier 3 - Recurring**:
- Characters who appear in multiple episodes
- World-building characters
- Define as needed
Extract character requirements from `CREATIVE_BRIEF.md` and `LOGLINE_LOCK.md`:

### Step 2: Build Protagonist First
| Tier | Scope | Characters |
|------|-------|------------|
| 1 β€” Must Have (Pilot) | Protagonist, key relationship character, primary antagonist/obstacle | 3 |
| 2 β€” Series Regulars | Supporting cast for series engine + relationship dynamics | 3–5 |
| 3 β€” Recurring | World-building, multi-episode characters | As needed |

Complete the full CHARACTER_SHEET template for the protagonist.
### Step 2: Build Protagonist

**Critical Sections**:
Complete the full CHARACTER_SHEET template with these critical sections:

#### Psychology Deep Dive
1. **Want**: What they consciously pursue
2. **Need**: What they actually require (unconscious)
3. **Lie**: The false belief that blocks them
4. **Wound**: The origin event of the lie
5. **Ghost**: How the wound manifests daily
6. **Virtue with Cost**: Their strength that also causes problems
**Psychology Deep Dive:**
1. **Want** β€” what they consciously pursue
2. **Need** β€” what they actually require (unconscious)
3. **Lie** β€” the false belief that blocks them
4. **Wound** β€” the origin event of the lie
5. **Ghost** β€” how the wound manifests daily
6. **Virtue with Cost** β€” their strength that also causes problems

#### Relationship Wiring
- How they attach to others
- What triggers their defenses
- What they never talk about
- How they show (not say) love
**Relationship Wiring:** How they attach, what triggers defenses, what they never discuss, how they show (not say) love.

#### Voice Profile
- Sentence structure patterns
- Vocabulary level and domains
- Metaphor sources
- Sarcasm/humor patterns
- What topics they avoid
- Speech patterns under stress
**Voice Profile:** Sentence length patterns, vocabulary domains, metaphor sources, sarcasm/humor levels, taboo topics, stress speech patterns.

### Step 3: Build Key Relationship Character

The character identified as "who they need most" in the brief.

**Special Focus**:
- Why they are uniquely suited to the protagonist
- What they provide that no one else can
- Their own want/need/lie (independent arc)
- The "bond mechanism" - what draws them together
- The "pressure mechanism" - what creates conflict
The person identified as "who they need most" in the brief. Define their independent want/need/lie arc, plus the **bond mechanism** (what draws them together) and **pressure mechanism** (what creates conflict).

### Step 4: Build Remaining Cast

For each additional character:

1. **Role Check**: What story function do they serve?
- Ally
- Antagonist
- Mentor
- Threshold Guardian
- Shapeshifter
- Trickster
- Herald

2. **Differentiation Check**: Are they distinct from existing characters in:
- Voice
- Visual appearance
- Worldview
- Relationship to protagonist
For each additional character, verify:

3. **Arc Potential**: What change is available to them over the season?
1. **Role check** β€” story function (ally, antagonist, mentor, threshold guardian, shapeshifter, trickster, herald)
2. **Differentiation check** β€” distinct from existing characters in voice, visual, worldview, and relationship to protagonist
3. **Arc potential** β€” what change is available to them over the season

### Step 5: Generate Relationship Map

Create `RELATIONSHIP_MAP.json` with:
Create `RELATIONSHIP_MAP.json` with scored axes for every character pair:

For each character pair:
- **Trust** (-5 to +5): Belief in reliability/honesty
- **Respect** (-5 to +5): Admiration for competence/character
- **Dependency** (-5 to +5): Need for the other
- **Intimacy** (-5 to +5): Emotional closeness
- **Moral Alignment** (-5 to +5): Shared values

Plus:
- **Bond Mechanism**: What connects them
- **Pressure Mechanism**: What creates conflict
- **Private Language**: Unique terms/references
- **Arc Direction**: Where the relationship is heading
- **Trust** (βˆ’5 to +5), **Respect** (βˆ’5 to +5), **Dependency** (βˆ’5 to +5), **Intimacy** (βˆ’5 to +5), **Moral Alignment** (βˆ’5 to +5)
- Plus: bond mechanism, pressure mechanism, private language, arc direction

### Step 6: Visual Description Optimization

For each character, ensure the visual description is:

**Prompt-Ready**:
- Specific physical features (not vague)
- Age-appropriate markers
- Distinctive silhouette elements
- Signature clothing/accessories
- Color associations
Ensure each character's visual description is prompt-ready for image generation:

**Consistency-Focused**:
- Locked visual anchors (never change)
- Allowed variations (outfit changes, etc.)
- Negative prompts (what to avoid)
- Specific physical features (not vague β€” avoid "attractive woman")
- Distinctive silhouette elements, signature clothing/accessories, color associations
- Locked visual anchors that never change + allowed variations
- Negative prompts (what to avoid generating)

### Step 7: Voice Differentiation Test

Read sample dialogue for each character. They should be distinguishable WITHOUT dialogue tags.

Test: Write the same line ("We need to talk about what happened.") in each character's voice.

If voices are too similar:
- Adjust sentence length patterns
- Change vocabulary domains
- Modify directness levels
- Add unique verbal tics
Test: write the same line ("We need to talk about what happened.") in each character's voice. Characters must be distinguishable WITHOUT dialogue tags. If voices overlap, adjust sentence length, vocabulary domain, directness level, or add verbal tics.

### Step 8: Contradiction Check

Verify each character:
Verify each major character:

- [ ] Has at least one surprising trait (against type)
- [ ] Causes at least one problem in the pilot (not just reactive)
- [ ] Has one relationship they're actively failing
- [ ] Has a secret (even if never revealed)
- [ ] Wants something in every scene they're in
- [ ] Wants something in every scene they appear in

## Quality Gate: Gate 2

**Pass Criteria**:
- [ ] Every major character has complete want/need/lie
- [ ] Every major character causes at least one pilot problem
- [ ] Every major character has one surprising competency
- [ ] Every major character has one failing relationship
- [ ] Visual descriptions are prompt-ready
- [ ] Voices are distinguishable in blind test

**Fail Action**:
- Identify specific gaps
- Return to relevant step
- Do not proceed to story-architect until passed

## Character Sheet Sections

1. **Identity**: Name, age, role, archetype
2. **Psychology**: Want/need/lie/wound/virtue
3. **Relationships**: How they connect to others
4. **Visual**: Physical description, wardrobe, props
5. **Voice**: Speech patterns, vocabulary, quirks
6. **Arc**: Where they start, where they're going
7. **Secrets**: What they hide
8. **Casting Notes**: Actor comparisons (optional)

## Common Pitfalls

### Avoid:
- Characters who only react, never initiate
- Visual descriptions that are generic ("attractive woman")
- Voices that all sound like the writer
- Relationships without conflict potential
- Backstory that doesn't affect present behavior
- Perfect heroes or pure villains

### Ensure:
- Every character believes they're the hero of their own story
- Antagonists have understandable (not sympathetic) logic
**Pass**: Every major character has complete want/need/lie, causes a pilot problem, has a surprising competency, has a failing relationship, has prompt-ready visuals, and passes voice differentiation.

**Fail**: Identify specific gaps, return to the relevant step. Do not proceed to story-architect until this gate passes.

## Notes

- Every character believes they are the hero of their own story β€” antagonists have understandable logic
- Supporting characters have lives beyond the protagonist
- Physical descriptions include something memorable
- Voice profiles include what they WON'T say
- Voice profiles must include what the character WON'T say, not just what they will
- Visual descriptions feed directly into character-reference-generator β€” specificity here saves regeneration cycles later
101 changes: 48 additions & 53 deletions skills/core/story-intake/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,93 +1,88 @@
# Story Intake Skill
---
name: story-intake
description: "Conducts a structured 8-10 question creative interview to generate CREATIVE_BRIEF.md and POWER_STACK.md, establishing genre, protagonist psychology, key relationships, series engine, theme, tone, and visual aesthetic. Use when starting a new story project and no creative brief exists yet."
---

## Purpose
Conduct the initial creative interview (8-10 questions) and generate foundational story documents that drive all downstream development.
# Story Intake

## Trigger
User initiates a new story project.
Conduct the initial creative interview (8–10 questions) and generate foundational story documents that drive all downstream skill execution. Sparse user input enables autonomous development across the full pipeline.

## Inputs Required
- User responses to interview questions
## Inputs

## Outputs Produced
- `CREATIVE_BRIEF.md` - Comprehensive story overview
- `POWER_STACK.md` - Story structure framework selection
- User responses to the interview questions below

## Outputs

- `CREATIVE_BRIEF.md` β€” comprehensive story overview with genre, characters, relationships, tone, and visual keywords
- `POWER_STACK.md` β€” selected story structure framework tailored to the genre

## Process

### Step 1: Conduct Creative Interview

Ask ONLY these questions, one at a time. Wait for each response before proceeding:

1. **Genre & Comparisons**: "What genre is your show? Name 2 comparable shows you want to evoke, and 1 anti-comp (a show in the genre you want to avoid resembling)."
Ask exactly these 8 questions, one at a time. Wait for each response before proceeding.

1. **Genre & Comparisons**: "What genre is your show? Name 2 comparable shows you want to evoke, and 1 anti-comp (a show you want to avoid resembling)."
2. **Protagonist Duality**: "Who is your protagonist? What are they exceptionally good at, AND what personal flaw ruins their closest relationships?"

3. **Key Relationship**: "Who does the protagonist need most in their life, and why do they push that person away?"

4. **Series Engine**: "What's the 'engine' that generates new episode problems each week? (e.g., new cases, new clients, new missions)"

5. **Theme Question**: "What's the central thematic question your show explores? (One sentence, framed as a question)"

6. **Tone Guardrails**: "What are your tone boundaries? (Content rating, comedy level 1-10, violence level 1-10)"

7. **Setting & Aesthetic**: "Describe your setting and visual aesthetic in 5-10 keywords."

6. **Tone Guardrails**: "What are your tone boundaries? (Content rating, comedy level 1–10, violence level 1–10)"
7. **Setting & Aesthetic**: "Describe your setting and visual aesthetic in 5–10 keywords."
8. **Season Endpoint**: "By the season finale, what must be irrevocably different about your protagonist's world or relationships?"

**Optional Deep-Dive Questions** (only if answers above are thin):
**Optional deep-dive** (only if core answers are thin):
- "What's a secret your protagonist keeps from everyone?"
- "What would make your protagonist walk away from everything they've built?"

Do NOT ask more than 10 questions total. Do NOT ask about plot details β€” those come from downstream skills.

### Step 2: Synthesize Creative Brief

Using the interview responses, generate `CREATIVE_BRIEF.md` following the template.
Generate `CREATIVE_BRIEF.md` from the interview responses. Key synthesis tasks:

Key synthesis tasks:
- Extract implicit genre conventions from comps
- Identify the core dramatic engine
- Map the protagonist's want vs. need
- Define the relationship stakes
- Establish visual/tonal identity
- Extract implicit genre conventions from the comp and anti-comp choices
- Identify the core dramatic engine that sustains episodic storytelling
- Map the protagonist's conscious want vs. unconscious need
- Define the central relationship stakes and pressure points
- Establish visual and tonal identity using the aesthetic keywords (critical for image generation downstream)

### Step 3: Select Power Stack

Based on genre and story type, recommend the appropriate story structure framework in `POWER_STACK.md`.
Based on genre and story type, generate `POWER_STACK.md` with the recommended structure framework.

Default stack for relationship-driven drama:
1. 4-6 Act TV Structure

1. 4–6 Act TV Structure (pacing, act-outs)
2. Want/Need/Lie character engine
3. Relationship Arc Matrix (5 axes)
4. Scene Design: Goal/Obstacle/Turn/Cost
3. Relationship Arc Matrix (trust, respect, dependency, intimacy, moral alignment)
4. Scene Design: Goal / Obstacle / Turn / Cost
5. Dialogue System: Subtext + Status + Private Language
6. Theme Argument
6. Theme Argument (central question for coherence)

Adjust the stack for non-drama genres (e.g., procedural, comedy, thriller) based on the interview responses.

### Step 4: Validate Completeness

Before completing, verify:
- [ ] Genre conventions are clear
Before completing, verify all criteria are met:

- [ ] Genre conventions are clear from comps
- [ ] Protagonist has both strength AND flaw
- [ ] At least one key relationship is defined
- [ ] Series engine can generate episodes
- [ ] Theme is expressible as a question
- [ ] Tone boundaries are set
- [ ] Visual keywords exist for image generation
- [ ] Season arc has clear endpoint
- [ ] At least one key relationship is defined with bond and pressure mechanisms
- [ ] Series engine can generate distinct episode problems
- [ ] Theme is expressible as a single question
- [ ] Tone boundaries are set (rating, comedy, violence)
- [ ] Visual/aesthetic keywords exist for image generation
- [ ] Season arc has a clear, irrevocable endpoint

## Quality Gate: Gate 0

**Pass Criteria**:
- All 8 core questions answered
- No contradictions in responses
- Sufficient detail for autonomous development
**Pass**: All 8 core questions answered, no contradictions, sufficient detail for autonomous development.

**Fail Action**:
- Ask ONE clarifying question (maximum)
- If still insufficient, note gaps in CREATIVE_BRIEF.md for later resolution
**Fail**: Ask ONE clarifying question maximum. If still insufficient, note gaps in `CREATIVE_BRIEF.md` for later resolution β€” do not block the pipeline.

## Notes

- Do NOT ask more than 10 questions total
- Do NOT ask about plot details - those come later
- DO capture visual/aesthetic keywords - critical for image generation
- The goal is SPARSE input that enables AUTONOMOUS development
- The goal is sparse input that enables autonomous development β€” resist over-questioning
- Visual/aesthetic keywords captured here directly feed character-reference-generator and location-reference-generator downstream
- This skill is the entry point for the entire pipeline; all other skills depend on its outputs
Loading