@lingjingai/scriptctl 0.34.0 → 0.36.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 (375) hide show
  1. package/README.md +30 -5
  2. package/changes/0.35.0.md +22 -0
  3. package/changes/0.36.0.md +22 -0
  4. package/changes/unreleased.md +3 -5
  5. package/dist/cli.d.ts +2 -1
  6. package/dist/cli.js +56 -128
  7. package/dist/cli.js.map +1 -1
  8. package/dist/common.d.ts +0 -16
  9. package/dist/common.js +2 -342
  10. package/dist/common.js.map +1 -1
  11. package/dist/domain/ingest/apply-plan.d.ts +23 -0
  12. package/dist/domain/ingest/apply-plan.js +210 -0
  13. package/dist/domain/ingest/apply-plan.js.map +1 -0
  14. package/dist/domain/ingest/assembler.d.ts +57 -0
  15. package/dist/domain/ingest/assembler.js +181 -0
  16. package/dist/domain/ingest/assembler.js.map +1 -0
  17. package/dist/domain/ingest/chunker.d.ts +9 -0
  18. package/dist/domain/ingest/chunker.js +38 -0
  19. package/dist/domain/ingest/chunker.js.map +1 -0
  20. package/dist/domain/ingest/evidence.d.ts +5 -0
  21. package/dist/domain/ingest/evidence.js +66 -0
  22. package/dist/domain/ingest/evidence.js.map +1 -0
  23. package/dist/domain/ingest/govern.d.ts +3 -0
  24. package/dist/domain/ingest/govern.js +127 -0
  25. package/dist/domain/ingest/govern.js.map +1 -0
  26. package/dist/domain/ingest/jsonl-parser.d.ts +6 -0
  27. package/dist/domain/ingest/jsonl-parser.js +187 -0
  28. package/dist/domain/ingest/jsonl-parser.js.map +1 -0
  29. package/dist/domain/ingest/markdown-parser.d.ts +6 -0
  30. package/dist/domain/ingest/markdown-parser.js +186 -0
  31. package/dist/domain/ingest/markdown-parser.js.map +1 -0
  32. package/dist/domain/ingest/records.d.ts +71 -0
  33. package/dist/domain/ingest/records.js +9 -0
  34. package/dist/domain/ingest/records.js.map +1 -0
  35. package/dist/domain/ingest/renumber.d.ts +14 -0
  36. package/dist/domain/ingest/renumber.js +130 -0
  37. package/dist/domain/ingest/renumber.js.map +1 -0
  38. package/dist/domain/ingest/script-v3.d.ts +94 -0
  39. package/dist/domain/ingest/script-v3.js +7 -0
  40. package/dist/domain/ingest/script-v3.js.map +1 -0
  41. package/dist/domain/ingest/state-reconcile.d.ts +11 -0
  42. package/dist/domain/ingest/state-reconcile.js +90 -0
  43. package/dist/domain/ingest/state-reconcile.js.map +1 -0
  44. package/dist/domain/ingest/validation.d.ts +11 -0
  45. package/dist/domain/ingest/validation.js +168 -0
  46. package/dist/domain/ingest/validation.js.map +1 -0
  47. package/dist/domain/ingest/video-aggregate.d.ts +23 -0
  48. package/dist/domain/ingest/video-aggregate.js +89 -0
  49. package/dist/domain/ingest/video-aggregate.js.map +1 -0
  50. package/dist/domain/ingest/video-apply.d.ts +37 -0
  51. package/dist/domain/ingest/video-apply.js +236 -0
  52. package/dist/domain/ingest/video-apply.js.map +1 -0
  53. package/dist/domain/ingest/video-md-parser.d.ts +2 -0
  54. package/dist/domain/ingest/video-md-parser.js +233 -0
  55. package/dist/domain/ingest/video-md-parser.js.map +1 -0
  56. package/dist/domain/ingest/video-records.d.ts +56 -0
  57. package/dist/domain/ingest/video-records.js +9 -0
  58. package/dist/domain/ingest/video-records.js.map +1 -0
  59. package/dist/domain/loom/index.d.ts +2 -1
  60. package/dist/domain/loom/index.js +12 -10
  61. package/dist/domain/loom/index.js.map +1 -1
  62. package/dist/domain/loom/types.d.ts +3 -2
  63. package/dist/domain/script/lookups.d.ts +3 -2
  64. package/dist/domain/script/lookups.js +25 -8
  65. package/dist/domain/script/lookups.js.map +1 -1
  66. package/dist/domain/script/patch/apply.js +2 -2
  67. package/dist/domain/script/patch/apply.js.map +1 -1
  68. package/dist/domain/script/patch/helpers.d.ts +3 -7
  69. package/dist/domain/script/patch/helpers.js +23 -96
  70. package/dist/domain/script/patch/helpers.js.map +1 -1
  71. package/dist/domain/script/patch/ops-action.d.ts +0 -2
  72. package/dist/domain/script/patch/ops-action.js +34 -100
  73. package/dist/domain/script/patch/ops-action.js.map +1 -1
  74. package/dist/domain/script/patch/ops-asset.d.ts +1 -0
  75. package/dist/domain/script/patch/ops-asset.js +102 -155
  76. package/dist/domain/script/patch/ops-asset.js.map +1 -1
  77. package/dist/domain/script/patch/ops-dialogue.d.ts +1 -4
  78. package/dist/domain/script/patch/ops-dialogue.js +43 -220
  79. package/dist/domain/script/patch/ops-dialogue.js.map +1 -1
  80. package/dist/domain/script/patch/ops-extend.js +8 -2
  81. package/dist/domain/script/patch/ops-extend.js.map +1 -1
  82. package/dist/domain/script/patch/ops-meta.js.map +1 -1
  83. package/dist/domain/script/patch/ops-scene.js +26 -39
  84. package/dist/domain/script/patch/ops-scene.js.map +1 -1
  85. package/dist/domain/script/patch/ops-state.d.ts +3 -3
  86. package/dist/domain/script/patch/ops-state.js +33 -49
  87. package/dist/domain/script/patch/ops-state.js.map +1 -1
  88. package/dist/domain/script/patch/registry.js +9 -13
  89. package/dist/domain/script/patch/registry.js.map +1 -1
  90. package/dist/domain/script/refs.js +23 -111
  91. package/dist/domain/script/refs.js.map +1 -1
  92. package/dist/domain/script/scene-refs.d.ts +3 -0
  93. package/dist/domain/script/scene-refs.js +35 -0
  94. package/dist/domain/script/scene-refs.js.map +1 -0
  95. package/dist/domain/script/schema.js +17 -21
  96. package/dist/domain/script/schema.js.map +1 -1
  97. package/dist/domain/script/text-util.d.ts +7 -0
  98. package/dist/domain/script/text-util.js +91 -0
  99. package/dist/domain/script/text-util.js.map +1 -0
  100. package/dist/help-text.js +145 -414
  101. package/dist/help-text.js.map +1 -1
  102. package/dist/infra/converters.js +1 -1
  103. package/dist/infra/converters.js.map +1 -1
  104. package/dist/infra/episode-title.d.ts +4 -0
  105. package/dist/infra/episode-title.js +129 -0
  106. package/dist/infra/episode-title.js.map +1 -0
  107. package/dist/infra/ingest/review-renderer.d.ts +1 -0
  108. package/dist/infra/ingest/review-renderer.js +431 -0
  109. package/dist/infra/ingest/review-renderer.js.map +1 -0
  110. package/dist/infra/ingest/source-resolver.d.ts +21 -0
  111. package/dist/infra/ingest/source-resolver.js +51 -0
  112. package/dist/infra/ingest/source-resolver.js.map +1 -0
  113. package/dist/infra/ingest/text-reader.d.ts +3 -0
  114. package/dist/infra/ingest/text-reader.js +27 -0
  115. package/dist/infra/ingest/text-reader.js.map +1 -0
  116. package/dist/infra/ingest/video-discovery.d.ts +8 -0
  117. package/dist/infra/ingest/video-discovery.js +60 -0
  118. package/dist/infra/ingest/video-discovery.js.map +1 -0
  119. package/dist/infra/ingest/workspace-store.d.ts +18 -0
  120. package/dist/infra/ingest/workspace-store.js +70 -0
  121. package/dist/infra/ingest/workspace-store.js.map +1 -0
  122. package/dist/infra/llm/anthropic-model.d.ts +11 -0
  123. package/dist/infra/llm/anthropic-model.js +109 -0
  124. package/dist/infra/llm/anthropic-model.js.map +1 -0
  125. package/dist/infra/llm/gemini-upload.d.ts +9 -0
  126. package/dist/infra/llm/gemini-upload.js +94 -0
  127. package/dist/infra/llm/gemini-upload.js.map +1 -0
  128. package/dist/infra/llm/gemini-video-model.d.ts +47 -0
  129. package/dist/infra/llm/gemini-video-model.js +167 -0
  130. package/dist/infra/llm/gemini-video-model.js.map +1 -0
  131. package/dist/infra/llm/openai-compatible-model.d.ts +13 -0
  132. package/dist/infra/llm/openai-compatible-model.js +143 -0
  133. package/dist/infra/llm/openai-compatible-model.js.map +1 -0
  134. package/dist/infra/llm/proxy.d.ts +1 -0
  135. package/dist/infra/llm/proxy.js +30 -0
  136. package/dist/infra/llm/proxy.js.map +1 -0
  137. package/dist/infra/llm/retry.d.ts +5 -0
  138. package/dist/infra/llm/retry.js +20 -0
  139. package/dist/infra/llm/retry.js.map +1 -0
  140. package/dist/llm/composition.d.ts +5 -0
  141. package/dist/llm/composition.js +5 -0
  142. package/dist/llm/composition.js.map +1 -0
  143. package/dist/llm/config.d.ts +26 -0
  144. package/dist/llm/config.js +201 -0
  145. package/dist/llm/config.js.map +1 -0
  146. package/dist/llm/registry.d.ts +44 -0
  147. package/dist/llm/registry.js +48 -0
  148. package/dist/llm/registry.js.map +1 -0
  149. package/dist/llm/router.d.ts +23 -0
  150. package/dist/llm/router.js +0 -0
  151. package/dist/llm/router.js.map +1 -0
  152. package/dist/llm/tasks/ingest/asset-curate.d.ts +13 -0
  153. package/dist/llm/tasks/ingest/asset-curate.js +45 -0
  154. package/dist/llm/tasks/ingest/asset-curate.js.map +1 -0
  155. package/dist/llm/tasks/ingest/asset-extract.d.ts +12 -0
  156. package/dist/llm/tasks/ingest/asset-extract.js +51 -0
  157. package/dist/llm/tasks/ingest/asset-extract.js.map +1 -0
  158. package/dist/llm/tasks/ingest/asset-govern.d.ts +22 -0
  159. package/dist/llm/tasks/ingest/asset-govern.js +143 -0
  160. package/dist/llm/tasks/ingest/asset-govern.js.map +1 -0
  161. package/dist/llm/tasks/ingest/mention-resolve.d.ts +9 -0
  162. package/dist/llm/tasks/ingest/mention-resolve.js +39 -0
  163. package/dist/llm/tasks/ingest/mention-resolve.js.map +1 -0
  164. package/dist/llm/tasks/ingest/plot-speaker.d.ts +11 -0
  165. package/dist/llm/tasks/ingest/plot-speaker.js +72 -0
  166. package/dist/llm/tasks/ingest/plot-speaker.js.map +1 -0
  167. package/dist/llm/tasks/ingest/roster-merge.d.ts +46 -0
  168. package/dist/llm/tasks/ingest/roster-merge.js +235 -0
  169. package/dist/llm/tasks/ingest/roster-merge.js.map +1 -0
  170. package/dist/llm/tasks/ingest/state-merge.d.ts +10 -0
  171. package/dist/llm/tasks/ingest/state-merge.js +84 -0
  172. package/dist/llm/tasks/ingest/state-merge.js.map +1 -0
  173. package/dist/llm/tasks/ingest/state-reconcile.d.ts +8 -0
  174. package/dist/llm/tasks/ingest/state-reconcile.js +44 -0
  175. package/dist/llm/tasks/ingest/state-reconcile.js.map +1 -0
  176. package/dist/llm/tasks/ingest/text-normalize.d.ts +10 -0
  177. package/dist/llm/tasks/ingest/text-normalize.js +89 -0
  178. package/dist/llm/tasks/ingest/text-normalize.js.map +1 -0
  179. package/dist/llm/tasks/ingest/video-correct.d.ts +30 -0
  180. package/dist/llm/tasks/ingest/video-correct.js +144 -0
  181. package/dist/llm/tasks/ingest/video-correct.js.map +1 -0
  182. package/dist/llm/tasks/ingest/video-transcribe.d.ts +4 -0
  183. package/dist/llm/tasks/ingest/video-transcribe.js +105 -0
  184. package/dist/llm/tasks/ingest/video-transcribe.js.map +1 -0
  185. package/dist/llm/tasks/schemas.d.ts +5 -0
  186. package/dist/llm/tasks/schemas.js +107 -0
  187. package/dist/llm/tasks/schemas.js.map +1 -0
  188. package/dist/llm/types.d.ts +97 -0
  189. package/dist/llm/types.js +13 -0
  190. package/dist/llm/types.js.map +1 -0
  191. package/dist/usecases/doctor.d.ts +1 -1
  192. package/dist/usecases/doctor.js +36 -9
  193. package/dist/usecases/doctor.js.map +1 -1
  194. package/dist/usecases/ingest/command.d.ts +5 -0
  195. package/dist/usecases/ingest/command.js +57 -0
  196. package/dist/usecases/ingest/command.js.map +1 -0
  197. package/dist/usecases/ingest/fanout.d.ts +10 -0
  198. package/dist/usecases/ingest/fanout.js +23 -0
  199. package/dist/usecases/ingest/fanout.js.map +1 -0
  200. package/dist/usecases/ingest/pass4-mention-resolve.d.ts +11 -0
  201. package/dist/usecases/ingest/pass4-mention-resolve.js +52 -0
  202. package/dist/usecases/ingest/pass4-mention-resolve.js.map +1 -0
  203. package/dist/usecases/ingest/pass5-extract.d.ts +7 -0
  204. package/dist/usecases/ingest/pass5-extract.js +50 -0
  205. package/dist/usecases/ingest/pass5-extract.js.map +1 -0
  206. package/dist/usecases/ingest/pass5-govern.d.ts +13 -0
  207. package/dist/usecases/ingest/pass5-govern.js +155 -0
  208. package/dist/usecases/ingest/pass5-govern.js.map +1 -0
  209. package/dist/usecases/ingest/pipeline.d.ts +28 -0
  210. package/dist/usecases/ingest/pipeline.js +144 -0
  211. package/dist/usecases/ingest/pipeline.js.map +1 -0
  212. package/dist/usecases/ingest/publish-command.d.ts +4 -0
  213. package/dist/usecases/ingest/publish-command.js +77 -0
  214. package/dist/usecases/ingest/publish-command.js.map +1 -0
  215. package/dist/usecases/ingest/status.d.ts +39 -0
  216. package/dist/usecases/ingest/status.js +155 -0
  217. package/dist/usecases/ingest/status.js.map +1 -0
  218. package/dist/usecases/ingest/video-pass3.d.ts +26 -0
  219. package/dist/usecases/ingest/video-pass3.js +0 -0
  220. package/dist/usecases/ingest/video-pass3.js.map +1 -0
  221. package/dist/usecases/ingest/video-pipeline.d.ts +32 -0
  222. package/dist/usecases/ingest/video-pipeline.js +202 -0
  223. package/dist/usecases/ingest/video-pipeline.js.map +1 -0
  224. package/dist/usecases/ingest/view-command.d.ts +4 -0
  225. package/dist/usecases/ingest/view-command.js +51 -0
  226. package/dist/usecases/ingest/view-command.js.map +1 -0
  227. package/dist/usecases/script/actions.js +2 -2
  228. package/dist/usecases/script/actions.js.map +1 -1
  229. package/dist/usecases/script/actor.js.map +1 -1
  230. package/dist/usecases/script/actors.js +1 -0
  231. package/dist/usecases/script/actors.js.map +1 -1
  232. package/dist/usecases/script/add-actor.js.map +1 -1
  233. package/dist/usecases/script/add-episode.js.map +1 -1
  234. package/dist/usecases/script/add-location.js.map +1 -1
  235. package/dist/usecases/script/add-prop.js.map +1 -1
  236. package/dist/usecases/script/alias.js.map +1 -1
  237. package/dist/usecases/script/assets.js +2 -1
  238. package/dist/usecases/script/assets.js.map +1 -1
  239. package/dist/usecases/script/context.js.map +1 -1
  240. package/dist/usecases/script/create.js +3 -6
  241. package/dist/usecases/script/create.js.map +1 -1
  242. package/dist/usecases/script/delete.js.map +1 -1
  243. package/dist/usecases/script/describe.js.map +1 -1
  244. package/dist/usecases/script/dialogue.js +6 -13
  245. package/dist/usecases/script/dialogue.js.map +1 -1
  246. package/dist/usecases/script/do.js +1 -1
  247. package/dist/usecases/script/do.js.map +1 -1
  248. package/dist/usecases/script/episodes.js.map +1 -1
  249. package/dist/usecases/script/{add-speaker.d.ts → importance.d.ts} +1 -1
  250. package/dist/usecases/script/importance.js +17 -0
  251. package/dist/usecases/script/importance.js.map +1 -0
  252. package/dist/usecases/script/insert.js.map +1 -1
  253. package/dist/usecases/script/issues.js.map +1 -1
  254. package/dist/usecases/script/lib.d.ts +19 -6
  255. package/dist/usecases/script/lib.js +173 -99
  256. package/dist/usecases/script/lib.js.map +1 -1
  257. package/dist/usecases/script/locations.js +1 -0
  258. package/dist/usecases/script/locations.js.map +1 -1
  259. package/dist/usecases/script/merge.js.map +1 -1
  260. package/dist/usecases/script/move.js.map +1 -1
  261. package/dist/usecases/script/props.js +1 -0
  262. package/dist/usecases/script/props.js.map +1 -1
  263. package/dist/usecases/script/refs.js.map +1 -1
  264. package/dist/usecases/script/rename.js.map +1 -1
  265. package/dist/usecases/script/replace.js.map +1 -1
  266. package/dist/usecases/script/role.js.map +1 -1
  267. package/dist/usecases/script/scenes.js +8 -15
  268. package/dist/usecases/script/scenes.js.map +1 -1
  269. package/dist/usecases/script/script-patch.js +1 -1
  270. package/dist/usecases/script/script-patch.js.map +1 -1
  271. package/dist/usecases/script/script-validate.js +1 -1
  272. package/dist/usecases/script/script-validate.js.map +1 -1
  273. package/dist/usecases/script/session.d.ts +4 -4
  274. package/dist/usecases/script/session.js +57 -78
  275. package/dist/usecases/script/session.js.map +1 -1
  276. package/dist/usecases/script/split.js.map +1 -1
  277. package/dist/usecases/script/state-add.js.map +1 -1
  278. package/dist/usecases/script/state-delete.js.map +1 -1
  279. package/dist/usecases/script/state-rename.js.map +1 -1
  280. package/dist/usecases/script/states.js +58 -13
  281. package/dist/usecases/script/states.js.map +1 -1
  282. package/dist/usecases/script/summary.js +8 -0
  283. package/dist/usecases/script/summary.js.map +1 -1
  284. package/dist/usecases/script/synopsis-generate.d.ts +4 -5
  285. package/dist/usecases/script/synopsis-generate.js +30 -46
  286. package/dist/usecases/script/synopsis-generate.js.map +1 -1
  287. package/dist/usecases/script/transition.js.map +1 -1
  288. package/dist/usecases/script/type.js.map +1 -1
  289. package/dist/usecases/script/worldview.js.map +1 -1
  290. package/package.json +11 -3
  291. package/scripts/install-skill.mjs +120 -0
  292. package/skills/scriptctl/SKILL.md +293 -0
  293. package/skills/scriptctl/references/atomic-write-workflow.md +117 -0
  294. package/skills/scriptctl/references/ingest-workflow.md +85 -0
  295. package/skills/scriptctl/references/state-reference-repair.md +59 -0
  296. package/dist/domain/direct/runner.d.ts +0 -25
  297. package/dist/domain/direct/runner.js +0 -88
  298. package/dist/domain/direct/runner.js.map +0 -1
  299. package/dist/domain/direct/stage.d.ts +0 -108
  300. package/dist/domain/direct/stage.js +0 -134
  301. package/dist/domain/direct/stage.js.map +0 -1
  302. package/dist/domain/direct/stages/asset-curation.d.ts +0 -2
  303. package/dist/domain/direct/stages/asset-curation.js +0 -10
  304. package/dist/domain/direct/stages/asset-curation.js.map +0 -1
  305. package/dist/domain/direct/stages/batch-extract.d.ts +0 -2
  306. package/dist/domain/direct/stages/batch-extract.js +0 -12
  307. package/dist/domain/direct/stages/batch-extract.js.map +0 -1
  308. package/dist/domain/direct/stages/batch-plan.d.ts +0 -2
  309. package/dist/domain/direct/stages/batch-plan.js +0 -9
  310. package/dist/domain/direct/stages/batch-plan.js.map +0 -1
  311. package/dist/domain/direct/stages/episode-merge.d.ts +0 -2
  312. package/dist/domain/direct/stages/episode-merge.js +0 -11
  313. package/dist/domain/direct/stages/episode-merge.js.map +0 -1
  314. package/dist/domain/direct/stages/episode-plan.d.ts +0 -2
  315. package/dist/domain/direct/stages/episode-plan.js +0 -9
  316. package/dist/domain/direct/stages/episode-plan.js.map +0 -1
  317. package/dist/domain/direct/stages/episode-synopsis.d.ts +0 -2
  318. package/dist/domain/direct/stages/episode-synopsis.js +0 -12
  319. package/dist/domain/direct/stages/episode-synopsis.js.map +0 -1
  320. package/dist/domain/direct/stages/episode-titles.d.ts +0 -2
  321. package/dist/domain/direct/stages/episode-titles.js +0 -12
  322. package/dist/domain/direct/stages/episode-titles.js.map +0 -1
  323. package/dist/domain/direct/stages/index.d.ts +0 -19
  324. package/dist/domain/direct/stages/index.js +0 -41
  325. package/dist/domain/direct/stages/index.js.map +0 -1
  326. package/dist/domain/direct/stages/metadata.d.ts +0 -2
  327. package/dist/domain/direct/stages/metadata.js +0 -11
  328. package/dist/domain/direct/stages/metadata.js.map +0 -1
  329. package/dist/domain/direct/stages/script-merge.d.ts +0 -2
  330. package/dist/domain/direct/stages/script-merge.js +0 -15
  331. package/dist/domain/direct/stages/script-merge.js.map +0 -1
  332. package/dist/domain/direct/stages/script-synopsis.d.ts +0 -2
  333. package/dist/domain/direct/stages/script-synopsis.js +0 -12
  334. package/dist/domain/direct/stages/script-synopsis.js.map +0 -1
  335. package/dist/domain/direct/stages/source-prepare.d.ts +0 -2
  336. package/dist/domain/direct/stages/source-prepare.js +0 -9
  337. package/dist/domain/direct/stages/source-prepare.js.map +0 -1
  338. package/dist/domain/direct/stages/state-binding.d.ts +0 -2
  339. package/dist/domain/direct/stages/state-binding.js +0 -9
  340. package/dist/domain/direct/stages/state-binding.js.map +0 -1
  341. package/dist/domain/direct/stages/state-curation.d.ts +0 -2
  342. package/dist/domain/direct/stages/state-curation.js +0 -10
  343. package/dist/domain/direct/stages/state-curation.js.map +0 -1
  344. package/dist/domain/direct/stages/validate.d.ts +0 -2
  345. package/dist/domain/direct/stages/validate.js +0 -10
  346. package/dist/domain/direct/stages/validate.js.map +0 -1
  347. package/dist/domain/direct-core.d.ts +0 -313
  348. package/dist/domain/direct-core.js +0 -8516
  349. package/dist/domain/direct-core.js.map +0 -1
  350. package/dist/domain/script/validate.d.ts +0 -22
  351. package/dist/domain/script/validate.js +0 -997
  352. package/dist/domain/script/validate.js.map +0 -1
  353. package/dist/infra/providers.d.ts +0 -97
  354. package/dist/infra/providers.js +0 -1396
  355. package/dist/infra/providers.js.map +0 -1
  356. package/dist/usecases/direct.d.ts +0 -27
  357. package/dist/usecases/direct.js +0 -4172
  358. package/dist/usecases/direct.js.map +0 -1
  359. package/dist/usecases/parse.d.ts +0 -15
  360. package/dist/usecases/parse.js +0 -429
  361. package/dist/usecases/parse.js.map +0 -1
  362. package/dist/usecases/script/add-speaker.js +0 -22
  363. package/dist/usecases/script/add-speaker.js.map +0 -1
  364. package/dist/usecases/script/export.d.ts +0 -3
  365. package/dist/usecases/script/export.js +0 -111
  366. package/dist/usecases/script/export.js.map +0 -1
  367. package/dist/usecases/script/overlap.d.ts +0 -3
  368. package/dist/usecases/script/overlap.js +0 -21
  369. package/dist/usecases/script/overlap.js.map +0 -1
  370. package/dist/usecases/script/speakers.d.ts +0 -3
  371. package/dist/usecases/script/speakers.js +0 -28
  372. package/dist/usecases/script/speakers.js.map +0 -1
  373. package/dist/usecases/script/state-change.d.ts +0 -3
  374. package/dist/usecases/script/state-change.js +0 -24
  375. package/dist/usecases/script/state-change.js.map +0 -1
@@ -2,17 +2,16 @@ import * as path from "node:path";
2
2
  import { CliError, DEFAULT_CONCURRENCY, EXIT_NEEDS_AGENT, EXIT_OK, EXIT_RUNTIME, EXIT_USAGE, directDir, sha256Text, } from "../../common.js";
3
3
  import { fileCheckpointer, llm, loom, } from "../../domain/loom/index.js";
4
4
  import { asList, isDict, strOf, } from "../../domain/script/shared.js";
5
- import { makeProvider } from "../../infra/providers.js";
5
+ import { sceneRefs } from "../../domain/script/scene-refs.js";
6
+ import { PRODUCTION_LLM_COMPOSITION } from "../../llm/composition.js";
6
7
  import { loadScriptForEdit, saveScriptSession, syncValidationResult, validateSession, } from "./session.js";
7
- import { summarizeIssues } from "../direct.js";
8
+ import { summarizeIssues } from "../../domain/script/text-util.js";
8
9
  export const DEFAULT_SYNOPSIS_GENERATE_CONFIG = {
9
10
  episodeInputMaxChars: 6000,
10
11
  episodeChunkTargetChars: 4800,
11
12
  arcEpisodeCount: 10,
12
13
  finalMaxInputChars: 12000,
13
14
  };
14
- export const DEFAULT_SYNOPSIS_PROVIDER = "openai";
15
- export const DEFAULT_SYNOPSIS_MODEL = "deepseek-v4-pro-packy";
16
15
  const CHUNK_INSTRUCTION = "从当前剧本片段中提取剧情梗概和关键事件。只基于当前片段,不要推测后续。";
17
16
  export const CHUNK_FORMAT = [
18
17
  "输出格式:一个纯文本结构化文档。不要包裹代码块,不要在文档前后添加解释。",
@@ -289,6 +288,7 @@ export async function generateSynopsisFromScript(opts) {
289
288
  chunk: (source) => splitEpisodeSource(source, config),
290
289
  })
291
290
  .extract(llm({
291
+ taskId: "synopsis.chunk",
292
292
  instruction: CHUNK_INSTRUCTION,
293
293
  format: CHUNK_FORMAT,
294
294
  input: ({ parcel }) => renderChunkInput(parcel),
@@ -296,6 +296,7 @@ export async function generateSynopsisFromScript(opts) {
296
296
  }))
297
297
  .reduce("episode", reduceChunkBriefs)
298
298
  .extract(llm({
299
+ taskId: "synopsis.episode",
299
300
  instruction: EPISODE_INSTRUCTION,
300
301
  format: EPISODE_FORMAT,
301
302
  input: ({ parcel }) => renderEpisodeReduceInput(parcel),
@@ -306,7 +307,7 @@ export async function generateSynopsisFromScript(opts) {
306
307
  concurrency: opts.concurrency,
307
308
  checkpoint: fileCheckpointer(path.join(opts.checkpointDir, "episode")),
308
309
  checkpointSalt: opts.checkpointSalt,
309
- model: opts.model,
310
+ executor: opts.executor,
310
311
  });
311
312
  const generatedEpisodeBriefs = Array.isArray(episodeRun) ? episodeRun : episodeRun.value;
312
313
  const byIndex = new Map(generatedEpisodeBriefs.map((brief) => [brief.episodeIndex, brief]));
@@ -333,7 +334,7 @@ export async function generateSynopsisFromScript(opts) {
333
334
  const arcRun = overviewNeeded
334
335
  ? await generateArcBriefs({
335
336
  episodes: episodeBriefs,
336
- model: opts.model,
337
+ executor: opts.executor,
337
338
  checkpointDir: path.join(opts.checkpointDir, "arc"),
338
339
  checkpointSalt: opts.checkpointSalt,
339
340
  concurrency: opts.concurrency,
@@ -344,7 +345,7 @@ export async function generateSynopsisFromScript(opts) {
344
345
  ? await generateScriptOverview({
345
346
  episodes: episodeBriefs,
346
347
  arcs: arcRun.value,
347
- model: opts.model,
348
+ executor: opts.executor,
348
349
  checkpointDir: path.join(opts.checkpointDir, "final"),
349
350
  checkpointSalt: opts.checkpointSalt,
350
351
  config,
@@ -360,9 +361,7 @@ export async function generateSynopsisFromScript(opts) {
360
361
  },
361
362
  };
362
363
  }
363
- export async function commandSynopsisGenerate(opts) {
364
- const providerName = strOf(opts["provider"] || DEFAULT_SYNOPSIS_PROVIDER);
365
- const modelName = strOf(opts["model"] || DEFAULT_SYNOPSIS_MODEL);
364
+ export async function commandSynopsisGenerate(opts, composition = PRODUCTION_LLM_COMPOSITION) {
366
365
  const concurrency = parsePositiveInt(opts["concurrency"], DEFAULT_CONCURRENCY, "--concurrency");
367
366
  const overwrite = Boolean(opts["overwrite"]);
368
367
  const apply = Boolean(opts["apply"]);
@@ -378,23 +377,12 @@ export async function commandSynopsisGenerate(opts) {
378
377
  }
379
378
  const workspace = strOf(opts["workspace_path"] || "workspace");
380
379
  const session = await loadScriptForEdit(opts);
381
- const provider = makeProvider(providerName, modelName);
382
- if (!provider.completeText) {
383
- throw new CliError("SYNOPSIS GENERATE BLOCKED: provider lacks text completion", "Provider does not support text completion.", {
384
- exitCode: EXIT_USAGE,
385
- required: ["provider.completeText"],
386
- received: [`--provider ${providerName}`],
387
- nextSteps: ["Use --provider openai, --provider anthropic, or --provider mock."],
388
- errorCode: "PROVIDER_TEXT_UNSUPPORTED",
389
- });
390
- }
391
- const completeText = provider.completeText.bind(provider);
380
+ const executor = composition.createExecutor(strOf(opts["llm_config"]).trim() || undefined);
392
381
  const checkpoint = strOf(opts["checkpoint"]).trim() || path.join(directDir(workspace), "loom", "synopsis-generate");
393
382
  const result = await generateSynopsisFromScript({
394
383
  script: session.script,
395
- model: (request) => completeText(request),
384
+ executor,
396
385
  checkpointDir: checkpoint,
397
- checkpointSalt: { provider: providerName, model: modelName },
398
386
  concurrency,
399
387
  overwrite,
400
388
  });
@@ -427,6 +415,7 @@ export async function commandSynopsisGenerate(opts) {
427
415
  const resultLines = [
428
416
  `${result.episodeBriefs.length} episodes; ${changedEpisodeIds.size} synopses ${apply ? "written" : "would change"}; overview ${result.overviewGenerated ? "generated" : "reused"}; validation ${passed ? (apply ? "passed" : "would pass") : apply ? "needs repair" : "would need repair"}${apply ? "" : "; dry-run, no write"}`,
429
417
  `loom: ran=${result.report.ran}, reused=${result.report.reused}`,
418
+ `llm config: ${executor.configSource}; routes: ${executor.usage().length}`,
430
419
  ];
431
420
  if (apply && hasChanges) {
432
421
  const [newRevision, idempotent] = await saveScriptSession(session, opts, "synopsis.generate");
@@ -453,6 +442,8 @@ export async function commandSynopsisGenerate(opts) {
453
442
  synopsis: brief.synopsis,
454
443
  one_line: brief.oneLine,
455
444
  })),
445
+ config_source: executor.configSource,
446
+ llm_routes: executor.usage(),
456
447
  };
457
448
  return [report, passed ? EXIT_OK : EXIT_NEEDS_AGENT];
458
449
  }
@@ -477,6 +468,7 @@ async function generateArcBriefs(opts) {
477
468
  chunk: (parcel) => [parcel],
478
469
  })
479
470
  .extract(llm({
471
+ taskId: "synopsis.arc",
480
472
  instruction: ARC_INSTRUCTION,
481
473
  format: ARC_FORMAT,
482
474
  input: ({ parcel }) => renderArcInput(parcel),
@@ -488,7 +480,7 @@ async function generateArcBriefs(opts) {
488
480
  concurrency: opts.concurrency,
489
481
  checkpoint: fileCheckpointer(path.join(opts.checkpointDir, `level-${level}`)),
490
482
  checkpointSalt: opts.checkpointSalt,
491
- model: opts.model,
483
+ executor: opts.executor,
492
484
  });
493
485
  report.reused += run.report.reused;
494
486
  report.ran += run.report.ran;
@@ -507,6 +499,7 @@ async function generateScriptOverview(opts) {
507
499
  }
508
500
  const run = await loom({ episodes: opts.episodes, arcs })
509
501
  .extract(llm({
502
+ taskId: "synopsis.script-overview",
510
503
  instruction: FINAL_INSTRUCTION,
511
504
  format: FINAL_FORMAT,
512
505
  input: ({ parcel }) => renderFinalInput(parcel.episodes, parcel.arcs),
@@ -516,7 +509,7 @@ async function generateScriptOverview(opts) {
516
509
  concurrency: 1,
517
510
  checkpoint: fileCheckpointer(opts.checkpointDir),
518
511
  checkpointSalt: opts.checkpointSalt,
519
- model: opts.model,
512
+ executor: opts.executor,
520
513
  });
521
514
  return { value: run.value, report: run.report };
522
515
  }
@@ -524,9 +517,9 @@ function renderSceneHeader(script, scene) {
524
517
  const env = isDict(scene["environment"]) ? scene["environment"] : {};
525
518
  const space = strOf(env["space"]).trim();
526
519
  const time = strOf(env["time"]).trim();
527
- const context = isDict(scene["context"]) ? scene["context"] : {};
528
- const locations = asList(context["locations"]).map((ref) => assetName(script, "locations", "location_id", "location_name", strOf(ref["location_id"]))).filter((s) => s);
529
- const actors = asList(context["actors"]).map((ref) => assetName(script, "actors", "actor_id", "actor_name", strOf(ref["actor_id"]))).filter((s) => s);
520
+ const refs = sceneRefs(scene);
521
+ const locations = asList(refs["locations"]).map((ref) => assetName(script, "locations", "location_id", "location_name", strOf(ref["location_id"]))).filter((s) => s);
522
+ const actors = asList(refs["actors"]).map((ref) => assetName(script, "actors", "actor_id", "actor_name", strOf(ref["actor_id"]))).filter((s) => s);
530
523
  const location = locations.join("、") || "-";
531
524
  const envText = [space, time].filter((s) => s).join(" ");
532
525
  return `[场景] ${envText || "-"}|${location}|出场:${actors.join("、") || "-"}`;
@@ -534,14 +527,6 @@ function renderSceneHeader(script, scene) {
534
527
  function renderAction(script, action) {
535
528
  const type = strOf(action["type"]).trim();
536
529
  if (type === "dialogue") {
537
- if (strOf(action["delivery"]) === "overlap" && asList(action["lines"]).length > 0) {
538
- const lines = asList(action["lines"]).map((line) => {
539
- const speaker = speakerName(script, strOf(line["speaker_id"])) || strOf(line["speaker_id"]);
540
- const content = strOf(line["content"]).trim();
541
- return speaker && content ? `${speaker}:${content}` : content;
542
- }).filter((line) => line);
543
- return lines.length > 0 ? `[对白] ${lines.join(" / ")}` : "";
544
- }
545
530
  const speaker = actionSpeakerName(script, action);
546
531
  const content = strOf(action["content"]).trim();
547
532
  return content ? `[对白] ${speaker ? `${speaker}:` : ""}${content}` : "";
@@ -555,18 +540,17 @@ function renderAction(script, action) {
555
540
  return content ? `[动作] ${content}` : "";
556
541
  }
557
542
  function actionSpeakerName(script, action) {
558
- const speakerId = strOf(action["speaker_id"]).trim();
559
- if (speakerId)
560
- return speakerName(script, speakerId) || speakerId;
561
- const actorId = strOf(action["actor_id"]).trim();
543
+ // v3: a single inline speaker — an actor ref, or a non-actor kind with a label.
544
+ const s = action["speaker"];
545
+ if (!isDict(s))
546
+ return "";
547
+ const actorId = strOf(s["actor_id"]).trim();
562
548
  if (actorId)
563
549
  return assetName(script, "actors", "actor_id", "actor_name", actorId) || actorId;
564
- const speakers = asList(action["speakers"]).map((ref) => speakerName(script, strOf(ref["speaker_id"])) || strOf(ref["speaker_id"])).filter((s) => s);
565
- return speakers.join("/");
566
- }
567
- function speakerName(script, speakerId) {
568
- const speaker = asList(script["speakers"]).find((item) => strOf(item["speaker_id"]) === speakerId);
569
- return speaker ? strOf(speaker["display_name"]).trim() : "";
550
+ const kind = strOf(s["kind"]).trim();
551
+ if (kind)
552
+ return strOf(s["label"]).trim() || kind;
553
+ return "";
570
554
  }
571
555
  function assetName(script, collection, idKey, nameKey, id) {
572
556
  const item = asList(script[collection]).find((entry) => strOf(entry[idKey]) === id);
@@ -1 +1 @@
1
- {"version":3,"file":"synopsis-generate.js","sourceRoot":"","sources":["../../../src/usecases/script/synopsis-generate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"synopsis-generate.js","sourceRoot":"","sources":["../../../src/usecases/script/synopsis-generate.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"transition.js","sourceRoot":"","sources":["../../../src/usecases/script/transition.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,QAAQ,EAKR,UAAU,GASX,MAAM,iBAAiB,CAAC;AAkCzB,OAAO,EACL,MAAM,EAIN,KAAK,GACN,MAAM,+BAA+B,CAAC;AAMvC,OAAO,EAC+I,mBAAmB,EAAmC,kBAAkB,EAA0M,qBAAqB,GAC5b,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAE9C,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAAU;IAChD,MAAM,IAAI,GAAG,MAAM,CAAS,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3C,MAAM,YAAY,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACvD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,QAAQ,CAAC,uCAAuC,EAAE,0BAA0B,EAAE;YACtF,QAAQ,EAAE,UAAU;YACpB,QAAQ,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC,CAAC,4BAA4B,CAAC;YAC3F,QAAQ,EAAE,IAAI;YACd,SAAS,EAAE,CAAC,+LAA+L,CAAC;YAC5M,SAAS,EAAE,cAAc;SAC1B,CAAC,CAAC;IACL,CAAC;IACD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IACrI,IAAI,YAAY;QAAE,OAAO,kBAAkB,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;IAC1E,OAAO,mBAAmB,CAAC,IAAI,EAAE,EAAE,GAAG,QAAQ,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AACjE,CAAC;AAED,+EAA+E"}
1
+ {"version":3,"file":"transition.js","sourceRoot":"","sources":["../../../src/usecases/script/transition.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,QAAQ,EAKR,UAAU,GASX,MAAM,iBAAiB,CAAC;AA6BzB,OAAO,EACL,MAAM,EAIN,KAAK,GACN,MAAM,+BAA+B,CAAC;AAMvC,OAAO,EAC+I,mBAAmB,EAAmC,kBAAkB,EAA+J,qBAAqB,GACjZ,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAE9C,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAAU;IAChD,MAAM,IAAI,GAAG,MAAM,CAAS,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3C,MAAM,YAAY,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACvD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,QAAQ,CAAC,uCAAuC,EAAE,0BAA0B,EAAE;YACtF,QAAQ,EAAE,UAAU;YACpB,QAAQ,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC,CAAC,4BAA4B,CAAC;YAC3F,QAAQ,EAAE,IAAI;YACd,SAAS,EAAE,CAAC,+LAA+L,CAAC;YAC5M,SAAS,EAAE,cAAc;SAC1B,CAAC,CAAC;IACL,CAAC;IACD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IACrI,IAAI,YAAY;QAAE,OAAO,kBAAkB,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;IAC1E,OAAO,mBAAmB,CAAC,IAAI,EAAE,EAAE,GAAG,QAAQ,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AACjE,CAAC;AAED,+EAA+E"}
@@ -1 +1 @@
1
- {"version":3,"file":"type.js","sourceRoot":"","sources":["../../../src/usecases/script/type.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,QAAQ,EAKR,UAAU,GASX,MAAM,iBAAiB,CAAC;AAkCzB,OAAO,EACL,MAAM,EAIN,KAAK,GACN,MAAM,+BAA+B,CAAC;AAMvC,OAAO,EAC+I,mBAAmB,EAAmC,kBAAkB,EAA0M,qBAAqB,GAC5b,MAAM,UAAU,CAAC;AAElB,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAAU;IAC1C,MAAM,IAAI,GAAG,MAAM,CAAS,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3C,MAAM,YAAY,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACjD,8EAA8E;IAC9E,yEAAyE;IACzE,MAAM,OAAO,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/D,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,QAAQ,CAAC,iCAAiC,EAAE,oBAAoB,EAAE;YAC1E,QAAQ,EAAE,UAAU;YACpB,QAAQ,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,qBAAqB,CAAC;YAC9E,QAAQ,EAAE,IAAI;YACd,SAAS,EAAE,CAAC,mGAAmG,CAAC;YAChH,SAAS,EAAE,cAAc;SAC1B,CAAC,CAAC;IACL,CAAC;IACD,MAAM,QAAQ,GAAS,EAAE,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IAChE,IAAI,YAAY;QAAE,OAAO,kBAAkB,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IACpE,OAAO,mBAAmB,CAAC,IAAI,EAAE,EAAE,GAAG,QAAQ,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AACjE,CAAC"}
1
+ {"version":3,"file":"type.js","sourceRoot":"","sources":["../../../src/usecases/script/type.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,QAAQ,EAKR,UAAU,GASX,MAAM,iBAAiB,CAAC;AA6BzB,OAAO,EACL,MAAM,EAIN,KAAK,GACN,MAAM,+BAA+B,CAAC;AAMvC,OAAO,EAC+I,mBAAmB,EAAmC,kBAAkB,EAA+J,qBAAqB,GACjZ,MAAM,UAAU,CAAC;AAElB,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAAU;IAC1C,MAAM,IAAI,GAAG,MAAM,CAAS,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3C,MAAM,YAAY,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACjD,8EAA8E;IAC9E,yEAAyE;IACzE,MAAM,OAAO,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/D,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,QAAQ,CAAC,iCAAiC,EAAE,oBAAoB,EAAE;YAC1E,QAAQ,EAAE,UAAU;YACpB,QAAQ,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,qBAAqB,CAAC;YAC9E,QAAQ,EAAE,IAAI;YACd,SAAS,EAAE,CAAC,mGAAmG,CAAC;YAChH,SAAS,EAAE,cAAc;SAC1B,CAAC,CAAC;IACL,CAAC;IACD,MAAM,QAAQ,GAAS,EAAE,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IAChE,IAAI,YAAY;QAAE,OAAO,kBAAkB,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IACpE,OAAO,mBAAmB,CAAC,IAAI,EAAE,EAAE,GAAG,QAAQ,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AACjE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"worldview.js","sourceRoot":"","sources":["../../../src/usecases/script/worldview.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,QAAQ,EAKR,UAAU,GASX,MAAM,iBAAiB,CAAC;AAkCzB,OAAO,EACL,MAAM,GAKP,MAAM,+BAA+B,CAAC;AAMvC,OAAO,EAC+I,mBAAmB,GACxK,MAAM,UAAU,CAAC;AAElB,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAAU;IAC/C,MAAM,IAAI,GAAG,MAAM,CAAS,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3C,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,QAAQ,CAAC,uCAAuC,EAAE,0BAA0B,EAAE;YACtF,QAAQ,EAAE,UAAU;YACpB,QAAQ,EAAE,CAAC,SAAS,CAAC;YACrB,QAAQ,EAAE,CAAC,SAAS,CAAC;YACrB,SAAS,EAAE,CAAC,iCAAiC,CAAC;YAC9C,SAAS,EAAE,cAAc;SAC1B,CAAC,CAAC;IACL,CAAC;IACD,OAAO,mBAAmB,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,oBAAoB,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AACrF,CAAC;AAED,+EAA+E"}
1
+ {"version":3,"file":"worldview.js","sourceRoot":"","sources":["../../../src/usecases/script/worldview.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,QAAQ,EAKR,UAAU,GASX,MAAM,iBAAiB,CAAC;AA6BzB,OAAO,EACL,MAAM,GAKP,MAAM,+BAA+B,CAAC;AAMvC,OAAO,EAC+I,mBAAmB,GACxK,MAAM,UAAU,CAAC;AAElB,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAAU;IAC/C,MAAM,IAAI,GAAG,MAAM,CAAS,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3C,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,QAAQ,CAAC,uCAAuC,EAAE,0BAA0B,EAAE;YACtF,QAAQ,EAAE,UAAU;YACpB,QAAQ,EAAE,CAAC,SAAS,CAAC;YACrB,QAAQ,EAAE,CAAC,SAAS,CAAC;YACrB,SAAS,EAAE,CAAC,iCAAiC,CAAC;YAC9C,SAAS,EAAE,cAAc;SAC1B,CAAC,CAAC;IACL,CAAC;IACD,OAAO,mBAAmB,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,oBAAoB,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AACrF,CAAC;AAED,+EAA+E"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lingjingai/scriptctl",
3
- "version": "0.34.0",
3
+ "version": "0.36.0",
4
4
  "description": "剧本阶段统一 CLI:直转外部素材到 script.json,以及当前最终剧本的读取、校验、原子编辑与批量 patch 精修。",
5
5
  "type": "module",
6
6
  "bin": {
@@ -11,6 +11,8 @@
11
11
  "files": [
12
12
  "dist",
13
13
  "changes",
14
+ "skills",
15
+ "scripts/install-skill.mjs",
14
16
  "README.md"
15
17
  ],
16
18
  "engines": {
@@ -19,6 +21,8 @@
19
21
  "scripts": {
20
22
  "build": "tsc",
21
23
  "clean": "rm -rf dist",
24
+ "postinstall": "node scripts/install-skill.mjs",
25
+ "install-skill": "node scripts/install-skill.mjs",
22
26
  "prepublishOnly": "pnpm run clean && pnpm run build",
23
27
  "pretest": "pnpm run build",
24
28
  "test": "vitest run",
@@ -29,12 +33,16 @@
29
33
  "surface:snapshot": "node scripts/scriptctl-surface-snapshot.mjs"
30
34
  },
31
35
  "dependencies": {
32
- "@anthropic-ai/sdk": "^0.32.1",
36
+ "@anthropic-ai/sdk": "^0.111.0",
37
+ "@google/genai": "^2.11.0",
33
38
  "commander": "^12.1.0",
34
39
  "fast-json-patch": "^3.1.1",
35
40
  "fast-xml-parser": "^5.9.0",
41
+ "https-proxy-agent": "^9.1.0",
36
42
  "jszip": "^3.10.1",
37
- "pdfjs-dist": "^4.10.38"
43
+ "pdfjs-dist": "^4.10.38",
44
+ "undici": "^8.7.0",
45
+ "yaml": "^2.8.1"
38
46
  },
39
47
  "devDependencies": {
40
48
  "@types/node": "^20.14.0",
@@ -0,0 +1,120 @@
1
+ #!/usr/bin/env node
2
+ // postinstall: 把打包进 npm 包的 scriptctl skill 装到用户根目录下的三处 skill 目录
3
+ // (Claude Code / agents / codex),并把「本次安装对应的 scriptctl 版本号」戳进每份
4
+ // SKILL.md 的 frontmatter + 一个 .scriptctl-version 标记文件里。
5
+ //
6
+ // 设计要点:
7
+ // - 永不让安装失败:全程 try/catch,任何异常只打印警告并以 0 退出(skill 装不上不该
8
+ // 拖垮 `npm i -g scriptctl` 本身)。
9
+ // - 开发态跳过:源码检出(存在 src/)不是「已发布的包」,跳过,免得 dev `pnpm install`
10
+ // 覆盖你本地手改的 skill。
11
+ // - 可关闭:SCRIPTCTL_SKIP_SKILL_INSTALL=1 或 SCRIPTCTL_SKILL_INSTALL=0。
12
+ // - 幂等:每次把目标 <dir>/scriptctl 清空重写,只管这一个子目录,不碰旁边的其它 skill。
13
+ // - 手动补装:node <pkg>/scripts/install-skill.mjs(同一逻辑,可随时重跑)。
14
+
15
+ import * as fs from "node:fs";
16
+ import * as os from "node:os";
17
+ import * as path from "node:path";
18
+ import { fileURLToPath } from "node:url";
19
+
20
+ const SKILL_NAME = "scriptctl";
21
+ // 三处目标 skill 根目录(相对用户家目录)。每处装成 <root>/scriptctl 子目录。
22
+ const TARGET_SKILL_ROOTS = [
23
+ path.join(".claude", "skills"),
24
+ path.join(".agents", "skills"),
25
+ path.join(".codex", "skills"),
26
+ ];
27
+
28
+ function log(msg) {
29
+ process.stdout.write(`[scriptctl] ${msg}\n`);
30
+ }
31
+
32
+ function optedOut() {
33
+ const skip = process.env.SCRIPTCTL_SKIP_SKILL_INSTALL;
34
+ const flag = process.env.SCRIPTCTL_SKILL_INSTALL;
35
+ return skip === "1" || skip === "true" || flag === "0" || flag === "false";
36
+ }
37
+
38
+ // package root = 本脚本上一级的上一级(<root>/scripts/install-skill.mjs)。
39
+ function packageRoot() {
40
+ return path.resolve(path.dirname(fileURLToPath(import.meta.url)), "..");
41
+ }
42
+
43
+ function readVersion(root) {
44
+ try {
45
+ const pkg = JSON.parse(fs.readFileSync(path.join(root, "package.json"), "utf-8"));
46
+ return typeof pkg.version === "string" ? pkg.version : "0.0.0";
47
+ } catch {
48
+ return "0.0.0";
49
+ }
50
+ }
51
+
52
+ // 把源 SKILL.md 里的 `scriptctl_version:` frontmatter 值改成实际安装的版本,让装好的
53
+ // skill 一眼看清对应的是哪个 scriptctl。没有该行时不硬插(保持 frontmatter 干净)。
54
+ function stampVersion(skillMdPath, version) {
55
+ try {
56
+ const text = fs.readFileSync(skillMdPath, "utf-8");
57
+ if (!/^scriptctl_version:/m.test(text)) return;
58
+ const stamped = text.replace(/^scriptctl_version:.*$/m, `scriptctl_version: "${version}"`);
59
+ fs.writeFileSync(skillMdPath, stamped, "utf-8");
60
+ } catch {
61
+ /* 戳版本失败不影响 skill 可用 */
62
+ }
63
+ }
64
+
65
+ function installOne(skillSrc, homeDir, skillRootRel, version) {
66
+ const target = path.join(homeDir, skillRootRel, SKILL_NAME);
67
+ fs.rmSync(target, { recursive: true, force: true });
68
+ fs.mkdirSync(path.dirname(target), { recursive: true });
69
+ fs.cpSync(skillSrc, target, { recursive: true });
70
+ stampVersion(path.join(target, "SKILL.md"), version);
71
+ fs.writeFileSync(path.join(target, ".scriptctl-version"), `${version}\n`, "utf-8");
72
+ return target;
73
+ }
74
+
75
+ function main() {
76
+ if (optedOut()) {
77
+ log("SCRIPTCTL_SKIP_SKILL_INSTALL set — skipping skill install.");
78
+ return;
79
+ }
80
+
81
+ const root = packageRoot();
82
+
83
+ // 开发态守卫:已发布的包不含 src/(package.json files 未包含它)。存在 src/ = 源码
84
+ // 检出,跳过,免得覆盖开发者本地 skill。
85
+ if (fs.existsSync(path.join(root, "src"))) {
86
+ return;
87
+ }
88
+
89
+ const skillSrc = path.join(root, "skills", SKILL_NAME);
90
+ if (!fs.existsSync(path.join(skillSrc, "SKILL.md"))) {
91
+ log(`skill source not found at ${skillSrc} — skipping.`);
92
+ return;
93
+ }
94
+
95
+ const homeDir = os.homedir();
96
+ if (!homeDir) {
97
+ log("home directory unresolved — skipping skill install.");
98
+ return;
99
+ }
100
+
101
+ const version = readVersion(root);
102
+ const installed = [];
103
+ for (const rel of TARGET_SKILL_ROOTS) {
104
+ try {
105
+ installed.push(installOne(skillSrc, homeDir, rel, version));
106
+ } catch (exc) {
107
+ log(`could not install skill into ${rel}: ${exc instanceof Error ? exc.message : String(exc)}`);
108
+ }
109
+ }
110
+ if (installed.length > 0) {
111
+ log(`installed ${SKILL_NAME} skill (v${version}) → ${installed.join(", ")}`);
112
+ }
113
+ }
114
+
115
+ try {
116
+ main();
117
+ } catch (exc) {
118
+ // 兜底:任何未预期异常都不该让 npm install 失败。
119
+ log(`skill install skipped: ${exc instanceof Error ? exc.message : String(exc)}`);
120
+ }