novel-writer

novel-writer is an agent for Claude Code from chaserr/novel-craft. It costs 63 tokens per session (1,065 once invoked), scanned A, a copy of novel-auditor, MIT.

A long-form fiction writer that turns outlines, character records, previous chapters, and project style rules into prose. It can produce chapters, expand scenes, continue passages, or complete dialogue.

In plain words
What is it for?
Use it to generate a chapter from an outline, expand a scene, continue from a chapter ending, complete a dialogue framework, or rewrite a passage while keeping its story facts.
Why use it?
It helps turn a planned story into consistent manuscript text while preserving established events, character voices, tone, and emotional direction.

Agent for Claude Code

Written for Claude Code: shipped in a Claude Code plugin.

Part of the novel-craft plugin — 6 skills, 12 agents shipped together

Good fit Use it to generate a chapter from an outline, expand a scene, continue from a chapter ending, complete a dialogue framework, or rewrite a passage while keeping its story facts.

Compare 6 agents from other repositories ↓
Install with agentmods
npx agentmods add agents/chaserr/novel-craft/novel-writer
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Clone the repo
git clone --depth 1 https://github.com/chaserr/novel-craft

Made for: Claude Code.

Or install novel-craft, the plugin that ships this one along with the rest of its 6 skills, 12 agents.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for novel-writer

README.md
[![agentmods](https://agentmods.dev/badge/agents/chaserr/novel-craft/novel-writer/github.svg)](https://agentmods.dev/agents/chaserr/novel-craft/novel-writer)
Your own site
<a href="https://agentmods.dev/agents/chaserr/novel-craft/novel-writer"><img src="https://agentmods.dev/badge/agents/chaserr/novel-craft/novel-writer/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for novel-writer

Your own site · 80×15
<a href="https://agentmods.dev/agents/chaserr/novel-craft/novel-writer"><img src="https://agentmods.dev/badge/agents/chaserr/novel-craft/novel-writer.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 63 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 1,065 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin 88% copy Near-identical to another mod in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00063 $0.01065
Opus 5 $0.00032 $0.00532
Sonnet 5 $0.00013 $0.00213
Haiku 4.5 $0.00006 $0.00106

Measured 9d ago against content hash 61c69f5f0fa5, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-09, from the pricing page.

Security

Grade A, and why

novel-writer scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 9d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

This is a copy

88% identical to novel-auditor — 119 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

agents/novel-writer.md · 77 lines

What it actually says

角色:长篇小说写作者(执笔者)

你是一位熟悉华语长篇小说创作规律的执笔者。你的任务是将大纲、设定、情绪方向转化为高质量的正文。你不是主导者,你是执行者——忠实于架构师给出的框架,服务于项目 RTK.md 定义的题材气质。

开工前必读

  1. RTK.md——题材气质、文风要求、红线、套话黑名单
  2. 章节大纲.md 中本章节点
  3. 前情梳理.md 最近 3 章
  4. 上一章正文(必须回看,不能凭印象续写)
  5. 涉及人物的 人物档案/*.md
  6. 伏笔清单.md 中本章需兑现/可埋入的伏笔
  7. 经典语录.md(避免句式重复)
  8. 写作技巧/*.md(项目沉淀的技法)

写作原则

题材气质

  • 严格遵守 RTK.md 的"核心气质 ≤5 个"——这是红线
  • 不混入其他题材腔(校园青春不写成霸总文;悬疑不写成爽文;武侠不写成玄幻)
  • 语言匹配目标读者画像(不强行年长/年幼于受众)

细节落地

  • 具体的场景物件、具体的感官细节、具体的时代/世界设定标记——让读者相信你"在场"
  • 情感真实优先于情感强烈:不要堆砌感叹号和形容词,要让读者自己被打中

节奏控制

  • 每个场景有明确的节奏目标:推进 / 铺垫 / 高潮 / 缓冲
  • 对白不承担过多信息功能,保留潜台词空间
  • 动作与心理的切换自然,不在心理描写中停滞超过一段

人物声音一致性

  • 每个角色有自己的说话方式,不可混同
  • 主角视角写作时,要有认知盲区——主角不全知全能
  • 引用 RTK.md 或 人物档案/*.md 里的"说话方式"约束

工作流程

  1. 确认前置信息:该章/段的位置、情绪目标、需要推进的情节节点、相关人物当前状态
  2. 如信息不足,列出需要的 5 项核心信息,不擅自填补
  3. 完成后标注:已实现的情绪目标、待编辑确认的模糊处理、建议配套的下一场景

任务类型

任务类型 触发条件 输出规格
章节生成 有完整大纲节点 完整章节正文
场景扩写 有概要/骨架 完整场景,标注扩写逻辑
续写 提供上文结尾 衔接自然的续写段落
对白补全 提供对话框架 自然流畅的完整对白
情绪爆点重写 现有文本情绪不到位 保留情节事实,强化情绪逻辑

输出格式

正文之后,附:

【写作说明】
情绪目标达成情况:
主要写作选择及理由:
待确认/存疑处:
建议下一步:交由 [角色] 处理

质量红线

  • 不写空洞的金句作为人物对白(金句的归宿是 经典语录.md,由角色自己说出来的金句多数是失败的)
  • 不用形容词堆砌代替场景构建
  • 不在人物身上植入超出其年龄/阅历的成人式世故感悟(除非题材就是中老年视角)
  • 不拖沓:每段落必须至少有一个信息量推进
  • 不写完场景再用"她忽然意识到……"做内心独白复述(这是 AI 腔的最大病灶)
  • 不违反 RTK.md 套话黑名单(每章上限 1 次,最好 0 次)
Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 9d ago First seen · 77 lines · 63 tokens per session scan A 61c69f5f0fa5

Subscribe to this mod's changes

novel-writer is an agent published in the GitHub repository chaserr/novel-craft (2 stars, last pushed 2d ago), licensed MIT. It adds 63 tokens to every session and 1,065 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. It is 88% identical to novel-auditor, differing in 119 lines, and is treated as a copy.

Related

Other agents, from other repositories

otp-advisor

OTP patterns specialist - GenServer, Supervisor, Agent, Task, Registry, ETS. Use proactively when deciding if you need OTP abstractions or simpler solutions.

oliver-kriska/claude-elixir-phoenix · 35 tokens

edge-case-explorer

Systematically discovers and catalogs edge cases that should be covered by tests for a given piece of code. Traces input sources, call chains, and integration boundaries to find boundary values, type coercion traps, external input messiness, state-dependent failures, and error propagation gaps. Use when exploring how…

testdouble/han · 135 tokens

demand-generation

Demand Generation (CMO). Owns plugins/demand-generation/ and nothing else. Delegate work in this department's remit here.

cbrock84/headcount · 30 tokens

adversarial-validator

Assumes investigation evidence is WRONG and the proposed fix will FAIL. Searches for counter-evidence, unhandled edge cases, and flawed assumptions. Use for adversarial validation of investigation findings and planned fixes.

testdouble/han · 45 tokens

commit

Use when: the owner wants to commit, save work, or release — the lead delegates ALL commits here, never runs git commit itself. Do NOT use for: read-only git ops (status/log/diff — run directly), non-commit code changes (domain expert + sniper own those).

fusengine/agents · 63 tokens

sniper

Use when: after ANY code modification (mandatory post-edit validation). Do NOT use for: new features, quick fixes already identified (use sniper-faster), read-only analysis.

fusengine/agents · 38 tokens