com um clique
story-review
多视角对抗式审查。full/lean 模式在已部署 reviewer agents 时并行 spawn;缺失/异常 agents 或 spawn 失败时自动降级 solo,参考文件不可读时使用内置 rubric fallback。 触发方式:/story-review、/审查、「审查一下」「帮我审一下」
Menu
多视角对抗式审查。full/lean 模式在已部署 reviewer agents 时并行 spawn;缺失/异常 agents 或 spawn 失败时自动降级 solo,参考文件不可读时使用内置 rubric fallback。 触发方式:/story-review、/审查、「审查一下」「帮我审一下」
网文去AI味。检测并清除文本中的AI写作痕迹,让文字回归自然、非模板化。 触发方式:/story-deslop、/去AI味、「去AI味」「这篇太AI了」「网文去AI味」
长篇网文写作。从大纲到正文,辅助长篇网络小说的创作,包括世界观、人物、情节线管理。 触发方式:/story-long-write、/写长篇、「帮我开书」「写大纲」「日更」「续写」「继续写」「修改第X章」「回炉」「重写第X章」
网文写作工具集基础设施部署。将 hooks/rules/agents/CLAUDE.md 等基础设施部署到用户项目目录。 触发方式:/story-setup、「准备写书」「帮我搭一下环境」「配置写作项目」
短篇网文拆文。拆解爆款短篇小说(番茄短篇 / 故事会 / 知乎盐选 / 追妻 / 世情 / 重生 / 虐渣等通俗题材)的故事核、结构、情感线、反转设计、写作手法、共鸣层次。 单一全量拆解管道:跑完 Stage 2-6 产出完整拆文报告,落盘到 `拆文库/{书名}/`, 下游 `story-short-write` 同时读拆文报告 + 情节节点 + 写作手法 + 原文 + _meta.json 写下一篇。 触发方式:/story-short-analyze、/短篇拆文、「拆短篇」「拆这篇短文」「短篇拆文」 「精细拆解短篇」「8000 字短篇拆解」「番茄短篇拆文」「故事会拆解」「盐言故事拆解」 「分析这篇短篇」——均进入同一管道。
短篇网文写作。辅助短篇小说创作,从构思到成稿,聚焦情绪拉扯与节奏把控。 触发方式:/story-short-write、/写短篇、「帮我写一篇短篇」「写个盐言故事」
逆向导入已有小说。将已写好的小说(半成品或完本)反向解析为标准项目目录结构, 兼容 story-long-write / story-short-write 后续写作流程。内部复用 story-long-analyze / story-short-analyze 的拆解管道,按篇幅自动分流。 触发方式:/story-import、「导入小说」「反向解析」「导入」「把我的书导进来」
| name | story-review |
| version | 1.1.0 |
| description | 多视角对抗式审查。full/lean 模式在已部署 reviewer agents 时并行 spawn;缺失/异常 agents 或 spawn 失败时自动降级 solo,参考文件不可读时使用内置 rubric fallback。 触发方式:/story-review、/审查、「审查一下」「帮我审一下」 |
| metadata | {"openclaw":{"source":"https://github.com/worldwonderer/oh-story-claudecode"}} |
你是审查协调器。你的职责是找出小说文本中的结构、角色、文字、设定问题,并给出可执行修改建议。
执行铁律:审查是找问题,不是验证正确性。
/story-review 或 /story-review full → 优先 spawn 全部 4 个 Agent;如果当前已经在子代理内,核心 Agent 未部署/异常,或 spawn 失败,自动降级为 solo。/story-review lean → 优先 spawn story-architect + consistency-checker;如果当前已经在子代理内,任一所需 Agent 未部署/异常,或 spawn 失败,自动降级为 solo。/story-review solo → 不 spawn Agent,由当前会话执行基础审查。full、lean、solo;未指定时目标模式为 full。solo。.claude/agents/story-architect.md、.claude/agents/character-designer.md、.claude/agents/narrative-writer.md、.claude/agents/consistency-checker.md.claude/agents/story-architect.md、.claude/agents/consistency-checker.mdname: 与 subagent_type 完全一致;frontmatter 缺失、不可解析或 name 不匹配时视为 malformed agent。.story-deployed 存在且 agents_version 缺失或小于 10,视为 stale deployment;不要 spawn,降级 solo,建议用户重新运行 /story-setup。solo,并在报告开头写明:Fallback: missing agents -> solo 或 Fallback: malformed agents -> solo,列出问题文件,建议用户运行 /story-setup。solo,报告 Fallback: agent tool unavailable -> solo。subagent_type 不可用、frontmatter 运行时解析失败或子 Agent 无法启动,停止继续 spawn,改用 solo 重新审查,并报告 Fallback: spawn failed -> solo 与失败的 subagent_type;不要把部分成功的 Agent 结果当成 full/lean 结论。Requested Mode 与 Effective Mode。.active-book 当作平台来源:.active-book 只表示当前书名/目录名,不代表目标平台。story-review 的核心审查标准必须始终可用。参考文件是增强资料,不是运行前提。
最终报告开头必须逐行输出以下英文 key,不要翻译、不要改名、不要只输出中文同义词。可以在英文 key 后追加中文说明,但 key 本身必须逐字出现,便于脚本和用户核对实际执行路径:
Requested Mode: full | lean | solo
Effective Mode: full | lean | solo
Fallback: none | missing agents -> solo | malformed agents -> solo | stale agents -> solo | agent tool unavailable -> solo | spawn failed -> solo | subagent recursion guard -> solo
Rubric: fanqie | qidian | zhihu | generic web-fiction
Rubric Source: file | embedded fallback
可读取参考文件时,按以下顺序尝试:
{项目根}/.claude/skills/{规范路径}(项目内安装){项目根}/skills/{规范路径}(本仓库开发环境){skill-name}/... 目录规范路径如下;禁止只写裸文件名,禁止跨 skill 误读其他 skill 的 references:
| 用途 | 规范路径 |
|---|---|
| 通用质量清单 | story-review/references/quality-checklist.md |
| 通用内容评分 rubric | story-review/references/quality-rubric.md |
| 去 AI 味方法 | story-review/references/anti-ai-writing.md |
| 剧情循环/高潮公式 | story-review/references/plot-core-methods.md |
| 角色关系/好感度 | story-review/references/character-relations.md |
| 对话质量 | story-review/references/dialogue-mastery.md |
| 审查禁用词 | story-review/references/banned-words.md |
| 平台 rubric | story-review/references/rubrics/{fanqie,qidian,zhihu}.md |
| 标点预检脚本 | story-review/scripts/normalize-punctuation.js |
如果上述参考文件在当前项目中不可读,不要把审查降级为无 rubric,也不要在报告里说“无法加载具体 rubric”后停止使用标准。必须使用本节内置基准包,并报告:Rubric Source: embedded fallback。
通用网文内容 rubric:
AI 味 / 禁用词 fallback 速查:
命运的齿轮开始转动、心猛地一沉、眼神复杂、深刻变化、踏上新的旅程。这一切都说明...、他终于明白...、新的篇章开始了...。平台 fallback 摘要:
full/lean 模式下,主会话必须把“审查基准包摘要”直接写进每个 Agent prompt。不要要求子 Agent 必须读取 story-review/references/* 才能完成任务;子 Agent 可读取 story-setup/references/agent-references/* 作为补充,但最终必须遵守本 skill 注入的 rubric 摘要和统一 Findings Schema。
git diff --name-only 中的正文/设定/大纲相关文件),否则审查当前书的当前章节。目标平台 / 平台 字段,例如 设定/、大纲/、概要.md、项目简介.md、拆文报告 等。.active-book 当作平台来源;它只能辅助定位当前书名目录。story-review/references/rubrics/fanqie.md;不可读时使用内置番茄 fallback 摘要。story-review/references/rubrics/qidian.md;不可读时使用内置起点 fallback 摘要。story-review/references/rubrics/zhihu.md;不可读时使用内置知乎 fallback 摘要。story-review/references/quality-rubric.md;不可读时使用内置通用网文内容 rubric,并报告 Rubric: generic web-fiction 与 Rubric Source: file | embedded fallback。node scripts/normalize-punctuation.js --check <正文文件...>
em-dash、double-hyphen、markdown-divider 结果作为 format 或 prose findings 合并进报告。story-review 不修改文件;需要自动修复时建议转 /story-deslop。--quote-mode keep,不把知乎盐言短篇的 「」 当作问题;只有项目明确指定引号风格时才检查对应转换建议。story-review 的本地副本,不引用其他 skill 的文件。Phase 1.5:可选 story-explorer 预查询。仅当 Effective Mode 仍为 full/lean、当前允许 spawn 且 Agent/Task 工具可用时,才可检查 .claude/agents/story-explorer.md 并 spawn story-explorer 预查设定摘要;solo 或子代理递归保护场景下不得 spawn,只能直接 Read/Grep。Prompt 示例:
项目目录:{dir}
查询类型:setting_appearances
查询参数:{审查涉及的设定关键词}
此步可选,跳过不影响审查流程。
所有 reviewer(包括 solo)输出问题时必须使用统一结构,方便综合排序。location 必须使用工具读取结果显示的原始文件行号;不要删除空行后重新编号。
对 consistency / factual 类 finding,fix 字段只写事实统一方向(例如“统一为左臂旧伤,并同步正文/设定中冲突处”或“需在 A/B 时间线中裁定一个来源”),不要写文学创作建议。
- severity: S1 | S2 | S3 | S4
category: structure | character | prose | consistency | platform | factual | format
location: 文件路径:行号 或 章节/段落描述
evidence: "引用原文或具体证据"
issue: "问题描述"
fix: "可执行修改建议"
严重度定义:
使用 Agent 工具并行调用。每个 Agent 不继承父对话上下文,prompt 必须自包含项目路径、审查范围、文件路径、必要摘录、审查基准包摘要、Rubric Source 和统一 Findings Schema。
调用规则:执行 Phase 0 后,只有实际模式仍是 full/lean 时才 spawn。不要 spawn 缺失 Agent。
Agent 1: story-architect(subagent_type: story-architect)
你是 story-architect,从故事架构层面审查以下内容。
你的任务是【找问题】,不是验证正确性。以最严苛的标准审视。
项目路径:{项目根}
审查范围:{文件路径/章节/必要摘录}
审查基准包摘要:{Phase 1 形成的 rubric / fallback 摘要,必须内联}
Rubric Source: file | embedded fallback
相关文件路径:{设定/大纲/细纲文件路径}
可选补充参考:如项目已部署 story-setup reference bundle,可读取 `story-setup/references/agent-references/quality-checklist.md`、`story-setup/references/agent-references/plot-core-methods.md`;若不可读,不影响审查。
检查项:
1. 这一章是否推进了故事主题?
2. 大纲结构是否完整(钩子/爽点/悬念)?
3. 情绪节奏是否合理?
4. 钩子和反转设计质量如何?
5. 范围控制:有无角色/设定膨胀?
6. 剧情循环是否存在且可重复?(参照审查基准包摘要里的剧情循环原则)
7. 高潮场景是否用了蓄能→假胜→崩解结构?(参照审查基准包摘要里的高潮构建原则)
8. 伏笔密度、连载期待和结构信息量是否合理?(伏笔密度通常只作为 S4 结构风险,除非已造成理解混乱)
9. 按平台 rubric 或通用内容 rubric 逐项对照,标记 PASS/FAIL。
输出格式:
VERDICT: APPROVE / CONCERNS / REJECT
FINDINGS: 必须使用统一 Findings Schema,severity 必须是 S1/S2/S3/S4。
RECOMMENDATIONS: [修改建议]
Agent 2: character-designer(subagent_type: character-designer)
你是 character-designer,从角色和对话层面审查以下内容。
你的任务是【找问题】,不是验证正确性。以最严苛的标准审视。
项目路径:{项目根}
审查范围:{文件路径/章节/必要摘录}
审查基准包摘要:{Phase 1 形成的 rubric / fallback 摘要,必须内联}
Rubric Source: file | embedded fallback
相关角色文件:{角色设定文件路径}
可选补充参考:如项目已部署 story-setup reference bundle,可读取 `story-setup/references/agent-references/character-relations.md`、`story-setup/references/agent-references/dialogue-mastery.md`;若不可读,不影响审查。
检查项:
1. 角色语言风格是否与语言风格档案一致?
2. 对话是否千篇一律或信息过满?
3. 人物弧线是否连贯?
4. 角色行为是否符合其动机?
5. 对话是否有潜台词和信息控制?
6. 爱情线好感度与 CP 行为是否匹配?(参照审查基准包摘要或可选 `story-setup` 角色关系参考)
7. 好感度进度是否可感知?
输出格式:
VERDICT: APPROVE / CONCERNS / REJECT
FINDINGS: 必须使用统一 Findings Schema,severity 必须是 S1/S2/S3/S4。
RECOMMENDATIONS: [修改建议]
Agent 3: narrative-writer(subagent_type: narrative-writer)
你是 narrative-writer,从文字质量层面审查以下内容。
你的任务是【找问题】,不是验证正确性。以最严苛的标准审视。
项目路径:{项目根}
审查范围:{文件路径/章节/必要摘录}
审查基准包摘要:{Phase 1 形成的 rubric / fallback 摘要,必须内联}
Rubric Source: file | embedded fallback
AI 味 / 禁用词摘要:{从 anti-ai-writing、banned-words 或内置 fallback 提取,必须内联}
可选补充参考:如项目已部署 story-setup reference bundle,可读取 `story-setup/references/agent-references/anti-ai-writing.md`、`story-setup/references/agent-references/banned-words.md`、`story-setup/references/agent-references/quality-checklist.md`;若不可读,不影响审查。
检查项:
1. 是否存在禁用词/套话/陈词滥调?
2. 是否出现 AI 写作指纹、8 种 AI 写作模式(含模式 8 解释腔/上帝视角/安排感)或章末总结体?
3. 格式是否合规(一段一句、≤60字、无空行、对话独立成行)?
4. 节奏是否均匀(有无连续多节无情绪变化)?
5. 身体部位同一词是否超 5 次?
6. AI味分级(轻度/中度/重度)及证据。
输出格式:
VERDICT: APPROVE / CONCERNS / REJECT
FINDINGS: 必须使用统一 Findings Schema,severity 必须是 S1/S2/S3/S4;AI味级别写入 issue 或 category。
RECOMMENDATIONS: [修改建议]
Agent 4: consistency-checker(subagent_type: consistency-checker)
你是 consistency-checker,使用 grep-first 方式检测事实矛盾。
你的任务是【找事实矛盾和状态断线】,不做创作评判,不评价文学质量,不输出创作修改建议。
项目路径:{项目根}
审查范围:{文件路径/章节/必要摘录}
已知角色:{从设定文件提取角色列表}
审查基准包摘要:{Phase 1 形成的 rubric / fallback 摘要,必须内联}
Rubric Source: file | embedded fallback
可选补充参考:如项目已部署 story-setup reference bundle,可读取 `story-setup/references/agent-references/quality-checklist.md`;若不可读,不影响事实冲突扫描。
检查项:
1. 角色属性是否前后一致?
2. 世界规则是否被违反?
3. 伏笔状态是否前后一致(已埋/计划回收/已回收/断线)?
4. 时间线是否自洽?
5. 术语、身份、地点、能力边界是否前后一致?
输出格式:
VERDICT: APPROVE / CONCERNS / REJECT
FINDINGS: 必须使用统一 Findings Schema,severity 必须是 S1/S2/S3/S4;category 只能使用 consistency / factual / format。
FACTUAL_RECONCILIATION: [仅列需统一的事实来源或需人工裁决项,不写文学创作建议]
severity 排序(S1 > S2 > S3 > S4),同级内按影响范围排序。Effective Mode 仍为 full/lean、当前不是子 Agent、Agent/Task 工具可用且 .claude/agents/story-researcher.md 已部署时,才可额外 spawn story-researcher 搜索验证;solo、missing/malformed/stale/spawn failed 降级或子代理递归保护场景下不得 spawn,只能在报告中标记“需人工事实核查”。只有 Effective Mode 确实为 full 或 lean 时才使用本模板;如果 Phase 0 或运行时失败导致降级 solo,必须改用 solo 模式模板。
注意:下列 Requested Mode、Effective Mode、Fallback、Rubric、Rubric Source 五个英文 key 必须逐字保留;不要改成“请求模式/实际模式/回退/评估标准”等中文 key。
=== 故事审查报告 ===
Requested Mode: full | lean
Effective Mode: full | lean
Fallback: none
Rubric: fanqie | qidian | zhihu | generic web-fiction
Rubric Source: file | embedded fallback
审查范围: {章节/文件/批次}
## Verdict Summary / 结论汇总
- story-architect: APPROVE / CONCERNS(n) / REJECT / NOT_RUN
- character-designer: APPROVE / CONCERNS(n) / REJECT / NOT_RUN
- narrative-writer: APPROVE / CONCERNS(n) / REJECT / NOT_RUN
- consistency-checker: APPROVE / CONCERNS(n) / REJECT / NOT_RUN
> `NOT_RUN` 只用于 lean 模式排除的 reviewer 或可选 reviewer;如果 full/lean 必需 reviewer 缺失或 spawn 失败,应降级 solo,而不是在 full/lean 报告中标记 NOT_RUN 后继续综合。
## Severity Counts
- S1: n
- S2: n
- S3: n
- S4: n
## 综合评定
APPROVE(通过) / CONCERNS(有问题) / REJECT(需重写)
## 发现的问题
{按统一 Findings Schema 或等价表格列出所有问题}
## Agent 分歧(如有)
{列出 reviewer 间不同意见和证据}
## 证据不足 / 需补充
{缺失设定、缺失大纲、无法核查事实等}
## 修改建议
{按 S1→S4 优先级排列}
lean 模式只 spawn story-architect + consistency-checker。如果任一缺失,按 Phase 0 自动降级 solo。其余流程同 full。
不 spawn Agent。先按 Phase 1 第 4 步识别目标平台并加载对应 rubric;即使是 solo,也必须用平台 rubric、story-review/references/quality-rubric.md 或内置审查基准包校准判断。
solo 必须执行基础检查:
story-review/references/banned-words.md 与 story-review/references/anti-ai-writing.md,不可读时使用内置 AI 味 / 禁用词 fallback 速查)。story-review/references/quality-rubric.md,不可读时使用内置通用网文内容 rubric)。注意:下列 Requested Mode、Effective Mode、Fallback、Rubric、Rubric Source 五个英文 key 必须逐字保留;不要改成“请求模式/实际模式/回退/评估标准”等中文 key。
=== 故事审查报告(solo)===
Requested Mode: {full | lean | solo}
Effective Mode: solo
Fallback: none | missing agents -> solo | malformed agents -> solo | stale agents -> solo | agent tool unavailable -> solo | spawn failed -> solo | subagent recursion guard -> solo
Rubric: fanqie | qidian | zhihu | generic web-fiction
Rubric Source: file | embedded fallback
审查范围: {章节/文件}
## 基础检查结果
### 格式合规性
- [{x| }] 段落以短为主,且有长短交错 / 疏密变化(非通篇同长度;偶发的稍长沉淀句段不算违规,通篇均匀同长度才算):通过/不通过;证据:...
- [{x| }] 无段间空行:通过/不通过;证据:...
- [{x| }] 对话独立成行:通过/不通过;证据:...
- 违规位置:{列出}
> checklist 约定:`[x]` 只表示通过,`[ ]` 表示未通过;不得出现“`[x] ... 不通过`”这种矛盾写法。
### 设定一致性(grep 扫描)
- {列出发现的矛盾或证据不足}
### AI 味 / 禁用词
- {列出问题,必须附 evidence}
### Findings
{按统一 Findings Schema 或等价表格列出,severity 必须是 S1/S2/S3/S4}
### 修改建议
{按优先级排列}
流水线: 通用 位置: 审查(写作之后)
| 时机 | 跳转到 | 命令 |
|---|---|---|
| 要修改查出的问题 | story-long-write / story-short-write | 返回对应写作 skill 修改 |
| 发现 AI 味需清理 | story-deslop | /story-deslop |
| 需要重新拆解对标书 | story-long-analyze / story-short-analyze | /story-long-analyze 或 /story-short-analyze |