shaomang/mtnode-aio/decompose-novel-plot
Claude Code and agent skill by shaomang/mtnode-aio
- community
Checking that the SKILL.md file is still in the repository.
将小说文字剧情按深度档位拆成人物、情节、结构、主题、环境/背景、语言风格、伏笔、事实;按第x幕建节点层与 YAML 保存链;维护世界书(规则/人物/场景/势力/账本/写法)并持续补充。在用户要求拆解小说/剧情、分幕、建档、世界书或生成剧情分析画布时使用。
Install
npx vskill@latest install shaomang/mtnode-aio/decompose-novel-plotSKILL.md
小说剧情拆解
仅用于全局助手。本流程是结构化拆解与建档,不涉及文本处理流水线。
禁用:任务节点、控制节点、处理节点(proc_* / agent_task)、绘制(createMarks)。只使用 input_text、save/save_text、super 及连线。
用户给出一段(或多段)文字剧情即输入。在当前画布上完成:定档 → 分幕 → 各类目纯文本 + 保存 → 世界书建档/补充。
步骤
mtnode_canvas_get,看现有节点、superTree;若已有「世界书」,复用并合并,勿重复创建。- 确认拆解深度:
快速/标准/完整(见下方档位)。若用户未提及档位,必须先向用户询问并等待明确选择,确认后再继续;不得擅自默认。 - 通读剧情,按情节切成若干幕;每幕起短标题(4–12 字,互不重名)。
- 一次(或分幕分批)
mtnode_canvas_edit搭图,layout: true。创建节点层常需canvas_super审批。 - 拆解结果写入各
input_text的text(合法 YAML);savePath与范畴文件名一致。 - 同步更新「世界书」(规则、人物、场景、势力、账本、写法);新角色先进待确认。
- 用一两句话告知:世界书跨幕复用;续篇只增幕并合并档案。勿提示「点控制 ▶」(本 skill 无控制节点)。
拆解深度档位
| 档位 | 幕内产出 | 世界书 | 证据 | |
|---|---|---|---|---|
| 快速 | 六类目精简 + 伏笔/事实可只列要点 | 索引 + 核心人物/场景壳 + 账本摘要 | 可省略摘录 | |
| 标准 | 八类目完整核心字段 | 概要/规则草稿、正式+待确认人物、场景、势力、双账本、写法草稿 | 关键条带短摘录 | |
| 完整 | 八类目全字段 + 弧线/关系阶段 | 全量子 super 补全;人物按需升到「深入/完整」;形象演变按幕锚点 | 凡断言尽量有 evidence |
推断一律标 confidence: explicit | inferred;禁止编造原文没有的事实。
画布结构
顶层(无控制节点)
| 节点 | kind | 说明 | |
|---|---|---|---|
| 剧情原文 | input_text | 用户可编辑原文;靠画布上方 | |
| 世界书 | super | 画布外常驻;subFolder: 世界书 | |
| 第x幕:{标题} | super | 每幕一个;subFolder: 第x幕 或 幕/第x幕-{标题} |
收纳规则(必做,否则幕内容会散落在顶层)
- 先在
create里建幕节点层(kind: "super",设好title/subFolder/alias,如act1)。 - 该幕所有类目节点(
input_text+save)在同一次mtnode_canvas_edit的create中创建,并每个都写parentSuperId: "act1"(填该幕 super 的 alias / title / id 均可;packIntoSuper等价)。 - 世界书同理:先建
世界书super,再建子 super(parentSuperId指向世界书),再把档案节点的parentSuperId指向对应子 super。 - 创建节点层会触发
canvas_super审批;用户拒绝则不要改用顶层平铺凑合,应停止并说明。 - 搭完用
mtnode_canvas_get抽查:幕内节点的parentSuperId必须等于对应幕 super 的 id。
每一幕节点层内部(八类目)
每个类目一对节点,标题互不重名(加幕前缀,如「第1幕-人物」):
- 纯文本
input_text:text= 该类目 YAML;必须parentSuperId= 本幕 super - 保存
save_text(或save):上游接该类目文本;必须parentSuperId= 本幕 super
| 范畴 | savePath | |
|---|---|---|
| 人物 | 人物.yaml | |
| 情节 | 情节.yaml | |
| 结构 | 结构.yaml | |
| 主题 | 主题.yaml | |
| 环境/背景 | 环境背景.yaml | |
| 语言风格 | 语言风格.yaml | |
| 伏笔 | 伏笔.yaml | |
| 事实 | 事实.yaml |
连线:各类目 input_text → 对应 save_*。幕内人物/场景/势力/伏笔/事实只写本幕激活切片,完整档案以世界书为准,用 ref: 指向全局路径。
世界书内部(子节点层)
世界书下再建子 super(均可设 subFolder;子 super 与内部节点都要设 parentSuperId):
| 子节点层 | subFolder | 内容 | |
|---|---|---|---|
| 规则 | 规则 | 世界概要.yaml、世界规则.yaml | |
| 人物 | 人物 | 正式档案 人物/{姓名}.yaml;待确认 待确认/{姓名}.yaml | |
| 场景 | 场景 | 场景/{场景名}.yaml | |
| 势力 | 势力 | 阵营/{名}.yaml、势力/{名}.yaml、特殊要素/{名}.yaml、关系.yaml | |
| 账本 | 账本 | 伏笔账本.yaml、事实账本.yaml | |
| 写法 | 写法 | 写法资产.yaml(从各幕语言风格沉淀) | |
| (根下) | — | 索引.yaml:全局目录 + 本幕引用切片指针 |
每个 YAML 仍是:input_text → save_*,savePath 如上;节点 parentSuperId 指向所属子 super(或世界书根)。
世界书规则
- 全量在世界书,单幕只取切片:幕内八文件不得塞进整本世界噪音。
- 首次出现:建档案节点 + 保存;信息不足也允许不完整壳。
- 再出现:合并补充(别名、外貌、关系、状态、出场幕次);不删已有字段;冲突记入
revisions,保留证据更强者。 - 待确认 → 正式:新人物默认写入
待确认/;身份锚点稳定或用户确认后,迁入人物/并更新索引;幕内ref跟着改。 - 账本权威:幕内
伏笔.yaml/事实.yaml只含本幕条目,并ref到账本 id;状态变更回写账本(待兑现 / 紧急 / 已回收 / 失效;事实与推断分栏)。 - 写法资产化:各幕
语言风格.yaml提取可复用规则,合并进写法/写法资产.yaml(叙事、人物表达、节奏、反模板要点);不覆盖已启用规则,只追加或修订并记来源幕。 - 角色深度与形象演变:人物档案
depth: 简要|标准|深入|完整;按幕追加appearance_timeline(外貌/服装/状态/场景锚点),不做生图。 - 元素须有叙事用途:势力/地点/要素尽量带
story_value(或 pressure / conflict / scene);地点尽量有进入限制/离开代价/风险。
分幕原则
- 按情节单元分幕(目标推进、冲突升级、转折、收束),不按字数切。
- 幕序连续;单段短文可一幕;长文宁多勿混无关转折。
- 「情节.yaml」须独立讲清起承、冲突、结果、前后衔接。
- 「伏笔.yaml / 事实.yaml」与账本对账,禁止幕内有账本无、或账本有幕内永久遗漏(完整档须扫一遍)。
各类目要点
一律 YAML 1.2;中文键名;未知用 null / []。字段见 schemas.md。
- 人物:本幕出场、动机、进出状态、关系阶段;完整画像在世界书
- 情节:事件、因果、冲突、结果、钩子
- 结构:起承转合、视角、时间线、结构装置
- 主题:母题、象征、本幕主题功能
- 环境/背景:时空、激活地点、氛围、社会规则切片
- 语言风格:语气、修辞、节奏、对话;并回灌写法资产
- 伏笔:本幕植入/推进/回收;状态与账本 id
- 事实:本幕确立的事实 vs 推断;回写事实账本
注意
- 标题全局唯一(含幕前缀)。
subFolder防止各幕同名 yaml 互盖。- 合并前先读已有节点/文件,禁止用空壳覆盖长档案。
- 不创建
control/proc_*/agent_task/ marks;助手直接写入input_text.text。 - 续篇:只新增幕节点层,并合并世界书与账本。
- 防上下文撑爆(重要):
- 单次
create≤ 40 个节点;多幕 / 世界书必须分批 edit,不要一次塞完全部 YAML。 - 幕/世界书 super 默认保持收起(
superOpen: false);收纳子节点后勿全部展开再canvas_get。 input_text正文尽量精炼;完整长文可落盘后靠savePath引用。需要读全文时再按路径读文件,勿反复 get 回灌整本。- 创建节点层会询问
canvas_super:必须批准;若在智能会话中拒绝画布修改,会话会立即停止(设计行为,不是随机断线)。 - 全局助手拒绝单次 edit 不会强杀会话,但工具会报错;应缩小批次后重试,勿把失败当成「已搭完」。
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingext-repo/skills/decompose-novel-plot/SKILL.md
Popularity
- 7-day trend score
- 5
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/shaomang/mtnode-aio/decompose-novel-plot)