前端开发
写小说新章节时:用先大纲后正文的工作流…
适用于已有故事项目需要起草新章节,从收集上下文、大纲审批到写正文并同步更新交叉引用时。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 38/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 59/100 ×0.15
适用场景
写小说新章节时:用先大纲后正文的工作流,特定
解决思路
- 先检查是否可用 `better-writing` 技能:运行 `ls -d ~/.claude/skills/better-writing .claude/skills/better-writing skills/better-writing 2>/dev/null`;若存在含 `SKILL.md` 的 `better-writing` 目录,则在写作、语声校准、反通用写作检查和保存章节前最终检查时使用它。
- 若未安装 `better-writing`,向用户指向 [forjd/better-writing](https://github.com/forjd/better-writing) 并询问是否安装;未经明确同意不得运行安装器;若用户不安装,继续使用本技能的 `references/writing-guidelines.md` 内置写作指南。
- 收集上下文:读取 `story.md`,了解 genre、themes、POV、tense。
- 读取 `style-sheet.md`(若存在),了解 voice、house spellings、对话标点、角色声音和 watch words;若缺失,正常起草,并在有章节后建议使用 `voice-style` 技能。
- 读取 `chapters/_index.md`,了解已写内容和当前字数。
- 读取 `plot/_index.md`,了解 arc 状态和接下来需要发生什么。
- 读取 `plot/timeline.md`,确定时间线位置。
- 读取 `scenes/_index.md`,了解已记录的 scene 状态。
- 读取 `continuity/state.md`,了解角色、物品和知识状态。
- 读取 `continuity/questions/_index.md` 和 `continuity/promises/_index.md`,了解未解谜团与 setup/payoff 承诺。
- 如果不是第一章,再读取上一章文件,保持结尾状态、悬念和情绪基调的连续性。
- 如果不是第一章,读取 `plot/arcs/` 中的活跃 arc 文件,了解即将到来的情节节拍。
- 确定章节范围:询问用户本章要覆盖什么(或基于 plot arcs 建议)、谁的 POV、哪些地点。
- 若存在 plot arcs,建议推进下一个符合逻辑的节拍。
- 构建逐 beat 大纲,列出:每个 scene/beat 及其达成目标。
- 在大纲中列出每个 beat 的 POV 角色和地点。
- 在大纲中列出该章推进了哪些 arc plot points。
- 在大纲中列出要埋下或回收的 foreshadowing。
- 在大纲中列出场景应记录的 machine-readable state changes。
- 加载 POV 角色文件作为声音参考。
- 加载相关地点文件作为设定细节。
- 将大纲呈现给用户审批;根据反馈修订直到批准。
- 按批准的大纲写完整正文:遵循 `story.md` 中的 POV 和 tense。
- 使用 POV 角色档案中的声音和说话模式。
- 用 worldbuilding 文件中的地点细节为场景提供根基。
- 查阅 `references/writing-guidelines.md` 获取快速 prose craft 指导;如需深层参考——Scene/Sequel 单元、对话潜台词与声音区分、deep POV 与 psychic distance——使用 `scene-craft` 技能。
- 若可用,在最终确定正文前应用 `better-writing` 技能。
- 使用 `references/chapter-template.md` 中的章节模板。
- 将批准的大纲放在文件中 `## Chapter Text` 上方供参考;CLI 字数从该标题开始计,因此放在上方的大纲不会虚增 `word-count`;写作后运行 `story wordcount . --write` 记录字数。
- 保存到 `chapters/chapter-{NN}.md`,并带上适当的 frontmatter。
- 为每个 scene 创建或更新匹配的 scene 文件 `scenes/chapter-{NN}-scene-{NN}.md`;scene frontmatter 应包含 `title`、`chapter`、`scene`、`pov`、`location`、`characters`、`mentions`、`arcs-advanced`、`status` 和 `state-changes`,以保证连续性不依赖正文存活。
- 直接将章节正文写入 chapter markdown 文件;不要把正文暂存在项目本地 build scripts、generator scripts 或批量 writer scripts(例如 `build-*.js`)中再输出章节。
- 如果为了机械文件操作真的必须使用临时 helper,把它放在 story project 外部并在完成前删除。
- 写完后更新 `chapters/_index.md`:把本章加入 registry,更新总字数。
- 更新 `plot/timeline.md`:按时间顺序加入本章事件。
- 更新 arc 文件:用章节引用标记已推进的 plot points。
- 更新 scene records:确保每个 scene 都有对应的 `scenes/` 文件。
- 更新 continuity:延续角色状态、物品所有权、知识、未解问题和 promises/payoffs;当 `story.md` 通过 `follows` 或 `precedes` 链接其他书时,给系列依赖的揭示分配稳定的 `fact` id 到 `knowledge-state`(见 `series-continuity`)。
- 更新 foreshadowing:用章节引用把条目标记为 `planted` 或 `paid-off`。
- 记录角色变化:如果角色状态改变(受伤、揭露、关系变化),标记出来让用户更新角色文件。
- 可用时运行 CLI 维护:`story wordcount . --write`、`story reindex .`、`story links .`、`story validate .`、`story next .`、`story progress . --log`。
- `story progress . --log` 会把本次 session 记录到 `progress.md`,并针对 `target-words`、`deadline` 和章节 `target-words` 报告字数;如果用户不记日志,跳过 `--log` 标志。
- 展示所有已做更新的摘要。
- 在章节内用 `---` 分隔场景;每个场景都应有明确的 POV 角色(即使与上一场景相同)和地点。
- 当被要求修订、逐行编辑、润色或对已有章节做连续性检查时,使用 `revision-continuity` 技能;本技能负责新起草和章节创建,`revision-continuity` 负责定向编辑、连续性审计和起草后清理。
- 可用时使用 Story CLI;如果未安装 `story`,在 Story Skills repository checkout 中使用 `bun run story --`,或使用同参数的内置回退 `node ../story-maintenance/scripts/story.js`,路径相对于本技能文件夹解析;如果没有任何 CLI,手动执行 registry、backlink 和 word-count 检查。
- 参考文件:`references/chapter-template.md` 是章节文件的 frontmatter 和结构模板;`references/scene-template.md` 是场景的 machine-readable continuity 模板;`references/writing-guidelines.md` 是快速 prose craft 参考(show-don't-tell、POV、对话、节奏、场景结构、连续性),深层参考使用 `scene-craft` 技能。
适用边界 · 注意事项
- 不适用于没有 `story.md`、至少一个 `characters/` 角色文件,以及(推荐但非必需)`plot/_index.md` 情节结构的故事项目;也不适用于非故事项目。
- 不适用于对已有章节做修订、逐行编辑、润色或连续性检查,这些应使用 `revision-continuity` 技能。
- 不适用于用户不想先建大纲并审批、只想直接产出正文的场景。