# Writer Skill

> 写作技能包。用于撰写章节正文，涵盖章节结构、对话、描写、内容充实、文化符号等写作方法论。

- Skill: `ddhjx-code/writer-skill` (Agent Skill, multi-file: 8 files)
- Install (CLI): `npx skillmds@latest add ddhjx-code/writer-skill`
- Raw SKILL.md: https://api.skillmd.com/api/skills/ddhjx-code/writer-skill/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: Ddhjx-code (https://skillmd.com/u/ddhjx-code)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/ddhjx-code/writer-skill

---


# 写作技能包

[技能说明]
    章节写作技能，用于根据上下文包和场景规划撰写高质量章节正文。写作分三个阶段执行：骨架稿→分场景扩展→拼合检查
    技能文件按阶段读取，不在开始时全部读取。

[文件结构]
    writer-skill/
    ├── SKILL.md                # 本文件
    ├── chapter-guide.md        # 章节结构与场景组织
    ├── dialogue-writing.md     # 对话写作策略
    ├── description-craft.md    # 描写与感官呈现
    ├── content-expansion.md    # 内容充实技巧
    ├── cultural-symbols.md     # 跨文化符号运用
    ├── references/
    │   └── genre-standards.md  # 体裁质量标准
    └── templates/
        └── chapter-template.md # 章节输出模板

    共享技能（按需读取）：
    - shared/deai-rules.md
    - shared/hook-techniques.md
    - ../planner-skill/references/beat-vocabulary.md（beat 类型参考）

    输出目录：
    - plans/chNN-skeleton.md   # 骨架稿（写作中间产物）
    - chapters/chNN.md    

[功能]
    [撰写章节]
        [阶段一：骨架稿]

            第一步：读取必要文件
                - 读取 chapter-guide.md
                - 读取主Agent传入的 plans/chNN-plan.md
                - 读取 references/beat-vocabulary.md（了解 beat 类型）
                - 读取相关人物档案当前状态字段
                - 读取前章结尾约500字（非第一章）

            第二步：逐场景写骨架
                每个场景独立写，每场景300-400字
                
                只写：
                - 核心动作（谁做了什么，顺序是什么）
                - 推动情节的对话（关键台词，不展开）
                - 场景出入点
                
                不写：
                - 感官描写
                - 环境铺陈
                - 人物内心独白
                - 修辞和文学性语言
                - 任何规划语言（如"这里角色将要..."、"本场景旨在..."）

                Beat 映射：
                - 每个场景按规划中的 beat 序列组织骨架
                - 承重 beat 必须在骨架中有明确对应的动作/台词
                - 灵活 beat 可以合并或简化

                骨架稿铁律：
                - 骨架必须像"干骨架"，只有动作和关键台词
                - 如果骨架稿读起来像详细的叙事大纲 → 重写骨架，不进入扩展
                - 骨架中禁止出现：形容词修饰语、比喻句、心理分析、环境描写
                - 骨架通过后才能进入阶段二，不可跳过

            第三步：骨架自检（强制输出）
                所有场景骨架完成后输出：

                「骨架自检」
                场景N：
                - 进入状态与规划一致：[是/否，说明]
                - 离开状态与规划一致：[是/否，说明]
                - 承重 beat 是否全部在场：[是/否，说明]
                - beat 顺序是否保持：[是/否]
                - 人物行为有动机支撑：[是/否，说明]
                - 与下一场景的衔接：[因果是否成立]
                - 是否存在大纲语言残留（规划用语混入正文）：[是/否，列出]
                - 发现的逻辑风险：[如有]

                然后输出模式查重检查：

                「模式查重」
                - 本章角色面对冲突的反应方式，前两章是否用过类似模式？
                  [是/否，如是，列出雷同并说明本章如何区分]
                - 本章是否有"情绪→反应"链条与前面章节重复？
                  [是/否，如是，替换为不同的外化方式]
                - 本章场景的情绪走向是否与前两章某场景雷同？
                  [是/否，如是，说明区分点]
                - 本章结尾钩子手法是否与最近两章重复？
                  [是/否，如是，更换钩子类型]

                发现问题 → 修改骨架，不进入阶段二
                骨架无问题 → 写入 plans/chNN-skeleton.md

        [阶段二：分场景扩展]

            第四步：按需读取扩展技能
                根据本章内容特点选择：
                - 对话密集 → 读取 dialogue-writing.md
                - 环境/情感描写重 → 读取 description-craft.md
                - 涉及文化/历史元素 → 读取 cultural-symbols.md
                - 涉及悬念伏笔处理 → 读取 hook-techniques.md
                - 读取 shared/deai-rules.md（必读）
                - 读取 content-expansion.md（作为扩展参考，非补救工具）

            第五步：逐场景扩展
                在骨架基础上逐场景扩展，每个场景独立生成
                
                扩展时添加：
                - 感官描写
                - 人物内心活动
                - 环境氛围
                - 节奏控制（段落长短变化）
                - 情感弧执行：确保场景的情感转变（从X到Y）得到实现
                
                单场景生成上限：1500字
                超过1500字 → 找自然断点拆成两次生成

            第六步：场景完成确认（强制输出）
                每个场景扩展完成后输出：

                「场景N完成确认」
                - 实际字数：XXX字
                - 转变是否发生：[进入状态A → 离开状态B，是否达成]
                - 情感转变是否达成：[从X到Y，是否达成，说明]
                - 扩展内容是否破坏骨架逻辑：[是/否]
                - 人物性格是否与设定一致：[是/否，说明]
                - 是否存在大纲语言残留：[是/否，如有立即修正]
                - 叙述者越权检查：[是否有解释性旁白、情绪命名、意义总结？如有删除]
                - 信息密度检查：[逐段标注新信息，无新信息的段落删除]

                信息密度检查格式：
                第1段（约XXX字）：[新事件/新感官/新状态] 具体内容
                第2段（约XXX字）：[无新信息] 原因 ← 删除

                发现问题 → 当场修改，不进入下一场景

        [阶段三：拼合检查]

            第七步：拼合全章
                所有场景正文拼合，输出拼合检查：

                「拼合检查」
                - 总字数：XXXX字
                - 字数是否达标：[达标（≥2500字）/ 不达标]
                - 场景衔接：[各过渡处是否自然，列出有问题的位置]
                - 首尾检查：
                - 开篇切入方式是否有效
                - 结尾钩子是否到位
                - 人物一致性：[通读后发现的异常]
                - 与前章衔接：[是否自然]
                - 情感弧达成：[读者情感入口X → 出口Y，是否达成]
                - 大纲语言残留：[是否存在"本章旨在"、"此处角色将"等规划用语]
                - 体裁风格匹配：[是否符合 outline.md 中定义的体裁标准]

                字数不达标 → 定位薄弱场景，参考 content-expansion.md 扩充
                衔接有问题 → 修改对应过渡段落
                大纲语言残留 → 立即修正为叙事语言
                情感弧未达成 → 定位缺口场景补充

            第八步：写入文件
                读取 templates/chapter-template.md
                按模板格式写入 chapters/chNN.md
                向主Agent返回完成确认，附上总字数


    

[叙述者权限（硬约束）]
    叙述者可以做：
    - 报告角色的外在动作
    - 报告对话
    - 报告具体感官信息（听到、看到、闻到的具体事物）
    - 报告生理反应（心跳、出汗、发抖）
    - 描写环境中的具体物理细节

    叙述者不可以做：
    - 解释角色为什么这样做（"因为她害怕失去他"）
    - 用比喻描述感受（"心像被撕裂"），除非是角色主观内心独白
    - 总结场景意义（"这一刻，她终于明白了……"）
    - 命名抽象情绪（"她感到深深的悲伤"）
    - 预告后续（"她不知道，这是最后一次……"）

    每章例外配额：
    - 比喻最多2处（必须传递动作/对话无法传递的新感官体验）
    - 内心情绪命名最多1处（必须极简，如"烦。"）

[注意事项]
    - 必读文件在第二步，按需文件在第三步，控制上下文长度
    - 不修改 bible/ 目录下任何文件
    - 不执行审查，专注写作
    - 场景规划是参考而非死板约束，可根据写作节奏微调

