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,385 +0,0 @@
1
- ---
2
- name: relations
3
- description: 管理和追踪角色关系变化
4
- argument-hint: [update | show | history | check] [角色] [关系] [目标角色] [--volume vol-XX | --character-focus 角色名]
5
- allowed-tools: Read(//tracking/relationships.json), Read(//tracking/relationships.json), Write(//tracking/relationships.json), Write(//tracking/relationships.json), Bash(find:*), Bash(*)
6
- scripts:
7
- sh: resources/scripts/bash/manage-relations.sh
8
- ps: resources/scripts/powershell/manage-relations.ps1
9
- ---
10
-
11
- # 角色关系管理
12
-
13
- 追踪和管理角色之间的关系动态,确保关系发展的合理性。
14
-
15
- ## 资源加载(可选)
16
-
17
- 本命令用于管理角色关系,默认读取 `tracking/relationships.json`。
18
-
19
- ### 可选配置
20
-
21
- ```yaml
22
- resource-loading:
23
- relations:
24
- knowledge-base:
25
- craft:
26
- - character-arc # 角色弧线知识
27
- skills:
28
- quality-assurance:
29
- - consistency-checker # 关系一致性检查
30
- ```
31
-
32
- **推荐资源**: character-arc.md(理解关系演变)
33
-
34
- ## 数据加载策略
35
-
36
- 本命令采用 **三层回退** 机制加载关系数据:
37
-
38
- ### Layer 3: MCP 查询(优先)
39
-
40
- ```typescript
41
- // 如果 MCP 已启用且数据已同步
42
- const relationships = await mcp.call('novelws-mcp/query_relationships', {
43
- volume: 'vol-03', // --volume 参数
44
- character: '李中庸', // --character-focus 参数
45
- type: 'all' // 'ally', 'enemy', 'romantic', 'all'
46
- });
47
- ```
48
-
49
- **优势**:
50
- - 高性能角色关系过滤(按角色、类型、卷)
51
- - 自动聚合关系变化趋势
52
- - 支持复杂关系图谱查询(派系、多级关系)
53
-
54
- ### Layer 2: 分片 JSON(次优)
55
-
56
- ```bash
57
- # 当 tracking/volumes/ 存在时
58
- relationships_data=$(cat tracking/volumes/vol-03/relationships.json)
59
- ```
60
-
61
- **适用场景**:
62
- - MCP 未启用或同步延迟
63
- - 需要精确章节级别的关系变化记录
64
- - 手动编辑 JSON 后即时查看
65
-
66
- ### Layer 1: 单文件 JSON(兜底)
67
-
68
- ```bash
69
- # 传统模式,加载完整文件
70
- relationships_data=$(cat tracking/relationships.json)
71
- ```
72
-
73
- **向下兼容**:小型项目(< 300 章)继续使用单文件模式
74
-
75
- ### 参数过滤行为
76
-
77
- - **`--volume vol-XX`**: 仅加载指定卷的关系变化记录(Layer 3/2 生效,Layer 1 需手动过滤)
78
- - **`--character-focus 角色名`**: 仅显示与指定角色相关的关系(Layer 3 直接过滤,Layer 1/2 筛选后返回)
79
-
80
- ## 功能
81
-
82
- 1. **关系网络** - 维护角色之间的关系图谱
83
- 2. **关系变化** - 记录关系的演变历程
84
- 3. **派系管理** - 追踪各势力派系的对立与合作
85
- 4. **情感追踪** - 管理角色间的情感发展
86
-
87
- ## 使用方法
88
-
89
- 执行脚本 {SCRIPT} [操作] [参数],支持以下子命令:
90
-
91
- ### 子命令
92
-
93
- - **`update`** - 更新角色关系
94
- ```bash
95
- {SCRIPT} update 李中庸 allies 沈玉卿 --chapter 61 --note 初入翰林相助
96
- # PowerShell:
97
- {SCRIPT} -Command update -A 李中庸 -Relation allies -B 沈玉卿 -Chapter 61 -Note 初入翰林相助
98
- ```
99
- - 自动确定目标卷(基于章节号)并写入对应分片
100
-
101
- - **`show`** - 显示关系网络
102
- ```bash
103
- {SCRIPT} show --character-focus 李中庸
104
- {SCRIPT} show --volume vol-03
105
- ```
106
- - `--character-focus 角色名`: 仅显示与指定角色相关的关系
107
- - `--volume vol-XX`: 仅显示指定卷涉及的关系
108
-
109
- - **`history`** - 查看关系变化历史
110
- ```bash
111
- {SCRIPT} history 李中庸 沈玉卿
112
- {SCRIPT} history 李中庸 沈玉卿 --volume vol-02
113
- ```
114
- - 显示两个角色之间的关系演变时间线
115
- - 支持 `--volume` 过滤特定卷的变化
116
-
117
- - **`check`** - 验证关系逻辑
118
- - 检测关系冲突(态度矛盾、称呼不一致、关系跳跃、单向矛盾)
119
- - `--volume vol-XX`: 仅检查指定卷的关系一致性
120
-
121
- ## 数据存储
122
-
123
- 关系数据存储在 `tracking/relationships.json`:
124
- ```json
125
- {
126
- "characters": {
127
- "主角": {
128
- "盟友": ["角色A", "角色B"],
129
- "敌对": ["角色C"],
130
- "爱慕": ["角色D"],
131
- "未知": ["角色E"]
132
- }
133
- },
134
- "factions": {
135
- "改革派": ["主角", "角色A"],
136
- "保守派": ["角色C", "角色F"]
137
- }
138
- }
139
- ```
140
-
141
- ## 输出示例
142
-
143
- ```
144
- 👥 角色关系网络
145
- ━━━━━━━━━━━━━━━━━━━━
146
- 主角:李中庸
147
- ├─ 💕 爱慕:沈玉卿
148
- ├─ 🤝 盟友:张居正(隐藏)
149
- ├─ 📚 导师:利玛窦
150
- ├─ ⚔️ 敌对:申时行派系
151
- └─ 👁️ 监视:东厂
152
-
153
- 派系对立:
154
- 改革派 ←→ 保守派
155
- 东林党 ←→ 阉党
156
-
157
- 最近变化(第60章):
158
- - 沈玉卿:陌生人 → 相互吸引
159
- - 张居正:未知 → 师承关系
160
- ```
161
-
162
- ## 数据写入协议
163
-
164
- 关系数据更新遵循以下协议:
165
-
166
- ### 分片模式(tracking/volumes/ 存在)
167
-
168
- 1. **确定目标卷**:
169
- - 如果命令指定 `--volume vol-XX`,写入对应卷
170
- - 如果基于章节号(如 `update` 命令指定 `--chapter 42`),根据章节号确定卷:
171
- ```bash
172
- # 示例:ch-042 属于 vol-02(假设每卷 50 章)
173
- volume_num=$((chapter_num / 50 + 1))
174
- target_volume="vol-$(printf '%02d' $volume_num)"
175
- ```
176
-
177
- 2. **写入分片文件**:
178
- ```bash
179
- # 写入指定卷的 relationships.json
180
- Write(tracking/volumes/${target_volume}/relationships.json)
181
- ```
182
-
183
- 3. **更新全局摘要**(如果关系变化影响角色摘要):
184
- ```bash
185
- # 更新 characters-summary.json 的关系统计
186
- Write(tracking/summary/characters-summary.json)
187
- ```
188
-
189
- 4. **触发 MCP 同步**(如果启用):
190
- ```bash
191
- mcp-cli call novelws-mcp/sync_from_json '{
192
- "mode": "incremental",
193
- "tables": ["relationships"]
194
- }'
195
- ```
196
-
197
- ### 单文件模式(传统)
198
-
199
- 直接写入完整 `relationships.json`:
200
- ```bash
201
- Write(tracking/relationships.json)
202
- ```
203
-
204
- ### 写入示例
205
-
206
- ```typescript
207
- // update 命令:更新第 42 章的关系
208
- const chapterNum = 42;
209
- const volumeNum = Math.floor((chapterNum - 1) / 50) + 1;
210
- const targetVolume = `vol-${String(volumeNum).padStart(2, '0')}`;
211
-
212
- // 读取目标卷的 relationships 分片
213
- const relPath = isSharded
214
- ? `tracking/volumes/${targetVolume}/relationships.json`
215
- : 'tracking/relationships.json';
216
-
217
- const relationships = JSON.parse(fs.readFileSync(relPath));
218
-
219
- // 更新关系
220
- if (!relationships.characters['李中庸']) {
221
- relationships.characters['李中庸'] = {};
222
- }
223
- if (!relationships.characters['李中庸'].allies) {
224
- relationships.characters['李中庸'].allies = [];
225
- }
226
- relationships.characters['李中庸'].allies.push({
227
- name: '沈玉卿',
228
- chapter: 'ch-042',
229
- note: '初入翰林相助'
230
- });
231
-
232
- // 写回分片
233
- fs.writeFileSync(relPath, JSON.stringify(relationships, null, 2));
234
-
235
- // 同步到 MCP(如果启用)
236
- if (mcpEnabled) {
237
- await mcp.call('novelws-mcp/sync_from_json', {
238
- mode: 'incremental',
239
- tables: ['relationships']
240
- });
241
- }
242
- ```
243
-
244
- ---
245
-
246
- ## 增强功能
247
-
248
- ### 关系图谱可视化
249
-
250
- #### 全局关系图
251
-
252
- ```
253
- 👥 角色关系图谱
254
- ━━━━━━━━━━━━━━━━━━━━
255
-
256
- [师父]
257
- ╱ ╲
258
- 师徒/ \师徒
259
- ╱ ╲
260
- [主角] ←── 暗恋 ── [师姐]
261
- │ ╲ │
262
- 仇敌 同门 │
263
- │ ╲ 同门
264
- ↓ ╲ │
265
- [反派] [师弟] ── [师妹]
266
- │ │
267
- 主从 朋友
268
- │ │
269
- [手下A] [城主之女]
270
- ```
271
-
272
- #### 关系列表视图
273
-
274
- ```
275
- 👥 关系详情
276
- ━━━━━━━━━━━━━━━━━━━━
277
-
278
- [主角] 的关系:
279
- ├─ [师父] :师徒 ★★★★★ (尊敬、信任)
280
- ├─ [师姐] :同门 ★★★★☆ (好感、暗恋)→ 变化中
281
- ├─ [师弟] :同门 ★★★☆☆ (友好、竞争)
282
- ├─ [反派] :仇敌 ★★★★★ (仇恨、警惕)
283
- └─ [城主之女]:朋友 ★★☆☆☆ (初识、好奇)
284
-
285
- 关系强度说明:★ = 关系深度/重要性(1-5)
286
- ```
287
-
288
- #### 阵营视图
289
-
290
- ```
291
- 👥 阵营关系
292
- ━━━━━━━━━━━━━━━━━━━━
293
-
294
- 🟢 主角阵营:
295
- [主角]、[师父]、[师姐]、[师弟]、[城主之女]
296
-
297
- 🔴 反派阵营:
298
- [反派]、[手下A]、[手下B]
299
-
300
- 🟡 中立/未定:
301
- [神秘人]、[商人]
302
-
303
- 阵营关系:
304
- 主角阵营 ←→ 反派阵营:敌对
305
- 主角阵营 ←→ 中立:友好(但[神秘人]立场不明)
306
- ```
307
-
308
- ### 关系变化追踪
309
-
310
- #### 关系演变时间线
311
-
312
- ```
313
- 📈 关系演变 — [主角] ↔ [师姐]
314
- ━━━━━━━━━━━━━━━━━━━━
315
-
316
- 第 1 章 :初识(陌生) ★☆☆☆☆
317
- 第 3 章 :指导修炼(好感) ★★☆☆☆ ↑
318
- 第 8 章 :并肩战斗(信任) ★★★☆☆ ↑
319
- 第 12 章 :误会(疏远) ★★☆☆☆ ↓
320
- 第 15 章 :误会解除(亲近) ★★★★☆ ↑↑
321
- 第 20 章 :生死相依(深厚) ★★★★★ ↑
322
-
323
- 趋势:稳步上升(中间有一次波折,符合「先抑后扬」模式)
324
- ```
325
-
326
- #### 关系变化汇总
327
-
328
- ```
329
- 📊 最近 5 章关系变化
330
- ━━━━━━━━━━━━━━━━━━━━
331
-
332
- | 关系 | 变化前 | 变化后 | 触发事件 | 章节 |
333
- |------|--------|--------|---------|------|
334
- | 主角↔师姐 | ★★★☆ | ★★★★ | 并肩战斗 | 第 18 章 |
335
- | 主角↔反派 | ★★★★ | ★★★★★ | 反派伤害师姐 | 第 19 章 |
336
- | 师弟↔师妹 | ★★☆☆ | ★★★☆ | 共同修炼 | 第 20 章 |
337
-
338
- ⚠️ 长期未变化的关系:
339
- - 主角↔城主之女:已 10 章未有互动,关系停滞
340
- → 建议:安排互动场景,或确认此关系是否需要发展
341
- ```
342
-
343
- ### 关系冲突检测
344
-
345
- 检测关系描写中的不一致:
346
-
347
- | 冲突类型 | 描述 |
348
- |---------|------|
349
- | 态度矛盾 | 设定为仇敌,但对话中表现友好 |
350
- | 称呼不一致 | 同一关系在不同章节使用不同称呼 |
351
- | 关系跳跃 | 关系突然变化,缺少过渡 |
352
- | 单向矛盾 | A 对 B 的态度与 B 对 A 的态度不匹配(非刻意设计时) |
353
-
354
- #### 冲突报告
355
-
356
- ```
357
- ⚠️ 关系冲突检测
358
- ━━━━━━━━━━━━━━━━━━━━
359
-
360
- 🔴 严重冲突:
361
- 1. 关系跳跃:主角↔师弟
362
- 第 10 章:关系紧张(争吵)
363
- 第 11 章:亲密无间(称兄道弟)
364
- → 缺少和解过渡,建议补充
365
-
366
- ⚠️ 轻微冲突:
367
- 2. 称呼不一致:主角对师姐
368
- 第 5 章:「师姐」
369
- 第 12 章:「小雪」(未交代何时改口)
370
- → 建议在某章节自然过渡称呼变化
371
- ```
372
-
373
- ---
374
-
375
-
376
- ## 🔗 命令链式提示
377
-
378
- **命令执行完成后,自动附加下一步建议**:
379
-
380
- ```
381
- 💡 下一步建议:
382
- 1️⃣ `/write [章节号]` — 基于更新后的关系网络继续写作
383
- 2️⃣ `/character show [角色名]` — 查看角色完整档案和关系详情
384
- 3️⃣ `/track --check` — 验证关系数据与章节内容的一致性
385
- ```