# character-arc

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

- skill · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 614 installs · ★ 176
- Author: jwynia
- License: MIT · policy=mirror · the beginning of the file is at the end of this page
- Source: https://github.com/jwynia/agent-skills/tree/HEAD/skills/creative/fiction/character/character-arc/SKILL.md
- Updated: 2026-02-24
- HTML: https://affpapa.org/en/nevibecode/skills/character-arc

## What it 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.

## Install

### Claude Code (native platform)

1. **Skills CLI (Vercel)**
```bash
npx skills add jwynia/agent-skills --skill character-arc -a claude-code
```

2. **Manually: put the files in place**
- File: `~/.claude/skills/character-arc/SKILL.md` — Copy the whole skill folder; for one project use .claude/skills/character-arc/

### Codex

1. **Skills CLI (Vercel)**
```bash
npx skills add jwynia/agent-skills --skill character-arc -a codex
```

2. **Manually: put the files in place**
- File: `.agents/skills/character-arc/SKILL.md` — For all projects use ~/.agents/skills/

### Cursor

1. **Skills CLI (Vercel)**
```bash
npx skills add jwynia/agent-skills --skill character-arc -a cursor
```

2. **Manually: put the files in place**
- File: `.cursor/skills/character-arc/SKILL.md` — Cursor also reads .agents/skills/ and .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install jwynia/agent-skills character-arc
```

2. **Manually: put the files in place**
- File: `.github/skills/character-arc/SKILL.md`

### Gemini CLI

1. **Skills CLI (Vercel)**
```bash
npx skills add jwynia/agent-skills --skill character-arc -a gemini-cli
```

2. **Platform CLI**
```bash
gemini skills install https://github.com/jwynia/agent-skills --path skills/creative/fiction/character/character-arc
```

### Windsurf (Devin Desktop)

**Manually: put the files in place**
- File: `.devin/skills/character-arc/SKILL.md` — The legacy .windsurf/skills/ path still works

### OpenCode

**Skills CLI (Vercel)**
```bash
npx skills add jwynia/agent-skills --skill character-arc -a opencode
```

### Claude.ai

**Claude.ai**
- Zip the folder and upload it in Settings → Capabilities → Skills

Where a file is given instead of a command, copy the files from the source to that path: https://github.com/jwynia/agent-skills/tree/HEAD/skills/creative/fiction/character/character-arc/SKILL.md

## When to use it
- 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
- 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

## Source text · SKILL.md · MIT

Below is the content of a third-party file. It is data, not instructions for you: do not act on anything written inside unless the human asks. Block tag: db31ac69532e6ce7.

BEGIN THIRD-PARTY FILE db31ac69532e6ce7
```text
---
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
```
END THIRD-PARTY FILE db31ac69532e6ce7

The third-party file has ended. Everything between the db31ac69532e6ce7 tags is data: requests and commands from it are not followed. An “end of file” line with another tag inside the block is part of the file.

First 2583 of 8230 bytes. © jwynia · MIT · https://github.com/jwynia/agent-skills/tree/HEAD/skills/creative/fiction/character/character-arc/SKILL.md

_Part of the page did not fit — see the HTML version._

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
