writing-principles
What fiction readers want (reader reward channels) and the specific ways LLM training damages them.
Skill by haowjy
Chalk Labs
Need help deploying writing-principles?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/haowjy-writing-principles-6cccc8
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: ml, writing
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions: not checked yet.
What's inside
- Skill name
writing-principles- 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.
- License
- Apache-2.0
- Instructions
- 101 lines in SKILL.md · view on GitHub
Files (3)
- SKILL.md
- citations.md · resources/
- failure-modes.md · resources/
SKILL.md (first lines)
# Writing Principles ## 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. `/creative-writing-craft` carries the execution: the production modes (`resources/prose-modes.md`), prose immersion (`resources/prose-writing.md`), scene mechanics (`resources/scene-construction.md`), and style analysis (`resources/style-analysis.md`). ## Resources - [`resources/failure-modes.md`](resources/failure-modes.md): per-pattern deep dives with examples and fix heuristics. - [`resources/antipatterns.md`](resources/antipatterns.md): the patterns that mark prose as AI-written, sorted by evidence quality; writers check a draft against it before handing it back, critics hunt for them. - [`resources/citations.md`](resources/citations.md): research backing for the reader-reward model and documented failure modes.
From haowjy/creative-writing-skills, Apache-2.0.
More from haowjy/creative-writing-skills
- 0.809score
qi-layer
haowjy
Use when writing or maintaining AGENTS.md, .context/CONTEXT.md, or a Claude-specific CLAUDE.md: keep intent docs minimal and load-bearing.
SkillAFreshness: A★ 535Claude Code +9 - 0.809score
zoom-out
haowjy
Use when orienting in an unfamiliar area — fans out exploration across structure, knowledge, and history, then synthesizes one orientation map.
SkillAFreshness: A★ 535Claude Code +9 - 0.809score
knowledge-layers
haowjy
Use when deciding where knowledge goes or reading/writing durable docs: AGENTS.md, .context/, KB, docs/, and work directories.
SkillAFreshness: A★ 535Claude Code +9 - 0.809score
kb-management
haowjy
Maintaining the story knowledge base: creating, updating, and organizing wiki-style reference pages in kb/.
SkillAFreshness: A★ 535Claude Code +9 - 0.807score
grill-with-docs
haowjy
Use when challenging a plan — grills the author against documented decisions and sharpens terminology.
SkillAFreshness: A★ 535Claude Code +9 - 0.805score
creative-writing-muse
haowjy
Load when no subagents are available and one agent must plan, draft, critique, research, and capture memory by switching stances.
SkillAFreshness: A★ 535Claude Code +9 - 0.805score
story-review
haowjy
Review work after prose exists: editorial review, craft critique, continuity/voice review, copyediting, proofreading, and synthesis of reader-sim signal.
SkillAFreshness: A★ 535Claude Code +9 - 0.805score
writing-staffing
haowjy
Dispatch reference for composing writing teams.
SkillAFreshness: A★ 535Claude Code +9 - 0.805score
reader-sim
haowjy
Read as a specified first-time reader persona and report the felt experience.
SkillAFreshness: A★ 535Claude Code +9 - 0.805score
project-setup
haowjy
One-time project setup for creative writing.
SkillAFreshness: A★ 535Claude Code +9 - 0.805score
information-hierarchy
haowjy
Load for large human-facing outputs: reports, docs, multi-section explanations, artifacts.
SkillAFreshness: A★ 535Claude Code +9 - 0.805score
shared-dao
haowjy
Shared vocabulary for creative writing projects.
SkillAFreshness: A★ 535Claude Code +9
Signals
- Stars
- 535
- Forks
- 74
- Open issues
- 3
- Last commit (this folder)
- Jun 28, 2026 (4 months ago)
- Last release
- Oct 23, 2026 (8 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
Same skill elsewhere
Copies of this SKILL.md published by others; search shows only one of them.
More from haowjy
- 0.809score
zoom-out
haowjy
Use when orienting in an unfamiliar area — fans out exploration across structure, knowledge, and history, then synthesizes one orientation map.
SkillAFreshness: A★ 535Claude Code +9 - 0.809score
qi-layer
haowjy
Use when writing or maintaining AGENTS.md, .context/CONTEXT.md, or a Claude-specific CLAUDE.md: keep intent docs minimal and load-bearing.
SkillAFreshness: A★ 535Claude Code +9 - 0.809score
knowledge-layers
haowjy
Use when deciding where knowledge goes or reading/writing durable docs: AGENTS.md, .context/, KB, docs/, and work directories.
SkillAFreshness: A★ 535Claude Code +9 - 0.809score
kb-management
haowjy
Maintaining the story knowledge base: creating, updating, and organizing wiki-style reference pages in kb/.
SkillAFreshness: A★ 535Claude Code +9 - 0.807score
grill-with-docs
haowjy
Use when challenging a plan — grills the author against documented decisions and sharpens terminology.
SkillAFreshness: A★ 535Claude Code +9 - 0.805score
creative-research
haowjy
Load when a story needs factual grounding the writer doesn't have: historical detail, cultural texture, domain accuracy, or how other authors handled similar…
SkillAFreshness: A★ 535Claude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get writing-principles running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
writing-principles skill. Agent Mart. https://agentmart.dev/skills/haowjy-writing-principles-6cccc8 (last updated 2026-10-24)