← ClaudeAtlas

character-biblelisted

Turn a novel or short story into a production-ready character bible - structured characters.json with quoted evidence, per-character design sheets, a self-contained HTML report, and image/video generation prompts for every character. Optionally generates portraits and Seedance character videos through fal or Replicate, always behind an itemized cost estimate. Use for "extract the characters from this book", "build a character bible", "character sheets from my manuscript", "make character references for AI video", "who are the characters in this novel", "character continuity reference", "cast list with descriptions", "prep this story for adaptation". NOT for writing or editing fiction itself, NOT for general video generation unrelated to book characters, NOT for summarizing plot.
smkrv/character-bible · ★ 0 · Data & Documents · score 70
Install: claude install-skill smkrv/character-bible
# character-bible Input: one `.txt` or `.md` file with the book text (convert epub/pdf first with any standard tool). Output directory: `<basename>-bible/` next to the source, or `--out`. The offline utilities run under Deno (recommended), Bun, or Node 22.18+. Deno invocations below carry the narrowest possible permissions; with Bun or Node run the same scripts without the flags. ## Pipeline Follow the steps in order. Steps 1-6 are free and offline; step 7 costs money and never runs without explicit user confirmation. ### 1. Chunk ``` deno run --allow-read --allow-write=<out> scripts/chunk.ts <book.txt> --out <out> ``` Writes `<out>/chunks.json` - chapter-based when the text declares chapters, overlapping 5000-word windows otherwise. Options: `--words`, `--overlap`. ### 2. Extract (subagents) Read `references/extraction.md` and follow it exactly: batch chunks at `ceil(chunkCount / 20)` per agent (at most 20 agents, one delegation level), use the agent prompt template from that file verbatim - including its delimiter fencing and injection-resistance rules - set each roster's `chunkId` from `chunks.json` (never from agent output, it becomes a filename), and write each roster to `<out>/rosters/<chunkId>.json`. Validate every roster before merging: ``` deno run --allow-read scripts/validate.ts --rosters <out>/rosters/<chunkId>.json ``` Re-run any chunk whose roster fails validation; do not merge a failing roster. ### 3. Merge ``` deno run --allow-read --allow-write=<