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,471 +0,0 @@
1
- ---
2
- name: volume-summary
3
- description: 生成指定卷的完整摘要报告(章节统计、角色分析、情节推进、质量指标)
4
- argument-hint: vol-XX [--export]
5
- allowed-tools: Read, Glob, Grep, Bash
6
- ---
7
-
8
- # /volume-summary — 卷级摘要生成器
9
-
10
- 生成指定卷的完整摘要报告,涵盖章节统计、角色分析、情节推进、质量指标等。适用于超长篇小说的卷末回顾和质量复查。
11
-
12
- ---
13
-
14
- ## 核心功能
15
-
16
- 1. **章节统计** - 字数、平均长度、更新频率
17
- 2. **角色分析** - 出场统计、关系变化、弧线推进
18
- 3. **情节推进** - 伏笔铺设与回收、主线进度
19
- 4. **质量指标** - 节奏评分、一致性检查、爽点密度
20
- 5. **关键事件** - 本卷重要转折点时间线
21
-
22
- ---
23
-
24
- ## 数据加载策略
25
-
26
- 本命令采用 **三层回退** 机制加载卷数据:
27
-
28
- ### Layer 3: MCP 查询(优先)
29
-
30
- ```typescript
31
- // 如果 MCP 已启用且数据已同步
32
- const volumeStats = await mcp.call('novelws-mcp/stats_volume', {
33
- volume: 'vol-03'
34
- });
35
-
36
- const characters = await mcp.call('novelws-mcp/query_characters', {
37
- volume: 'vol-03'
38
- });
39
-
40
- const plotData = await mcp.call('novelws-mcp/query_plot', {
41
- volume: 'vol-03',
42
- status: 'all'
43
- });
44
-
45
- const timeline = await mcp.call('novelws-mcp/query_timeline', {
46
- volume: 'vol-03'
47
- });
48
- ```
49
-
50
- **优势**:
51
- - 单次调用获取完整卷统计
52
- - 自动聚合跨章节数据
53
- - 高性能跨表关联查询
54
-
55
- ### Layer 2: 分片 JSON(次优)
56
-
57
- ```bash
58
- # 当 tracking/volumes/ 存在时
59
- VOLUME_DIR="tracking/volumes/vol-03"
60
-
61
- # 读取该卷所有 tracking 数据
62
- cat "$VOLUME_DIR/character-state.json"
63
- cat "$VOLUME_DIR/relationships.json"
64
- cat "$VOLUME_DIR/plot-tracker.json"
65
- cat "$VOLUME_DIR/timeline.json"
66
- cat "$VOLUME_DIR/story-facts.json"
67
- ```
68
-
69
- **适用场景**:
70
- - MCP 未启用或同步延迟
71
- - 需要精确章节级别的数据
72
- - 手动编辑 JSON 后即时生成摘要
73
-
74
- ### Layer 1: 单文件 JSON(兜底)
75
-
76
- ```bash
77
- # 传统模式,加载完整文件后手动过滤卷
78
- character_state=$(cat tracking/character-state.json | jq ".characters | map(select(.volume == \"vol-03\"))")
79
- ```
80
-
81
- **向下兼容**:小型项目(< 300 章)继续使用单文件模式,摘要覆盖全书
82
-
83
- ---
84
-
85
- ## 执行流程
86
-
87
- ### Step 1: 解析参数
88
-
89
- ```javascript
90
- const args = parseArguments($ARGUMENTS);
91
-
92
- // 卷编号(必填)
93
- const volumeId = args.volume || args._[0]; // vol-03
94
- if (!volumeId) {
95
- throw new Error("请指定卷编号:/volume-summary vol-XX");
96
- }
97
-
98
- // 导出选项(可选)
99
- const shouldExport = args.export || false;
100
- ```
101
-
102
- ### Step 2: 检测数据模式
103
-
104
- ```javascript
105
- const isSharded = fs.existsSync('tracking/volumes/');
106
- const hasMCP = fs.existsSync('mcp-servers.json');
107
-
108
- // 选择数据源
109
- let dataSource;
110
- if (hasMCP) {
111
- dataSource = 'mcp';
112
- } else if (isSharded) {
113
- dataSource = 'sharded';
114
- } else {
115
- dataSource = 'single-file';
116
- }
117
- ```
118
-
119
- ### Step 3: 加载卷数据
120
-
121
- 根据数据源加载:
122
-
123
- #### MCP 模式
124
-
125
- ```typescript
126
- const data = await loadVolumeDataFromMCP(volumeId);
127
- ```
128
-
129
- #### 分片模式
130
-
131
- ```bash
132
- VOLUME_DIR="tracking/volumes/${volumeId}"
133
-
134
- if [[ ! -d "$VOLUME_DIR" ]]; then
135
- echo "错误:卷目录不存在:$VOLUME_DIR"
136
- exit 1
137
- fi
138
-
139
- # 读取所有 tracking 文件
140
- character_state=$(cat "$VOLUME_DIR/character-state.json")
141
- relationships=$(cat "$VOLUME_DIR/relationships.json")
142
- plot_tracker=$(cat "$VOLUME_DIR/plot-tracker.json")
143
- timeline=$(cat "$VOLUME_DIR/timeline.json")
144
- ```
145
-
146
- #### 单文件模式
147
-
148
- ```javascript
149
- // 加载完整 tracking 数据,按卷过滤
150
- const allData = loadTrackingFiles();
151
- const volumeData = filterByVolume(allData, volumeId);
152
- ```
153
-
154
- ### Step 4: 读取章节内容
155
-
156
- ```javascript
157
- // 根据卷编号确定章节范围
158
- const volumeConfig = readCreativePlan().volumes.find(v => v.id === volumeId);
159
- const chapterRange = volumeConfig.chapters; // [51, 100]
160
-
161
- // 读取章节文件
162
- const chapters = [];
163
- for (let i = chapterRange[0]; i <= chapterRange[1]; i++) {
164
- const chapterPath = `stories/*/content/ch-${String(i).padStart(3, '0')}.md`;
165
- if (fs.existsSync(chapterPath)) {
166
- chapters.push({
167
- number: i,
168
- content: fs.readFileSync(chapterPath, 'utf-8'),
169
- wordCount: countWords(content)
170
- });
171
- }
172
- }
173
- ```
174
-
175
- ### Step 5: 生成摘要报告
176
-
177
- 整合所有数据,生成结构化摘要:
178
-
179
- ```markdown
180
- # 第 [X] 卷摘要报告
181
-
182
- **生成时间**:2026-02-14
183
- **数据范围**:第 [start]-[end] 章
184
- **数据来源**:[MCP/分片/单文件]
185
-
186
- ---
187
-
188
- ## 一、章节统计
189
-
190
- | 指标 | 数值 |
191
- |------|------|
192
- | 总章节数 | [X] 章 |
193
- | 总字数 | [X] 字 |
194
- | 平均章节长度 | [X] 字/章 |
195
- | 最长章节 | 第 [X] 章([X] 字)|
196
- | 最短章节 | 第 [X] 章([X] 字)|
197
- | 更新时间跨度 | [X] 天 |
198
-
199
- ---
200
-
201
- ## 二、角色分析
202
-
203
- ### 主要角色出场统计
204
-
205
- | 角色 | 出场章节数 | 对话量 | 关系变化 | 弧线进度 |
206
- |------|-----------|--------|---------|---------|
207
- | [角色A] | [X] 章 | [X] 句 | [X] 次 | [X]% |
208
- | [角色B] | [X] 章 | [X] 句 | [X] 次 | [X]% |
209
-
210
- ### 关系网络变化
211
-
212
- - **新增关系**:[X] 对
213
- - [角色A] ↔ [角色B]:陌生 → 盟友
214
- - [角色C] ↔ [角色D]:友好 → 敌对
215
-
216
- - **关系深化**:[X] 对
217
- - [角色E] ↔ [角色F]:普通朋友 → 生死之交
218
-
219
- ### 角色成长里程碑
220
-
221
- - **[角色A]**:
222
- - 第 [X] 章:突破筑基期
223
- - 第 [Y] 章:确立复仇动机
224
- - 第 [Z] 章:首次战胜强敌
225
-
226
- ---
227
-
228
- ## 三、情节推进
229
-
230
- ### 主线进度
231
-
232
- | 情节线 | 进度 | 关键事件 |
233
- |--------|------|---------|
234
- | [主线A] | [X]% | 第 [X] 章:[事件] |
235
- | [支线B] | [X]% | 第 [Y] 章:[事件] |
236
-
237
- ### 伏笔管理
238
-
239
- - **铺设伏笔**:[X] 个
240
- - 第 [X] 章:[伏笔描述]
241
- - 第 [Y] 章:[伏笔描述]
242
-
243
- - **回收伏笔**:[X] 个
244
- - 第 [X] 章:回收"[伏笔名]"(铺设于第 [Y] 章)
245
-
246
- - **待回收伏笔**:[X] 个
247
- - "[伏笔名]"(紧急度:[X])
248
-
249
- ### 本卷高潮
250
-
251
- - **第 [X] 章**:[高潮描述]
252
- - 爽点类型:[类型]
253
- - 情感强度:★★★★☆
254
-
255
- ---
256
-
257
- ## 四、质量指标
258
-
259
- ### 节奏评分
260
-
261
- ```
262
- 章节节奏曲线(1-10 分):
263
- 第51章: ████████░░ 8/10
264
- 第52章: ██████░░░░ 6/10
265
- 第53章: ███████░░░ 7/10
266
- 第54章: █████████░ 9/10 ← 高潮
267
- 第55章: ████░░░░░░ 4/10
268
- ...
269
-
270
- 平均节奏:7.2/10
271
- 节奏变化合理性:✓ 张弛有度
272
- ```
273
-
274
- ### 爽点密度
275
-
276
- - **总爽点数**:[X] 个
277
- - **平均间隔**:每 [X] 章 1 个
278
- - **爽点类型分布**:
279
- - 战斗:[X] 个
280
- - 智斗:[X] 个
281
- - 情感:[X] 个
282
- - 反转:[X] 个
283
-
284
- ### 一致性检查
285
-
286
- | 检查项 | 状态 | 详情 |
287
- |--------|------|------|
288
- | 角色性格一致 | ✓ | 无矛盾 |
289
- | 时间线连续 | ⚠️ | 第 [X]-[Y] 章存在跳跃 |
290
- | 力量体系一致 | ✓ | 无矛盾 |
291
- | 伏笔逻辑自洽 | ✓ | 无矛盾 |
292
-
293
- ---
294
-
295
- ## 五、关键事件时间线
296
-
297
- ```
298
- 第 51 章 | 万历三十年五月 | 主角进入内阁
299
- 第 53 章 | 万历三十年五月 | 与申时行派系首次冲突
300
- 第 55 章 | 万历三十年六月 | 沈玉卿身世揭露
301
- 第 58 章 | 万历三十年六月 | 东厂介入
302
- 第 60 章 | 万历三十年七月 | 卷末高潮:内阁政变
303
- ```
304
-
305
- ---
306
-
307
- ## 六、下一卷建议
308
-
309
- ### 需要延续的线索
310
-
311
- - **伏笔**:[伏笔名](待第 [X] 卷回收)
312
- - **关系**:[角色A] ↔ [角色B](需进一步发展)
313
- - **冲突**:[冲突描述](需升级)
314
-
315
- ### 潜在风险
316
-
317
- - ⚠️ 角色 [X] 已 [N] 章未出场,建议第 [Y] 卷安排戏份
318
- - ⚠️ 情节线 [X] 进度缓慢,建议加快推进
319
- - ⚠️ 伏笔 [X] 紧急度过高,建议尽快回收
320
-
321
- ### 质量提升建议
322
-
323
- - 节奏:第 [X]-[Y] 章节奏平缓,建议在第 [Z] 卷前半段增加冲突
324
- - 爽点:本卷爽点密度偏低,建议第 [Z] 卷提升至每 3-4 章 1 个
325
- - 角色:[角色X] 戏份不足,建议在第 [Z] 卷安排独立支线
326
-
327
- ---
328
-
329
- ## 七、导出选项
330
-
331
- ### 保存路径
332
-
333
- 摘要报告已保存至:
334
- - **Markdown**: `spec/summaries/vol-[XX]-summary.md`
335
- - **JSON**: `spec/summaries/vol-[XX]-summary.json`
336
-
337
- ### 使用建议
338
-
339
- - 在开始下一卷写作前,先阅读本卷摘要
340
- - 定期(每 3-5 卷)执行全局一致性检查
341
- - 导出 JSON 可用于数据分析和可视化
342
- ```
343
-
344
- ### Step 6: 可选导出
345
-
346
- 如果用户指定 `--export`:
347
-
348
- ```javascript
349
- // 保存 Markdown 格式
350
- fs.writeFileSync(
351
- `spec/summaries/${volumeId}-summary.md`,
352
- summaryMarkdown
353
- );
354
-
355
- // 保存 JSON 格式(结构化数据)
356
- fs.writeFileSync(
357
- `spec/summaries/${volumeId}-summary.json`,
358
- JSON.stringify(summaryData, null, 2)
359
- );
360
- ```
361
-
362
- ---
363
-
364
- ## 使用场景
365
-
366
- ### 场景 1:卷末回顾
367
-
368
- ```bash
369
- 用户:我刚写完第 3 卷,想回顾一下
370
- 助手:好的,让我为您生成第 3 卷的完整摘要
371
-
372
- 用户:/volume-summary vol-03
373
- 助手:【生成中...】
374
-
375
- 检测到 MCP 已启用,使用高性能查询...
376
- ✓ 章节统计加载完成(101-150 章,共 50 章)
377
- ✓ 角色数据加载完成(12 个主要角色)
378
- ✓ 情节数据加载完成(5 条主线,8 个伏笔)
379
- ✓ 质量指标计算完成
380
-
381
- 【第 3 卷摘要报告】
382
- [完整报告内容...]
383
-
384
- 💡 建议:第 3 卷整体质量良好,但有 2 个伏笔紧急度较高,建议在第 4 卷前半段回收。
385
- ```
386
-
387
- ### 场景 2:导出数据分析
388
-
389
- ```bash
390
- 用户:/volume-summary vol-02 --export
391
- 助手:生成第 2 卷摘要并导出...
392
-
393
- ✓ 摘要报告已生成
394
- ✓ 已导出至:spec/summaries/vol-02-summary.md
395
- ✓ 已导出至:spec/summaries/vol-02-summary.json
396
-
397
- JSON 数据可用于:
398
- - 导入可视化工具(如 Tableau)
399
- - 自定义数据分析脚本
400
- - 跨卷对比分析
401
- ```
402
-
403
- ### 场景 3:分片模式
404
-
405
- ```bash
406
- 用户:/volume-summary vol-05
407
- 助手:检测到分片模式...
408
-
409
- 数据来源:tracking/volumes/vol-05/
410
- ✓ character-state.json
411
- ✓ relationships.json
412
- ✓ plot-tracker.json
413
- ✓ timeline.json
414
-
415
- 【第 5 卷摘要报告】
416
- [完整报告内容...]
417
- ```
418
-
419
- ---
420
-
421
- ## 与其他命令的关系
422
-
423
- ```text
424
- /write → 完成卷写作
425
-
426
- /volume-summary → 生成卷摘要(本命令)
427
-
428
- /analyze --volume vol-XX → 深度分析(可选)
429
-
430
- /plan --detail vol-XX+1 → 规划下一卷
431
- ```
432
-
433
- **互补关系**:
434
- - `/volume-summary` 提供快速概览,`/analyze` 提供深度诊断
435
- - `/recap --full vol-XX` 重建上下文,`/volume-summary` 回顾数据
436
- - `/track --volume vol-XX` 更新数据,`/volume-summary` 查看摘要
437
-
438
- ---
439
-
440
- ## 注意事项
441
-
442
- ### 数据完整性
443
-
444
- - 确保 tracking 数据已同步至最新章节
445
- - 如果使用 MCP,建议先执行 `/track --sync --incremental`
446
- - 分片模式下,确保目标卷目录存在
447
-
448
- ### 性能考虑
449
-
450
- - MCP 模式生成速度最快(< 5 秒)
451
- - 分片模式需读取多个 JSON 文件(10-30 秒)
452
- - 单文件模式在超长篇项目中可能较慢(> 1 分钟)
453
-
454
- ### 报告精度
455
-
456
- - 自动生成的质量指标为参考值,不替代人工审查
457
- - 建议结合 `/analyze` 进行深度验证
458
- - 角色出场统计基于文本搜索,可能有误差
459
-
460
- ---
461
-
462
- ## 🔗 命令链式提示
463
-
464
- **命令执行完成后,自动附加下一步建议**:
465
-
466
- ```
467
- 💡 下一步建议:
468
- 1️⃣ `/analyze --volume vol-[XX]` — 深度分析本卷质量
469
- 2️⃣ `/plan --detail vol-[XX+1]` — 规划下一卷情节
470
- 3️⃣ `/revise --volume vol-[XX]` — 根据摘要发现的问题修改本卷
471
- ```
@@ -1,26 +0,0 @@
1
- {
2
- "version": "1.0",
3
- "connector_phrases": [
4
- "首先", "其次", "再次", "然后", "然而", "总而言之", "综上所述",
5
- "在某种程度", "众所周知", "在当下", "随着"
6
- ],
7
- "empty_phrases": [
8
- "广泛关注", "引发热议", "影响深远", "具有重要意义", "有效提升",
9
- "具有一定的指导意义", "值得我们思考"
10
- ],
11
- "cliche_pairs": [
12
- ["世界上没有轻松的成功", "说具体一次你咬牙挺过去的时刻"],
13
- ["坚持就是胜利", "写出坚持里最难熬的那个动作和气味"]
14
- ],
15
- "sentence_length": {
16
- "max_run_long": 4,
17
- "max_run_short": 5,
18
- "short_threshold": 12,
19
- "long_threshold": 35
20
- },
21
- "abstract_nouns": [
22
- "价值", "意义", "认知", "体系", "模式", "路径", "方法论", "趋势"
23
- ],
24
- "min_concrete_details": 3
25
- }
26
-
@@ -1,152 +0,0 @@
1
- # 角色档案
2
-
3
- ## 主角
4
-
5
- ### [主角姓名]
6
-
7
- #### 基本信息
8
- - **年龄**:
9
- - **性别**:
10
- - **身份/职业**:
11
- - **出身背景**:
12
-
13
- #### 外貌特征
14
- - **身高体型**:
15
- - **相貌特点**:
16
- - **穿着风格**:
17
- - **特殊标记**:
18
-
19
- #### 性格特征
20
- - **核心性格**:
21
- - **优点**:
22
- - **缺点**:
23
- - **行为习惯**:
24
- - **说话方式**:
25
-
26
- #### 能力设定
27
- - **特殊能力**:
28
- - **技能特长**:
29
- - **战斗力**:
30
- - **智力水平**:
31
- - **弱点**:
32
-
33
- #### 背景故事
34
- [详细的人物背景]
35
-
36
- **童年经历**:
37
- **成长历程**:
38
- **重要事件**:
39
- **人生转折**:
40
-
41
- #### 人物动机
42
- - **核心追求**:
43
- - **内心恐惧**:
44
- - **价值观**:
45
- - **人生目标**:
46
-
47
- #### 成长规划
48
- - **初期状态**:
49
- - **中期发展**:
50
- - **后期蜕变**:
51
- - **最终形态**:
52
-
53
- #### 人际关系
54
- - **家人**:
55
- - **朋友**:
56
- - **敌人**:
57
- - **爱人**:
58
- - **导师**:
59
-
60
- ---
61
-
62
- ## 重要配角
63
-
64
- ### [配角姓名]
65
-
66
- #### 基本信息
67
- - **角色定位**:[如:导师/对手/伙伴/爱人]
68
- - **与主角关系**:
69
- - **出场章节**:
70
- - **重要程度**:⭐⭐⭐⭐⭐
71
-
72
- #### 人物特征
73
- - **外貌简述**:
74
- - **性格要点**:
75
- - **能力水平**:
76
- - **说话风格**:
77
-
78
- #### 角色功能
79
- - **剧情作用**:
80
- - **推动主线**:
81
- - **性格对比**:
82
-
83
- #### 人物背景
84
- [简要背景说明]
85
-
86
- #### 发展轨迹
87
- - **初次登场**:
88
- - **关系变化**:
89
- - **最终去向**:
90
-
91
- ---
92
-
93
- ## 次要角色
94
-
95
- ### [角色组/势力]
96
-
97
- #### 群体角色
98
- - **所属组织**:
99
- - **共同特征**:
100
- - **代表人物**:
101
-
102
- #### 功能角色
103
- | 姓名 | 身份 | 作用 | 出场章节 | 备注 |
104
- |------|------|------|----------|------|
105
- | | | | | |
106
- | | | | | |
107
-
108
- ---
109
-
110
- ## 角色关系图谱
111
-
112
- ### 主要关系线
113
- ```
114
- [主角] ─── 爱慕 ──→ [角色A]
115
- │ ↑
116
- │ │敌对
117
- ├── 师徒 ──→ [角色B]│
118
- │ │
119
- └── 对手 ←── [角色C]─┘
120
- ```
121
-
122
- ### 势力关系
123
- - **正派阵营**:
124
- - **反派阵营**:
125
- - **中立势力**:
126
-
127
- ## 角色成长timeline
128
-
129
- ### 主角成长节点
130
- 1. **第X章**:[事件] → [变化]
131
- 2. **第X章**:[事件] → [变化]
132
- 3. **第X章**:[事件] → [变化]
133
-
134
- ### 关系发展节点
135
- 1. **第X章**:[角色A+角色B] → [关系变化]
136
- 2. **第X章**:[角色C登场] → [新关系建立]
137
-
138
- ## 角色设计备注
139
-
140
- ### 创作要点
141
- - 保持人物行为的逻辑一致性
142
- - 角色成长要循序渐进
143
- - 对话要符合人物身份和性格
144
- - 避免角色工具化
145
-
146
- ### 参考原型
147
- [如有参考的真实人物或其他作品角色]
148
-
149
- ---
150
- *创建时间:[日期]*
151
- *最后更新:[日期]*
152
- *版本:1.0*