danjdewhurst/story-skills

voice-style

This skill should be used when the user asks to "create a style sheet", "style guide", "house style", "keep the voice consistent", "voice drift", "British or American spelling", "character voices", "lint the prose", "prose check", "filter words", "said-book…

ソースを見る
リポジトリの原文

見出し、例、コード、表、リンク、参照画像を含む原文を表示しています。

Voice & Style

Overview

Record the book's voice and surface conventions in style-sheet.md, then enforce them. The style sheet is the copyeditor's record: dialect and spelling choices, capitalisation, hyphenation, numbers, dialogue punctuation, a one-line voice summary per major speaker, and a watch list. Its frontmatter is machine-readable, and story prose counts violations and prose tics in every chapter. Use this skill so voice stays the same across chapters, drafting sessions, and agents.

Prerequisites

A story project with story.md in the root. story init scaffolds style-sheet.md; older projects can add it with story init "<title>" --dir . --force, which only adds missing files, or by copying references/style-sheet-guide.md's frontmatter block by hand.

Language

Read language in story.md (a BCP 47 tag; a missing field means en). The style sheet records the conventions of that language, and the voice description is written about prose in it. dialect: british and american and the built-in word lists behind filter words, -ly adverbs, and said-bookisms are English. For another language, set dialect: unspecified, record spelling variants as preferred entries, and settle dialogue and punctuation with ../line-editing/references/language-conventions.md. When story prose or story voices reports a check skipped for the book's language, do that pass by reading (see references/prose-checks.md, Other languages).

When to Use

  • Starting a project, once the first chapter or a writing sample exists
  • Before drafting when voice has drifted between chapters or sessions
  • When a copyedit pass needs a style decision recorded (the copyedit itself belongs to the line-editing skill, which reads this file)
  • When the user wants a mechanical prose check before sharing a draft
  • NOT for character personality or arc (use character-management)
  • NOT for scene-level craft such as deep POV or subtext (use scene-craft)
  • NOT for the line-by-line prose pass itself (line edit, copyedit, read-aloud, proof): use the line-editing skill, which reads this style sheet and runs these checks

Workflow

1. Build or update the style sheet

  1. Read story.md (genre, POV, tense, Tone & Style), style-sheet.md,

and two or three drafted chapters or a sample the user supplies. If there is no prose yet, ask the user for a paragraph that sounds right or three published books whose voice is close.

  1. Fill the sections in style-sheet.md following

references/style-sheet-guide.md. Record decisions the prose already makes; do not invent new ones silently. When the draft is inconsistent (both grey and gray), ask the user which form wins.

  1. Set the frontmatter:
  • dialect: british | american | unspecified (unspecified for a

book not in English)

  • one preferred entry per variant: use is the house form, avoid

the form to flag. Repeat entries for several variants of one word.

  • watch-words: words or phrases this book overuses
  • allow-words: built-in filter words, adverbs, or dialect spellings

this book uses on purpose (a proper noun like Harbor Street in a British book)

  • samples: files or folders of the author's own prose that sound right,

relative to the project folder: an earlier book (../book-one) or chapters the author has approved. Ask the user which; never list prose the agent drafted and the author has not approved, or the profile measures the agent's voice. With at least 2,000 words of narration, story prose compares each chapter with the samples instead of fixed limits

  1. Character Voices entries summarise each character file's Voice & Speech

Patterns section in one line and link to it. Record words a speaker reaches for in the character file's voice-words list and words they would never say in voice-avoid, so story voices can check them. The character file is canon; if the two disagree, fix the style sheet, or ask the user before changing the character.

2. Draft and revise against it

  • chapter-writing and discovery-drafting read style-sheet.md before

drafting. Write in the recorded voice, use the house spellings, and give each speaker the recorded patterns.

  • When a new convention appears mid-draft (a new invented term, a number

style), add it to the style sheet in the same change.

3. Run the prose check

shell
story prose .

The report lists, per chapter: sentence count, average and longest length, and spread; filter words and -ly adverbs per 1,000 narration words (dialogue is excluded); plain and said-bookism dialogue tags; words echoed within 30 words; watch-word counts; and avoided spellings. Across the manuscript it lists repeated 4-word phrases and character first names that readers could confuse. Warnings are advisory and the command exits 0 unless a file cannot be read. See references/prose-checks.md for what each count means and how to respond.

When the style sheet lists samples, the report opens with a profile of the author's own prose, and chapters that drift from it warn (prose-baseline-sentences, -paragraphs, -dialogue, -filter-words, -adverbs) in place of the fixed filter-word and adverb limits. Treat a drift as a prompt to reread the chapter, not a rule. Tell the user where it drifts and ask whether it is deliberate: a fight scene runs short, a quiet chapter long. Never rewrite a chapter just to move a number back inside its tolerance.

To lint a passage that is not in a chapter file yet (a draft scene, a proposed rewrite), pipe it in with - in place of the path: story prose - < draft-scene.md. Run it from the project folder, or add --path <project>, so the style sheet applies. story voices - does the same for dialogue.

4. Run the dialogue voice check

shell
story voices .

story voices attributes a quoted line (straight "...", curly “...”, or British ‘...’) when the narration names the speaker next to a speech verb. A name before the verb wins over a name after it: in "...," Sera told Kael the line is Sera's, and said Kael gives it to Kael. With no speech-verb tag, a paragraph whose narration names exactly one character (an action beat) gives the line to that character. Names and aliases match case-sensitively as proper nouns, and titles are skipped for the given name (Lord Maren also matches Maren). Pronoun tags (she said, said he) are never attributed, and a paragraph with one is left unattributed even when its narration names another character. Only a pronoun and verb right after a closing quote or right before an opening one count as a tag; She said nothing more elsewhere is narration and does not block an action beat. In close third person the POV character is often under-counted; when that matters, name the tags in a sample chapter and rerun. Per character it reports lines, words, mean sentence length, contraction, question, and exclamation rates, and signature words used more by them than by others. It warns when a character says one of their voice-avoid words, when two characters with five or more lines each have close fingerprints ("X and Y may sound alike: similar sentence length, contractions, questions, and exclamations"), and when a character with five or more lines never says a voice-words entry. Unattributed dialogue is not counted, so a low line count may mean few named tags rather than few lines.

When two voices blur, differentiate them on more than one axis (sentence length, contractions, vocabulary, what they ask about) and see dialogue-subtext.md in the scene-craft skill for the tag-swap test.

Attribution and contraction rates are built around English quote marks, speech verbs, and contractions. For a book in another language, if the report attributes few or none of the lines the book has, or skips the check for the language, compare the voices by reading: the levers are the same (sentence length, vocabulary, forms of address, what each avoids saying).

5. Act on the findings

  1. Fix avoided spellings everywhere; they are always errors of consistency.
  2. Treat rates, echoes, and repeated phrases as prompts to reread the

passage, not orders. Keep a flagged word when it is the right word, and add it to allow-words when the book uses it deliberately.

  1. For uniform-rhythm warnings, revise sentence length by intent (short for

impact, long for flow), not by formula.

  1. For similar names, ask the user before renaming; check replacements with

story names "<Candidate>", then use story rename character <id> "<New Name>" so references follow.

  1. For story voices warnings, revise the dialogue or update the

character's voice-words/voice-avoid when the draft has found a better voice; ask the user before changing canon.

  1. Present a summary: what changed, what was kept on purpose, and any

style-sheet updates. For a full line edit, copyedit, or proof, hand off to the line-editing skill.

CLI Maintenance

Use the Story CLI when it is available. If story is not installed, use bun run story -- from the Story Skills repository checkout or the bundled fallback node ../story-maintenance/scripts/story.js with the same arguments, resolving the path relative to this skill folder. If no CLI is available, apply the checks in references/prose-checks.md by reading.

After editing the style sheet or revising prose:

shell
story validate .
story prose .
story voices .
story wordcount . --write
story links .

Reference Files

  • `references/style-sheet-guide.md` - What goes in each style-sheet section, the frontmatter format, and how to extract a voice description from sample prose
  • `references/prose-checks.md` - What each story prose count measures, its threshold, when to keep the flagged text, and what to do for a book not in English
  • `../line-editing/references/language-conventions.md` - Dialogue and punctuation conventions by language, for the style sheet's Dialogue And Punctuation section
同じリポジトリから

関連する Skills

すべての Skills
danjdewhurst
コミュニティ

discovery-drafting

This skill should be used when the user asks about "pantsing", "discovery write", "write without an outline", "discovery draft", "write into the dark", "story kernel", "reconcile a chapter", "dead end", "drafting sprint", "writing cadence", or wants to draft a story by discovery with retrospective bible reconciliation. NOT for outline-first drafting, or mysteries and other clue-dependent genres where setup must come before payoff (use chapter-writing), or a reverse outline of an existing linear

導入数
1
GitHub Stars
313
更新日
10月14日
danjdewhurst
コミュニティ

editorial-review

This skill should be used when the user asks for a "sensitivity reader", "authenticity reader", "cultural review", "is this portrayal okay", "real people in my novel", "defamation", "can I use song lyrics", "epigraph permission", "permissions", "quote permission", "fair use", "AI disclosure", "do I need to disclose AI", "send to my editor", "editorial round", "Word file for my editor", "editor review copy", "co-author", "collaborate on a book", "shared world", "back up my book", "does this echo

導入数
1
GitHub Stars
313
更新日
10月14日
danjdewhurst
コミュニティ

story-maintenance

This skill should be used when the user asks to "validate", "reindex", "repair registries", "check links", "run the continuity, pacing, clue, voice, or name checks", "count words", "summarize a story project", "import an existing manuscript", "export a manuscript", "run a build", "generate a diagram", "record revision-pass status with story passes", "run the story CLI", or wants deterministic maintenance on a Story Skills markdown project. It runs the CLI and reads its output; NOT for judging a

導入数
1
GitHub Stars
313
更新日
10月14日
danjdewhurst
コミュニティ

submission

This skill should be used when the user asks to "write a query letter", "query", "querying", "pitch", "blurb", "back cover copy", "jacket copy", "comp titles", "comparable titles", "synopsis for agents", "submit to agents", "submission tracker", "self-publishing description", "retailer description", "ready to query", "submission readiness check", "submit a short story", "magazine submission", "short-fiction markets", "simultaneous submission", "reprint rights", "order a short story collection",

導入数
1
GitHub Stars
313
更新日
10月14日