Skip to main content
skill CX Codex

character-arc — Claude Code skill: character transformation arcs

Designs a character's inner journey and diagnoses why a transformation in the final act does not land.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add jwynia/agent-skills --skill character-arc -a claude-code
Open on GitHub

What character-arc does

The skill treats the arc as a line separate from plot: plot is what happens, the arc is who the character becomes. It walks through three types — positive change, tragedy, and flat arc, where the character already holds the truth and changes the world instead of being changed.

The bulk of it is diagnostic. If the character ends the story as the same person, the skill pushes you to name the false belief that has to die and trace it back to a wound in the backstory. It also checks whether want and need diverge, whether the character resists the change, and whether the ending shows the new self through action rather than the author's summary. A beat table maps arc stages onto story structure, and a list of anti-patterns covers things like the instant epiphany and the mentor who hands over the truth.

Output goes to a file, so a session can be picked up later. Before any work the skill looks for context/output-config.md and asks where to save if it finds no entry for itself. One caveat: it will not pick the lie for you, and it does not insist every character needs a full arc.

What it helps with

  • name the false belief a character holds and tie it to a backstory wound
  • separate an external goal from what the character actually needs
  • add beats where the character digs in and refuses to change
  • check that the changed self shows up in choices, not narration
  • tell a tragedy apart from a flat arc and pick the right one

Example prompts for the agent

  • work through my protagonist's arc — she wins at the end but it feels hollow
  • help me pin down the antagonist's false belief and his descent
  • check where my character resists the truth in this draft

How to install character-arc

1Skills CLI (Vercel)

npx skills add jwynia/agent-skills --skill character-arc -a claude-code

2Manually: put the files in place

~/.claude/skills/character-arc/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/character-arc/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about character-arc

How do I install character-arc in Claude?

Run npx skills add jwynia/agent-skills --skill character-arc -a claude-code. The skill lands at ~/.claude/skills/character-arc/SKILL.md.

What does character-arc do?

It helps you design a character's internal change and troubleshoot arcs that feel unearned or abrupt. It covers positive, negative, and flat arcs.

Where does the skill save its output?

It looks for context/output-config.md in the project and writes wherever you point it. With no such file it asks for a location and remembers the choice in .character-arc-output.md.

Source text

SKILL.md · MIT
---
name: character-arc
description: Design and troubleshoot character transformation arcs. Use when characters feel static, when transformation feels unearned or abrupt, when you can't articulate what false belief needs to die, or when characters serve plot without having internal journeys. Covers positive, negative, and flat arcs.
license: MIT
metadata:
  author: jwynia
  version: "1.0"
  type: diagnostic
  mode: diagnostic+assistive
  domain: fiction
---

# Character Arc: Transformation Skill

You help writers design internal character journeys and diagnose why transformations aren't working.

## Core Principle

**A character arc is the inner journey—the transformation from one sort of person to a different sort under pressure.** The external plot creates pressure; the arc is how the character changes.

The arc is not the plot. The plot is what happens. The arc is who the character becomes.

## Arc Types

### Positive Change Arc
Character believes something false. Story forces confrontation. They embrace truth and transform.

**Components:**
1. **Lie** — False belief about self or world (formed by backstory wound)
2. **Want** — What they think they need (driven by the lie)
3. **Need** — What would actually fulfill them (invisible at start)
4. **Catalyst** — Story forces confrontation with the lie
5. **Struggle** — Character resists change (change is hard)
6. **Truth** — Character accepts reality, abandons the lie
7. **New Self** — Character operates from transformed perspective

### Negative Change Arc (Tragedy)
Character has potential but becomes worse through choices or circumstances.

**Components:**
1. **Potential** — Opportunity for growth
2. **Flaw** — Weakness that could be overcome
3. **Temptation** — Easy path that feeds the flaw
4. **Descent** — Choices that compound the flaw
5. **Point of No Return** — Redemption opportunity rejected
6. **Consequence** — Flaw destroys what character valued

### Flat Arc
Character already knows the truth. They test and prove it, changing the world rather than being changed.

**Components:**
1. **Truth** — Character holds correct belief
2. **World in Conflict** — Environment challenges that truth
3. **Testing** — Character's truth pressured but holds
4. **Influence** — Steadfastness changes others
5. **Vindication** — Truth proven correct

## The Diagnostic

When transformation isn't working, ask:

### No Transformation
"Is the character different at the end?"
- If essentially the same person, there's no arc
- Fix: Identify what false belief needs to die

### Unearned Transformation
"Did the story force this change?"
- Character changes but events didn't demand it
- Fix: Story events must directly challenge the lie

### Abrupt Change
"Is the transformation gradual?"
- Character flips suddenly without struggle
- Fix: Add resistance beats—characters fight change

### Unclear Lie
"What does the character believe that's false?"
- If you can't articulate the lie, arc lacks foundation
- Fix: Define lie explicitly, trace to backstory

### Want/Need Alignment
"Are want and need different?"
- If character wants exactly what they need, no tension
- Fix: Create gap between external goal and internal need

### Missing Struggle
"Does the character resist the truth?"
- Real change involves fighting against transformation
- Fix: Add scenes where character doubles down on lie

## Arc Maps to Structure

| Story Beat | Arc Beat |
|------------|----------|
| Setup | Lie established, Want activated |
| First Plot Point | Character commits, still believing lie |
| Rising Action | Want pursued, lie reinforced |
| Midpoint | Mirror moment, glimpse of truth |
| Complications | Lie vs. truth in conflict |
| Dark Night | Lie fully fails, crisis |
| Climax | Truth embraced (or rejected in tragedy) |
| Resolution | New self demonstrated |

## Common Lies

- "I'm not worthy of love"
- "Power is the only protection"
- "Trust leads to betrayal"
- "My value comes from achievement"
- "The world is fundamentally hostile"
- "I'm not capable/worthy"
- "My wound defines me"
- "I don't need anyone"

## What You Do

1. **Ask about the lie** — What false belief does the character hold?
2. **Find the ghost** — What backstory wound created this lie?
3. **Separate want from need** — What do they pursue vs. actually require?
4. **Map transformation** — Where are the key beats?
5. **Check for resistance** — Where does the character fight change?
6. **Verify the ending** — Is the new self demonstrated through action?

## What You Don't Do

- Choose the lie for them
- Prescribe a specific arc type
- Add transformation where it doesn't serve the story
- Insist every character needs a full arc

## Example Interaction

**Writer:** "My protagonist defeats the villain but something feels hollow."

**Your approach:**
1. Ask: "What's different about them at the end vs. the beginning?"
2. If nothing: "They won the plot but didn't have an arc"
3. Probe: "What did they believe at the start that wasn't true?"
4. Dig: "What would have happened if they'd learned nothing?"
5. Guide: "The victory needs to require them becoming someone new—otherwise it's just problem-solving"
6. Connect: "What would they have to give up believing in order to win authentically?"

## Anti-Patterns to Watch

### The Informed Arc
Author tells us character changed but scenes don't show it.
Fix: Show internal battle through external choices.

### The Magic Mentor
Change happens because mentor told them truth, not discovery.
Fix: Mentor points direction; character walks path.

### The Trauma = Transformation Fallacy
Terrible things happened, therefore they're different.
Fix: Trauma creates conditions; arc is what they do with it.

### The Perfect Protagonist
No meaningful flaw. No lie = no arc.
Fix: Even admirable characters need blind spots.

### The Instant Epiphany
Character "gets it" without buildup.
Fix: Plant seeds earlier; truth should feel inevitable in retrospect.

## Output Persistence

This skill writes primary output to files so work persists across sessions.

### Output Discovery

**Before doing any other work:**

1. Check for `context/output-config.md` in the project
2. If found, look for this skill's entry
3. If not found or no entry for this skill, **ask the user first**:
   - "Where should I save output from this character-arc session?"
   - Suggest: `explorations/character/` or a sensible location for this project
4. Store the user's preference:
   - In `context/output-config.md` if context network exists
   - In `.character-arc-output.md` at project root otherwise

### Primary Output

For this skill, persist:
- **Arc type identified** - positive, negative, or flat
- **Arc components** - lie, want, need, ghost, truth (as applicable)
- **Catalyst and turning points** - key story beats for transformation
- **Anti-pattern warnings** - issues identified and fixes recommended

### Conversation vs. File

| Goes to File | Stays in Conversation |
|--------------|----------------------|
| Arc structure and components | Clarifying questions |
| Lie/truth articulation | Discussion of options |
| Key transformation beats | Writer's exploration |
| Anti-pattern diagnosis | Real-time feedback |

### File Naming

Pattern: `{character-name}-arc-{date}.md`
Example: `protagonist-arc-2025-01-15.md`

## Integration

### Inbound (feeds into character-arc)
| Skill | What it provides |
|-------|------------------|
| story-sense | State 4 diagnosis: "Characters Without Dimension" |
| story-idea-generator | Initial character concept from genre-first process |

### Outbound (character-arc enables)
| Skill | What character-arc provides |
|-------|-------------|
| dialogue | Character voice distinctiveness from arc position |
| scene-sequencing | Character goals for scene-level conflict |
| endings | Arc completion for satisfying resolution |

### Complementary
| Skill | Relationship |
|-------|--------------|
| cliche-transcendence | Avoids default character types and transformations |
| worldbuilding | Character backgrounds fit world logic |
| underdog-unit | Ensemble dynamics across multiple arcs |
| sensitivity-check | Arc representations avoid harmful stereotypes |

© jwynia · MIT · jwynia/agent-skills

Similar skills

Everything for Writing and docs →

From the same set77

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor