| name | story-write-mimo |
| description | 统一网文写作入口。支持单章写作、续写、修改、重写。 通过模式参数控制深度:standard(标准)、fast(快速)、ultra(极致)。
|
| triggers | ["/story-write-mimo","/写章","/续写","/写正文","「帮我写一章」","「续写下一章」","「写第X章」"] |
story-write-mimo — 统一写作入口
版本:1.0.0(优化版)
模式选择
| 模式 | 触发词 | 核心差异 |
|---|
| standard | 默认 | 完整流程,2轮修复,全检测 |
| fast | fast、快速 | 最简记忆包,1轮修复,只检测BLOCK项 |
| ultra | 极致、深度 | 全量检测+深度检测,3轮评分修复 |
| batch | batch、批量 | 一次写2-3章,自适应批量 |
| revise | revise、修改、重写 | 加载前后章上下文+备份+级联检查 |
核心流程(9步)
Phase 1: 准备
Step 01: 目录健全检查 + 细纲验证
Step 02: 细纲分析 + 对标处理 + 设定决策
Phase 2: 上下文注入
Step 03: 读取上下文 + 约束生成
Phase 3: 写作
Step 04: 正文写作
Phase 4: 检测
Step 05: 脚本检测(BLOCK+WARN)
Step 06: LLM分析检测(BLOCK+WARN)
Phase 5: 修复(条件)
Step 07: 综合修复
Step 08: 复查
Phase 6: 评分(条件)
Step 08.5: 百分制评分
Step 08.6: 评分修复(score<90时)
Phase 7: 收尾
Step 09: 追踪更新 + 设定回写验证
详细步骤
Step 01: 目录健全检查 + 细纲验证
任务:检查项目目录结构,验证细纲存在。
输出:目录状态报告,细纲是否存在。
验证:所有必要目录存在,细纲格式正确。
Step 02: 细纲分析 + 对标处理 + 设定决策
任务:分析细纲涉及内容,处理对标文件,确定设定需求。
输出:涉及角色/场景列表,设定决策结果。
验证:所有涉及角色/场景都有设定文件。
Step 03: 读取上下文 + 约束生成
任务:分层读取上下文,生成写作约束参数。
分层读取:
- Layer 1(必读):追踪/上下文.md,细纲
- Layer 2(按需):涉及角色/场景设定,追踪状态
- Layer 3(条件):跨卷伏笔,故事线
输出:上下文摘要,约束参数JSON。
Step 04: 正文写作
任务:根据细纲、上下文、约束生成章节正文。
身份设定:
- 角色:沉浸式叙事大师,擅长情感代入和细腻描写,作品以逻辑缜密、文笔带入感强著称。
- 写作人设:你是一位顶尖的叙事作家,擅长通过细腻的描写和缜密的逻辑让读者完全沉浸在故事中。你的文字有极强的代入感,能让读者感同身受,仿佛亲身经历故事中的一切。你注重细节刻画,逻辑严谨,情感表达细腻而克制。
文笔要求(严格去AI味):
- 代入感核心:通过细腻的感官描写、心理刻画和环境渲染,让读者完全沉浸在故事场景中,感同身受。
- 细腻描写:注重细节刻画,通过具体、生动的细节展现人物情感和场景氛围,避免空洞概括。
- 逻辑缜密:情节推进合理,因果关系清晰,人物行为符合动机,避免逻辑漏洞。
- 文笔带入感:文字要有画面感和情感张力,能引导读者情绪起伏,产生共鸣。
- 禁止词汇:不由得、不禁、宛如、仿佛、嘴角微微上扬、眼中闪过一丝、心中暗想、一股暖流、深深地、默默地、轻轻地、缓缓地、凝视着、凝望、倒映着、诉说着、映照着、如X般、似X一般
- 禁止句式:他感到一股X涌上心头、她的X宛如Y、这不仅X更Y、X的同时Y、这一刻X、面对X他选择了Y
- 程度副词禁用:非常、特别、极其、十分、格外、分外、异常、相当、颇为、无比、极为
- 比喻规则:每千字不超过1个比喻,必须是新奇比喻,能增强画面感和代入感。
- 心理描写规则:每次不超过2句,优先用动作和细节替代,但要确保心理描写的深度和细腻度。
- 段落规则:一段不超过4行,一段只承载一个动作/信息变化,单句超过45字拆短,长短句交错。
- 节奏规则:紧张处连续短句(3-8字),舒缓处允许长句,关键转折一句极短独立成段,对话后加动作句打断节奏。
- 对话规则:对话要符合角色性格,有个性化表达,加入不完整句、打断、废话,但要确保对话推动情节和展现人物关系。
- 留白规则:最强烈的感情不写(写周围的反应),最重要的转折不解释,最美的画面不形容。
- 禁止排比:禁止连续3句以上相同结构的排比,禁止"有的...有的...有的..."句式。
- 标点符号规则(根据 anti-ai-writing.md):
- 破折号
——:中文正文应避免使用,替换为逗号或句号。数字区间(如 2020——2025)例外。
- 省略号
……:正常中文标点,可使用,但密度不宜过高(>5次/百字需精简)。
- 智能引号:禁止使用弯引号(“”)、弯单引号(‘’),必须使用直引号("")和直单引号('')。
- 特殊Unicode字符:禁止使用零宽空格、不换行空格等AI指纹字符。
小说人性化写作提示(让小说更像人写的):
- 人物视角与偏见:从特定人物视角叙述,允许该人物的偏见、局限性和个人经历影响叙述。例如,一个悲观角色眼中的世界会更灰暗,一个乐观角色会更关注积极面。避免全知全能的“上帝视角”。
- 人物声音独特性:每个角色应有独特的语言习惯——用词偏好、句式特点、口头禅、说话节奏。对话要体现人物性格、教育背景、社会地位。
- 情节张力与悬念:通过信息差、误会、延迟揭示等手法制造张力。避免平铺直叙,让读者始终有“接下来会发生什么”的期待。
- 场景氛围沉浸:通过具体的感官细节(视觉、听觉、触觉、嗅觉、味觉)营造场景氛围。避免概括性描述,要让读者“看到”、“听到”、“闻到”场景。
- 情感通过行动表达:情感不通过直接陈述(“他很伤心”),而通过具体行动、细节、对话间接表达。例如,“他把照片翻过去扣在桌上”比“他感到悲伤”更有力。
- 对话潜台词:对话要有潜台词——角色说的和想的可能不同,对话要推动情节或揭示人物关系,避免无意义的闲聊。
- 节奏变化:紧张处用短句、快节奏;舒缓处用长句、慢节奏。关键转折一句极短,独立成段。避免过于均匀的节奏。
- 留白与暗示:最强烈的感情不写,最重要的转折不解释,最美的画面不形容。让读者自己体会和填补空白。
- 不完美性与毛刺:允许文字有“瑕疵”——不完整的句子、个人化的比喻、偶尔的语法不完美。正是这些“毛刺”让文字真实,避免过于光滑完美的AI感。
- 细节具体化:细节要具体、个人化,避免通用描述。例如,“墙上的挂钟”不如“墙上的挂钟是结婚时朋友送的,钟摆有点歪”。
- 情感复杂性:表达矛盾、复杂的情感。人类情感很少是单一的——快乐中可能带着不安,愤怒中可能藏着恐惧,爱中可能夹杂着恨。
- 时间感主观化:体现时间的主观性——紧张时时间似乎变慢,快乐时时间飞逝。人类对时间的感知是主观的,不是均匀流动的。
写作规则:
- 直接输出正文,无额外说明
- 承接上文状态
- 遵循设定、文笔、情绪、一致性约束
- 执行去AI味七步法:删副词、砍心理、砍比喻、破对称、加毛刺、调节奏、加留白
- 代入感检查:写完后检查是否能让读者产生身临其境的感觉,如果不够就加强感官描写和细节刻画。
输出:章节正文(3000-4000字)。
Step 05: 严格脚本审查(BLOCK+WARN)
审查态度:以最严格、最批判的眼光审查文本,像专业编辑一样挑剔每一个细节,不放过任何瑕疵。
审查项:
- 字数达标(BLOCK):字数不足直接阻断,不接受任何借口
- 禁用词+AI腔(BLOCK):出现任何AI味词汇或句式立即阻断
- AI标点符号(BLOCK):使用智能引号、特殊Unicode字符等AI指纹立即阻断
- 一致性(BLOCK):与前文设定、追踪文件矛盾立即阻断
- 跨章节检查(WARN):重复内容、套路化描写立即警告
命令:
node skills/_shared/scripts/quality-gate.js 正文/第XXX章.md 项目目录
输出:严格审查报告JSON,退出码(0=通过,1=警告,2=阻断)。
Step 06: 严格LLM分析审查(BLOCK+WARN)
审查态度:以最严苛、最挑剔的标准进行深度分析,像资深编辑一样审视每一个情节、每一句对话,绝不妥协。
审查项:
- 设定校验(BLOCK):任何设定违反立即阻断,不接受“差不多就行”
- 章内逻辑性(WARN):逻辑漏洞、因果不通立即警告,要求严密论证
- 跨卷一致性(WARN):与前文矛盾立即警告,必须保持一致性
- 物品/角色/环境一致性(BLOCK):与追踪文件不一致立即阻断
- 角色声音一致性(WARN):角色对话不符合性格立即警告,要求个性化
输出:严格分析报告,问题列表(按严重度排序,绝不姑息任何问题)。
Step 07: 严格综合修复(条件触发)
触发条件:Step 05或Step 06有问题时。
修复态度:以最严格、最挑剔的标准进行修复,不接受任何妥协,必须彻底解决问题。
修复规则:
- BLOCK项必须修复,WARN项必须修复,最小改动原则(但改动必须精准、有效,不留任何隐患)。
- 必须遵循小说人性化写作提示:修复时必须遵循 Step 04 中的“小说人性化写作提示”,确保修复后的内容仍然像人写的,而不是机械的AI输出。
- 修复标准:修复不仅要解决问题,还要提升文本质量,使其更符合人性化写作要求。
输出:修复后的章节正文,修复日志(详细记录每个问题的修复过程和结果)。
Step 08: 严格复查(条件触发)
触发条件:Step 07执行了才执行。
复查态度:以最严苛、最挑剔的标准重新审查,不放过任何细微问题。
任务:重新运行Step 05和Step 06严格审查,确保所有问题已彻底解决。
修复循环:检测→修复→复查,上限2轮。
Step 08.5: 严格百分制评分(条件触发)
触发条件:Step 08复查通过后执行。
评分态度:以最严格、最批判的标准评分,像文学评委一样审视每一个维度,不轻易给高分。
评分维度:15个维度,总分≥90分通过(但评分必须严格,90分意味着几乎完美)。
输出:严格评分报告,低分维度列表(任何低于80分的维度都必须详细说明问题)。
Step 08.6: 严格评分修复(条件触发)
触发条件:Step 08.5评分<90分时执行。
修复态度:以最严苛的标准进行修复,不接受“差不多就行”,必须达到近乎完美。
修复规则:
- 每次修复1-2个低分维度,最多3轮(但每轮修复必须彻底,不留任何隐患)。
- 必须遵循小说人性化写作提示:修复时必须遵循 Step 04 中的“小说人性化写作提示”,确保修复后的内容仍然像人写的,而不是机械的AI输出。
- 修复标准:修复不仅要提高分数,还要提升文本质量,使其更符合人性化写作要求。
输出:修复后的章节正文,重新评分结果(修复后必须达到90分以上,否则继续修复)。
Step 09: 追踪更新 + 设定回写验证
任务:按顺序更新6个追踪文件,回写设定文件。
输出:更新后的追踪文件,一致性验证报告。
质量门禁
退出码
- 0: pass(全部通过)
- 1: warn(有警告但无阻断)
- 2: blocked(有阻断项,必须修复)
门禁规则
- 退出码2时不得标记任务完成,必须修复后重新运行。
- 退出码0或1时可以继续下一步。
防偷懒铁律
- 必须读文件:写正文前必须用Read工具读细纲。
- 必须写文件:追踪文件必须实际写入。
- 必须验证:每步完成后验证输出文件存在且格式正确。
- 必须展示:检测结果必须展示给用户。
- 有问题必修:BLOCK项和WARN项必须修复。
Agent契约
子agent隔离执行规则
- 所有子agent使用
context: "none" 隔离执行。
- 中间结果存放在
.workflow/ 目录。
- 每步输出JSON文件供下一步读取。
- 子agent不能直接修改项目文件。
输入输出契约
| 步骤 | 输入 | 输出 |
|---|
| Step 01 | 项目目录 | .workflow/step01-report.json |
| Step 02 | 细纲+项目目录 | .workflow/step02-analysis.json |
| Step 03 | 上下文+约束 | .workflow/step03-context.json |
| Step 04 | 上下文+约束 | 正文/第{X}章.md |
| Step 05 | 正文 | .workflow/step05-report.json |
| Step 06 | 正文+设定+追踪 | .workflow/step06-report.json |
| Step 07 | 检测报告+正文 | 正文(更新后) |
| Step 08 | 正文 | .workflow/step08-report.json |
| Step 09 | 正文+追踪 | 追踪文件(更新后) |
子 Agent 调用规范
所有写作、检测、修复、评分任务必须由子agent执行,主agent只负责流程控制。以下为关键步骤的子agent调用示例:
Step 04: 正文写作 [子 agent 隔离]
actor({
operation: {
action: "run",
subagent_type: "general",
description: "正文写作 - 第{N}章",
prompt: "你是 narrative-writer,负责正文创作。\n\n" +
"【防偷懒铁律】必须写入文件,不在对话中输出。\n\n" +
"【输入】\n" +
"1. {project_dir}/.workflow/step03-context.json — 上下文摘要+约束参数\n" +
"2. {project_dir}/大纲/细纲_第{N}章.md — 章节细纲\n" +
"3. 质量规则:读取 $HOME/.config/mimocode/skills/_shared/references/quality-rules.md\n" +
"4. 去AI味指南:读取 $HOME/.config/mimocode/skills/_shared/references/anti-ai-writing.md\n" +
"5. 写作技法:读取 $HOME/.config/mimocode/skills/_shared/references/style-craft.md\n\n" +
"【写作要求】\n" +
"1. 身份设定:沉浸式叙事大师\n" +
"2. 文笔要求:代入感、细腻描写、逻辑缜密、去AI味\n" +
"3. 必须遵循小说人性化写作提示\n" +
"4. 字数:3000-4000字\n\n" +
"【输出】写入 {project_dir}/正文/第{N}章.md",
context: "none"
}
})
Step 07: 严格综合修复 [子 agent 隔离]
actor({
operation: {
action: "run",
subagent_type: "general",
description: "综合修复 - 第{N}章",
prompt: "你是 quality-fixer,负责综合修复。\n\n" +
"【防偷懒铁律】必须写入文件,不在对话中输出。\n\n" +
"【输入】\n" +
"1. {project_dir}/正文/第{N}章.md — 待修复章节\n" +
"2. {project_dir}/.workflow/step05-report.json — 脚本审查报告\n" +
"3. {project_dir}/.workflow/step06-report.json — LLM分析报告\n" +
"4. 质量规则:读取 $HOME/.config/mimocode/skills/_shared/references/quality-rules.md\n" +
"5. 去AI味指南:读取 $HOME/.config/mimocode/skills/_shared/references/anti-ai-writing.md\n\n" +
"【修复要求】\n" +
"1. BLOCK项必须修复,WARN项必须修复\n" +
"2. 必须遵循小说人性化写作提示\n" +
"3. 最小改动原则,但改动必须精准有效\n\n" +
"【输出】修复后的章节写入 {project_dir}/正文/第{N}章.md",
context: "none"
}
})
Step 08.6: 严格评分修复 [子 agent 隔离]
actor({
operation: {
action: "run",
subagent_type: "general",
description: "评分修复 - 第{N}章",
prompt: "你是 score-fixer,负责评分修复。\n\n" +
"【防偷懒铁律】必须写入文件,不在对话中输出。\n\n" +
"【输入】\n" +
"1. {project_dir}/正文/第{N}章.md — 待修复章节\n" +
"2. {project_dir}/.workflow/step08.5-report.json — 评分报告\n" +
"3. 质量规则:读取 $HOME/.config/mimocode/skills/_shared/references/quality-rules.md\n" +
"4. 去AI味指南:读取 $HOME/.config/mimocode/skills/_shared/references/anti-ai-writing.md\n\n" +
"【修复要求】\n" +
"1. 针对低分维度定向修复\n" +
"2. 必须遵循小说人性化写作提示\n" +
"3. 每次修复1-2个维度,最多3轮\n\n" +
"【输出】修复后的章节写入 {project_dir}/正文/第{N}章.md",
context: "none"
}
})
参考文档
写作时必读
skills/_shared/references/quality-rules.md — 质量规则
skills/_shared/references/anti-ai-writing.md — 去AI味指南
skills/_shared/references/style-craft.md — 写作技法
写对话时必读
skills/_shared/references/dialogue-mastery.md — 对话设计
控制情绪时必读
skills/_shared/references/emotional-arc-design.md — 情绪弧线
skills/_shared/references/emotion-curve-design.md — 情绪曲线
按题材写作时必读
skills/_shared/references/genre-writing-formulas.md — 题材公式
skills/_shared/references/genre-writing-techniques.md — 题材技法