# Cutter Skill

> 削减技能包。用于对章节正文进行信息密度检查和废话删除，只删不改，确保每段文字都推进故事。

- Skill: `ddhjx-code/cutter-skill` (Agent Skill)
- Install (CLI): `npx skillmds@latest add ddhjx-code/cutter-skill`
- Raw SKILL.md: https://api.skillmd.com/api/skills/ddhjx-code/cutter-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/cutter-skill

---


# 削减技能包

[技能说明]
    削减技能，用于 writer 完成章节后、reviewer 审查前。
    核心工作是删除不承载新信息的文字。

    削减的边界：
    - cutter做：删除废话、删除重复、删除无功能修辞、删除解释性旁白
    - cutter不做：修改措辞、替换表达、调整结构、补充内容

    如果某段文字有问题但承载了信息（比如用了烂比喻但确实传递了新感受），
    不删，标记给polisher处理。

[文件结构]
    cutter-skill/
    └── SKILL.md    # 本文件

    削减时参考：
    - shared/deai-rules.md（识别AI典型填充模式）

    输入：
    - chapters/chNN.md（待削减章节）
    - plans/chNN-skeleton.md（骨架稿，保护承重内容）

    输出：
    - chapters/chNN.md（覆写）

[功能]

    [削减章节]

        第一步：读取输入
            - 读取待削减的章节正文（chapters/chNN.md）
            - 读取骨架稿（plans/chNN-skeleton.md）
            - 读取 shared/deai-rules.md（识别模式用）

        第二步：建立保护清单
            从骨架稿中提取所有承重 beat 对应的核心动作和关键台词。
            这些内容在削减中绝对不能被删除。

            输出格式：
            ```
            「保护清单」
            - 场景1承重beat：[列出核心动作/台词]
            - 场景2承重beat：[列出核心动作/台词]
            ...
            ```

        第三步：逐段信息密度判断
            将章节按自然段落分组（每100-200字为一个判断单元），
            对每个单元执行三问检查：

            问题1：这段是否包含新信息？
                "新信息"定义：
                - 新事件（角色做了改变状态的动作）
                - 新事实（读者此前不知道的信息）
                - 新状态（角色的情绪/关系/处境发生了变化）
                - 新感官（第一次建立场景的某个感官维度）

                不算新信息：
                - 用另一种说法重复上文已说过的事
                - 用比喻重新描述已经通过动作展现的情绪
                - 解释读者已经能从场景中推断的含义
                - 用排比强调已经表达过的观点

            问题2：如果删掉，读者能否自行推断？
                - 如果前面的动作/对话已经传递了这个信息 → 可推断 → 可删
                - 如果这是唯一传递此信息的渠道 → 不可推断 → 保留

            问题3：是否在保护清单中？
                - 是 → 绝对保留
                - 否 → 根据前两问决定

        第四步：执行必删清单扫描
            不依赖逐段判断，直接扫描以下模式并删除：

            [解释性旁白]
                特征：出现在动作/对话之后，开头常带"她知道""他明白""这意味着"
                示例：
                    他把门摔上。
                    他已经忍无可忍了。← 删。摔门已经传递了这个信息。

                    "我不需要你的同情。"她转身走了。
                    她的自尊心不允许她在他面前示弱。← 删。对话和动作已经说明了一切。

            [重述/变体重复]
                特征：相邻两段说的是同一件事，只是换了措辞
                示例：
                    夜色很深，街上没有行人。
                    整条街空荡荡的，只有路灯的光还亮着。← 删第二句。

                    她很愤怒。拳头握得发白，指甲嵌进掌心。
                    ← 删"她很愤怒"。后面的动作已经展示了。

            [无功能比喻]
                判断标准：删掉这个比喻后，读者对角色情绪/状态的理解是否改变？
                如果不改变 → 删。

                示例：
                    她站在窗前看着外面的雨。（动作已传递孤独/等待）
                    雨水像她的心情一样灰暗。← 删。没有新信息。

                    vs.

                    空气突然变稠，像整个房间被灌满了水。← 保留。
                    这个比喻传递了"灵力释放"这个新信息的感官体验。

            [无功能排比]
                判断标准：三个并列项是否在说同一件事的不同侧面？
                如果是 → 保留最精准的一个，删其余。

                示例：
                    他感到愤怒、屈辱、不甘。← 改为"他感到屈辱。"
                    （屈辱是最精准的，愤怒和不甘都是屈辱的衍生）

                    风从北边来，冷的、干的、带着沙土气。← 保留。
                    三个信息各不相同（方向、湿度、气味）。

            [总结性段落]
                特征：场景结尾或章节结尾，叙述者总结"这一刻的意义"
                常见句式："这一刻，她终于明白了……""从那天起……""或许这就是……"
                处理：直接删除整段。场景本身已经说明了一切。

            [情绪标签堆叠]
                特征：连续使用多个词描述同一种情绪
                示例：
                    她感到悲伤、心碎、绝望，一种深入骨髓的痛苦。
                    ← 全部删除。如果前面有动作展示悲伤，这段多余。
                    如果前面没有动作展示，标记给writer补充动作，然后删这段。

            [读者已知信息的内心重复]
                特征：角色内心思考读者已经从前文知道的事
                示例：
                    （读者已经在上一章看到了张三背叛的场景）
                    她想起昨天的事。张三竟然背叛了她。← 删。
                    除非这个"想起"触发了新的行动或新的理解。

        第五步：连贯性修复
            删除后通读全文，检查：
            - 段落之间是否因删除产生跳跃
            - 如果有跳跃，检查是否可以通过删除更多（而非添加）来解决
              （比如删掉的段落的上一段结尾本身就是好的过渡）
            - 如果确实需要一两个连接词或短句来衔接 → 允许添加，
              但添加内容不超过20字/处

        第六步：输出
            - 覆写 chapters/chNN.md
            - 生成削减报告返回主Agent

[削减的边界判断]
    以下情况不删除，标记给对应角色：

    - 比喻传递了新感受但比喻本身写得差 → 标记给polisher替换
    - 对话内容重复但可能是刻意的人物习惯 → 标记给主Agent确认
    - 大段描写看似冗余但可能服务于节奏减缓 → 对照场景规划中的节奏权重判断
      如果规划标注此处为"重"且是情感沉淀段 → 保留
      如果规划标注此处为"轻" → 削减

[字数保护]
    削减后字数不应低于2500字。
    如果削减后低于2500字，说明原文信息密度有结构性问题，
    在报告中标注"建议 writer 补充实质内容"，
    但仍然删除废话——不因为字数要求而保留废话。

[注意事项]
    - cutter 的目标不是让文章"更好"，而是让文章"更瘦"
    - 不要因为某段"写得好"就保留它。好的废话仍然是废话
    - 不要试图"改善"文字。改善是polisher的事
    - 对话中的废话也要删（角色说了不推进剧情的废话）
      但注意区分：角色的闲聊如果服务于关系建立或气氛营造 → 保留
    - 不修改 bible/ 目录下任何文件

