How this skill is triggered — by the user, by Claude, or both
Slash command
/webnovel-writer:webnovel-initThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
- 通过结构化交互收集足够信息,避免“先生成再返工”。
references/creativity/anti-trope-game.mdreferences/creativity/anti-trope-rules-mystery.mdreferences/creativity/anti-trope-urban.mdreferences/creativity/anti-trope-xianxia.mdreferences/creativity/category-constraint-packs.mdreferences/creativity/creative-combination.mdreferences/creativity/creativity-constraints.mdreferences/creativity/inspiration-collection.mdreferences/creativity/market-positioning.mdreferences/creativity/market-trends-2026.mdreferences/creativity/selling-points.mdreferences/genre-tropes.mdreferences/narrative-voice-guide.mdreferences/system-data-flow.mdreferences/worldbuilding/character-design.mdreferences/worldbuilding/faction-systems.mdreferences/worldbuilding/power-systems.mdreferences/worldbuilding/setting-consistency.mdreferences/worldbuilding/world-rules.md.webnovel/state.json、设定集/*、大纲/总纲.md、.webnovel/idea_bank.json。/webnovel-plan 与 /webnovel-write 可直接运行。init_project.py。Read/Grep/Bash/Task/AskUserQuestion 辅助收集(搜索通过 Bash 调用 tavily_search.py)。采用分级加载,避免一次性灌入全部资料:
路径约定:
references/... 相对当前 skill 目录(${CLAUDE_PLUGIN_ROOT}/skills/webnovel-init/references/...)。templates/... 相对插件根目录(${CLAUDE_PLUGIN_ROOT}/templates/...)。默认加载清单:
references/genre-tropes.mdtemplates/genres/{genre}.md../../templates/golden-finger-templates.mdreferences/worldbuilding/faction-systems.mdreferences/creativity/market-trends-2026.mdreferences/genre-tropes.md
references/system-data-flow.md
/plan、/write 的数据流一致性检查。references/narrative-voice-guide.md
/write 的 Step 1 内置消费。references/worldbuilding/character-design.md
references/worldbuilding/faction-systems.md
references/worldbuilding/power-systems.md
references/worldbuilding/setting-consistency.md
references/worldbuilding/world-rules.md
references/creativity/creativity-constraints.md
references/creativity/category-constraint-packs.md
references/creativity/creative-combination.md
references/creativity/inspiration-collection.md
references/creativity/selling-points.md
references/creativity/market-positioning.md
references/creativity/market-trends-2026.md
references/creativity/anti-trope-xianxia.md
references/creativity/anti-trope-urban.md
references/creativity/anti-trope-game.md
references/creativity/anti-trope-rules-mystery.md
Read/Grep:读取项目上下文与参考文件(README.md、CLAUDE.md、templates/genres/*、references/*)。Bash:执行 init_project.py、文件存在性检查、最小验证命令。Task:拆分并行子任务(如题材映射、约束包候选生成、文件验证)。AskUserQuestion:用于关键分歧裁决、候选方案选择、最终确认。Bash(Tavily 搜索):通过 ${SCRIPTS_DIR}/tavily_search.py 直连 Tavily API,支持快速搜索(search)和深度研究(research),禁止使用 MCP 工具(WebSearch/WebFetch)。环境设置(bash 命令执行前):
export WORKSPACE_ROOT="${CLAUDE_PROJECT_DIR:-$PWD}"
if [ -z "${CLAUDE_PLUGIN_ROOT}" ] || [ ! -d "${CLAUDE_PLUGIN_ROOT}/scripts" ]; then
echo "ERROR: 未设置 CLAUDE_PLUGIN_ROOT 或缺少目录: ${CLAUDE_PLUGIN_ROOT}/scripts" >&2
exit 1
fi
export SCRIPTS_DIR="${CLAUDE_PLUGIN_ROOT}/scripts"
必须做:
${CLAUDE_PLUGIN_ROOT}/scripts${SCRIPTS_DIR}/webnovel.pypython "${SCRIPTS_DIR}/webnovel.py" --project-root "${WORKSPACE_ROOT}" wherereferences/system-data-flow.md(用于校对 init 产物与 plan/write 输入链路)references/genre-tropes.mdtemplates/genres/(仅在用户选定题材后按需读取)输出:
搜索统一使用 Tavily 直连 API 脚本(${SCRIPTS_DIR}/tavily_search.py),禁止使用 MCP 工具(WebSearch/WebFetch)。
init 阶段搜索是一次性投入、长期受益,应高频使用:
两种搜索模式:
python -X utf8 "${SCRIPTS_DIR}/tavily_search.py" search "查询词" --max 5python -X utf8 "${SCRIPTS_DIR}/tavily_search.py" research "研究问题" --model pro每个 Step 的具体搜索内容:
Search 失败处理:立即停止,检查 Tavily API key 配置(环境变量 / .env / ~/.claude.json)。
调研笔记:搜索到的有价值信息保存到 调研笔记/题材参考.md,供后续 plan/write 复用。
收集项(必收):
收集项(可选):
题材集合(用于归一化与映射):
交互方式:
目的:在初始化阶段建立全书统一的风格锚点,供后续
/write的 Step 1、style-adapter 和 prose-quality-checker 作为跨章一致性基准。缺失此基准会导致跨章风格漂移、Anti-AI 检测不过。
收集项(必收):
收集项(可选):
交互方式:
设定集/叙事声音.md。参考加载:references/narrative-voice-guide.md(L1 必读)
收集项(必收):
收集项(可选):
收集项(必收):
收集项(条件必收):
收集项(必收):
收集项(题材相关):
收集项(新增 - 节奏偏好):
节奏偏好写入
state.json的pacing_preference,供 pacing-checker 调整阈值而非使用硬编码默认值。
流程:
references/creativity/creativity-constraints.md 的 8.1 五维评分),辅助用户决策。备注:
目的:前者防止情感分布不均(全书一个调无波动),后者直接影响首章留存率(网文最关键指标)。
收集项(必收):
交互方式:
输出:设定集/情感蓝图.md
首章留存率是网文最关键的指标。”前三章黄金法则”:必须在前三章完成核心世界/身份/冲突的铺垫并留下章节级悬念。
收集项(必收):
交互方式:
输出:设定集/开篇策略.md,同时将核心字段写入 idea_bank.json 的 opening_strategy。
目的:决定本书是否启用典故引用系统(古典诗词 / 民俗 / 经典 / 地方歌谣 / 原创口诀 / 互联网梗)以及密度等级。这是质感护城河的核心决策,也是《道诡异仙》《我不是戏神》《十日终焉》级作品的隐藏护城河。
位置的重要性:必须在 Step 6 一致性复述之前完成。若此步骤被跳过,Step 6 摘要会缺失"典故系统核",进而导致执行生成阶段无法创建
典故引用库.md和原创诗词口诀.md,最终 init 成功标准 fail。
触发强度表(AI 必须基于 Step 1 题材自动判断并展示给用户):
| 题材 | 启用强度 | 默认推荐密度 |
|---|---|---|
| 规则怪谈 / 悬疑灵异 / 克苏鲁 / 民俗志怪 | 强制启用 | 中密度(每 5 章 1 次) |
| 修仙 / 仙侠 / 玄幻 / 历史 / 古言 / 历史脑洞 | 强制启用 | 中密度 |
| 都市脑洞 / 现实题材 / 现代言情 | 默认启用 | 低密度(每 10 章 1 次) |
| 科幻 / 网游 / 电竞 | 可选启用 | 低密度 / 按需 |
| 作者选"品质路线" 或对标《道诡异仙》《十日终焉》等 | 强制启用(覆盖题材默认) | 高密度(每 3 章 1 次) |
收集项(必收):
density_level:典故密度偏好(AI 必须展示 5 个选项让用户选择)
state.json.cultural_reference_disabled_reason)source_pools:启用的来源池(多选,至少选 2 个,不启用时跳过此项)
character_literary_totem:为关键角色(主角 / 女主 / 主要反派 / 师傅级导师)分配文学图腾
original_poems_plan:原创诗词创作计划
internet_meme_policy:互联网梗使用政策(若选择启用"互联网梗"来源池)
交互方式:
参考加载(L1 必读):${CLAUDE_PLUGIN_ROOT}/skills/webnovel-write/references/writing/classical-references.md — 完整的引用类型分级、融入技法、密度控制、"典故即伏笔"技法、Search tool 强制使用规范(第九节)
🔍 Search tool 强制使用(防 AI 幻觉 + 时效性):
见
classical-references.md第九节完整规范。AI 记忆的典故、诗词、民俗常有字词错误、作者错误、时代错位等幻觉;互联网热梗时效性强。本项目追求"最高质量"的典故系统不能依赖 AI 记忆——必须通过 search tool 实时验证。
init Step 5.6 阶段必须调用 Tavily Search 的 4 个场景:
建立外部诗词典故来源池时:每条候选诗词必须 search 验证
Tavily query: "{诗词首句} 作者 {claimed_author} 原文"
验证点:字词准确、作者正确、出处正确
失败则不登记
建立民俗典故库时:每条民俗条目必须 search 验证
Tavily query: "{地域} {民俗元素} 典故 出处"
验证点:民俗真实存在、地域正确
失败则标记"待人工核实"
创作原创诗词草稿前:必须搜索撞车检查
Tavily query: '"{original_draft_first_line}"' # 引号精确匹配
若搜索返回已存在相同首句的作品 → 重写
建立互联网梗白名单时(若启用互联网梗来源池):必须搜索当前时效性
Tavily query: "2026 {meme_name} 网络用语 最新使用"
time_range: "month"
若梗已过时(3 个月无引用)→ 移出白名单
工具优先级:Tavily Search MCP(首选)→ Tavily Research MCP → WebSearch(降级)
中文搜索强制:见 user memory feedback_search_in_chinese.md——中文小说项目所有搜索必须用中文,禁止用英文。
违规判定:
verified_at 和 verification_source 字段 → init fail输出:
cultural_reference_system 字段写入 idea_bank.json(详细 schema 见"执行生成"段落)AI 违规判定:
density_level → init fail必须输出”初始化摘要草案”并让用户确认:
确认规则:
{
"project": {
"title": "",
"genre": "",
"target_words": 0,
"target_chapters": 0,
"one_liner": "",
"core_conflict": "",
"target_reader": "",
"platform": ""
},
"protagonist": {
"name": "",
"desire": "",
"flaw": "",
"archetype": "",
"structure": "单主角"
},
"relationship": {
"heroine_config": "",
"heroine_names": [],
"heroine_role": "",
"co_protagonists": [],
"co_protagonist_roles": [],
"antagonist_tiers": {},
"antagonist_level": "",
"antagonist_mirror": ""
},
"golden_finger": {
"type": "",
"name": "",
"style": "",
"visibility": "",
"irreversible_cost": "",
"growth_rhythm": ""
},
"world": {
"scale": "",
"factions": "",
"power_system_type": "",
"social_class": "",
"resource_distribution": "",
"currency_system": "",
"currency_exchange": "",
"sect_hierarchy": "",
"cultivation_chain": "",
"cultivation_subtiers": ""
},
"constraints": {
"anti_trope": "",
"hard_constraints": [],
"core_selling_points": [],
"opening_hook": ""
},
"narrative_voice": {
"pov": "",
"tone": "",
"description_density": "",
"sensory_focus": "",
"dialogue_ratio": "",
"rhetoric_style": "",
"style_taboos": []
},
"emotional_blueprint": {
"overall_tone": "",
"volume1_emotional_peaks": [
{"event": "", "target_emotion": "", "position": ""}
],
"emotional_taboos": []
},
"opening_strategy": {
"opening_type": "",
"chapter1_scene": "",
"chapter1_must_convey": [],
"chapter1_hook": "",
"first3_chapters_plan": [],
"golden_finger_reveal": ""
},
"pacing_preference": {
"coolpoint_frequency": "",
"overall_pace": "",
"climaxes_per_volume": ""
},
"theme": {
"core_theme": "",
"reference_works": []
}
}
未满足以下条件前,禁止执行 init_project.py:
idea_bank.json.cultural_reference_system.enabled 字段非空(true/false)density_level 非空(高/中/低/按需之一),source_pools 至少 2 项,character_literary_totem 至少为主角配置 1 项state.json.cultural_reference_disabled_reason 非空project_root 必须由书名安全化生成(去非法字符,空格转 -)。. 开头,自动前缀 proj-。${CLAUDE_PLUGIN_ROOT})。python "${SCRIPTS_DIR}/webnovel.py" init \
"{project_root}" \
"{title}" \
"{genre}" \
--protagonist-name "{protagonist_name}" \
--target-words {target_words} \
--target-chapters {target_chapters} \
--golden-finger-name "{gf_name}" \
--golden-finger-type "{gf_type}" \
--golden-finger-style "{gf_style}" \
--core-selling-points "{core_points}" \
--protagonist-structure "{protagonist_structure}" \
--heroine-config "{heroine_config}" \
--heroine-names "{heroine_names}" \
--heroine-role "{heroine_role}" \
--co-protagonists "{co_protagonists}" \
--co-protagonist-roles "{co_protagonist_roles}" \
--antagonist-tiers "{antagonist_tiers}" \
--world-scale "{world_scale}" \
--factions "{factions}" \
--power-system-type "{power_system_type}" \
--social-class "{social_class}" \
--resource-distribution "{resource_distribution}" \
--gf-visibility "{gf_visibility}" \
--gf-irreversible-cost "{gf_irreversible_cost}" \
--currency-system "{currency_system}" \
--currency-exchange "{currency_exchange}" \
--sect-hierarchy "{sect_hierarchy}" \
--cultivation-chain "{cultivation_chain}" \
--cultivation-subtiers "{cultivation_subtiers}" \
--protagonist-desire "{protagonist_desire}" \
--protagonist-flaw "{protagonist_flaw}" \
--protagonist-archetype "{protagonist_archetype}" \
--antagonist-level "{antagonist_level}" \
--target-reader "{target_reader}" \
--platform "{platform}"
idea_bank.json写入 .webnovel/idea_bank.json:
{
"selected_idea": {
"title": "",
"one_liner": "",
"anti_trope": "",
"hard_constraints": []
},
"constraints_inherited": {
"anti_trope": "",
"hard_constraints": [],
"protagonist_flaw": "",
"antagonist_mirror": "",
"opening_hook": ""
},
"opening_strategy": {
"opening_type": "",
"chapter1_scene": "",
"chapter1_must_convey": [],
"chapter1_hook": {"type": "", "content": ""},
"first3_chapters_plan": ["", "", ""],
"golden_finger_reveal": ""
}
}
基于收集到的数据,自动生成实质性内容(非空模板):
角色卡填充(必做):
主角卡.md:从 protagonist.desire/flaw/archetype 生成完整的性格底色、动机、OOC警戒
金手指设计.md:从 golden_finger 数据生成使用规则、升级路线、爽点嵌入、反馈节奏女主卡.md:若 heroine_config != "无",至少填写基本信息+性格底色+与主角关系定位+语音规则
反派设计.md:从 antagonist_tiers 生成分层设计+镜像对抗+第1卷小反派详细叙事声音文件生成(必做):
设定集/叙事声音.md:从 narrative_voice 数据生成,包含:
style-adapter (Step 2B) 必须参照此基准,prose-quality-checker 用此检查跨章一致性情感蓝图文件生成(必做):
设定集/情感蓝图.md:从 emotional_blueprint 数据生成,包含:
emotion-checker 参照蓝图验证情感节奏,Context Agent 参照设计 emotion_rhythm开篇策略文件生成(必做):
设定集/开篇策略.md:从 opening_strategy 数据生成,包含:
Context Agent 在第 1-3 章必须读取此文件,write Step 1 Golden Opening Protocol 参照执行生成内容硬约束(2026-04-16 · 防伪神经科学污染):
post_draft_check.CHINESE_OPENING_REJECT_PATTERNS + reader-naturalness-checker 双硬闸门验证模板规范(init 生成开篇策略.md 时必须遵循):
### 首句设计原则(反伪科学)
- **唯一金标准**:汉语母语读者 0.5 秒觉得通顺 + 想翻下一章
- **禁用设计话术**:不写"字数阈值"、"神经科学依据"、"镜像激活"
- **对标爆款首句**(举例 · 不是要求模仿):
- 《第一序列》:"避难所里的早晨永远是灰色的。"(氛围钩)
- 《末日生存方案供应商》:"陈溪刚下班就接到一个奇怪的电话。"(反常开场)
- 《庆余年》:"这是一个由书评引起的故事。"(元叙事钩)
- **首句必须通过**:
- `post_draft_check.py` 的 CHINESE_OPENING_REJECT_PATTERNS(X 在 + 瞬时动词硬拦)
- `reader-naturalness-checker` 的 verdict(独立视角评分)
配套文件创建(必做):
设定集/道具与技术.md:创建带章节时间线模板头的空文件设定集/伏笔追踪.md:创建带分类模板的空文件(含"典故伏笔"分类段)设定集/资产变动表.md:创建带表头的空文件典故引用库创建(按题材自动触发,必做或明确拒绝才跳过):
触发策略(AI 必须主动执行,不得默默跳过):
题材类型 启用强度 说明 规则怪谈 / 悬疑灵异 / 克苏鲁 / 民俗志怪 强制启用 典故是世界规则的载体,不启用会导致文笔塌掉 修仙 / 仙侠 / 玄幻 / 历史 / 古言 / 历史脑洞 强制启用 古典诗词/道佛经典/正史野史是天然素材库 都市脑洞 / 现实题材 / 现代言情 默认启用 网络梗 + 现代文化典故,可通过配角使用 科幻 / 网游 / 电竞 可选启用 需要原创口诀/术语库支撑,典故较少 作者选择"悬疑正剧品质路线" / 对标《道诡异仙》《十日终焉》《我不是戏神》等 强制启用(覆盖题材默认) 质感护城河之一 AI 必须在创建流程中主动询问作者一次:"本书是否启用典故引用系统?(诗词/民俗/原创口诀/互联网梗融合)" 选项:
- 启用 · 高密度(每 3 章 1 次,对标道诡异仙)
- 启用 · 中密度(每 5 章 1 次,推荐)
- 启用 · 低密度(每 10 章 1 次,克制派)
- 按需(Context Agent 自动判断)
- 不启用(必须记录原因到
state.json.cultural_reference_disabled_reason)
创建内容:
设定集/典故引用库.md:基于题材和世界观,创建带完整模板的引用库初稿。包含:
原创诗词口诀.md 的索引段设定集/原创诗词口诀.md:创建带完整模板的文件。必须包含:
state.json.cultural_reference_disabled_reason 字段,并在 idea_bank.json 标注 cultural_reference_system.enabled: false${CLAUDE_PLUGIN_ROOT}/skills/webnovel-write/references/writing/classical-references.md 第六节整合到 idea_bank.json(必做):
{
"cultural_reference_system": {
"enabled": true,
"density_level": "高/中/低/按需",
"reference_files": ["设定集/典故引用库.md", "设定集/原创诗词口诀.md"],
"character_literary_totem": {"角色名": "对应诗词/典故"},
"original_poems_planned": [...],
"key_chapter_allusions": {"第1章": "...", "第3章": "...", "第N章": "..."},
"internet_meme_policy": {"protagonist_use": "严禁/允许"}
}
}
语音规则格式(每个角色卡必须包含):
## 语音规则(写作时强制遵循)
1. {具体的用词/句式规则}
2. {具体的语气/节奏规则}
3. {具体的情绪表达方式}
4. {标志性口头禅或说话习惯}(可选)
5. {禁止的表达方式}(可选)
必须补齐:
执行检查:
test -f "{project_root}/.webnovel/state.json"
find "{project_root}/设定集" -maxdepth 1 -type f -name "*.md"
test -f "{project_root}/大纲/总纲.md"
test -f "{project_root}/.webnovel/idea_bank.json"
test -d "{project_root}/调研笔记"
test -f "{project_root}/.webnovel/hygiene_check.py" # Step 7 commit 前强制闸门
hygiene_check 部署(init 最后必做):
# 部署框架版 hygiene_check shim — 写到项目 .webnovel/ 下
cat > "{project_root}/.webnovel/hygiene_check.py" <<'PYSHIM'
#!/usr/bin/env python3
"""项目 hygiene_check 入口 shim — 转发到框架版并加载项目本地扩展。
解析顺序:
1. $CLAUDE_PLUGIN_ROOT/scripts/hygiene_check.py
2. 向上走祖先目录,查找 webnovel-writer/scripts/hygiene_check.py
3. ~/.claude/plugins/cache/*/webnovel-writer/*/scripts/hygiene_check.py
(glob 所有版本,按 mtime 降序取最新——容忍 5.6.0 → 5.7.0 版本升级)
"""
import os, sys
from pathlib import Path
def resolve_framework_script() -> Path:
env_root = os.environ.get("CLAUDE_PLUGIN_ROOT")
if env_root:
p = Path(env_root) / "scripts" / "hygiene_check.py"
if p.exists():
return p
here = Path(__file__).resolve()
for ancestor in [here.parent, *here.parents]:
cand = ancestor / "webnovel-writer" / "scripts" / "hygiene_check.py"
if cand.exists():
return cand
plugin_cache = Path.home() / ".claude" / "plugins" / "cache"
if plugin_cache.exists():
candidates = sorted(
plugin_cache.glob("*/webnovel-writer/*/scripts/hygiene_check.py"),
key=lambda p: p.stat().st_mtime if p.exists() else 0,
reverse=True,
)
if candidates:
return candidates[0]
raise SystemExit("ERROR: 找不到框架版 hygiene_check.py。请设置 CLAUDE_PLUGIN_ROOT。")
def main():
framework = resolve_framework_script()
sys.path.insert(0, str(framework.parent))
import hygiene_check as hc
sys.argv = [str(framework)] + sys.argv[1:]
if "--project-root" not in sys.argv:
sys.argv.extend(["--project-root", str(Path(__file__).resolve().parent.parent)])
sys.exit(hc.main())
if __name__ == "__main__":
main()
PYSHIM
chmod +x "{project_root}/.webnovel/hygiene_check.py" 2>/dev/null || true
项目本地扩展(可选):若项目有额外检查需求,可创建 .webnovel/hygiene_check_local.py 并定义 run(root, chapter, report) 函数。框架版会自动加载。
规划层一致性(推荐 · 中长篇必配):当详细大纲覆盖多卷、有关键章号事件(如"末世爆发章"、"金手指觉醒章")或多线伏笔时,推荐在 .webnovel/plan_consistency_config.json 里配置规则,由 scripts/plan_consistency_check.py(框架版)在 hygiene_check 里自动检查。config 结构:
drift.rules:章号漂移规则列表(feature_pattern / old_values / new_value)gender.checks:人物伏笔性别一致性(state.json + 规划文件跨源校验)density.tracks:阅读密度滑窗统计(角色/反派出场频次)若项目本地另有 .webnovel/plan_consistency_check.py,shim 优先跑本地脚本;都没有时整体跳过(退出 0)。典型使用:短篇/中短篇可以不配;长篇(尤其末世/修仙/系列/多卷)强烈建议配,避免 v2 大纲修订后残留旧章号漂移到 commit。
成功标准:
state.json 存在且关键字段不为空(title/genre/target_words/target_chapters)。世界观.md、力量体系.md、主角卡.md、金手指设计.md。女主卡.md 存在且至少有基本信息+语音规则。叙事声音.md 存在且包含视角+语气+密度+感官+比例(非空模板)。情感蓝图.md 存在且包含情感基调+至少2个情感节点。开篇策略.md 存在且包含开篇类型+第1章设计+前3章蓝图。道具与技术.md、伏笔追踪.md、资产变动表.md。典故引用库.md 和 原创诗词口诀.md 必须存在且非空模板,缺失判 init failstate.json.cultural_reference_disabled_reason 记录拒绝原因idea_bank.json 必须包含 cultural_reference_system 顶层字段(enabled/density_level/reference_files/character_literary_totem/original_poems_planned/key_chapter_allusions/internet_meme_policy)总纲.md 已填核心主线、约束字段与主题内核。idea_bank.json 已写入且包含 opening_strategy 且与最终选定方案一致。新项目自动享用以下插件级能力,无需项目侧配置:
reader-naturalness-checker 汉语母语自然度 + reader-critic-checker 读者锐评(先跑,与其他 11 个平等参与 overall_score 聚合,不 block 流程——其 problems 和其他 checker 的 issues 合并进入 Step 4 定向修复)flow-checker(读者视角流畅度 · 一人分饰两角失忆裸读协议)reader_flow + naturalness + reader_critic,让外部 AI 也参与读者视角评估,与内部 13 checker 对齐,共 182 份独立评分init 完成后的 /webnovel-write 会自动触发全部 ABC 流程。首章/规则揭示章/反派首露章等关键章节可手动用 flow_union_runner.py --runs 3 做 N=3 重跑 issue union 聚合。
详细集成设计见 归途-殡仪馆规则/.webnovel/tmp/flow_test/ABC_FULL_DEPLOYMENT_REPORT.md(示例项目)或 agents/flow-checker.md + skills/webnovel-write/references/step-6-audit-matrix.md (C13/C14/C15)。
触发条件:
idea_bank.json 缺失或内容不一致。恢复流程:
init_project.py;npx claudepluginhub xuanranl/webnovelwriter --plugin webnovel-writerGuides deep initialization of web novel projects through phased interviews, collecting full creative information and generating project skeletons and constraint files for downstream planning and writing workflows.
Short web novel writing assistant. Guides from concept to draft, focusing on emotional impact and pacing. Includes genre style packs and submission tips. Activated via /story-short-write.
Orchestrates complete web novel design: generates bootstrap docs, character sheets, and plot hook guides with automated domain research sub-agent. For full novel outlines.