Jelajahi Sumber

docs(genres): update taxonomy guidance and template headings

lingfengQAQ 2 minggu lalu
induk
melakukan
8f15762507
42 mengubah file dengan 55 tambahan dan 50 penghapusan
  1. 3 3
      docs/operations/genre-taxonomy-convergence-plan-2026-06-04.md
  2. 11 6
      webnovel-writer/skills/webnovel-init/SKILL.md
  3. 2 2
      webnovel-writer/skills/webnovel-plan/SKILL.md
  4. 1 1
      webnovel-writer/skills/webnovel-review/SKILL.md
  5. 1 1
      webnovel-writer/skills/webnovel-write/SKILL.md
  6. 1 1
      webnovel-writer/templates/genres/修仙.md
  7. 1 1
      webnovel-writer/templates/genres/克苏鲁.md
  8. 1 1
      webnovel-writer/templates/genres/历史古代.md
  9. 1 1
      webnovel-writer/templates/genres/历史脑洞.md
  10. 1 1
      webnovel-writer/templates/genres/古言.md
  11. 1 1
      webnovel-writer/templates/genres/多子多福.md
  12. 1 1
      webnovel-writer/templates/genres/女频悬疑.md
  13. 1 1
      webnovel-writer/templates/genres/宫斗宅斗.md
  14. 1 1
      webnovel-writer/templates/genres/年代.md
  15. 1 1
      webnovel-writer/templates/genres/幻想言情.md
  16. 1 1
      webnovel-writer/templates/genres/悬疑灵异.md
  17. 1 1
      webnovel-writer/templates/genres/悬疑脑洞.md
  18. 1 1
      webnovel-writer/templates/genres/抗战谍战.md
  19. 1 1
      webnovel-writer/templates/genres/无限流.md
  20. 1 1
      webnovel-writer/templates/genres/替身文.md
  21. 1 1
      webnovel-writer/templates/genres/末世.md
  22. 1 1
      webnovel-writer/templates/genres/民国言情.md
  23. 1 1
      webnovel-writer/templates/genres/游戏体育.md
  24. 1 1
      webnovel-writer/templates/genres/狗血言情.md
  25. 1 1
      webnovel-writer/templates/genres/现实题材.md
  26. 1 1
      webnovel-writer/templates/genres/现言脑洞.md
  27. 1 1
      webnovel-writer/templates/genres/电竞.md
  28. 1 1
      webnovel-writer/templates/genres/直播文.md
  29. 1 1
      webnovel-writer/templates/genres/知乎短篇.md
  30. 1 1
      webnovel-writer/templates/genres/种田.md
  31. 1 1
      webnovel-writer/templates/genres/科幻.md
  32. 1 1
      webnovel-writer/templates/genres/系统流.md
  33. 1 1
      webnovel-writer/templates/genres/职场婚恋.md
  34. 1 1
      webnovel-writer/templates/genres/西幻.md
  35. 1 1
      webnovel-writer/templates/genres/规则怪谈.md
  36. 1 1
      webnovel-writer/templates/genres/豪门总裁.md
  37. 1 1
      webnovel-writer/templates/genres/都市异能.md
  38. 1 1
      webnovel-writer/templates/genres/都市日常.md
  39. 1 1
      webnovel-writer/templates/genres/都市脑洞.md
  40. 1 1
      webnovel-writer/templates/genres/青春甜宠.md
  41. 1 1
      webnovel-writer/templates/genres/高武.md
  42. 1 1
      webnovel-writer/templates/genres/黑暗题材.md

+ 3 - 3
docs/operations/genre-taxonomy-convergence-plan-2026-06-04.md

@@ -93,7 +93,7 @@ GenreResolution(
 
 ### 3. Taxonomy Index
 
-新增 `webnovel-writer/templates/genres/index.csv`。它不是单纯模板清单,而是用户输入层的唯一 taxonomy 数据真源。
+新增 `webnovel-writer/references/taxonomy/genre-index.csv`。它不是单纯模板清单,而是用户输入层的唯一 taxonomy 数据真源。
 
 建议字段:
 
@@ -201,7 +201,7 @@ Phase 1.5 必须先定义并测试算法,不靠隐式行为:
 - `templates/genres/*.md`
   - H1 标题中文化。
   - 不移动文件。
-- `templates/genres/index.csv`
+- `references/taxonomy/genre-index.csv`
   - 覆盖 37 个模板。
   - 覆盖 `PLATFORM_TO_CANONICAL`、`_LEGACY_GENRE_MAP`、`_normalize_genre_key()`、`GENRE_INPUT_ALIASES` 的 label/alias 集合。
 - `scripts/genre_taxonomy.py`
@@ -267,7 +267,7 @@ Phase 1.5 必须先定义并测试算法,不靠隐式行为:
 
 范围:
 
-- 新增 `templates/genres/index.csv`。
+- 新增 `references/taxonomy/genre-index.csv`。
 - 覆盖现有 37 个模板文件。
 - 把以下集合全部纳入 index 的 `label` 或 `aliases`:
   - `GENRE_CANONICAL` 15 项和 `全部`。

+ 11 - 6
webnovel-writer/skills/webnovel-init/SKILL.md

@@ -141,11 +141,16 @@ Agent(
 - 核心冲突
 - 目标读者/平台
 
-题材集合(用于归一化与映射):
-- 玄幻修仙类:修仙 | 系统流 | 高武 | 西幻 | 无限流 | 末世 | 科幻
-- 都市现代类:都市异能 | 都市日常 | 都市脑洞 | 现实题材 | 黑暗题材 | 电竞 | 直播文
-- 言情类:古言 | 宫斗宅斗 | 青春甜宠 | 豪门总裁 | 职场婚恋 | 民国言情 | 幻想言情 | 现言脑洞 | 女频悬疑 | 狗血言情 | 替身文 | 多子多福 | 种田 | 年代
-- 特殊题材:规则怪谈 | 悬疑脑洞 | 悬疑灵异 | 历史古代 | 历史脑洞 | 游戏体育 | 抗战谍战 | 知乎短篇 | 克苏鲁
+canonical 题材集合(写入 `project_info.genre`):
+- 都市 | 玄幻 | 仙侠 | 奇幻 | 科幻
+- 历史 | 悬疑 | 游戏 | 古言 | 现言
+- 幻言 | 年代 | 种田 | 快穿 | 衍生
+
+可自由输入细分 preset / 套路 / 形式,初始化脚本会映射到 canonical 并按 taxonomy 加载模板:
+- 示例:修仙、系统流、高武、西幻、无限流、末世
+- 示例:都市异能、都市日常、都市脑洞、现实题材、电竞、直播文
+- 示例:规则怪谈、悬疑脑洞、悬疑灵异、克苏鲁、知乎短篇
+- 示例:古言、宫斗宅斗、青春甜宠、豪门总裁、职场婚恋、民国言情、幻想言情、种田、年代
 
 交互方式:
 - 优先让用户自由描述,再二次结构化确认。
@@ -348,7 +353,7 @@ python "${SCRIPTS_DIR}/webnovel.py" init \
 init 完成后,立即生成 MASTER_SETTING,让后续 plan 有调性/禁忌参照:
 
 ```bash
-GENRE="$(python -X utf8 -c "import json,os; root=os.environ['PROJECT_ROOT']; s=json.load(open(root + '/.webnovel/state.json',encoding='utf-8')); print(s.get('project',{}).get('genre',''))")"
+GENRE="$(python -X utf8 -c "import json,os; root=os.environ['PROJECT_ROOT']; s=json.load(open(root + '/.webnovel/state.json',encoding='utf-8')); pi=s.get('project_info',{}); print(pi.get('genre') or s.get('project',{}).get('genre',''))")"
 
 python -X utf8 "${SCRIPTS_DIR}/webnovel.py" --project-root "${PROJECT_ROOT}" \
   story-system "${GENRE}" --genre "${GENRE}" --persist --format json

+ 2 - 2
webnovel-writer/skills/webnovel-plan/SKILL.md

@@ -62,7 +62,7 @@ python -X utf8 "${SCRIPTS_DIR}/webnovel.py" --project-root "${PROJECT_ROOT}" pla
 ```bash
 # genre 从 state.json 的初始化配置快照读取;写前主链真源是 .story-system 合同树。
 # 必须先从详细大纲解析真实 CHAPTER_GOAL,禁止传 {章纲目标} / 第N章章纲目标 这类占位文本。
-GENRE="$(python -X utf8 -c "import json,sys; s=json.load(open('${PROJECT_ROOT}/.webnovel/state.json',encoding='utf-8')); print(s.get('project',{}).get('genre',''))")"
+GENRE="$(python -X utf8 -c "import json,sys; s=json.load(open('${PROJECT_ROOT}/.webnovel/state.json',encoding='utf-8')); pi=s.get('project_info',{}); print(pi.get('genre') or s.get('project',{}).get('genre',''))")"
 
 python -X utf8 "${SCRIPTS_DIR}/webnovel.py" --project-root "${WORKSPACE_ROOT}" \
   story-system "${CHAPTER_GOAL}" --genre "${GENRE}" --chapter {chapter_num} --persist --emit-runtime-contracts --format both
@@ -117,7 +117,7 @@ cat "$PROJECT_ROOT/.webnovel/state.json"
 cat "$PROJECT_ROOT/大纲/总纲.md"
 
 # 题材(来自 init 配置快照,后续 CSV 检索和裁决匹配依赖此值)
-GENRE="$(python -X utf8 -c "import json; s=json.load(open('${PROJECT_ROOT}/.webnovel/state.json',encoding='utf-8')); print(s.get('project',{}).get('genre',''))")"
+GENRE="$(python -X utf8 -c "import json; s=json.load(open('${PROJECT_ROOT}/.webnovel/state.json',encoding='utf-8')); pi=s.get('project_info',{}); print(pi.get('genre') or s.get('project',{}).get('genre',''))")"
 ```
 
 **已有卷的剧情状态**(跨卷规划时必须加载):

+ 1 - 1
webnovel-writer/skills/webnovel-review/SKILL.md

@@ -52,7 +52,7 @@ export PROJECT_ROOT="$(python "${SCRIPTS_DIR}/webnovel.py" --project-root "${WOR
 若目标章缺少 runtime 合同,先补齐:
 
 ```bash
-GENRE="$(python -X utf8 -c "import json,sys; s=json.load(open('${PROJECT_ROOT}/.webnovel/state.json',encoding='utf-8')); print(s.get('project',{}).get('genre',''))")"
+GENRE="$(python -X utf8 -c "import json,sys; s=json.load(open('${PROJECT_ROOT}/.webnovel/state.json',encoding='utf-8')); pi=s.get('project_info',{}); print(pi.get('genre') or s.get('project',{}).get('genre',''))")"
 
 python -X utf8 "${SCRIPTS_DIR}/webnovel.py" --project-root "${WORKSPACE_ROOT}" \
   story-system "${CHAPTER_GOAL}" --genre "${GENRE}" --chapter {chapter_num} --persist --emit-runtime-contracts --format both

+ 1 - 1
webnovel-writer/skills/webnovel-write/SKILL.md

@@ -59,7 +59,7 @@ python -X utf8 "${SCRIPTS_DIR}/webnovel.py" --project-root "${PROJECT_ROOT}" pla
 genre 从 `.webnovel/state.json` 的初始化配置快照读取,用于刷新合同树;写前主链真源仍是 `.story-system/` 合同。调用 story-system 前必须先从详细大纲解析真实本章目标,禁止传 `{章纲目标}`、`第N章章纲目标` 等占位 query。
 
 ```bash
-GENRE="$(python -X utf8 -c "import json,sys; s=json.load(open('${PROJECT_ROOT}/.webnovel/state.json',encoding='utf-8')); print(s.get('project',{}).get('genre',''))")"
+GENRE="$(python -X utf8 -c "import json,sys; s=json.load(open('${PROJECT_ROOT}/.webnovel/state.json',encoding='utf-8')); pi=s.get('project_info',{}); print(pi.get('genre') or s.get('project',{}).get('genre',''))")"
 
 python -X utf8 "${SCRIPTS_DIR}/webnovel.py" --project-root "${WORKSPACE_ROOT}" \
   story-system "${CHAPTER_GOAL}" --genre "${GENRE}" --chapter {chapter_num} --persist --emit-runtime-contracts --format both

+ 1 - 1
webnovel-writer/templates/genres/修仙.md

@@ -1,4 +1,4 @@
-# 修仙题材模板 (Xianxia/Cultivation)
+# 修仙题材模板
 
 > **核心卖点**: 逆天改命 + 长生久视 + 残酷法则。修仙是与天争命,也是与人争利。
 

+ 1 - 1
webnovel-writer/templates/genres/克苏鲁.md

@@ -1,4 +1,4 @@
-# 克苏鲁题材模板 (Cosmic Horror)
+# 克苏鲁题材模板
 
 > **核心卖点**: 不可名状 + 理性崩塌 + 真相代价。读者快感来自“接近真相但无法承受真相”。
 

+ 1 - 1
webnovel-writer/templates/genres/历史古代.md

@@ -1,4 +1,4 @@
-# 历史古代题材模板 (Historical)
+# 历史古代题材模板
 
 > **核心卖点**: 大时代背景 + 权谋博弈 + 格局升级。在历史的洪流中,书写个人的传奇与时代的变迁。
 

+ 1 - 1
webnovel-writer/templates/genres/历史脑洞.md

@@ -1,4 +1,4 @@
-# 历史脑洞题材模板 (Historical Brainwave)
+# 历史脑洞题材模板
 
 > **核心卖点**: 历史框架 + 设定反转 + 规则博弈。当超自然规则与历史交织,改变历史的代价是什么?
 

+ 1 - 1
webnovel-writer/templates/genres/古言.md

@@ -1,4 +1,4 @@
-# 古言题材模板 (Period Drama / Historical Romance)
+# 古言题材模板
 
 > **核心卖点**: 古风韵味 + 权谋争斗 + 情深缘浅。在架空或真实历史背景下,展开爱恨情仇与权力博弈。
 

+ 1 - 1
webnovel-writer/templates/genres/多子多福.md

@@ -1,4 +1,4 @@
-# 多子多福初始化模板
+# 多子多福题材模板
 
 ## 核心设定
 

+ 1 - 1
webnovel-writer/templates/genres/女频悬疑.md

@@ -1,4 +1,4 @@
-# 女频悬疑题材模板 (Female Mystery)
+# 女频悬疑题材模板
 
 > **核心卖点**: 逻辑推理 + 人性情感 + 关系反转。在亲密关系的迷雾中,用细腻的观察揭开真相。
 

+ 1 - 1
webnovel-writer/templates/genres/宫斗宅斗.md

@@ -1,4 +1,4 @@
-# 宫斗宅斗题材模板 (Palace/Family Intrigue)
+# 宫斗宅斗题材模板
 
 > **核心卖点**: 规则博弈 + 心机对决 + 地位跃迁。在深宅大院中步步为营,用智慧改写命运。
 

+ 1 - 1
webnovel-writer/templates/genres/年代.md

@@ -1,4 +1,4 @@
-# 年代题材模板 (Period Romance)
+# 年代题材模板
 
 > **核心卖点**: 时代背景 + 生活奋斗 + 情感共鸣。在特定年代的洪流中,书写小人物的奋斗史诗。
 

+ 1 - 1
webnovel-writer/templates/genres/幻想言情.md

@@ -1,4 +1,4 @@
-# 幻想言情题材模板 (Fantasy Romance)
+# 幻想言情题材模板
 
 > **核心卖点**: 异世界规则 + 情感牺牲 + 宿命反转。在奇幻的世界里,书写跨越种族与命运的爱情。
 

+ 1 - 1
webnovel-writer/templates/genres/悬疑灵异.md

@@ -1,4 +1,4 @@
-# 悬疑灵异题材模板 (Suspense & Supernatural)
+# 悬疑灵异题材模板
 
 > **核心卖点**: 氛围压迫 + 诡异规则 + 逻辑自洽。在恐惧与理性的边缘,探索未知的真相。
 

+ 1 - 1
webnovel-writer/templates/genres/悬疑脑洞.md

@@ -1,4 +1,4 @@
-# 悬疑脑洞题材模板 (Mystery Brainwave)
+# 悬疑脑洞题材模板
 
 > **核心卖点**: 逻辑推理 + 规则博弈 + 高智商反转。在规则与推理的交织中,揭开层层迷雾背后的真相。
 

+ 1 - 1
webnovel-writer/templates/genres/抗战谍战.md

@@ -1,4 +1,4 @@
-# 抗战谍战题材模板 (Wartime Spy)
+# 抗战谍战题材模板
 
 > **核心卖点**: 身份博弈 + 信息战 + 高压生存。在敌后的刀锋上行走,用智慧与勇气守护信仰。
 

+ 1 - 1
webnovel-writer/templates/genres/无限流.md

@@ -1,4 +1,4 @@
-# 无限流题材模板 (Infinite Flow)
+# 无限流题材模板
 
 > **核心卖点**: 关卡闯关 + 规则解谜 + 极限生存。在死亡游戏中成长,用智慧和勇气打破规则。
 

+ 1 - 1
webnovel-writer/templates/genres/替身文.md

@@ -1,4 +1,4 @@
-# 替身文初始化模板
+# 替身文题材模板
 
 ## 核心设定
 

+ 1 - 1
webnovel-writer/templates/genres/末世.md

@@ -1,4 +1,4 @@
-# 末世题材模板 (Post-Apocalyptic)
+# 末世题材模板
 
 > **核心卖点**: 资源崩塌 + 生存博弈 + 人性抉择。文明废墟上重建秩序,在绝望中寻找希望。
 

+ 1 - 1
webnovel-writer/templates/genres/民国言情.md

@@ -1,4 +1,4 @@
-# 民国言情题材模板 (Republic Era Romance)
+# 民国言情题材模板
 
 > **核心卖点**: 时代动荡 + 身份隐秘 + 爱恨纠葛。在乱世的风云中,书写刻骨铭心的爱情传奇。
 

+ 1 - 1
webnovel-writer/templates/genres/游戏体育.md

@@ -1,4 +1,4 @@
-# 游戏体育题材模板 (Games & Sports)
+# 游戏体育题材模板
 
 > **核心卖点**: 竞技对抗 + 规则博弈 + 团队成长。在赛场上燃烧青春,用实力证明一切。
 

+ 1 - 1
webnovel-writer/templates/genres/狗血言情.md

@@ -1,4 +1,4 @@
-# 狗血言情题材模板 (Dog-Blood Romance)
+# 狗血言情题材模板
 
 > **核心卖点**: 情感冲突 + 虐恋情深 + 追妻火葬场。狗血不是贬义,是击中读者情感痛点的利器。
 

+ 1 - 1
webnovel-writer/templates/genres/现实题材.md

@@ -1,4 +1,4 @@
-# 现实题材模板 (Realistic Fiction)
+# 现实题材模板
 
 > **核心卖点**: 真实感 + 社会共鸣 + 人性深度。扎根现实生活,引发读者强烈的代入感和情感共鸣。
 

+ 1 - 1
webnovel-writer/templates/genres/现言脑洞.md

@@ -1,4 +1,4 @@
-# 现言脑洞题材模板 (Modern Romance Brainwave)
+# 现言脑洞题材模板
 
 > **核心卖点**: 现实关系 + 规则/异象 + 情感反转。当超自然规则入侵现代爱情,感情与规则如何共存?
 

+ 1 - 1
webnovel-writer/templates/genres/电竞.md

@@ -1,4 +1,4 @@
-# 电竞题材模板 (Esports)
+# 电竞题材模板
 
 > **核心卖点**: 逆风翻盘 + 赛场高压 + 团队成长。以“比赛结果”驱动强节奏与持续追更。
 

+ 1 - 1
webnovel-writer/templates/genres/直播文.md

@@ -1,4 +1,4 @@
-# 直播文题材模板 (Live-Streaming)
+# 直播文题材模板
 
 > **核心卖点**: 实时互动 + 舆论反转 + 商业变现。用“观众反馈”驱动剧情即时爽感。
 

+ 1 - 1
webnovel-writer/templates/genres/知乎短篇.md

@@ -1,4 +1,4 @@
-# 知乎短篇题材模板 (Zhihu Short Story)
+# 知乎短篇题材模板
 
 > **核心卖点**: 短平快 + 强冲突 + 极致反转。3000-15000字内完成起承转合,前300字定生死。
 

+ 1 - 1
webnovel-writer/templates/genres/种田.md

@@ -1,4 +1,4 @@
-# 种田题材模板 (Farming & Kingdom Building)
+# 种田题材模板
 
 > **核心卖点**: 资源积累 + 势力建设 + 稳步成长。"高筑墙,广积粮,缓称王"——用经营的智慧征服世界。
 

+ 1 - 1
webnovel-writer/templates/genres/科幻.md

@@ -1,4 +1,4 @@
-# 科幻题材模板 (Sci-Fi)
+# 科幻题材模板
 
 > **核心卖点**: 科技设定 + 伦理冲突 + 宏大想象。在星辰大海中探索人类的未来与边界。
 

+ 1 - 1
webnovel-writer/templates/genres/系统流.md

@@ -1,4 +1,4 @@
-# 系统流题材模板 (System Stream)
+# 系统流题材模板
 
 > **核心卖点**: 数据可视化 + 任务驱动 + 确定性回报。系统是主角的最强外挂,但也可能是最大的枷锁。
 

+ 1 - 1
webnovel-writer/templates/genres/职场婚恋.md

@@ -1,4 +1,4 @@
-# 职场婚恋题材模板 (Workplace Romance)
+# 职场婚恋题材模板
 
 > **核心卖点**: 职场博弈 + 成长晋升 + 情感平衡。在事业与爱情的天平上,找到属于自己的平衡点。
 

+ 1 - 1
webnovel-writer/templates/genres/西幻.md

@@ -1,4 +1,4 @@
-# 西幻题材模板 (Western Fantasy)
+# 西幻题材模板
 
 > **核心卖点**: 神魔体系 + 骑士冒险 + 契约代价。在神与魔的夹缝中,书写凡人的史诗。
 

+ 1 - 1
webnovel-writer/templates/genres/规则怪谈.md

@@ -1,4 +1,4 @@
-# 规则怪谈题材模板 (Rules Mystery / Honkaku)
+# 规则怪谈题材模板
 
 > **核心卖点**: 逻辑推理 + 公平线索 + 智力博弈。读者与侦探站在同一起跑线,真相必须可推导。
 

+ 1 - 1
webnovel-writer/templates/genres/豪门总裁.md

@@ -1,4 +1,4 @@
-# 豪门总裁题材模板 (CEO Romance)
+# 豪门总裁题材模板
 
 > **核心卖点**: 权力差距 + 契约关系 + 情感拉扯。灰姑娘与王子的现代演绎,在金钱与真心之间抉择。
 

+ 1 - 1
webnovel-writer/templates/genres/都市异能.md

@@ -1,4 +1,4 @@
-# 都市异能题材模板 (Urban Superpower)
+# 都市异能题材模板
 
 > **核心卖点**: 熟悉的现代生活 + 超凡力量的入侵。在平凡中寻找非凡。
 

+ 1 - 1
webnovel-writer/templates/genres/都市日常.md

@@ -1,4 +1,4 @@
-# 都市日常题材模板 (Urban Slice-of-Life)
+# 都市日常题材模板
 
 > **核心卖点**: 真实生活感 + 小人物逆袭 + 细节共鸣。在平凡中书写不平凡,让读者看到自己的影子。
 

+ 1 - 1
webnovel-writer/templates/genres/都市脑洞.md

@@ -1,4 +1,4 @@
-# 都市脑洞题材模板 (Urban Brainwave)
+# 都市脑洞题材模板
 
 > **核心卖点**: 现实都市 + 规则/异象入侵 + 高反转。当超自然规则入侵日常生活,普通人如何在夹缝中求生。
 

+ 1 - 1
webnovel-writer/templates/genres/青春甜宠.md

@@ -1,4 +1,4 @@
-# 青春甜宠题材模板 (Youth Sweet Romance)
+# 青春甜宠题材模板
 
 > **核心卖点**: 轻甜氛围 + 高密度互动 + 成长共鸣。在最美好的年纪,遇见最对的人。
 

+ 1 - 1
webnovel-writer/templates/genres/高武.md

@@ -1,4 +1,4 @@
-# 高武题材模板 (High Martial Arts)
+# 高武题材模板
 
 > **核心卖点**: 武道巅峰 + 热血战斗 + 实力为尊。拳头就是道理,强者制定规则。
 

+ 1 - 1
webnovel-writer/templates/genres/黑暗题材.md

@@ -1,4 +1,4 @@
-# 黑暗题材初始化模板
+# 黑暗题材模板
 
 ## 核心设定