novelws 4.0.0 → 5.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (357) hide show
  1. package/CHANGELOG.md +100 -623
  2. package/README.md +79 -594
  3. package/dist/cli.js +1 -3
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/init.d.ts.map +1 -1
  6. package/dist/commands/init.js +12 -99
  7. package/dist/commands/init.js.map +1 -1
  8. package/dist/commands/upgrade.d.ts.map +1 -1
  9. package/dist/commands/upgrade.js +17 -108
  10. package/dist/commands/upgrade.js.map +1 -1
  11. package/dist/core/config.d.ts +1 -37
  12. package/dist/core/config.d.ts.map +1 -1
  13. package/dist/core/config.js +6 -45
  14. package/dist/core/config.js.map +1 -1
  15. package/dist/core/errors.d.ts +0 -31
  16. package/dist/core/errors.d.ts.map +1 -1
  17. package/dist/core/errors.js +0 -58
  18. package/dist/core/errors.js.map +1 -1
  19. package/dist/utils/diagnostics.d.ts +2 -16
  20. package/dist/utils/diagnostics.d.ts.map +1 -1
  21. package/dist/utils/diagnostics.js +5 -72
  22. package/dist/utils/diagnostics.js.map +1 -1
  23. package/dist/utils/project.d.ts +1 -1
  24. package/dist/utils/project.d.ts.map +1 -1
  25. package/dist/utils/project.js +3 -3
  26. package/dist/utils/project.js.map +1 -1
  27. package/package.json +1 -2
  28. package/templates/commands/analyze.md +65 -265
  29. package/templates/commands/expand.md +70 -0
  30. package/templates/commands/plan.md +47 -452
  31. package/templates/commands/specify.md +43 -869
  32. package/templates/commands/write.md +49 -643
  33. package/templates/dot-claude/CLAUDE.md +38 -202
  34. package/templates/resources/anti-ai.md +16 -0
  35. package/templates/resources/style-reference.md +19 -0
  36. package/templates/tracking/character-state.json +1 -76
  37. package/templates/tracking/plot-tracker.json +3 -60
  38. package/templates/tracking/relationships.json +1 -68
  39. package/templates/tracking/timeline.json +1 -47
  40. package/dist/commands/plugin.d.ts +0 -6
  41. package/dist/commands/plugin.d.ts.map +0 -1
  42. package/dist/commands/plugin.js +0 -135
  43. package/dist/commands/plugin.js.map +0 -1
  44. package/dist/plugins/identifier.d.ts +0 -13
  45. package/dist/plugins/identifier.d.ts.map +0 -1
  46. package/dist/plugins/identifier.js +0 -72
  47. package/dist/plugins/identifier.js.map +0 -1
  48. package/dist/plugins/installers/base.d.ts +0 -27
  49. package/dist/plugins/installers/base.d.ts.map +0 -1
  50. package/dist/plugins/installers/base.js +0 -30
  51. package/dist/plugins/installers/base.js.map +0 -1
  52. package/dist/plugins/installers/github.d.ts +0 -22
  53. package/dist/plugins/installers/github.d.ts.map +0 -1
  54. package/dist/plugins/installers/github.js +0 -133
  55. package/dist/plugins/installers/github.js.map +0 -1
  56. package/dist/plugins/installers/local.d.ts +0 -16
  57. package/dist/plugins/installers/local.d.ts.map +0 -1
  58. package/dist/plugins/installers/local.js +0 -69
  59. package/dist/plugins/installers/local.js.map +0 -1
  60. package/dist/plugins/installers/npm.d.ts +0 -20
  61. package/dist/plugins/installers/npm.d.ts.map +0 -1
  62. package/dist/plugins/installers/npm.js +0 -99
  63. package/dist/plugins/installers/npm.js.map +0 -1
  64. package/dist/plugins/manager.d.ts +0 -77
  65. package/dist/plugins/manager.d.ts.map +0 -1
  66. package/dist/plugins/manager.js +0 -349
  67. package/dist/plugins/manager.js.map +0 -1
  68. package/dist/plugins/registry.d.ts +0 -48
  69. package/dist/plugins/registry.d.ts.map +0 -1
  70. package/dist/plugins/registry.js +0 -111
  71. package/dist/plugins/registry.js.map +0 -1
  72. package/dist/plugins/types.d.ts +0 -66
  73. package/dist/plugins/types.d.ts.map +0 -1
  74. package/dist/plugins/types.js +0 -2
  75. package/dist/plugins/types.js.map +0 -1
  76. package/dist/plugins/validator.d.ts +0 -19
  77. package/dist/plugins/validator.d.ts.map +0 -1
  78. package/dist/plugins/validator.js +0 -164
  79. package/dist/plugins/validator.js.map +0 -1
  80. package/dist/utils/logger.d.ts +0 -13
  81. package/dist/utils/logger.d.ts.map +0 -1
  82. package/dist/utils/logger.js +0 -48
  83. package/dist/utils/logger.js.map +0 -1
  84. package/plugins/authentic-voice/README.md +0 -31
  85. package/plugins/authentic-voice/commands/authentic-voice.md +0 -73
  86. package/plugins/authentic-voice/commands/authenticity-audit.md +0 -37
  87. package/plugins/authentic-voice/config.yaml +0 -30
  88. package/plugins/authentic-voice/experts/authentic-editor.md +0 -27
  89. package/plugins/export/README.md +0 -319
  90. package/plugins/export/commands/export.md +0 -460
  91. package/plugins/export/commands/generate-cover.md +0 -256
  92. package/plugins/export/commands/metadata.md +0 -309
  93. package/plugins/export/config.yaml +0 -47
  94. package/plugins/export/experts/publishing-expert.md +0 -171
  95. package/plugins/export/templates/epub/chapter-template.html +0 -13
  96. package/plugins/export/templates/epub/cover-template.html +0 -14
  97. package/plugins/export/templates/epub/stylesheet.css +0 -200
  98. package/plugins/export/templates/pdf/ebook-style.css +0 -137
  99. package/plugins/export/templates/pdf/print-style.css +0 -179
  100. package/plugins/export/templates/platforms/jinjiang-format.md +0 -101
  101. package/plugins/export/templates/platforms/qidian-format.md +0 -108
  102. package/plugins/export/templates/platforms/tomato-format.md +0 -95
  103. package/plugins/translate/README.md +0 -265
  104. package/plugins/translate/commands/glossary.md +0 -731
  105. package/plugins/translate/commands/translate-preview.md +0 -543
  106. package/plugins/translate/commands/translate.md +0 -649
  107. package/plugins/translate/config.yaml +0 -43
  108. package/plugins/translate/experts/literary-translator.md +0 -605
  109. package/templates/commands/character.md +0 -287
  110. package/templates/commands/checklist.md +0 -744
  111. package/templates/commands/clarify.md +0 -269
  112. package/templates/commands/constitution.md +0 -269
  113. package/templates/commands/expert.md +0 -188
  114. package/templates/commands/facts.md +0 -552
  115. package/templates/commands/guide.md +0 -900
  116. package/templates/commands/help-me.md +0 -221
  117. package/templates/commands/recap.md +0 -748
  118. package/templates/commands/relations.md +0 -385
  119. package/templates/commands/revise.md +0 -450
  120. package/templates/commands/search.md +0 -531
  121. package/templates/commands/tasks.md +0 -396
  122. package/templates/commands/timeline.md +0 -309
  123. package/templates/commands/track-init.md +0 -149
  124. package/templates/commands/track.md +0 -704
  125. package/templates/commands/volume-summary.md +0 -471
  126. package/templates/knowledge/audit-config.json +0 -26
  127. package/templates/knowledge/character-profiles.md +0 -152
  128. package/templates/knowledge/character-voices.md +0 -137
  129. package/templates/knowledge/locations.md +0 -184
  130. package/templates/knowledge/world-setting.md +0 -121
  131. package/templates/resources/character-archetypes/01-hero.md +0 -233
  132. package/templates/resources/character-archetypes/02-mentor.md +0 -177
  133. package/templates/resources/character-archetypes/03-shadow.md +0 -221
  134. package/templates/resources/character-archetypes/04-ally.md +0 -178
  135. package/templates/resources/character-archetypes/05-shapeshifter.md +0 -177
  136. package/templates/resources/character-archetypes/06-trickster.md +0 -181
  137. package/templates/resources/character-archetypes/07-threshold-guardian.md +0 -177
  138. package/templates/resources/character-archetypes/08-herald.md +0 -180
  139. package/templates/resources/character-archetypes/09-father.md +0 -249
  140. package/templates/resources/character-archetypes/10-mother.md +0 -202
  141. package/templates/resources/character-archetypes/11-child.md +0 -183
  142. package/templates/resources/character-archetypes/12-sage.md +0 -202
  143. package/templates/resources/character-archetypes/README.md +0 -60
  144. package/templates/resources/character-archetypes/application-guide.md +0 -222
  145. package/templates/resources/character-archetypes/archetype-combinations.md +0 -242
  146. package/templates/resources/character-archetypes/config.yaml +0 -28
  147. package/templates/resources/character-archetypes/examples-analysis.md +0 -223
  148. package/templates/resources/config/keyword-mappings.json +0 -226
  149. package/templates/resources/config/specification-example.md +0 -146
  150. package/templates/resources/craft/character-arc.md +0 -1153
  151. package/templates/resources/craft/dialogue.md +0 -1170
  152. package/templates/resources/craft/hook-design.md +0 -345
  153. package/templates/resources/craft/pacing.md +0 -1200
  154. package/templates/resources/craft/power-system.md +0 -254
  155. package/templates/resources/craft/scene-structure.md +0 -1136
  156. package/templates/resources/craft/show-not-tell.md +0 -1012
  157. package/templates/resources/craft/story-structures.md +0 -134
  158. package/templates/resources/craft/tension-management.md +0 -168
  159. package/templates/resources/emotional-beats/01-first-meeting.md +0 -145
  160. package/templates/resources/emotional-beats/02-bonding-moment.md +0 -226
  161. package/templates/resources/emotional-beats/03-declaration.md +0 -284
  162. package/templates/resources/emotional-beats/04-triumph.md +0 -240
  163. package/templates/resources/emotional-beats/05-reunion.md +0 -396
  164. package/templates/resources/emotional-beats/06-forgiveness.md +0 -204
  165. package/templates/resources/emotional-beats/07-betrayal.md +0 -204
  166. package/templates/resources/emotional-beats/08-loss.md +0 -214
  167. package/templates/resources/emotional-beats/09-rejection.md +0 -254
  168. package/templates/resources/emotional-beats/10-failure.md +0 -244
  169. package/templates/resources/emotional-beats/11-misunderstanding.md +0 -205
  170. package/templates/resources/emotional-beats/12-farewell.md +0 -283
  171. package/templates/resources/emotional-beats/13-revelation.md +0 -242
  172. package/templates/resources/emotional-beats/14-point-of-no-return.md +0 -215
  173. package/templates/resources/emotional-beats/15-dark-night.md +0 -244
  174. package/templates/resources/emotional-beats/16-sacrifice.md +0 -246
  175. package/templates/resources/emotional-beats/17-awakening.md +0 -246
  176. package/templates/resources/emotional-beats/18-confrontation.md +0 -217
  177. package/templates/resources/emotional-beats/19-bittersweet-goodbye.md +0 -368
  178. package/templates/resources/emotional-beats/20-moral-dilemma.md +0 -248
  179. package/templates/resources/emotional-beats/21-temptation.md +0 -240
  180. package/templates/resources/emotional-beats/22-redemption.md +0 -210
  181. package/templates/resources/emotional-beats/README.md +0 -104
  182. package/templates/resources/emotional-beats/beat-sequences.md +0 -276
  183. package/templates/resources/emotional-beats/config.yaml +0 -30
  184. package/templates/resources/emotional-beats/pacing-guide.md +0 -390
  185. package/templates/resources/genres/game-lit.md +0 -174
  186. package/templates/resources/genres/historical.md +0 -1127
  187. package/templates/resources/genres/horror.md +0 -211
  188. package/templates/resources/genres/military.md +0 -209
  189. package/templates/resources/genres/mystery.md +0 -1123
  190. package/templates/resources/genres/rebirth.md +0 -177
  191. package/templates/resources/genres/revenge.md +0 -846
  192. package/templates/resources/genres/romance.md +0 -948
  193. package/templates/resources/genres/sci-fi.md +0 -156
  194. package/templates/resources/genres/sports.md +0 -216
  195. package/templates/resources/genres/thriller.md +0 -166
  196. package/templates/resources/genres/urban.md +0 -170
  197. package/templates/resources/genres/workplace.md +0 -214
  198. package/templates/resources/genres/wuxia.md +0 -143
  199. package/templates/resources/genres/xuanhuan.md +0 -234
  200. package/templates/resources/genres/youth.md +0 -219
  201. package/templates/resources/memory/personal-voice.md +0 -113
  202. package/templates/resources/references/README.md +0 -96
  203. package/templates/resources/references/china-1920s/culture.md +0 -423
  204. package/templates/resources/references/china-1920s/daily-life.md +0 -616
  205. package/templates/resources/references/china-1920s/overview.md +0 -298
  206. package/templates/resources/references/china-1920s/society.md +0 -703
  207. package/templates/resources/references/china-1920s/warlords.md +0 -427
  208. package/templates/resources/references/cultivation-world/daily-life.md +0 -108
  209. package/templates/resources/references/cultivation-world/overview.md +0 -64
  210. package/templates/resources/references/cultivation-world/power-system.md +0 -108
  211. package/templates/resources/references/cultivation-world/sects.md +0 -104
  212. package/templates/resources/references/cultivation-world/world-setting.md +0 -108
  213. package/templates/resources/references/modern-workplace/corporate.md +0 -115
  214. package/templates/resources/references/modern-workplace/daily-life.md +0 -129
  215. package/templates/resources/references/modern-workplace/overview.md +0 -73
  216. package/templates/resources/references/modern-workplace/relationships.md +0 -107
  217. package/templates/resources/references/modern-workplace/tech-industry.md +0 -131
  218. package/templates/resources/references/tang-dynasty/culture.md +0 -135
  219. package/templates/resources/references/tang-dynasty/daily-life.md +0 -139
  220. package/templates/resources/references/tang-dynasty/overview.md +0 -76
  221. package/templates/resources/references/tang-dynasty/politics.md +0 -121
  222. package/templates/resources/references/tang-dynasty/society.md +0 -126
  223. package/templates/resources/requirements/README.md +0 -240
  224. package/templates/resources/requirements/anti-ai-v3.md +0 -46
  225. package/templates/resources/requirements/anti-ai-v4-deprecated.md +0 -442
  226. package/templates/resources/requirements/anti-ai-v5-balanced.md +0 -203
  227. package/templates/resources/requirements/concretization.md +0 -90
  228. package/templates/resources/requirements/fast-paced.md +0 -552
  229. package/templates/resources/requirements/no-poison.md +0 -60
  230. package/templates/resources/requirements/romance-angst.md +0 -102
  231. package/templates/resources/requirements/romance-sweet.md +0 -63
  232. package/templates/resources/requirements/serious-literature.md +0 -45
  233. package/templates/resources/requirements/strong-emotion.md +0 -60
  234. package/templates/resources/scripts/README.md +0 -187
  235. package/templates/resources/scripts/bash/analyze-story.sh +0 -170
  236. package/templates/resources/scripts/bash/check-analyze-stage.sh +0 -108
  237. package/templates/resources/scripts/bash/check-consistency.sh +0 -463
  238. package/templates/resources/scripts/bash/check-facts.sh +0 -214
  239. package/templates/resources/scripts/bash/check-plot.sh +0 -374
  240. package/templates/resources/scripts/bash/check-timeline.sh +0 -346
  241. package/templates/resources/scripts/bash/check-world.sh +0 -395
  242. package/templates/resources/scripts/bash/check-writing-state.sh +0 -854
  243. package/templates/resources/scripts/bash/clarify-story.sh +0 -117
  244. package/templates/resources/scripts/bash/common.sh +0 -151
  245. package/templates/resources/scripts/bash/constitution.sh +0 -114
  246. package/templates/resources/scripts/bash/generate-tasks.sh +0 -65
  247. package/templates/resources/scripts/bash/init-tracking.sh +0 -183
  248. package/templates/resources/scripts/bash/manage-relations.sh +0 -174
  249. package/templates/resources/scripts/bash/migrate-tracking.sh +0 -183
  250. package/templates/resources/scripts/bash/plan-story.sh +0 -100
  251. package/templates/resources/scripts/bash/specify-story.sh +0 -93
  252. package/templates/resources/scripts/bash/tasks-story.sh +0 -96
  253. package/templates/resources/scripts/bash/test-word-count.sh +0 -182
  254. package/templates/resources/scripts/bash/tests/bench-preload-cache.sh +0 -100
  255. package/templates/resources/scripts/bash/tests/run-all-benchmarks.sh +0 -16
  256. package/templates/resources/scripts/bash/tests/test-cache-semantics.sh +0 -199
  257. package/templates/resources/scripts/bash/tests/test-cross-platform.sh +0 -35
  258. package/templates/resources/scripts/bash/tests/test-edge-cases-bash.sh +0 -60
  259. package/templates/resources/scripts/bash/tests/test-phase1-bash.sh +0 -28
  260. package/templates/resources/scripts/bash/tests/test-preload-cache.sh +0 -123
  261. package/templates/resources/scripts/bash/tests/test-regex-precompile.sh +0 -89
  262. package/templates/resources/scripts/bash/tests/test-regression-bash.sh +0 -42
  263. package/templates/resources/scripts/bash/tests/test-task6-verification.sh +0 -200
  264. package/templates/resources/scripts/bash/text-audit.sh +0 -144
  265. package/templates/resources/scripts/bash/track-progress.sh +0 -194
  266. package/templates/resources/scripts/powershell/analyze-story.ps1 +0 -174
  267. package/templates/resources/scripts/powershell/check-analyze-stage.ps1 +0 -110
  268. package/templates/resources/scripts/powershell/check-consistency.ps1 +0 -138
  269. package/templates/resources/scripts/powershell/check-facts.ps1 +0 -195
  270. package/templates/resources/scripts/powershell/check-plot.ps1 +0 -139
  271. package/templates/resources/scripts/powershell/check-timeline.ps1 +0 -112
  272. package/templates/resources/scripts/powershell/check-writing-state.ps1 +0 -486
  273. package/templates/resources/scripts/powershell/clarify-story.ps1 +0 -107
  274. package/templates/resources/scripts/powershell/common.ps1 +0 -36
  275. package/templates/resources/scripts/powershell/constitution.ps1 +0 -145
  276. package/templates/resources/scripts/powershell/generate-tasks.ps1 +0 -70
  277. package/templates/resources/scripts/powershell/init-tracking.ps1 +0 -98
  278. package/templates/resources/scripts/powershell/manage-relations.ps1 +0 -134
  279. package/templates/resources/scripts/powershell/migrate-tracking.ps1 +0 -145
  280. package/templates/resources/scripts/powershell/plan-story.ps1 +0 -99
  281. package/templates/resources/scripts/powershell/specify-story.ps1 +0 -85
  282. package/templates/resources/scripts/powershell/tests/bench-ps-cache.ps1 +0 -80
  283. package/templates/resources/scripts/powershell/tests/test-cross-platform.ps1 +0 -27
  284. package/templates/resources/scripts/powershell/tests/test-edge-cases-ps.ps1 +0 -29
  285. package/templates/resources/scripts/powershell/tests/test-phase1-ps.ps1 +0 -28
  286. package/templates/resources/scripts/powershell/tests/test-ps-cache.ps1 +0 -73
  287. package/templates/resources/scripts/powershell/tests/test-regression-ps.ps1 +0 -40
  288. package/templates/resources/scripts/powershell/text-audit.ps1 +0 -102
  289. package/templates/resources/scripts/powershell/track-progress.ps1 +0 -105
  290. package/templates/resources/styles/README.md +0 -302
  291. package/templates/resources/styles/ancient-style.md +0 -579
  292. package/templates/resources/styles/literary.md +0 -439
  293. package/templates/resources/styles/minimal.md +0 -472
  294. package/templates/resources/styles/natural-voice.md +0 -930
  295. package/templates/resources/styles/web-novel.md +0 -525
  296. package/templates/skills/analysis/character-analysis/SKILL.md +0 -71
  297. package/templates/skills/analysis/foreshadow-analysis/SKILL.md +0 -45
  298. package/templates/skills/analysis/hook-analysis/SKILL.md +0 -111
  299. package/templates/skills/analysis/logic-analysis/SKILL.md +0 -58
  300. package/templates/skills/analysis/opening-analysis/SKILL.md +0 -59
  301. package/templates/skills/analysis/pacing-analysis/SKILL.md +0 -55
  302. package/templates/skills/analysis/power-analysis/SKILL.md +0 -148
  303. package/templates/skills/analysis/reader-analysis/SKILL.md +0 -117
  304. package/templates/skills/analysis/style-analysis/SKILL.md +0 -60
  305. package/templates/skills/analysis/voice-analysis/SKILL.md +0 -42
  306. package/templates/skills/auto-tracking/SKILL.md +0 -280
  307. package/templates/skills/genre-knowledge/fantasy/SKILL.md +0 -355
  308. package/templates/skills/genre-knowledge/mystery/SKILL.md +0 -337
  309. package/templates/skills/genre-knowledge/romance/SKILL.md +0 -228
  310. package/templates/skills/genre-knowledge/sci-fi/SKILL.md +0 -65
  311. package/templates/skills/genre-knowledge/thriller/SKILL.md +0 -95
  312. package/templates/skills/planning/volume-detail/SKILL.md +0 -219
  313. package/templates/skills/quality-assurance/consistency-checker/SKILL.md +0 -412
  314. package/templates/skills/quality-assurance/continuity-tracker/SKILL.md +0 -157
  315. package/templates/skills/quality-assurance/facts-checker/SKILL.md +0 -405
  316. package/templates/skills/quality-assurance/forgotten-elements/SKILL.md +0 -147
  317. package/templates/skills/quality-assurance/getting-started/SKILL.md +0 -224
  318. package/templates/skills/quality-assurance/hook-checker/SKILL.md +0 -164
  319. package/templates/skills/quality-assurance/hook-checker/experts/hook-analyst.md +0 -33
  320. package/templates/skills/quality-assurance/long-series-continuity/SKILL.md +0 -570
  321. package/templates/skills/quality-assurance/pacing-monitor/SKILL.md +0 -143
  322. package/templates/skills/quality-assurance/pov-validator/SKILL.md +0 -135
  323. package/templates/skills/quality-assurance/pre-write-checklist/SKILL.md +0 -583
  324. package/templates/skills/quality-assurance/requirement-detector/CONFLICT_RESOLUTION.md +0 -119
  325. package/templates/skills/quality-assurance/requirement-detector/EXAMPLES.md +0 -146
  326. package/templates/skills/quality-assurance/requirement-detector/KEYWORDS.md +0 -160
  327. package/templates/skills/quality-assurance/requirement-detector/SKILL.md +0 -149
  328. package/templates/skills/quality-assurance/setting-detector/SKILL.md +0 -611
  329. package/templates/skills/quality-assurance/style-detector/CONFLICT_RESOLUTION.md +0 -126
  330. package/templates/skills/quality-assurance/style-detector/EXAMPLES.md +0 -206
  331. package/templates/skills/quality-assurance/style-detector/KEYWORDS.md +0 -207
  332. package/templates/skills/quality-assurance/style-detector/SKILL.md +0 -264
  333. package/templates/skills/quality-assurance/voice-consistency-checker/SKILL.md +0 -103
  334. package/templates/skills/quality-assurance/voice-consistency-checker/experts/voice-analyst.md +0 -21
  335. package/templates/skills/quality-assurance/workflow-guide/SKILL.md +0 -381
  336. package/templates/skills/writing-techniques/character-arc/SKILL.md +0 -267
  337. package/templates/skills/writing-techniques/dialogue-techniques/SKILL.md +0 -366
  338. package/templates/skills/writing-techniques/multi-thread-narrative/SKILL.md +0 -708
  339. package/templates/skills/writing-techniques/multi-thread-narrative/experts/thread-analyst.md +0 -226
  340. package/templates/skills/writing-techniques/pacing-control/SKILL.md +0 -480
  341. package/templates/skills/writing-techniques/reader-expectation/SKILL.md +0 -1026
  342. package/templates/skills/writing-techniques/reader-expectation/experts/expectation-analyst.md +0 -209
  343. package/templates/skills/writing-techniques/revision-polish/SKILL.md +0 -496
  344. package/templates/skills/writing-techniques/revision-polish/experts/revision-editor.md +0 -221
  345. package/templates/skills/writing-techniques/scene-structure/SKILL.md +0 -361
  346. package/templates/skills/writing-techniques/style-learning/SKILL.md +0 -436
  347. package/templates/skills/writing-techniques/writing-balance/.gitkeep +0 -0
  348. package/templates/skills/writing-techniques/writing-balance/SKILL.md +0 -460
  349. package/templates/skills/writing-techniques/writing-techniques/SKILL.md +0 -727
  350. package/templates/tracking/story-facts.json +0 -5
  351. package/templates/tracking/summary/characters-summary.json +0 -7
  352. package/templates/tracking/summary/plot-summary.json +0 -13
  353. package/templates/tracking/summary/timeline-summary.json +0 -8
  354. package/templates/tracking/summary/volume-summaries.json +0 -5
  355. package/templates/tracking/tracking-log.md +0 -110
  356. package/templates/tracking/validation-rules.json +0 -128
  357. /package/templates/resources/{memory/constitution.md → constitution.md} +0 -0
@@ -1,731 +0,0 @@
1
- ---
2
- title: 术语表管理 - /glossary
3
- description: 管理翻译术语表,确保角色名、地名、专有名词翻译统一
4
- ---
5
-
6
- # 术语表管理
7
-
8
- ## 使用方法
9
-
10
- ### 初始化
11
-
12
- ```bash
13
- /glossary init
14
- ```
15
-
16
- 在 `.specify/translation/` 创建空的 `glossary.json`,并自动扫描 `spec/knowledge/` 提取角色名和地名。
17
-
18
- ### 添加术语
19
-
20
- ```bash
21
- /glossary add "类别:中文|英文|日文"
22
- ```
23
-
24
- **示例:**
25
- ```bash
26
- /glossary add "角色:李明|Li Ming|リ・ミン"
27
- /glossary add "地名:青云宗|Azure Cloud Sect"
28
- /glossary add "功法:青云剑法|Azure Cloud Sword Art"
29
- ```
30
-
31
- **支持的类别:**
32
- - `角色` (characters) - 人物名称
33
- - `地名` (places) - 地点、门派、城市
34
- - `功法` (skills) - 武功、法术、技能
35
- - `道具` (items) - 物品、装备、宝物
36
- - `组织` (organizations) - 门派、帮会、势力
37
- - `概念` (concepts) - 修炼体系、世界观概念
38
- - `称呼` (titles) - 师父、长老等称呼
39
-
40
- ### 批量导入
41
-
42
- ```bash
43
- /glossary import glossary.csv
44
- ```
45
-
46
- **CSV 格式:**
47
- ```csv
48
- 类别,中文,英文,日文,备注
49
- 角色,李明,Li Ming,リ・ミン,主角
50
- 地名,青云宗,Azure Cloud Sect,青雲宗,主角门派
51
- 功法,青云剑法,Azure Cloud Sword Art,青雲剣法,主角剑法
52
- ```
53
-
54
- ### 查看术语
55
-
56
- ```bash
57
- /glossary list # 查看全部
58
- /glossary list --category 角色 # 按类别筛选
59
- /glossary list --search 青云 # 搜索
60
- ```
61
-
62
- ### 编辑术语
63
-
64
- ```bash
65
- /glossary edit "李明" --en "Lee Ming"
66
- /glossary edit "青云宗" --ja "青雲宗"
67
- ```
68
-
69
- ### 删除术语
70
-
71
- ```bash
72
- /glossary remove "李明"
73
- ```
74
-
75
- ### 自动提取
76
-
77
- ```bash
78
- /glossary extract
79
- ```
80
-
81
- 扫描已写章节,AI 自动识别专有名词:
82
- - 列出未在术语表中的名词
83
- - 提供翻译建议
84
- - 用户确认后添加
85
-
86
- ### 导出
87
-
88
- ```bash
89
- /glossary export --format csv # 导出为 CSV
90
- /glossary export --format markdown # 导出为 Markdown
91
- ```
92
-
93
- ---
94
-
95
- ## 术语表格式
96
-
97
- 术语表存储在 `.specify/translation/glossary.json`:
98
-
99
- ```json
100
- {
101
- "version": "1.0",
102
- "story": "my-novel",
103
- "last_updated": "2025-02-09",
104
- "languages": ["zh", "en", "ja"],
105
- "categories": {
106
- "characters": [
107
- {
108
- "id": "char_001",
109
- "zh": "李明",
110
- "en": "Li Ming",
111
- "ja": "リ・ミン",
112
- "pinyin": "Lǐ Míng",
113
- "notes": "主角,青云宗弟子",
114
- "first_appearance": "chapter-01",
115
- "aliases": {
116
- "zh": ["小明", "明哥"],
117
- "en": ["Ming", "Brother Ming"],
118
- "ja": ["ミンくん"]
119
- }
120
- }
121
- ],
122
- "places": [
123
- {
124
- "id": "place_001",
125
- "zh": "青云宗",
126
- "en": "Azure Cloud Sect",
127
- "ja": "青雲宗",
128
- "notes": "主角所属门派"
129
- }
130
- ],
131
- "skills": [],
132
- "items": [],
133
- "organizations": [],
134
- "concepts": [],
135
- "titles": []
136
- }
137
- }
138
- ```
139
-
140
- ---
141
-
142
- ## 术语冲突检测
143
-
144
- 自动检测以下冲突:
145
-
146
- ### 1. 相同中文、不同英文(不一致)
147
-
148
- ```
149
- ⚠️ 检测到术语不一致:
150
- "青云宗" 有两个英文译名:
151
- - Azure Cloud Sect (chapter-01)
152
- - Green Cloud Sect (chapter-05)
153
-
154
- 建议:统一为 "Azure Cloud Sect"
155
- ```
156
-
157
- ### 2. 不同中文、相同英文(混淆)
158
-
159
- ```
160
- ⚠️ 检测到术语冲突:
161
- "李明" 和 "黎明" 的英文都是 "Li Ming"
162
-
163
- 建议:区分为:
164
- - 李明 → Li Ming
165
- - 黎明 → Lí Míng 或 Li Ming (dawn)
166
- ```
167
-
168
- ### 3. 拼音相似的角色名(容易混淆)
169
-
170
- ```
171
- ⚠️ 检测到拼音相似:
172
- - 李明 (Lǐ Míng) → Li Ming
173
- - 李敏 (Lǐ Mǐn) → Li Min
174
-
175
- 建议:保持当前译名,读者可区分
176
- ```
177
-
178
- ---
179
-
180
- ## 执行流程
181
-
182
- ### /glossary init
183
-
184
- 当用户调用 `/glossary init` 时:
185
-
186
- **Step 1: 检查是否已存在**
187
- ```
188
- 如果 .specify/translation/glossary.json 已存在:
189
- 提示:"术语表已存在,是否覆盖?(y/n)"
190
- 用户确认 → 继续
191
- 用户拒绝 → 退出
192
- ```
193
-
194
- **Step 2: 创建目录**
195
- ```bash
196
- mkdir -p .specify/translation
197
- ```
198
-
199
- **Step 3: 扫描知识库**
200
- ```
201
- 读取 spec/knowledge/ 下的文件:
202
- - characters.md → 提取角色名
203
- - world.md → 提取地名、组织
204
- - magic-system.md → 提取概念、功法
205
- ```
206
-
207
- **Step 4: 生成初始术语表**
208
- ```json
209
- {
210
- "version": "1.0",
211
- "story": "[从 spec/metadata.yaml 读取]",
212
- "last_updated": "2025-02-09",
213
- "languages": ["zh", "en", "ja"],
214
- "categories": {
215
- "characters": [
216
- // 从 characters.md 提取的角色
217
- ],
218
- "places": [
219
- // 从 world.md 提取的地名
220
- ],
221
- // 其他类别为空数组
222
- }
223
- }
224
- ```
225
-
226
- **Step 5: 提示用户**
227
- ```
228
- ✅ 术语表初始化成功!
229
-
230
- 自动提取:
231
- - 角色:5 个
232
- - 地名:3 个
233
-
234
- 术语表位置:.specify/translation/glossary.json
235
-
236
- 下一步:
237
- 1. 检查自动提取的术语是否正确
238
- 2. 为每个术语添加英文/日文译名
239
- 3. 使用 /glossary add 添加更多术语
240
-
241
- 示例:
242
- /glossary add "角色:李明|Li Ming|リ・ミン"
243
- ```
244
-
245
- ---
246
-
247
- ### /glossary add
248
-
249
- 当用户调用 `/glossary add "类别:中文|英文|日文"` 时:
250
-
251
- **Step 1: 解析参数**
252
- ```
253
- 输入:"角色:李明|Li Ming|リ・ミン"
254
-
255
- 解析:
256
- category = "角色" → "characters"
257
- zh = "李明"
258
- en = "Li Ming"
259
- ja = "リ・ミン" (可选)
260
- ```
261
-
262
- **Step 2: 验证类别**
263
- ```
264
- 支持的类别:
265
- 角色 → characters
266
- 地名 → places
267
- 功法 → skills
268
- 道具 → items
269
- 组织 → organizations
270
- 概念 → concepts
271
- 称呼 → titles
272
-
273
- 如果类别不支持 → 提示错误
274
- ```
275
-
276
- **Step 3: 检查冲突**
277
- ```
278
- 检查是否已存在相同中文术语:
279
- 如果存在 → 提示:"李明 已存在,是否覆盖?(y/n)"
280
- 用户确认 → 继续
281
- 用户拒绝 → 退出
282
-
283
- 检查是否有相同英文译名:
284
- 如果存在 → 警告:"Li Ming 已用于其他术语,可能混淆"
285
- ```
286
-
287
- **Step 4: 生成 ID**
288
- ```
289
- 根据类别生成唯一 ID:
290
- characters → char_001, char_002, ...
291
- places → place_001, place_002, ...
292
- ```
293
-
294
- **Step 5: 添加到术语表**
295
- ```json
296
- {
297
- "id": "char_001",
298
- "zh": "李明",
299
- "en": "Li Ming",
300
- "ja": "リ・ミン",
301
- "pinyin": "Lǐ Míng", // 自动生成
302
- "notes": "",
303
- "first_appearance": "",
304
- "aliases": {
305
- "zh": [],
306
- "en": [],
307
- "ja": []
308
- }
309
- }
310
- ```
311
-
312
- **Step 6: 保存并提示**
313
- ```
314
- ✅ 术语添加成功!
315
-
316
- 类别:角色
317
- 中文:李明
318
- 英文:Li Ming
319
- 日文:リ・ミン
320
-
321
- 当前术语总数:6 个
322
- ```
323
-
324
- ---
325
-
326
- ### /glossary list
327
-
328
- 当用户调用 `/glossary list` 时:
329
-
330
- **Step 1: 读取术语表**
331
- ```
332
- 读取 .specify/translation/glossary.json
333
- 如果不存在 → 提示:"术语表未初始化,请先运行 /glossary init"
334
- ```
335
-
336
- **Step 2: 过滤(如果有参数)**
337
- ```
338
- --category 角色 → 只显示 characters
339
- --search 青云 → 搜索包含"青云"的术语
340
- ```
341
-
342
- **Step 3: 格式化输出**
343
- ```
344
- 术语表(共 15 个术语)
345
-
346
- 【角色】(5 个)
347
- ┌────────┬──────────────┬──────────────┬──────────┐
348
- │ 中文 │ 英文 │ 日文 │ 备注 │
349
- ├────────┼──────────────┼──────────────┼──────────┤
350
- │ 李明 │ Li Ming │ リ・ミン │ 主角 │
351
- │ 苏婉儿 │ Su Wan'er │ 蘇婉児 │ 女主角 │
352
- │ ... │ ... │ ... │ ... │
353
- └────────┴──────────────┴──────────────┴──────────┘
354
-
355
- 【地名】(3 个)
356
- ┌────────┬──────────────────┬──────────┬──────────┐
357
- │ 中文 │ 英文 │ 日文 │ 备注 │
358
- ├────────┼──────────────────┼──────────┼──────────┤
359
- │ 青云宗 │ Azure Cloud Sect │ 青雲宗 │ 主角门派 │
360
- │ ... │ ... │ ... │ ... │
361
- └────────┴──────────────────┴──────────┴──────────┘
362
-
363
- 【功法】(2 个)
364
- ...
365
-
366
- 使用 /glossary list --category 角色 查看特定类别
367
- 使用 /glossary list --search 青云 搜索术语
368
- ```
369
-
370
- ---
371
-
372
- ### /glossary extract
373
-
374
- 当用户调用 `/glossary extract` 时:
375
-
376
- **Step 1: 扫描章节**
377
- ```
378
- 读取 stories/[story-name]/content/ 下的所有章节
379
- ```
380
-
381
- **Step 2: AI 识别专有名词**
382
- ```
383
- 提示词:
384
- 你是专有名词识别专家。请分析以下小说文本,识别所有专有名词。
385
-
386
- 专有名词包括:
387
- - 人物名称(主角、配角、路人)
388
- - 地名(城市、门派、地点)
389
- - 功法/技能名称
390
- - 道具/物品名称
391
- - 组织名称
392
- - 修炼体系/世界观概念
393
- - 特殊称呼
394
-
395
- 文本:
396
- [章节内容]
397
-
398
- 请列出所有专有名词,格式:
399
- 类别 | 名词 | 出现次数 | 首次出现章节
400
- ```
401
-
402
- **Step 3: 过滤已存在的术语**
403
- ```
404
- 对比 glossary.json,过滤掉已存在的术语
405
- ```
406
-
407
- **Step 4: 提供翻译建议**
408
- ```
409
- 对每个新术语,AI 提供翻译建议:
410
-
411
- 提示词:
412
- 请为以下中文专有名词提供英文和日文翻译建议。
413
-
414
- 类别:角色
415
- 名词:李明
416
- 上下文:[首次出现的段落]
417
-
418
- 翻译要求:
419
- - 人名:拼音翻译(Li Ming)
420
- - 地名:意译为主(Azure Cloud Sect)
421
- - 功法:意译(Azure Cloud Sword Art)
422
- - 概念:意译(spiritual energy)
423
-
424
- 请提供:
425
- 1. 英文译名(推荐)
426
- 2. 日文译名(推荐)
427
- 3. 翻译理由
428
- ```
429
-
430
- **Step 5: 展示结果并确认**
431
- ```
432
- 🔍 扫描完成!发现 12 个新专有名词:
433
-
434
- 【角色】(5 个)
435
- 1. 李明 → Li Ming | リ・ミン
436
- 首次出现:chapter-01
437
- 出现次数:145 次
438
-
439
- 2. 苏婉儿 → Su Wan'er | 蘇婉児
440
- 首次出现:chapter-03
441
- 出现次数:89 次
442
-
443
- 【地名】(3 个)
444
- 3. 天都城 → Celestial Capital | 天都城
445
- 首次出现:chapter-02
446
- 出现次数:67 次
447
-
448
- ...
449
-
450
- 是否添加这些术语到术语表?
451
- [a] 全部添加
452
- [s] 选择性添加
453
- [n] 不添加
454
-
455
- 用户选择 → 执行相应操作
456
- ```
457
-
458
- ---
459
-
460
- ### /glossary import
461
-
462
- 当用户调用 `/glossary import glossary.csv` 时:
463
-
464
- **Step 1: 读取 CSV 文件**
465
- ```csv
466
- 类别,中文,英文,日文,备注
467
- 角色,李明,Li Ming,リ・ミン,主角
468
- 地名,青云宗,Azure Cloud Sect,青雲宗,主角门派
469
- ```
470
-
471
- **Step 2: 解析每一行**
472
- ```
473
- 跳过标题行
474
- 对每一行:
475
- 解析类别、中文、英文、日文、备注
476
- 验证格式
477
- 检查冲突
478
- ```
479
-
480
- **Step 3: 批量添加**
481
- ```
482
- 成功:15 个
483
- 失败:2 个(冲突或格式错误)
484
-
485
- 失败详情:
486
- 第 3 行:"李明" 已存在
487
- 第 7 行:类别 "武器" 不支持(应为 "道具")
488
- ```
489
-
490
- ---
491
-
492
- ### /glossary edit
493
-
494
- 当用户调用 `/glossary edit "李明" --en "Lee Ming"` 时:
495
-
496
- **Step 1: 查找术语**
497
- ```
498
- 在 glossary.json 中搜索 zh="李明"
499
- 如果不存在 → 提示:"术语 '李明' 不存在"
500
- ```
501
-
502
- **Step 2: 更新字段**
503
- ```
504
- 支持的字段:
505
- --en <英文>
506
- --ja <日文>
507
- --notes <备注>
508
- --pinyin <拼音>
509
- ```
510
-
511
- **Step 3: 保存并提示**
512
- ```
513
- ✅ 术语更新成功!
514
-
515
- 李明
516
- 英文:Li Ming → Lee Ming
517
- ```
518
-
519
- ---
520
-
521
- ### /glossary remove
522
-
523
- 当用户调用 `/glossary remove "李明"` 时:
524
-
525
- **Step 1: 查找术语**
526
- ```
527
- 在 glossary.json 中搜索 zh="李明"
528
- 如果不存在 → 提示:"术语 '李明' 不存在"
529
- ```
530
-
531
- **Step 2: 确认删除**
532
- ```
533
- ⚠️ 确认删除术语?
534
-
535
- 中文:李明
536
- 英文:Li Ming
537
- 类别:角色
538
- 出现次数:145 次(如果已翻译)
539
-
540
- 删除后,已翻译的内容不会自动更新。
541
- 确认删除?(y/n)
542
- ```
543
-
544
- **Step 3: 删除并保存**
545
- ```
546
- ✅ 术语已删除
547
-
548
- 当前术语总数:14 个
549
- ```
550
-
551
- ---
552
-
553
- ### /glossary export
554
-
555
- 当用户调用 `/glossary export --format csv` 时:
556
-
557
- **CSV 格式:**
558
- ```csv
559
- 类别,中文,英文,日文,拼音,备注,首次出现
560
- 角色,李明,Li Ming,リ・ミン,Lǐ Míng,主角,chapter-01
561
- 地名,青云宗,Azure Cloud Sect,青雲宗,,主角门派,chapter-01
562
- ```
563
-
564
- **Markdown 格式:**
565
- ```markdown
566
- # 术语表
567
-
568
- ## 角色 (5 个)
569
-
570
- | 中文 | 英文 | 日文 | 拼音 | 备注 |
571
- |------|------|------|------|------|
572
- | 李明 | Li Ming | リ・ミン | Lǐ Míng | 主角 |
573
- | ... | ... | ... | ... | ... |
574
-
575
- ## 地名 (3 个)
576
-
577
- | 中文 | 英文 | 日文 | 备注 |
578
- |------|------|------|------|
579
- | 青云宗 | Azure Cloud Sect | 青雲宗 | 主角门派 |
580
- | ... | ... | ... | ... |
581
- ```
582
-
583
- ---
584
-
585
- ## 术语冲突检测详解
586
-
587
- ### 检测时机
588
-
589
- - 添加新术语时(/glossary add)
590
- - 批量导入时(/glossary import)
591
- - 自动提取时(/glossary extract)
592
- - 手动触发(/glossary check)
593
-
594
- ### 检测规则
595
-
596
- **规则 1:相同中文、不同译名**
597
- ```
598
- 术语 A:李明 → Li Ming
599
- 术语 B:李明 → Lee Ming
600
-
601
- 结果:❌ 冲突(同一术语有多个译名)
602
- ```
603
-
604
- **规则 2:不同中文、相同译名**
605
- ```
606
- 术语 A:李明 → Li Ming
607
- 术语 B:黎明 → Li Ming
608
-
609
- 结果:⚠️ 警告(不同术语共享译名,可能混淆)
610
- ```
611
-
612
- **规则 3:拼音相似**
613
- ```
614
- 术语 A:李明 (Lǐ Míng) → Li Ming
615
- 术语 B:李敏 (Lǐ Mǐn) → Li Min
616
-
617
- 结果:ℹ️ 提示(拼音相似,注意区分)
618
- ```
619
-
620
- **规则 4:别名冲突**
621
- ```
622
- 术语 A:李明,别名 ["小明"]
623
- 术语 B:王小明,别名 ["小明"]
624
-
625
- 结果:⚠️ 警告(别名冲突)
626
- ```
627
-
628
- ---
629
-
630
- ## 最佳实践
631
-
632
- ### 1. 初始化时机
633
-
634
- **推荐:** 在开始写作前初始化术语表
635
-
636
- ```bash
637
- # 创建项目后立即初始化
638
- /glossary init
639
-
640
- # 添加主要角色和地名
641
- /glossary add "角色:李明|Li Ming"
642
- /glossary add "地名:青云宗|Azure Cloud Sect"
643
- ```
644
-
645
- ### 2. 术语命名规范
646
-
647
- **人名:**
648
- - 中文 → 拼音(Li Ming)
649
- - 保持声调区分(Lǐ vs Lí)
650
- - 复姓连写(Sima Zhao)
651
-
652
- **地名:**
653
- - 意译为主(Azure Cloud Sect)
654
- - 保留文化特色(Celestial Capital)
655
- - 避免过度直译(不要 Blue Cloud Sect)
656
-
657
- **功法/技能:**
658
- - 意译(Azure Cloud Sword Art)
659
- - 保持意境(不要 Blue Cloud Sword Method)
660
-
661
- **概念:**
662
- - 通用译法(spiritual energy)
663
- - 首次出现时注释
664
-
665
- **称呼:**
666
- - 保留拼音(Shifu, Shixiong)
667
- - 或使用通用翻译(Master, Senior Brother)
668
-
669
- ### 3. 维护频率
670
-
671
- - **写作中:** 发现新专有名词立即添加
672
- - **写作后:** 运行 /glossary extract 检查遗漏
673
- - **翻译前:** 确保所有术语已添加
674
- - **定期:** 检查冲突和不一致
675
-
676
- ### 4. 备份
677
-
678
- ```bash
679
- # 定期导出备份
680
- /glossary export --format csv > glossary-backup-2025-02-09.csv
681
- ```
682
-
683
- ---
684
-
685
- ## 常见问题
686
-
687
- ### Q: 术语表可以多人协作吗?
688
-
689
- A: 可以。术语表是 JSON 文件,可以通过 Git 协作。建议:
690
- - 一人负责维护术语表
691
- - 其他人提交术语建议
692
- - 定期合并更新
693
-
694
- ### Q: 如何处理一词多义?
695
-
696
- A: 使用备注字段区分:
697
- ```bash
698
- /glossary add "概念:道|Dao|道" --notes "修炼之道"
699
- /glossary add "地名:道|Road|道" --notes "道路"
700
- ```
701
-
702
- ### Q: 术语表可以导入到其他项目吗?
703
-
704
- A: 可以。导出为 CSV 后,在新项目中导入:
705
- ```bash
706
- /glossary export --format csv > terms.csv
707
- # 在新项目中
708
- /glossary import terms.csv
709
- ```
710
-
711
- ### Q: 如何处理角色别名?
712
-
713
- A: 在添加术语后手动编辑 JSON,添加 aliases 字段:
714
- ```json
715
- {
716
- "zh": "李明",
717
- "en": "Li Ming",
718
- "aliases": {
719
- "zh": ["小明", "明哥"],
720
- "en": ["Ming", "Brother Ming"]
721
- }
722
- }
723
- ```
724
-
725
- ---
726
-
727
- ## 相关命令
728
-
729
- - `/translate` - 使用术语表翻译
730
- - `/translate-preview` - 预览术语应用效果
731
- - `/analyze` - 检查术语一致性