Install
openclaw skills install @ldxs001/novel-weaver结构化小说写作辅助技能。场景配置→大纲生成→因果链双重验证→pipeline流程门禁→子结构先行规划→情绪混合系统→文风约束→人格驱动→分段写作→连通性补充→风格校验+逻辑检查+大纲忠实度+结尾收束验证。全流程硬约束+门禁跟踪,含MBTI+荣格原型人格、数值化混合情绪、文风槽位。
openclaw skills install @ldxs001/novel-weaver本文档由 skill-standardization 自动化审计与维护。
novel_state_manager.py 对 chapters[].title/overview、sub_structures[].title/summary/tone、characters[].name/role/traits/mbti/archetype、novel_info/writing_style/setting 做 MD5 指纹校验,LLM 不可更新。仅 word_count/status/timeline/notes 等运行时字段可更新plan-chapter(含情绪 tone + 可选 emotions)→ novel_causality_check.py sub-structure(因果链验证)→ context_loader 通过子结构存在性检查,才可开始写作L##S## 标记行(会被阻断)novel_state_manager.py add-char,每章结束时 novel_timeline.py addfinalize-chapter:章内连通性 → 跨章承诺链 → 风格校验 → 逻辑检查 → 聚合硬性问题并阻断(不通过则不标记门禁,不推进 phase),通过后自动推进 phasenovel_fidelity.py(大纲忠实度)+ verify-ending(结尾收束验证)+ set-phase stage3_ready⚠️ LLM 禁止手工拼写路径! 以下代码可自动获取正确路径:
列出所有项目:
import sys; sys.path.insert(0, r'~/.workbuddy/skills/novel-weaver/scripts')
from _path_utils import list_projects, resolve_state_path, DATA_DIR
projects = list_projects()
# DATA_DIR = ~/.workbuddy/skills/.standardization/novel-weaver/projects/
读取项目状态:
# 通过 _path_utils 自动解析(优先)
state_path = resolve_state_path()
if state_path:
import json; state = json.loads(open(state_path, encoding='utf-8').read())
# 或直接用完整路径(如已知项目名)
from _path_utils import DATA_DIR
proj = DATA_DIR / '项目名' / 'data' / 'novel_state.json'
目录结构(代码推导,仅供理解):
{DATA_DIR}/<项目名>/
├── data/novel_state.json ← 状态文件
├── data/.workbuddy/gate_state.json ← 门禁状态
├── data/reports/ ← 检查报告
├── chapters/L##/S##.txt ← 章节正文(每子结构一个文件)
└── .project ← 路径缓存
正向触发:
否定条件:
📚 渐进式加载:本技能采用渐进式 MD 体系,
SKILL.md为入口(≤230行),详细内容拆分到references/*.md按需加载。
本技能采用渐进式 MD 体系,SKILL.md 为入口(≤230行),详细内容拆分到 references/。
| 文件 | 内容 |
|---|---|
| references/execution_standards.md | 字数管理 / 文体规范 / novel_state.json 结构 / 子结构文件格式 / 章节输出 / 时间线 / 角色表 / 结尾收束 |
| references/hooks.md | 参考文档 |
| references/antipatterns.md | 常见反模式与正确做法 |
| references/faq.md | 常见问题与排除 |
| references/changelog.md | 版本更新日志 |
| references/examples.md | 使用示例 |
| references/permissions.md | 权限说明 |
| references/LICENSE.md | MIT 许可证 |
| 文件名 | 分类 | 包含内容 | 审计关联 |
|---|---|---|---|
references/LICENSE.md | 许可协议 | 开源许可证声明(MIT)。包含:MIT 许可证完整文本。 | R-26 |
references/antipatterns.md | 规范指南 | skill 编写中的常见反模式。包含:错误做法示例、正确做法示例、避坑指引。 | R-18 |
references/changelog.md | 版本管理 | 版本更新日志。包含:版本号、更新类型、修复项、升级说明。 | R-24 |
references/examples.md | 使用示例 | 各场景完整执行示例。包含:CLI 命令、执行过程、输出结果。 | R-25 C-17 |
references/execution_standards.md | 参考文档 | / 层级 / 上限 / 说明 / | 无 |
references/faq.md | 常见问题 | 常见疑问与解答。包含:问题分类、原因分析、解决方案。 | R-19, R-25 C-19 |
references/hooks.md | 参考文档 | 门禁状态查看:python novel_pipeline_gate.py status <state_path> | 无 |
references/permissions.md | 权限与测试 | 权限扫描说明与测试结论。包含:风险等级、高权限操作说明、测试概览、计时统计。 | R-15, R-16 |
| 能力 | 说明 | 限制 |
|---|---|---|
| 初始化小说项目 | 创建novel_state.json骨架,支持短篇/中篇/长篇 | 仅生成JSON骨架,不自动填充剧情内容 |
| 章节子结构规划 | 为每章注册3-5个子结构,配置标题/概述/情绪基调 | 概述需≥12有效字符;规划字段写入后MD5锁定不可更改 |
| 子结构原子写入 | 逐子结构写入正文,自动校验格式/字数/署名/行号 | 每子结构≤200行;正文禁止L##S##标记行 |
| 因果链验证 | 章级和子结构级双模式因果递进验证 | 仅检查关键词重叠和因果递进,无法验证剧情合理性 |
| 四合一章节完结检查 | 章内连通性+跨章承诺链+风格校验+逻辑检查 | HARD问题阻断并生成_fixes.json,需人工修复 |
| 全文收束验证 | 大纲忠实度报告+结尾封闭式/开放式/悬停式验证 | 仅验证末章末子结构,之前的章节需独立检查 |
不支持:
环境要求:
| 能力 | 说明 | 限制 |
|---|---|---|
| 初始化小说项目 | 创建novel_state.json骨架,支持短篇/中篇/长篇 | 仅生成JSON骨架,不自动填充剧情内容 |
| 章节子结构规划 | 为每章注册3-5个子结构,配置标题/概述/情绪基调 | 概述需≥12有效字符;规划字段写入后MD5锁定不可更改 |
| 子结构原子写入 | 逐子结构写入正文,自动校验格式/字数/署名/行号 | 每子结构≤200行;正文禁止L##S##标记行 |
| 因果链验证 | 章级和子结构级双模式因果递进验证 | 仅检查关键词重叠和因果递进,无法验证剧情合理性 |
| 四合一章节完结检查 | 章内连通性+跨章承诺链+风格校验+逻辑检查 | HARD问题阻断并生成_fixes.json,需人工修复 |
| 全文收束验证 | 大纲忠实度报告+结尾封闭式/开放式/悬停式验证 | 仅验证末章末子结构,之前的章节需独立检查 |
不支持: