novelws 1.2.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 (320) hide show
  1. package/CHANGELOG.md +161 -0
  2. package/LICENSE +22 -0
  3. package/README.md +372 -0
  4. package/dist/cli.d.ts +3 -0
  5. package/dist/cli.d.ts.map +1 -0
  6. package/dist/cli.js +50 -0
  7. package/dist/cli.js.map +1 -0
  8. package/dist/commands/check.d.ts +6 -0
  9. package/dist/commands/check.d.ts.map +1 -0
  10. package/dist/commands/check.js +32 -0
  11. package/dist/commands/check.js.map +1 -0
  12. package/dist/commands/init.d.ts +6 -0
  13. package/dist/commands/init.d.ts.map +1 -0
  14. package/dist/commands/init.js +160 -0
  15. package/dist/commands/init.js.map +1 -0
  16. package/dist/commands/plugin.d.ts +6 -0
  17. package/dist/commands/plugin.d.ts.map +1 -0
  18. package/dist/commands/plugin.js +135 -0
  19. package/dist/commands/plugin.js.map +1 -0
  20. package/dist/commands/upgrade.d.ts +6 -0
  21. package/dist/commands/upgrade.d.ts.map +1 -0
  22. package/dist/commands/upgrade.js +92 -0
  23. package/dist/commands/upgrade.js.map +1 -0
  24. package/dist/core/config.d.ts +72 -0
  25. package/dist/core/config.d.ts.map +1 -0
  26. package/dist/core/config.js +136 -0
  27. package/dist/core/config.js.map +1 -0
  28. package/dist/core/errors.d.ts +59 -0
  29. package/dist/core/errors.d.ts.map +1 -0
  30. package/dist/core/errors.js +125 -0
  31. package/dist/core/errors.js.map +1 -0
  32. package/dist/core/platform.d.ts +27 -0
  33. package/dist/core/platform.d.ts.map +1 -0
  34. package/dist/core/platform.js +75 -0
  35. package/dist/core/platform.js.map +1 -0
  36. package/dist/core/template.d.ts +35 -0
  37. package/dist/core/template.d.ts.map +1 -0
  38. package/dist/core/template.js +94 -0
  39. package/dist/core/template.js.map +1 -0
  40. package/dist/plugins/identifier.d.ts +13 -0
  41. package/dist/plugins/identifier.d.ts.map +1 -0
  42. package/dist/plugins/identifier.js +72 -0
  43. package/dist/plugins/identifier.js.map +1 -0
  44. package/dist/plugins/installers/base.d.ts +27 -0
  45. package/dist/plugins/installers/base.d.ts.map +1 -0
  46. package/dist/plugins/installers/base.js +30 -0
  47. package/dist/plugins/installers/base.js.map +1 -0
  48. package/dist/plugins/installers/github.d.ts +22 -0
  49. package/dist/plugins/installers/github.d.ts.map +1 -0
  50. package/dist/plugins/installers/github.js +133 -0
  51. package/dist/plugins/installers/github.js.map +1 -0
  52. package/dist/plugins/installers/local.d.ts +16 -0
  53. package/dist/plugins/installers/local.d.ts.map +1 -0
  54. package/dist/plugins/installers/local.js +69 -0
  55. package/dist/plugins/installers/local.js.map +1 -0
  56. package/dist/plugins/installers/npm.d.ts +20 -0
  57. package/dist/plugins/installers/npm.d.ts.map +1 -0
  58. package/dist/plugins/installers/npm.js +99 -0
  59. package/dist/plugins/installers/npm.js.map +1 -0
  60. package/dist/plugins/manager.d.ts +77 -0
  61. package/dist/plugins/manager.d.ts.map +1 -0
  62. package/dist/plugins/manager.js +349 -0
  63. package/dist/plugins/manager.js.map +1 -0
  64. package/dist/plugins/registry.d.ts +48 -0
  65. package/dist/plugins/registry.d.ts.map +1 -0
  66. package/dist/plugins/registry.js +111 -0
  67. package/dist/plugins/registry.js.map +1 -0
  68. package/dist/plugins/types.d.ts +66 -0
  69. package/dist/plugins/types.d.ts.map +1 -0
  70. package/dist/plugins/types.js +2 -0
  71. package/dist/plugins/types.js.map +1 -0
  72. package/dist/plugins/validator.d.ts +19 -0
  73. package/dist/plugins/validator.d.ts.map +1 -0
  74. package/dist/plugins/validator.js +164 -0
  75. package/dist/plugins/validator.js.map +1 -0
  76. package/dist/utils/logger.d.ts +13 -0
  77. package/dist/utils/logger.d.ts.map +1 -0
  78. package/dist/utils/logger.js +48 -0
  79. package/dist/utils/logger.js.map +1 -0
  80. package/dist/utils/project.d.ts +24 -0
  81. package/dist/utils/project.d.ts.map +1 -0
  82. package/dist/utils/project.js +61 -0
  83. package/dist/utils/project.js.map +1 -0
  84. package/dist/version.d.ts +3 -0
  85. package/dist/version.d.ts.map +1 -0
  86. package/dist/version.js +21 -0
  87. package/dist/version.js.map +1 -0
  88. package/package.json +76 -0
  89. package/plugins/authentic-voice/README.md +31 -0
  90. package/plugins/authentic-voice/commands/authentic-voice.md +73 -0
  91. package/plugins/authentic-voice/commands/authenticity-audit.md +37 -0
  92. package/plugins/authentic-voice/config.yaml +30 -0
  93. package/plugins/authentic-voice/experts/authentic-editor.md +27 -0
  94. package/plugins/export/README.md +319 -0
  95. package/plugins/export/commands/export.md +460 -0
  96. package/plugins/export/commands/generate-cover.md +256 -0
  97. package/plugins/export/commands/metadata.md +309 -0
  98. package/plugins/export/config.yaml +47 -0
  99. package/plugins/export/experts/publishing-expert.md +171 -0
  100. package/plugins/export/templates/epub/chapter-template.html +13 -0
  101. package/plugins/export/templates/epub/cover-template.html +14 -0
  102. package/plugins/export/templates/epub/stylesheet.css +200 -0
  103. package/plugins/export/templates/pdf/ebook-style.css +137 -0
  104. package/plugins/export/templates/pdf/print-style.css +179 -0
  105. package/plugins/export/templates/platforms/jinjiang-format.md +101 -0
  106. package/plugins/export/templates/platforms/qidian-format.md +108 -0
  107. package/plugins/export/templates/platforms/tomato-format.md +95 -0
  108. package/plugins/translate/README.md +265 -0
  109. package/plugins/translate/commands/glossary.md +731 -0
  110. package/plugins/translate/commands/translate-preview.md +543 -0
  111. package/plugins/translate/commands/translate.md +649 -0
  112. package/plugins/translate/config.yaml +43 -0
  113. package/plugins/translate/experts/literary-translator.md +605 -0
  114. package/templates/commands/analyze.md +1485 -0
  115. package/templates/commands/checklist.md +434 -0
  116. package/templates/commands/clarify.md +257 -0
  117. package/templates/commands/constitution.md +257 -0
  118. package/templates/commands/expert.md +136 -0
  119. package/templates/commands/plan.md +749 -0
  120. package/templates/commands/recap.md +613 -0
  121. package/templates/commands/relations.md +96 -0
  122. package/templates/commands/revise.md +341 -0
  123. package/templates/commands/specify.md +682 -0
  124. package/templates/commands/tasks.md +142 -0
  125. package/templates/commands/timeline.md +73 -0
  126. package/templates/commands/track-init.md +137 -0
  127. package/templates/commands/track.md +463 -0
  128. package/templates/commands/write.md +1264 -0
  129. package/templates/config/keyword-mappings.json +106 -0
  130. package/templates/knowledge/audit-config.json +26 -0
  131. package/templates/knowledge/character-profiles.md +152 -0
  132. package/templates/knowledge/character-voices.md +137 -0
  133. package/templates/knowledge/locations.md +184 -0
  134. package/templates/knowledge/world-setting.md +121 -0
  135. package/templates/knowledge-base/README.md +285 -0
  136. package/templates/knowledge-base/character-archetypes/01-hero.md +233 -0
  137. package/templates/knowledge-base/character-archetypes/02-mentor.md +177 -0
  138. package/templates/knowledge-base/character-archetypes/03-shadow.md +221 -0
  139. package/templates/knowledge-base/character-archetypes/04-ally.md +178 -0
  140. package/templates/knowledge-base/character-archetypes/05-shapeshifter.md +177 -0
  141. package/templates/knowledge-base/character-archetypes/06-trickster.md +181 -0
  142. package/templates/knowledge-base/character-archetypes/07-threshold-guardian.md +177 -0
  143. package/templates/knowledge-base/character-archetypes/08-herald.md +180 -0
  144. package/templates/knowledge-base/character-archetypes/09-father.md +249 -0
  145. package/templates/knowledge-base/character-archetypes/10-mother.md +202 -0
  146. package/templates/knowledge-base/character-archetypes/11-child.md +183 -0
  147. package/templates/knowledge-base/character-archetypes/12-sage.md +202 -0
  148. package/templates/knowledge-base/character-archetypes/README.md +60 -0
  149. package/templates/knowledge-base/character-archetypes/application-guide.md +222 -0
  150. package/templates/knowledge-base/character-archetypes/archetype-combinations.md +242 -0
  151. package/templates/knowledge-base/character-archetypes/config.yaml +28 -0
  152. package/templates/knowledge-base/character-archetypes/examples-analysis.md +223 -0
  153. package/templates/knowledge-base/craft/character-arc.md +1153 -0
  154. package/templates/knowledge-base/craft/dialogue.md +1170 -0
  155. package/templates/knowledge-base/craft/pacing.md +1200 -0
  156. package/templates/knowledge-base/craft/scene-structure.md +1136 -0
  157. package/templates/knowledge-base/craft/show-not-tell.md +1012 -0
  158. package/templates/knowledge-base/emotional-beats/01-first-meeting.md +145 -0
  159. package/templates/knowledge-base/emotional-beats/02-bonding-moment.md +226 -0
  160. package/templates/knowledge-base/emotional-beats/03-declaration.md +284 -0
  161. package/templates/knowledge-base/emotional-beats/04-triumph.md +240 -0
  162. package/templates/knowledge-base/emotional-beats/05-reunion.md +396 -0
  163. package/templates/knowledge-base/emotional-beats/06-forgiveness.md +204 -0
  164. package/templates/knowledge-base/emotional-beats/07-betrayal.md +204 -0
  165. package/templates/knowledge-base/emotional-beats/08-loss.md +214 -0
  166. package/templates/knowledge-base/emotional-beats/09-rejection.md +254 -0
  167. package/templates/knowledge-base/emotional-beats/10-failure.md +244 -0
  168. package/templates/knowledge-base/emotional-beats/11-misunderstanding.md +205 -0
  169. package/templates/knowledge-base/emotional-beats/12-farewell.md +283 -0
  170. package/templates/knowledge-base/emotional-beats/13-revelation.md +242 -0
  171. package/templates/knowledge-base/emotional-beats/14-point-of-no-return.md +215 -0
  172. package/templates/knowledge-base/emotional-beats/15-dark-night.md +244 -0
  173. package/templates/knowledge-base/emotional-beats/16-sacrifice.md +246 -0
  174. package/templates/knowledge-base/emotional-beats/17-awakening.md +246 -0
  175. package/templates/knowledge-base/emotional-beats/18-confrontation.md +217 -0
  176. package/templates/knowledge-base/emotional-beats/19-bittersweet-goodbye.md +368 -0
  177. package/templates/knowledge-base/emotional-beats/20-moral-dilemma.md +248 -0
  178. package/templates/knowledge-base/emotional-beats/21-temptation.md +240 -0
  179. package/templates/knowledge-base/emotional-beats/22-redemption.md +210 -0
  180. package/templates/knowledge-base/emotional-beats/README.md +104 -0
  181. package/templates/knowledge-base/emotional-beats/beat-sequences.md +276 -0
  182. package/templates/knowledge-base/emotional-beats/config.yaml +30 -0
  183. package/templates/knowledge-base/emotional-beats/pacing-guide.md +390 -0
  184. package/templates/knowledge-base/genres/historical.md +1127 -0
  185. package/templates/knowledge-base/genres/mystery.md +1123 -0
  186. package/templates/knowledge-base/genres/revenge.md +846 -0
  187. package/templates/knowledge-base/genres/romance.md +948 -0
  188. package/templates/knowledge-base/genres/sci-fi.md +156 -0
  189. package/templates/knowledge-base/genres/thriller.md +166 -0
  190. package/templates/knowledge-base/genres/wuxia.md +143 -0
  191. package/templates/knowledge-base/references/README.md +96 -0
  192. package/templates/knowledge-base/references/china-1920s/culture.md +423 -0
  193. package/templates/knowledge-base/references/china-1920s/daily-life.md +616 -0
  194. package/templates/knowledge-base/references/china-1920s/overview.md +298 -0
  195. package/templates/knowledge-base/references/china-1920s/society.md +703 -0
  196. package/templates/knowledge-base/references/china-1920s/warlords.md +427 -0
  197. package/templates/knowledge-base/references/cultivation-world/daily-life.md +108 -0
  198. package/templates/knowledge-base/references/cultivation-world/overview.md +64 -0
  199. package/templates/knowledge-base/references/cultivation-world/power-system.md +108 -0
  200. package/templates/knowledge-base/references/cultivation-world/sects.md +104 -0
  201. package/templates/knowledge-base/references/cultivation-world/world-setting.md +108 -0
  202. package/templates/knowledge-base/references/modern-workplace/corporate.md +115 -0
  203. package/templates/knowledge-base/references/modern-workplace/daily-life.md +129 -0
  204. package/templates/knowledge-base/references/modern-workplace/overview.md +73 -0
  205. package/templates/knowledge-base/references/modern-workplace/relationships.md +107 -0
  206. package/templates/knowledge-base/references/modern-workplace/tech-industry.md +131 -0
  207. package/templates/knowledge-base/references/tang-dynasty/culture.md +135 -0
  208. package/templates/knowledge-base/references/tang-dynasty/daily-life.md +139 -0
  209. package/templates/knowledge-base/references/tang-dynasty/overview.md +76 -0
  210. package/templates/knowledge-base/references/tang-dynasty/politics.md +121 -0
  211. package/templates/knowledge-base/references/tang-dynasty/society.md +126 -0
  212. package/templates/knowledge-base/requirements/README.md +240 -0
  213. package/templates/knowledge-base/requirements/anti-ai-v3.md +46 -0
  214. package/templates/knowledge-base/requirements/anti-ai-v4.md +430 -0
  215. package/templates/knowledge-base/requirements/fast-paced.md +552 -0
  216. package/templates/knowledge-base/requirements/no-poison.md +60 -0
  217. package/templates/knowledge-base/requirements/romance-angst.md +102 -0
  218. package/templates/knowledge-base/requirements/romance-sweet.md +63 -0
  219. package/templates/knowledge-base/requirements/serious-literature.md +45 -0
  220. package/templates/knowledge-base/requirements/strong-emotion.md +60 -0
  221. package/templates/knowledge-base/styles/README.md +302 -0
  222. package/templates/knowledge-base/styles/ancient-style.md +579 -0
  223. package/templates/knowledge-base/styles/literary.md +439 -0
  224. package/templates/knowledge-base/styles/minimal.md +472 -0
  225. package/templates/knowledge-base/styles/natural-voice.md +930 -0
  226. package/templates/knowledge-base/styles/web-novel.md +525 -0
  227. package/templates/memory/constitution.md +140 -0
  228. package/templates/memory/personal-voice.md +113 -0
  229. package/templates/scripts/README.md +187 -0
  230. package/templates/scripts/bash/analyze-story.sh +170 -0
  231. package/templates/scripts/bash/check-consistency.sh +463 -0
  232. package/templates/scripts/bash/check-plot.sh +374 -0
  233. package/templates/scripts/bash/check-timeline.sh +346 -0
  234. package/templates/scripts/bash/check-world.sh +395 -0
  235. package/templates/scripts/bash/check-writing-state.sh +854 -0
  236. package/templates/scripts/bash/clarify-story.sh +117 -0
  237. package/templates/scripts/bash/common.sh +151 -0
  238. package/templates/scripts/bash/constitution.sh +114 -0
  239. package/templates/scripts/bash/generate-tasks.sh +65 -0
  240. package/templates/scripts/bash/init-tracking.sh +183 -0
  241. package/templates/scripts/bash/manage-relations.sh +174 -0
  242. package/templates/scripts/bash/plan-story.sh +100 -0
  243. package/templates/scripts/bash/specify-story.sh +93 -0
  244. package/templates/scripts/bash/tasks-story.sh +96 -0
  245. package/templates/scripts/bash/test-word-count.sh +182 -0
  246. package/templates/scripts/bash/tests/bench-preload-cache.sh +100 -0
  247. package/templates/scripts/bash/tests/run-all-benchmarks.sh +16 -0
  248. package/templates/scripts/bash/tests/test-cache-semantics.sh +199 -0
  249. package/templates/scripts/bash/tests/test-cross-platform.sh +35 -0
  250. package/templates/scripts/bash/tests/test-edge-cases-bash.sh +60 -0
  251. package/templates/scripts/bash/tests/test-phase1-bash.sh +28 -0
  252. package/templates/scripts/bash/tests/test-preload-cache.sh +123 -0
  253. package/templates/scripts/bash/tests/test-regex-precompile.sh +89 -0
  254. package/templates/scripts/bash/tests/test-regression-bash.sh +42 -0
  255. package/templates/scripts/bash/tests/test-task6-verification.sh +200 -0
  256. package/templates/scripts/bash/text-audit.sh +144 -0
  257. package/templates/scripts/bash/track-progress.sh +194 -0
  258. package/templates/scripts/powershell/analyze-story.ps1 +171 -0
  259. package/templates/scripts/powershell/check-analyze-stage.ps1 +110 -0
  260. package/templates/scripts/powershell/check-consistency.ps1 +138 -0
  261. package/templates/scripts/powershell/check-plot.ps1 +139 -0
  262. package/templates/scripts/powershell/check-timeline.ps1 +112 -0
  263. package/templates/scripts/powershell/check-writing-state.ps1 +490 -0
  264. package/templates/scripts/powershell/check-writing-state.ps1.backup +135 -0
  265. package/templates/scripts/powershell/clarify-story.ps1 +107 -0
  266. package/templates/scripts/powershell/common.ps1 +36 -0
  267. package/templates/scripts/powershell/constitution.ps1 +142 -0
  268. package/templates/scripts/powershell/generate-tasks.ps1 +75 -0
  269. package/templates/scripts/powershell/init-tracking.ps1 +98 -0
  270. package/templates/scripts/powershell/manage-relations.ps1 +134 -0
  271. package/templates/scripts/powershell/plan-story.ps1 +96 -0
  272. package/templates/scripts/powershell/specify-story.ps1 +82 -0
  273. package/templates/scripts/powershell/tests/bench-ps-cache.ps1 +80 -0
  274. package/templates/scripts/powershell/tests/test-cross-platform.ps1 +27 -0
  275. package/templates/scripts/powershell/tests/test-edge-cases-ps.ps1 +29 -0
  276. package/templates/scripts/powershell/tests/test-phase1-ps.ps1 +28 -0
  277. package/templates/scripts/powershell/tests/test-ps-cache.ps1 +73 -0
  278. package/templates/scripts/powershell/tests/test-regression-ps.ps1 +40 -0
  279. package/templates/scripts/powershell/text-audit.ps1 +100 -0
  280. package/templates/scripts/powershell/track-progress.ps1 +105 -0
  281. package/templates/skills/genre-knowledge/fantasy/SKILL.md +355 -0
  282. package/templates/skills/genre-knowledge/mystery/SKILL.md +337 -0
  283. package/templates/skills/genre-knowledge/romance/SKILL.md +228 -0
  284. package/templates/skills/genre-knowledge/sci-fi/SKILL.md +65 -0
  285. package/templates/skills/genre-knowledge/thriller/SKILL.md +95 -0
  286. package/templates/skills/quality-assurance/consistency-checker/SKILL.md +341 -0
  287. package/templates/skills/quality-assurance/continuity-tracker/SKILL.md +157 -0
  288. package/templates/skills/quality-assurance/forgotten-elements/SKILL.md +147 -0
  289. package/templates/skills/quality-assurance/getting-started/SKILL.md +224 -0
  290. package/templates/skills/quality-assurance/pacing-monitor/SKILL.md +143 -0
  291. package/templates/skills/quality-assurance/pov-validator/SKILL.md +135 -0
  292. package/templates/skills/quality-assurance/pre-write-checklist/SKILL.md +583 -0
  293. package/templates/skills/quality-assurance/requirement-detector/CONFLICT_RESOLUTION.md +119 -0
  294. package/templates/skills/quality-assurance/requirement-detector/EXAMPLES.md +146 -0
  295. package/templates/skills/quality-assurance/requirement-detector/KEYWORDS.md +160 -0
  296. package/templates/skills/quality-assurance/requirement-detector/SKILL.md +149 -0
  297. package/templates/skills/quality-assurance/setting-detector/SKILL.md +611 -0
  298. package/templates/skills/quality-assurance/style-detector/CONFLICT_RESOLUTION.md +126 -0
  299. package/templates/skills/quality-assurance/style-detector/EXAMPLES.md +206 -0
  300. package/templates/skills/quality-assurance/style-detector/KEYWORDS.md +207 -0
  301. package/templates/skills/quality-assurance/style-detector/SKILL.md +126 -0
  302. package/templates/skills/quality-assurance/workflow-guide/SKILL.md +381 -0
  303. package/templates/skills/writing-techniques/character-arc/SKILL.md +267 -0
  304. package/templates/skills/writing-techniques/dialogue-techniques/SKILL.md +366 -0
  305. package/templates/skills/writing-techniques/multi-thread-narrative/SKILL.md +553 -0
  306. package/templates/skills/writing-techniques/multi-thread-narrative/experts/thread-analyst.md +226 -0
  307. package/templates/skills/writing-techniques/pacing-control/SKILL.md +377 -0
  308. package/templates/skills/writing-techniques/reader-expectation/SKILL.md +578 -0
  309. package/templates/skills/writing-techniques/reader-expectation/experts/expectation-analyst.md +209 -0
  310. package/templates/skills/writing-techniques/revision-polish/SKILL.md +496 -0
  311. package/templates/skills/writing-techniques/revision-polish/experts/revision-editor.md +221 -0
  312. package/templates/skills/writing-techniques/scene-structure/SKILL.md +361 -0
  313. package/templates/skills/writing-techniques/style-learning/SKILL.md +436 -0
  314. package/templates/specification-example.md +146 -0
  315. package/templates/tracking/character-state.json +78 -0
  316. package/templates/tracking/plot-tracker.json +62 -0
  317. package/templates/tracking/relationships.json +70 -0
  318. package/templates/tracking/timeline.json +49 -0
  319. package/templates/tracking/tracking-log.md +110 -0
  320. package/templates/tracking/validation-rules.json +128 -0
@@ -0,0 +1,319 @@
1
+ # Export 导出插件
2
+
3
+ ## 概述
4
+
5
+ 将小说导出为多种可发布格式,自动处理目录、封面、元数据和排版。
6
+
7
+ ## 功能特性
8
+
9
+ ### 核心功能
10
+ - **一键导出** - 一个命令完成格式转换、封面、目录、元数据
11
+ - **多格式支持** - EPUB、PDF、网文平台格式全覆盖
12
+ - **专业排版** - 自动处理字体、行距、分页等排版细节
13
+ - **零学习成本** - 不需要了解 EPUB 标准或 LaTeX
14
+
15
+ ### 支持格式
16
+
17
+ | 格式 | 适用场景 | 命令 |
18
+ |------|---------|------|
19
+ | EPUB 3.0 | Kindle, Apple Books, 通用电子书 | `/export --format epub` |
20
+ | PDF | 打印、PDF 阅读器 | `/export --format pdf` |
21
+ | 起点中文网 | 起点平台上传 | `/export --format qidian` |
22
+ | 番茄小说 | 番茄平台上传 | `/export --format tomato` |
23
+ | 晋江文学城 | 晋江平台上传 | `/export --format jinjiang` |
24
+ | Markdown 合集 | 单文件备份 | `/export --format markdown` |
25
+
26
+ ## 命令
27
+
28
+ ### /export - 导出小说
29
+ 将小说导出为可发布格式(EPUB/PDF/网文平台),自动目录、封面和元数据。
30
+
31
+ **基本用法:**
32
+ ```
33
+ /export --format epub 导出 EPUB
34
+ /export --format pdf 导出 PDF
35
+ /export --format qidian 导出起点格式
36
+ /export --format markdown 导出 Markdown 合集
37
+ ```
38
+
39
+ **选项:**
40
+ - `--format <格式>` - 导出格式(必需)
41
+ - `--output <路径>` - 输出路径(默认:stories/[name]/exports/)
42
+ - `--chapters <范围>` - 导出章节范围(默认:全部)
43
+ - `--cover <文件>` - 指定封面图(默认:自动生成)
44
+ - `--include-appendix` - 包含附录(角色表、世界观)
45
+
46
+ ### /generate-cover - 封面生成
47
+ 生成或上传小说封面图片。
48
+
49
+ **基本用法:**
50
+ ```
51
+ /generate-cover 自动生成基础封面
52
+ /generate-cover --upload cover.jpg 上传封面图片
53
+ /generate-cover --template modern 使用指定模板
54
+ ```
55
+
56
+ **封面模板:**
57
+ - `modern` - 现代简约,大字标题(都市、现代题材)
58
+ - `classic` - 古典风格,竖排书名(古代、武侠、仙侠)
59
+ - `minimal` - 极简风格,白底黑字(通用)
60
+ - `dark` - 暗色系(悬疑、恐怖)
61
+
62
+ ### /metadata - 元数据管理
63
+ 编辑小说元数据(书名、作者、简介等),用于导出和发布。
64
+
65
+ **基本用法:**
66
+ ```
67
+ /metadata show 查看当前元数据
68
+ /metadata edit 交互式编辑元数据
69
+ /metadata init 从 specification.md 自动提取
70
+ /metadata validate 验证元数据完整性
71
+ /metadata set title "新书名" 设置单个字段
72
+ ```
73
+
74
+ ## 快速开始
75
+
76
+ ### 第一次导出 EPUB
77
+
78
+ 1. **初始化元数据**
79
+ ```
80
+ /metadata init
81
+ ```
82
+ 自动从 `specification.md` 提取书名、简介等信息。
83
+
84
+ 2. **生成封面**
85
+ ```
86
+ /generate-cover --template modern
87
+ ```
88
+ 或上传自己的封面:
89
+ ```
90
+ /generate-cover --upload ~/Desktop/my-cover.jpg
91
+ ```
92
+
93
+ 3. **导出 EPUB**
94
+ ```
95
+ /export --format epub
96
+ ```
97
+
98
+ 4. **验证结果**
99
+ - 文件位置:`stories/[name]/exports/epub/[name].epub`
100
+ - 用 Apple Books 或 Kindle 打开测试
101
+
102
+ ### 导出到网文平台
103
+
104
+ **起点中文网:**
105
+ ```
106
+ /export --format qidian
107
+ ```
108
+ 输出:`stories/[name]/exports/platforms/qidian/[name].txt`
109
+
110
+ **番茄小说:**
111
+ ```
112
+ /export --format tomato
113
+ ```
114
+ 输出:`stories/[name]/exports/platforms/tomato/` 目录(每章独立文件)
115
+
116
+ **晋江文学城:**
117
+ ```
118
+ /export --format jinjiang
119
+ ```
120
+ 输出:`stories/[name]/exports/platforms/jinjiang/[name].html`
121
+
122
+ ### 导出 PDF
123
+
124
+ ```
125
+ /export --format pdf
126
+ ```
127
+
128
+ **页面预设:**
129
+ - `a5-print` - A5 纸张,适合实体书打印
130
+ - `a4-read` - A4 纸张,适合屏幕阅读
131
+ - `6x9-publish` - 6x9 英寸,国际出版标准
132
+
133
+ ## 输出目录结构
134
+
135
+ ```
136
+ stories/[story-name]/
137
+ ├── exports/
138
+ │ ├── epub/
139
+ │ │ └── my-novel.epub
140
+ │ ├── pdf/
141
+ │ │ └── my-novel.pdf
142
+ │ ├── platforms/
143
+ │ │ ├── qidian/
144
+ │ │ │ └── my-novel.txt
145
+ │ │ ├── tomato/
146
+ │ │ │ ├── 001-chapter-title.txt
147
+ │ │ │ └── ...
148
+ │ │ └── jinjiang/
149
+ │ │ └── my-novel.html
150
+ │ ├── my-novel-complete.md # Markdown 合集
151
+ │ └── metadata.json # 导出时使用的元数据快照
152
+ ├── cover.jpg # 封面图片
153
+ └── metadata.json # 元数据文件
154
+ ```
155
+
156
+ ## 与其他命令集成
157
+
158
+ ### 与 /write 集成
159
+ 全书写完后,自动提示导出:
160
+ ```
161
+ 恭喜完成全书!是否导出为 EPUB?
162
+ → /metadata edit(检查元数据)
163
+ → /generate-cover(生成封面)
164
+ → /export --format epub
165
+ ```
166
+
167
+ ### 与 /translate 集成
168
+ 导出翻译版本:
169
+ ```
170
+ /export --format epub --lang en
171
+ → 检查 translations/en/ 是否存在
172
+ → 导出英文版 EPUB
173
+ ```
174
+
175
+ ### 与 /analyze 集成
176
+ 检查导出准备状态:
177
+ ```
178
+ /analyze --export-ready
179
+ → 检查章节完整性
180
+ → 检查元数据
181
+ → 检查封面
182
+ → 检查格式错误
183
+ ```
184
+
185
+ ## 导出质量检查
186
+
187
+ ### 导出前自动检查
188
+ - ✅ 章节完整性(所有预期章节文件是否存在)
189
+ - ✅ 元数据(书名、作者是否设置)
190
+ - ✅ 封面(封面图是否存在)
191
+ - ✅ Markdown 格式(标题层级是否正确)
192
+ - ✅ 特殊字符(是否有不兼容字符)
193
+ - ✅ 文件大小(封面图是否过大)
194
+
195
+ ### 导出后验证
196
+ ```
197
+ 导出完成
198
+
199
+ 质量检查:
200
+ ✓ 章节完整性:30/30
201
+ ✓ 元数据:完整
202
+ ✓ 封面:1600x2400 (OK)
203
+ ✓ 格式验证:通过
204
+ ✓ 文件大小:856 KB (OK)
205
+
206
+ 警告:
207
+ ⚠ 第 15 章标题层级异常(## 应该是 #)
208
+ ⚠ 封面图较大(2.1 MB),建议压缩到 < 1 MB
209
+ ```
210
+
211
+ ## 常见问题
212
+
213
+ ### 1. 封面尺寸不对
214
+ **症状:** EPUB 封面在阅读器中显示被拉伸或裁剪
215
+ **解决:** 使用 2:3 比例(推荐 1600x2400 像素)
216
+
217
+ ### 2. PDF 文件过大
218
+ **症状:** PDF 超过 10MB
219
+ **原因:** 封面图片未压缩
220
+ **解决:** 压缩封面图或使用纯文本封面
221
+
222
+ ### 3. 网文平台上传被拒
223
+ **症状:** 格式不符合平台要求
224
+ **解决:** 使用对应平台的专用格式命令(如 `--format qidian`)
225
+
226
+ ### 4. 目录显示不正确
227
+ **症状:** EPUB 目录缺少章节
228
+ **原因:** 章节文件缺少一级标题
229
+ **解决:** 确保每个章节文件有 `# 章节标题`
230
+
231
+ ### 5. 中文字体不显示
232
+ **症状:** PDF 中文字显示为方块
233
+ **原因:** 系统缺少中文字体
234
+ **解决:** 安装思源宋体或使用 EPUB 格式(阅读器自带字体)
235
+
236
+ ## 检查清单
237
+
238
+ ### 导出前
239
+ - [ ] 所有章节已完成?
240
+ - [ ] 元数据已设置?(/metadata edit)
241
+ - [ ] 封面已准备?(/generate-cover)
242
+ - [ ] 章节顺序正确?
243
+ - [ ] 章节标题格式统一?
244
+
245
+ ### 导出后
246
+ - [ ] 文件能正常打开?
247
+ - [ ] 目录显示正确?
248
+ - [ ] 封面显示正常?
249
+ - [ ] 排版美观?
250
+ - [ ] 字数统计正确?
251
+
252
+ ## 技术细节
253
+
254
+ ### EPUB 3.0 规范
255
+ - 标准:EPUB 3.0 (IDPF/W3C)
256
+ - 内容格式:XHTML 5
257
+ - 样式:CSS
258
+ - 元数据:Dublin Core
259
+ - 导航:nav.xhtml + toc.ncx(EPUB 2 兼容)
260
+ - 验证:EPUBCheck 规则
261
+
262
+ ### PDF 排版
263
+ - 纸张:A5 (148 x 210mm) / A4 / 6x9 英寸
264
+ - 边距:上下 2cm,左右 1.5cm
265
+ - 字体:思源宋体(中文)/ Times New Roman(英文)
266
+ - 字号:11pt
267
+ - 行距:1.5 倍
268
+ - 页码:居中底部
269
+
270
+ ### 网文平台格式
271
+ - **起点:** TXT,`第X章 标题`,段落空两格,直角引号
272
+ - **番茄:** TXT,`X. 标题`,每章 < 3000 字,段落间空行
273
+ - **晋江:** HTML,支持简单 HTML 标签
274
+
275
+ ## 专家
276
+
277
+ ### expert:publishing-expert - 出版格式专家
278
+ 精通 EPUB/PDF 格式规范与网文平台要求,提供专业的导出和排版建议。
279
+
280
+ **核心能力:**
281
+ - EPUB 格式专家(EPUB 3.0 标准、元数据、样式优化)
282
+ - PDF 排版专家(页面设置、中文排版规范、字体选择)
283
+ - 网文平台规范(各平台格式要求、自动转换、验证)
284
+ - 封面设计建议(尺寸、比例、平台规范)
285
+
286
+ ## 依赖
287
+
288
+ ### 核心依赖
289
+ - Novel Writer Skills Core >= 1.0.0
290
+
291
+ ### 可选依赖
292
+ - **Pandoc >= 2.0** - 用于高级 PDF 导出(LaTeX 排版)
293
+ - 安装:https://pandoc.org/installing.html
294
+ - 不安装也可使用基础 PDF 导出功能
295
+
296
+ ## 版本历史
297
+
298
+ ### v1.0.0 (2025-02-09)
299
+ - 初始版本
300
+ - EPUB 3.0 导出
301
+ - PDF 导出(基础 + Pandoc)
302
+ - 网文平台格式(起点、番茄、晋江)
303
+ - Markdown 合集导出
304
+ - 封面生成(4 种模板)
305
+ - 元数据管理
306
+ - 自动目录生成
307
+ - 导出质量检查
308
+
309
+ ## 许可证
310
+
311
+ MIT License
312
+
313
+ ## 贡献
314
+
315
+ 欢迎提交 Issue 和 Pull Request!
316
+
317
+ ## 支持
318
+
319
+ 如有问题,请访问:https://github.com/novel-writer-skills/plugins