First-time setup (accounts, keys, files to fill in): Setup.md.
The fiction voice model and every book project are USER data the skill reads at run time; the skill body holds none of it.
| What |
Where |
| Corpus config (Gutenberg ids, authors, anchor) |
<configRoot>/LIFEOS/USER/CUSTOMIZATIONS/SKILLS/WriteStory/Corpus/Corpus.json |
| Per-story corpus files + manifest |
…/WriteStory/Corpus/<slug>.md, …/WriteStory/Corpus/Corpus.md |
| Bands |
…/WriteStory/Corpus/VoiceProfile.json (from Tools/BuildVoiceProfile.ts) and …/WriteStory/Corpus/StoryProfile.json (fiction axes, from StoryGate.ts --build) |
| Exemplars |
…/WriteStory/Corpus/Exemplars.md — verbatim passages, loaded before drafting and by the judge |
| History (optional) |
…/WriteStory/History.md — the install's own incident specifics behind generic lessons here, read on demand |
Build order on a fresh install:
bun ~/.claude/skills/WriteStory/Tools/BuildFictionCorpus.ts --config <Corpus.json> --fetch
bun ~/.claude/skills/WriteStory/Tools/BuildVoiceProfile.ts --manifest <Corpus.md> --out <VoiceProfile.json>
bun ~/.claude/skills/WriteStory/Tools/StoryGate.ts --build --manifest <Corpus.md> --voice <VoiceProfile.json> --out <StoryProfile.json>
Then, per draft: StoryGate.ts <draft> (deterministic bands plus the narrator's aside) and StoryJudge.ts <draft> (the verdict is a blind voice line-up of the draft's narrative paragraphs against corpus paragraphs, a judge asked which carries the stronger voice and craft, shortfall rate at or under 0.6 to pass; the six-mechanism diagnosis it prints is advisory, and the --detect model-detection rate is a diagnostic that never decides a pass). Every tool exits 2 with the build instruction when the model is absent.
Everything above lives under <configRoot>/LIFEOS/USER/CUSTOMIZATIONS/SKILLS/WriteStory/ (configRoot is $CLAUDE_CONFIG_DIR when set, else ~/.claude). When that directory holds PREFERENCES.md, its default genre, aesthetic and voice apply.
Each book is a project under LIFEOS/USER/CUSTOMIZATIONS/SKILLS/WriteStory/projects/<book-slug>/:
interview.md — the saved interview results (the spine, the layers, what's confirmed)
ISA.md — the Story Bible as a project ISA: the living plan that tracks what's done and what's left, growing across sessions