Skip to main content
skill CX Codex

writing-principles — Claude Code skill: fiction writing principles

A skill that names what fiction readers want and how LLM training damages it. Useful when drafting, critiquing, or when a passage reads flat.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add haowjy/creative-writing-skills --skill writing-principles -a claude-code
Open on GitHub

What writing-principles does

The skill lays out five reader reward channels: transportation into the story world, sentence-level aesthetic pleasure, social simulation of characters as minds, flow, and curiosity with prediction. Each one gets a note on what protects it and how the model's usual habits — explaining, resolving, clarifying — break it.

Two diagnostic sections carry the argument: Trust the Reader and Economy. The first says readers reconstruct emotion from behavior and infer motive from action; the second asks whether an element does more than one job. A separate note covers punctuation: readers increasingly read em dashes as a sign of AI prose, so sentence breaks, commas, colons or dialogue beats are the default advice.

The skill loads on top of /llm-writing and does not stand alone — the file says so up front. Deeper write-ups sit in resources/failure-modes.md and resources/citations.md. For the how-to-write side, look at /creative-writing-craft and /creative-writing-modes; this one is the layer that tells you which channel broke.

What it helps with

  • diagnose why a finished scene reads flat
  • find which reader reward channel a passage dropped
  • strip the model's habit of explaining everything
  • check prose punctuation for AI residue
  • separate what a character knows from what the author knows

Example prompts for the agent

  • load writing-principles and tell me why this scene loses tension
  • run this chapter through the reward channels and name the broken one
  • check the dialogue for lines that explain what the reader already got

How to install writing-principles

1Skills CLI (Vercel)

npx skills add haowjy/creative-writing-skills --skill writing-principles -a claude-code

2Manually: put the files in place

~/.claude/skills/writing-principles/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/writing-principles/

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

Questions about writing-principles

How do I install writing-principles in Claude?

Run npx skills add haowjy/creative-writing-skills --skill writing-principles -a claude-code. The skill file lands at ~/.claude/skills/writing-principles/SKILL.md.

What does writing-principles do?

It names what fiction readers want from a text and the specific ways LLM training works against that. You load it as a diagnostic layer while drafting or critiquing.

What does the skill need to work?

/llm-writing has to be loaded first — writing-principles adds the fiction-specific layer on top of it. Per-pattern breakdowns live in resources/failure-modes.md.

Source text

SKILL.md · Apache-2.0
---
name: writing-principles
type: principle
description: >
  What fiction readers want (reader reward channels) and the specific ways LLM training damages them. Load when drafting prose, critiquing, or diagnosing why a passage feels flat.
---

# Writing Principles

Load `/llm-writing` if it isn't already loaded. This skill adds the
fiction-specific layer.

## Trust the Reader

The reader is an active collaborator. They reconstruct emotions from behavior,
infer motives from action, hold tension across scenes, fill gaps the text
leaves open, and make assumptions about what's coming next. That work is where
the reward lives: reconstruction, inference, anticipation.

Your training pulls in the opposite direction. The helpfulness instinct wants
to explain, resolve, clarify, and complete. In fiction, every one of those
impulses can damage the reading experience by doing work the reader wanted to
do themselves. The specific failure modes below are all forms of this: not
trusting the reader to interpret an emotion, hold an ambiguity, follow
subtext, or tolerate unresolved tension.

Trust doesn't mean obscurity. Readers also need coherent narrative, stable
geography, and enough access to model characters. The discipline is knowing
when to leave space and when to orient.

## Economy

Every element does more than one thing. A line of dialogue advances plot
AND reveals character. A sensory detail grounds the scene AND shows who the
POV character is. A transition compresses time AND carries an emotional
beat. Single-purpose prose makes fiction go flat: description that only
describes, dialogue that only informs, interiority that only labels.

Economy isn't minimalism. Dense, lyrical prose can be economical when every
phrase carries weight. Sparse prose can be wasteful when it takes ten short
sentences to do what one image could do. The measure is whether removing
the element would cost the reader something.

The LLM pull is toward completeness: covering every beat, naming every
emotion, resolving every ambiguity. Economy is the counter-discipline:
what can you leave out and still have the scene work? What's the reader
already doing for you?

## Reader Reward Channels

Readers enjoy fiction through overlapping reward channels. Good prose protects
the relevant channels at once; damaging one damages the reading experience.

- **Transportation**: entering the story world. Protected by coherent
  narrative progression, consistent POV, concrete sensory grounding. Consistent
  POV means writing from inside the character's knowledge state: what have
  they experienced, what do they actually know right now, what would they
  notice and miss? The full story is in your context window; the character
  only has what they've lived through. Separate those.
- **Aesthetic**: sentence-level pleasure. Protected by variety in rhythm,
  word choice, sentence shape, and punctuation. Style is a reward channel, not decoration.
- **Social simulation**: modeling characters as minds. Protected by access
  through behavior and interiority, distinct voices, emotion the reader
  interprets rather than being told.
- **Flow**: challenge-skill fit and smooth processing. Protected by pacing that
  matches the scene's work and sentences that support comprehension without
  making the reading trivial.
- **Curiosity / prediction reward**: wanting to know what happens, what a clue
  means, what a character will choose, or whether an expectation will be
  confirmed. Protected by information gaps, uncertainty, setup/payoff, suspense,
  and withheld implications that the reader can actively model.

The channels compose: optimizing one at the expense of others fails.
Over-explaining breaks social simulation. Under-explaining breaks
transportation. Generic style breaks aesthetic pleasure. Impenetrable style
breaks flow.

## Punctuation Tells

Readers increasingly associate em dashes with AI-generated prose. Default to
punctuation that leaves less visible AI residue: sentence breaks, commas,
colons, semicolons, parentheses, or dialogue beats. Rewrite the sentence
around the actual relationship between clauses instead of substituting a
hyphen. Use dashes only when a project style file or author instruction makes
them part of the voice. When a line needs interruption, prefer the project's
documented interruption pattern and keep it consistent.

## Applying the Principles

This skill is the diagnostic layer: it names what readers want and how
training damages it. When a passage feels off and you can't name why, check
the reward channels — which one broke? — then see `resources/failure-modes.md`
for common patterns and fix heuristics.

The craft skills carry the execution. `/creative-writing-craft` has the
how-to-write guidance: prose immersion (`resources/prose-writing.md`), scene
mechanics (`resources/scene-construction.md`), and style analysis
(`resources/style-analysis.md`). `/creative-writing-modes` has the production
modes for putting prose on the page.

## Resources

- [`resources/failure-modes.md`](resources/failure-modes.md): per-pattern
  deep dives with examples and fix heuristics.
- [`resources/citations.md`](resources/citations.md): research backing for
  the reader-reward model and documented failure modes.

© haowjy · Apache-2.0 · haowjy/creative-writing-skills

Similar skills

Everything for Writing and docs →

From the same set22

creative-writing-craft Reference craft skill for fiction writing. It guides the model through prose techniques, scene mechanics, style analysis, and genre requirements. CX Codex +1 787installs writing-staffing A dispatch reference for building a writing team: which extra skills to attach to each agent, what to point at in spawn prompts, and when to run parallel lanes. CX Codex +1 723installs story-review Evaluates existing prose across five editorial levels, from plot structure down to copyediting. Useful when a draft needs diagnostic critique instead of automated rewrites. CX Codex +1 672installs story-planning Structures creative direction, outlines, and narrative architecture before prose drafting begins. Loads modular planning resources for pre-page story decisions. CX Codex +1 664installs project-setup One-time setup wizard for fiction projects. It interviews you, collects writing samples, and creates AGENTS.md with project conventions. CX Codex +1 544installs character-sim Shifts the assistant into an in-character dialogue mode based on emotional state and knowledge limits. Useful for voice discovery and scene pressure tests. CX Codex +1 530installs creative-writing-modes A skill that adds five prose modes to your writing pass: fresh draft, revision, bridge, alternate take and line polish. Useful once structure is settled and the page needs words. CX Codex +1 534installs kb-management Organizes story knowledge bases in kb/ with rules for canon, vocab, and characters. It helps keep lore and continuity consistent across writing agents. CX Codex +1 527installs

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