@nodetool-ai/agents 0.8.1 → 0.8.2

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 (361) hide show
  1. package/dist/.nodetool-build-stamp +1 -1
  2. package/dist/analysis/audio-dsp.d.ts +3 -2
  3. package/dist/analysis/audio-dsp.d.ts.map +1 -1
  4. package/dist/analysis/audio-dsp.js +11 -8
  5. package/dist/analysis/audio-dsp.js.map +1 -1
  6. package/dist/analysis/media-decode.d.ts +13 -0
  7. package/dist/analysis/media-decode.d.ts.map +1 -1
  8. package/dist/analysis/media-decode.js +33 -6
  9. package/dist/analysis/media-decode.js.map +1 -1
  10. package/dist/author-graph.d.ts +2 -3
  11. package/dist/author-graph.d.ts.map +1 -1
  12. package/dist/author-graph.js +3 -5
  13. package/dist/author-graph.js.map +1 -1
  14. package/dist/browser-gate.d.ts +2 -2
  15. package/dist/browser-gate.js +2 -2
  16. package/dist/capabilities/GamePublishRequest.d.ts +14 -0
  17. package/dist/capabilities/GamePublishRequest.d.ts.map +1 -0
  18. package/dist/capabilities/GamePublishRequest.js +2 -0
  19. package/dist/capabilities/GamePublishRequest.js.map +1 -0
  20. package/dist/capabilities/adapters.d.ts +4 -13
  21. package/dist/capabilities/adapters.d.ts.map +1 -1
  22. package/dist/capabilities/adapters.js +9 -14
  23. package/dist/capabilities/adapters.js.map +1 -1
  24. package/dist/capabilities/agent-activity.d.ts +27 -0
  25. package/dist/capabilities/agent-activity.d.ts.map +1 -0
  26. package/dist/capabilities/agent-activity.js +103 -0
  27. package/dist/capabilities/agent-activity.js.map +1 -0
  28. package/dist/capabilities/agentic-storyboard-finish.d.ts +67 -0
  29. package/dist/capabilities/agentic-storyboard-finish.d.ts.map +1 -0
  30. package/dist/capabilities/agentic-storyboard-finish.js +1321 -0
  31. package/dist/capabilities/agentic-storyboard-finish.js.map +1 -0
  32. package/dist/capabilities/agents.d.ts +5 -2
  33. package/dist/capabilities/agents.d.ts.map +1 -1
  34. package/dist/capabilities/agents.js +14 -4
  35. package/dist/capabilities/agents.js.map +1 -1
  36. package/dist/capabilities/agents.specs.d.ts +3 -0
  37. package/dist/capabilities/agents.specs.d.ts.map +1 -1
  38. package/dist/capabilities/agents.specs.js +71 -1
  39. package/dist/capabilities/agents.specs.js.map +1 -1
  40. package/dist/capabilities/analysis.d.ts.map +1 -1
  41. package/dist/capabilities/analysis.js +33 -22
  42. package/dist/capabilities/analysis.js.map +1 -1
  43. package/dist/capabilities/analysis.specs.js +2 -2
  44. package/dist/capabilities/analysis.specs.js.map +1 -1
  45. package/dist/capabilities/apps.d.ts.map +1 -1
  46. package/dist/capabilities/apps.js +5 -3
  47. package/dist/capabilities/apps.js.map +1 -1
  48. package/dist/capabilities/args.d.ts +2 -5
  49. package/dist/capabilities/args.d.ts.map +1 -1
  50. package/dist/capabilities/args.js +2 -5
  51. package/dist/capabilities/args.js.map +1 -1
  52. package/dist/capabilities/browser.d.ts +1 -1
  53. package/dist/capabilities/browser.js +1 -1
  54. package/dist/capabilities/browser.specs.d.ts +1 -1
  55. package/dist/capabilities/browser.specs.js +1 -1
  56. package/dist/capabilities/code.d.ts +5 -0
  57. package/dist/capabilities/code.d.ts.map +1 -1
  58. package/dist/capabilities/code.js +128 -89
  59. package/dist/capabilities/code.js.map +1 -1
  60. package/dist/capabilities/errors.d.ts +19 -0
  61. package/dist/capabilities/errors.d.ts.map +1 -0
  62. package/dist/capabilities/errors.js +109 -0
  63. package/dist/capabilities/errors.js.map +1 -0
  64. package/dist/capabilities/errors.specs.d.ts +11 -0
  65. package/dist/capabilities/errors.specs.d.ts.map +1 -0
  66. package/dist/capabilities/errors.specs.js +100 -0
  67. package/dist/capabilities/errors.specs.js.map +1 -0
  68. package/dist/capabilities/example-timelines.d.ts.map +1 -1
  69. package/dist/capabilities/example-timelines.js +52 -10
  70. package/dist/capabilities/example-timelines.js.map +1 -1
  71. package/dist/capabilities/example-timelines.specs.d.ts +1 -0
  72. package/dist/capabilities/example-timelines.specs.d.ts.map +1 -1
  73. package/dist/capabilities/example-timelines.specs.js +21 -3
  74. package/dist/capabilities/example-timelines.specs.js.map +1 -1
  75. package/dist/capabilities/finish-storyboard.d.ts +5 -0
  76. package/dist/capabilities/finish-storyboard.d.ts.map +1 -0
  77. package/dist/capabilities/finish-storyboard.js +278 -0
  78. package/dist/capabilities/finish-storyboard.js.map +1 -0
  79. package/dist/capabilities/game-asset-source.js +1 -1
  80. package/dist/capabilities/game-asset-source.js.map +1 -1
  81. package/dist/capabilities/game.d.ts +14 -2
  82. package/dist/capabilities/game.d.ts.map +1 -1
  83. package/dist/capabilities/game.js +209 -39
  84. package/dist/capabilities/game.js.map +1 -1
  85. package/dist/capabilities/game.specs.d.ts +2 -0
  86. package/dist/capabilities/game.specs.d.ts.map +1 -1
  87. package/dist/capabilities/game.specs.js +25 -11
  88. package/dist/capabilities/game.specs.js.map +1 -1
  89. package/dist/capabilities/game3d.d.ts +17 -0
  90. package/dist/capabilities/game3d.d.ts.map +1 -0
  91. package/dist/capabilities/game3d.js +433 -0
  92. package/dist/capabilities/game3d.js.map +1 -0
  93. package/dist/capabilities/gate-from-context.d.ts +1 -1
  94. package/dist/capabilities/gate-from-context.js +1 -1
  95. package/dist/capabilities/generations.d.ts +2 -0
  96. package/dist/capabilities/generations.d.ts.map +1 -1
  97. package/dist/capabilities/generations.js +7 -2
  98. package/dist/capabilities/generations.js.map +1 -1
  99. package/dist/capabilities/index.d.ts +2 -2
  100. package/dist/capabilities/index.d.ts.map +1 -1
  101. package/dist/capabilities/index.js +2 -2
  102. package/dist/capabilities/index.js.map +1 -1
  103. package/dist/capabilities/invoke.d.ts +14 -25
  104. package/dist/capabilities/invoke.d.ts.map +1 -1
  105. package/dist/capabilities/invoke.js +72 -35
  106. package/dist/capabilities/invoke.js.map +1 -1
  107. package/dist/capabilities/jobs.d.ts.map +1 -1
  108. package/dist/capabilities/jobs.js +47 -3
  109. package/dist/capabilities/jobs.js.map +1 -1
  110. package/dist/capabilities/jobs.specs.d.ts.map +1 -1
  111. package/dist/capabilities/jobs.specs.js +3 -1
  112. package/dist/capabilities/jobs.specs.js.map +1 -1
  113. package/dist/capabilities/js-scripts.d.ts +19 -1
  114. package/dist/capabilities/js-scripts.d.ts.map +1 -1
  115. package/dist/capabilities/js-scripts.js +109 -2
  116. package/dist/capabilities/js-scripts.js.map +1 -1
  117. package/dist/capabilities/js-scripts.specs.d.ts +2 -0
  118. package/dist/capabilities/js-scripts.specs.d.ts.map +1 -1
  119. package/dist/capabilities/js-scripts.specs.js +50 -0
  120. package/dist/capabilities/js-scripts.specs.js.map +1 -1
  121. package/dist/capabilities/lazy-tool.d.ts +23 -24
  122. package/dist/capabilities/lazy-tool.d.ts.map +1 -1
  123. package/dist/capabilities/lazy-tool.js +29 -35
  124. package/dist/capabilities/lazy-tool.js.map +1 -1
  125. package/dist/capabilities/legacy-tools.d.ts +15 -0
  126. package/dist/capabilities/legacy-tools.d.ts.map +1 -0
  127. package/dist/capabilities/legacy-tools.js +98 -0
  128. package/dist/capabilities/legacy-tools.js.map +1 -0
  129. package/dist/capabilities/media.d.ts +0 -9
  130. package/dist/capabilities/media.d.ts.map +1 -1
  131. package/dist/capabilities/media.js +301 -260
  132. package/dist/capabilities/media.js.map +1 -1
  133. package/dist/capabilities/models.d.ts +2 -2
  134. package/dist/capabilities/models.d.ts.map +1 -1
  135. package/dist/capabilities/models.js +5 -3
  136. package/dist/capabilities/models.js.map +1 -1
  137. package/dist/capabilities/registry.d.ts +2 -0
  138. package/dist/capabilities/registry.d.ts.map +1 -1
  139. package/dist/capabilities/registry.js +28 -0
  140. package/dist/capabilities/registry.js.map +1 -1
  141. package/dist/capabilities/run-agent.d.ts +19 -0
  142. package/dist/capabilities/run-agent.d.ts.map +1 -0
  143. package/dist/capabilities/run-agent.js +183 -0
  144. package/dist/capabilities/run-agent.js.map +1 -0
  145. package/dist/capabilities/runs.d.ts +9 -0
  146. package/dist/capabilities/runs.d.ts.map +1 -0
  147. package/dist/capabilities/runs.js +46 -0
  148. package/dist/capabilities/runs.js.map +1 -0
  149. package/dist/capabilities/runs.specs.d.ts +39 -0
  150. package/dist/capabilities/runs.specs.d.ts.map +1 -0
  151. package/dist/capabilities/runs.specs.js +52 -0
  152. package/dist/capabilities/runs.specs.js.map +1 -0
  153. package/dist/capabilities/scripts.d.ts.map +1 -1
  154. package/dist/capabilities/scripts.js +11 -5
  155. package/dist/capabilities/scripts.js.map +1 -1
  156. package/dist/capabilities/sketches.d.ts.map +1 -1
  157. package/dist/capabilities/sketches.js +4 -2
  158. package/dist/capabilities/sketches.js.map +1 -1
  159. package/dist/capabilities/skills.d.ts.map +1 -1
  160. package/dist/capabilities/skills.js +22 -2
  161. package/dist/capabilities/skills.js.map +1 -1
  162. package/dist/capabilities/storyboard-layout-check.d.ts +33 -0
  163. package/dist/capabilities/storyboard-layout-check.d.ts.map +1 -0
  164. package/dist/capabilities/storyboard-layout-check.js +229 -0
  165. package/dist/capabilities/storyboard-layout-check.js.map +1 -0
  166. package/dist/capabilities/storyboard-measured-sources.d.ts +10 -0
  167. package/dist/capabilities/storyboard-measured-sources.d.ts.map +1 -0
  168. package/dist/capabilities/storyboard-measured-sources.js +67 -0
  169. package/dist/capabilities/storyboard-measured-sources.js.map +1 -0
  170. package/dist/capabilities/storyboard-review-times.d.ts +4 -0
  171. package/dist/capabilities/storyboard-review-times.d.ts.map +1 -0
  172. package/dist/capabilities/storyboard-review-times.js +39 -0
  173. package/dist/capabilities/storyboard-review-times.js.map +1 -0
  174. package/dist/capabilities/storyboards.d.ts +2 -18
  175. package/dist/capabilities/storyboards.d.ts.map +1 -1
  176. package/dist/capabilities/storyboards.js +315 -94
  177. package/dist/capabilities/storyboards.js.map +1 -1
  178. package/dist/capabilities/storyboards.specs.d.ts +3 -0
  179. package/dist/capabilities/storyboards.specs.d.ts.map +1 -1
  180. package/dist/capabilities/storyboards.specs.js +42 -3
  181. package/dist/capabilities/storyboards.specs.js.map +1 -1
  182. package/dist/capabilities/timeline-bridge.d.ts +359 -0
  183. package/dist/capabilities/timeline-bridge.d.ts.map +1 -0
  184. package/dist/capabilities/timeline-bridge.js +1016 -0
  185. package/dist/capabilities/timeline-bridge.js.map +1 -0
  186. package/dist/capabilities/timeline-clip-frames.d.ts +17 -0
  187. package/dist/capabilities/timeline-clip-frames.d.ts.map +1 -0
  188. package/dist/capabilities/timeline-clip-frames.js +84 -0
  189. package/dist/capabilities/timeline-clip-frames.js.map +1 -0
  190. package/dist/capabilities/timeline-media-edit.d.ts +8 -0
  191. package/dist/capabilities/timeline-media-edit.d.ts.map +1 -0
  192. package/dist/capabilities/timeline-media-edit.js +94 -0
  193. package/dist/capabilities/timeline-media-edit.js.map +1 -0
  194. package/dist/capabilities/timeline-native-media.d.ts.map +1 -1
  195. package/dist/capabilities/timeline-native-media.js +40 -0
  196. package/dist/capabilities/timeline-native-media.js.map +1 -1
  197. package/dist/capabilities/timelines.d.ts +64 -4
  198. package/dist/capabilities/timelines.d.ts.map +1 -1
  199. package/dist/capabilities/timelines.js +566 -67
  200. package/dist/capabilities/timelines.js.map +1 -1
  201. package/dist/capabilities/timelines.specs.d.ts +8 -0
  202. package/dist/capabilities/timelines.specs.d.ts.map +1 -1
  203. package/dist/capabilities/timelines.specs.js +173 -8
  204. package/dist/capabilities/timelines.specs.js.map +1 -1
  205. package/dist/capabilities/types.d.ts +3 -1
  206. package/dist/capabilities/types.d.ts.map +1 -1
  207. package/dist/capabilities/types.js.map +1 -1
  208. package/dist/capabilities/ui.d.ts.map +1 -1
  209. package/dist/capabilities/ui.js +24 -2
  210. package/dist/capabilities/ui.js.map +1 -1
  211. package/dist/capabilities/workflows.d.ts.map +1 -1
  212. package/dist/capabilities/workflows.js +53 -26
  213. package/dist/capabilities/workflows.js.map +1 -1
  214. package/dist/capabilities/workflows.specs.d.ts.map +1 -1
  215. package/dist/capabilities/workflows.specs.js +7 -1
  216. package/dist/capabilities/workflows.specs.js.map +1 -1
  217. package/dist/codeact/action-diagnostics.d.ts.map +1 -1
  218. package/dist/codeact/action-diagnostics.js +51 -1
  219. package/dist/codeact/action-diagnostics.js.map +1 -1
  220. package/dist/codeact/codeact-executor.d.ts.map +1 -1
  221. package/dist/codeact/codeact-executor.js +16 -8
  222. package/dist/codeact/codeact-executor.js.map +1 -1
  223. package/dist/codeact/compact-ids.d.ts.map +1 -1
  224. package/dist/codeact/compact-ids.js +5 -1
  225. package/dist/codeact/compact-ids.js.map +1 -1
  226. package/dist/codeact/graph-model.d.ts +1 -1
  227. package/dist/codeact/graph-model.d.ts.map +1 -1
  228. package/dist/codeact/graph-model.js +2 -3
  229. package/dist/codeact/graph-model.js.map +1 -1
  230. package/dist/codeact/nodetool-api.d.ts +1 -1
  231. package/dist/codeact/nodetool-api.d.ts.map +1 -1
  232. package/dist/codeact/nodetool-api.js +202 -284
  233. package/dist/codeact/nodetool-api.js.map +1 -1
  234. package/dist/codeact/tool-api.d.ts +6 -3
  235. package/dist/codeact/tool-api.d.ts.map +1 -1
  236. package/dist/codeact/tool-api.js +22 -15
  237. package/dist/codeact/tool-api.js.map +1 -1
  238. package/dist/evals/codeact-api-cases.d.ts.map +1 -1
  239. package/dist/evals/codeact-api-cases.js +2 -0
  240. package/dist/evals/codeact-api-cases.js.map +1 -1
  241. package/dist/evals/codeact-api-runs.d.ts +3 -0
  242. package/dist/evals/codeact-api-runs.d.ts.map +1 -0
  243. package/dist/evals/codeact-api-runs.js +33 -0
  244. package/dist/evals/codeact-api-runs.js.map +1 -0
  245. package/dist/evals/surfaces/sketch.d.ts +2 -0
  246. package/dist/evals/surfaces/sketch.d.ts.map +1 -1
  247. package/dist/evals/surfaces/sketch.js +11 -3
  248. package/dist/evals/surfaces/sketch.js.map +1 -1
  249. package/dist/evals/surfaces/timeline.d.ts +4 -357
  250. package/dist/evals/surfaces/timeline.d.ts.map +1 -1
  251. package/dist/evals/surfaces/timeline.js +9 -2621
  252. package/dist/evals/surfaces/timeline.js.map +1 -1
  253. package/dist/evals/tool-loop-bridge.d.ts +4 -0
  254. package/dist/evals/tool-loop-bridge.d.ts.map +1 -1
  255. package/dist/evals/tool-loop-bridge.js.map +1 -1
  256. package/dist/evals/tool-loop-eval.d.ts +2 -0
  257. package/dist/evals/tool-loop-eval.d.ts.map +1 -1
  258. package/dist/evals/tool-loop-eval.js +6 -1
  259. package/dist/evals/tool-loop-eval.js.map +1 -1
  260. package/dist/evals/tool-loop-permission.d.ts +1 -15
  261. package/dist/evals/tool-loop-permission.d.ts.map +1 -1
  262. package/dist/evals/tool-loop-permission.js +23 -41
  263. package/dist/evals/tool-loop-permission.js.map +1 -1
  264. package/dist/game-authoring.d.ts +4737 -0
  265. package/dist/game-authoring.d.ts.map +1 -0
  266. package/dist/game-authoring.js +146 -0
  267. package/dist/game-authoring.js.map +1 -0
  268. package/dist/game-code-bake.d.ts +26 -0
  269. package/dist/game-code-bake.d.ts.map +1 -0
  270. package/dist/game-code-bake.js +98 -0
  271. package/dist/game-code-bake.js.map +1 -0
  272. package/dist/game-examples.d.ts +872 -16
  273. package/dist/game-examples.d.ts.map +1 -1
  274. package/dist/game-examples.js +5 -4
  275. package/dist/game-examples.js.map +1 -1
  276. package/dist/index.d.ts +15 -4
  277. package/dist/index.d.ts.map +1 -1
  278. package/dist/index.js +13 -3
  279. package/dist/index.js.map +1 -1
  280. package/dist/js-sandbox-worker/engine.d.ts +4 -0
  281. package/dist/js-sandbox-worker/engine.d.ts.map +1 -0
  282. package/dist/js-sandbox-worker/engine.js +45 -0
  283. package/dist/js-sandbox-worker/engine.js.map +1 -0
  284. package/dist/js-sandbox-worker/host.js +1 -1
  285. package/dist/js-sandbox-worker/host.js.map +1 -1
  286. package/dist/js-sandbox-worker/interpreter.d.ts +1 -1
  287. package/dist/js-sandbox-worker/interpreter.d.ts.map +1 -1
  288. package/dist/js-sandbox-worker/interpreter.js +94 -2
  289. package/dist/js-sandbox-worker/interpreter.js.map +1 -1
  290. package/dist/js-sandbox-worker/worker-entry.d.ts.map +1 -1
  291. package/dist/js-sandbox-worker/worker-entry.js +3 -2
  292. package/dist/js-sandbox-worker/worker-entry.js.map +1 -1
  293. package/dist/js-sandbox.d.ts +2 -0
  294. package/dist/js-sandbox.d.ts.map +1 -1
  295. package/dist/js-sandbox.js +56 -11
  296. package/dist/js-sandbox.js.map +1 -1
  297. package/dist/js-script-app-runner.d.ts +2 -0
  298. package/dist/js-script-app-runner.d.ts.map +1 -1
  299. package/dist/js-script-app-runner.js +8 -3
  300. package/dist/js-script-app-runner.js.map +1 -1
  301. package/dist/js-script-sandbox.d.ts +12 -18
  302. package/dist/js-script-sandbox.d.ts.map +1 -1
  303. package/dist/js-script-sandbox.js +3 -49
  304. package/dist/js-script-sandbox.js.map +1 -1
  305. package/dist/prompts/product-knowledge.d.ts +1 -1
  306. package/dist/prompts/product-knowledge.d.ts.map +1 -1
  307. package/dist/prompts/product-knowledge.js +82 -41
  308. package/dist/prompts/product-knowledge.js.map +1 -1
  309. package/dist/sandbox-pack-resolution.d.ts +21 -0
  310. package/dist/sandbox-pack-resolution.d.ts.map +1 -0
  311. package/dist/sandbox-pack-resolution.js +42 -0
  312. package/dist/sandbox-pack-resolution.js.map +1 -0
  313. package/dist/sandbox-toolbelt.d.ts +3 -1
  314. package/dist/sandbox-toolbelt.d.ts.map +1 -1
  315. package/dist/sandbox-toolbelt.js +8 -2
  316. package/dist/sandbox-toolbelt.js.map +1 -1
  317. package/dist/skill-prompt.d.ts +11 -1
  318. package/dist/skill-prompt.d.ts.map +1 -1
  319. package/dist/skill-prompt.js +17 -6
  320. package/dist/skill-prompt.js.map +1 -1
  321. package/dist/system-skills.d.ts +7 -1
  322. package/dist/system-skills.d.ts.map +1 -1
  323. package/dist/system-skills.js +2 -2
  324. package/dist/system-skills.js.map +1 -1
  325. package/dist/timeline-capture.d.ts +21 -0
  326. package/dist/timeline-capture.d.ts.map +1 -0
  327. package/dist/timeline-capture.js +564 -0
  328. package/dist/timeline-capture.js.map +1 -0
  329. package/dist/timeline-code-bake.d.ts +75 -0
  330. package/dist/timeline-code-bake.d.ts.map +1 -0
  331. package/dist/timeline-code-bake.js +327 -0
  332. package/dist/timeline-code-bake.js.map +1 -0
  333. package/dist/timeline-preview/frames.d.ts +26 -0
  334. package/dist/timeline-preview/frames.d.ts.map +1 -1
  335. package/dist/timeline-preview/frames.js +155 -70
  336. package/dist/timeline-preview/frames.js.map +1 -1
  337. package/dist/tools/base-tool.d.ts +1 -0
  338. package/dist/tools/base-tool.d.ts.map +1 -1
  339. package/dist/tools/base-tool.js +1 -1
  340. package/dist/tools/base-tool.js.map +1 -1
  341. package/dist/tools/builtin-tools.d.ts.map +1 -1
  342. package/dist/tools/builtin-tools.js +13 -0
  343. package/dist/tools/builtin-tools.js.map +1 -1
  344. package/dist/tools/external-capability-tools.d.ts +1 -1
  345. package/dist/tools/external-capability-tools.js +1 -1
  346. package/dist/tools/mcp-tool-support.d.ts +10 -9
  347. package/dist/tools/mcp-tool-support.d.ts.map +1 -1
  348. package/dist/tools/mcp-tool-support.js +14 -13
  349. package/dist/tools/mcp-tool-support.js.map +1 -1
  350. package/dist/tools/mcp-tools.d.ts +6 -4
  351. package/dist/tools/mcp-tools.d.ts.map +1 -1
  352. package/dist/tools/mcp-tools.js +65 -62
  353. package/dist/tools/mcp-tools.js.map +1 -1
  354. package/dist/tools/tool-permissions.d.ts +1 -1
  355. package/dist/tools/tool-permissions.js +1 -1
  356. package/package.json +24 -22
  357. package/dist/capabilities/gate-tools.d.ts +0 -18
  358. package/dist/capabilities/gate-tools.d.ts.map +0 -1
  359. package/dist/capabilities/gate-tools.js +0 -66
  360. package/dist/capabilities/gate-tools.js.map +0 -1
  361. package/dist/tsconfig.tests.tmp.tsbuildinfo +0 -1
@@ -1,5 +1,5 @@
1
- import { getExampleTimelineBundle, listExampleTimelines } from "@nodetool-ai/timeline/examples/node";
2
- import { getExampleTimelineSpec, listExampleTimelinesSpec } from "./example-timelines.specs.js";
1
+ import { getExampleTimelineBundle, getExampleTimelineSource, listExampleTimelines } from "@nodetool-ai/timeline/examples/node";
2
+ import { getExampleTimelineSpec, getExampleTimelineSourceSpec, listExampleTimelinesSpec } from "./example-timelines.specs.js";
3
3
  const MAX_CLIP_CHARS = 12000;
4
4
  function stats(document) {
5
5
  const clips = document.clips;
@@ -93,6 +93,34 @@ function sceneClips(document, scene, durationMs) {
93
93
  clip.startMs < end &&
94
94
  clip.startMs + clip.durationMs > start));
95
95
  }
96
+ /**
97
+ * One entry per distinct group. Siblings with the same name and parent
98
+ * (a repeater's items, such as one card per email) share the first
99
+ * sibling's entry, and `same_name_ids` lists the others, so a wide
100
+ * repeater does not fill the tool result.
101
+ */
102
+ function sceneCatalog(groups) {
103
+ const entries = [];
104
+ const firstByKey = new Map();
105
+ for (const group of groups) {
106
+ const key = `${group.parentId ?? ""}\u0000${group.name ?? group.id}`;
107
+ const first = firstByKey.get(key);
108
+ if (first && group.name) {
109
+ (first.same_name_ids ??= []).push(group.id);
110
+ continue;
111
+ }
112
+ const entry = {
113
+ id: group.id,
114
+ name: group.name,
115
+ parent_id: group.parentId,
116
+ start_ms: group.startMs,
117
+ end_ms: group.startMs + group.durationMs
118
+ };
119
+ firstByKey.set(key, entry);
120
+ entries.push(entry);
121
+ }
122
+ return entries;
123
+ }
96
124
  const getExample = {
97
125
  spec: getExampleTimelineSpec,
98
126
  impl: async (_run, params) => {
@@ -158,13 +186,7 @@ const getExample = {
158
186
  const trackIds = new Set(clips.map((clip) => clip.trackId));
159
187
  return {
160
188
  ...summary(slug, bundle),
161
- scenes: groups.map((group) => ({
162
- id: group.id,
163
- name: group.name,
164
- parent_id: group.parentId,
165
- start_ms: group.startMs,
166
- end_ms: group.startMs + group.durationMs
167
- })),
189
+ scenes: sceneCatalog(groups),
168
190
  excerpt: {
169
191
  scene_id: scene?.id ?? null,
170
192
  start_ms: scene?.startMs ?? 0,
@@ -184,8 +206,28 @@ const getExample = {
184
206
  };
185
207
  }
186
208
  };
209
+ const getExampleSource = {
210
+ spec: getExampleTimelineSourceSpec,
211
+ impl: async (_run, params) => {
212
+ const slug = params["slug"];
213
+ if (typeof slug !== "string" || !slug) {
214
+ return { error: "slug is required. Use list_example_timelines." };
215
+ }
216
+ const source = getExampleTimelineSource({}, slug);
217
+ if (!source) {
218
+ return {
219
+ error: `No shipped source for "${slug}". Use an exact slug from list_example_timelines.`
220
+ };
221
+ }
222
+ return {
223
+ slug: source.slug,
224
+ source: source.source,
225
+ imports: source.imports
226
+ };
227
+ }
228
+ };
187
229
  export const module = {
188
230
  module: "example-timelines",
189
- exports: [listExamples, getExample]
231
+ exports: [listExamples, getExample, getExampleSource]
190
232
  };
191
233
  //# sourceMappingURL=example-timelines.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"example-timelines.js","sourceRoot":"","sources":["../../src/capabilities/example-timelines.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"example-timelines.js","sourceRoot":"","sources":["../../src/capabilities/example-timelines.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import type { CapabilitySpec } from "./types.js";
2
2
  export declare const listExampleTimelinesSpec: CapabilitySpec;
3
3
  export declare const getExampleTimelineSpec: CapabilitySpec;
4
+ export declare const getExampleTimelineSourceSpec: CapabilitySpec;
4
5
  export declare const exampleTimelinesSpecs: readonly CapabilitySpec[];
5
6
  //# sourceMappingURL=example-timelines.specs.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"example-timelines.specs.d.ts","sourceRoot":"","sources":["../../src/capabilities/example-timelines.specs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,eAAO,MAAM,wBAAwB,EAAE,cAgBtC,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,cAoCpC,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,SAAS,cAAc,EAG1D,CAAC"}
1
+ {"version":3,"file":"example-timelines.specs.d.ts","sourceRoot":"","sources":["../../src/capabilities/example-timelines.specs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,eAAO,MAAM,wBAAwB,EAAE,cAgBtC,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,cAoCpC,CAAC;AAEF,eAAO,MAAM,4BAA4B,EAAE,cAmB1C,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,SAAS,cAAc,EAI1D,CAAC"}
@@ -16,7 +16,7 @@ export const listExampleTimelinesSpec = {
16
16
  };
17
17
  export const getExampleTimelineSpec = {
18
18
  name: "get_example_timeline",
19
- description: "Study a shipped example by exact slug: metadata, structural stats, scene group catalog and a bounded scene excerpt with authored clip styles, keyframes and effects. Defaults to the first scene. The excerpt includes descendants and overlapping global layers. Page clips with next_clip_offset until truncated is false. Times remain in the original timeline clock. These references are read-only and have no saved timeline id.",
19
+ description: "Study a shipped example by exact slug: metadata, structural stats, scene group catalog (siblings with the same name share one entry, with the other ids in same_name_ids) and a bounded scene excerpt with authored clip styles, keyframes and effects. Defaults to the first scene. The excerpt includes descendants and overlapping global layers. Page clips with next_clip_offset until truncated is false. Times remain in the original timeline clock. These references are read-only and have no saved timeline id.",
20
20
  inputSchema: {
21
21
  type: "object",
22
22
  properties: {
@@ -26,7 +26,7 @@ export const getExampleTimelineSpec = {
26
26
  },
27
27
  scene_id: {
28
28
  type: "string",
29
- description: "Exact group clip id from this example's scenes catalog. Omit for its first scene."
29
+ description: "Exact group clip id from this example's scenes catalog, including an id from same_name_ids. Omit for its first scene."
30
30
  },
31
31
  clip_offset: {
32
32
  type: "integer",
@@ -46,8 +46,26 @@ export const getExampleTimelineSpec = {
46
46
  category: "read",
47
47
  userMessage: (params) => `Reading example timeline ${String(params["slug"])}`
48
48
  };
49
+ export const getExampleTimelineSourceSpec = {
50
+ name: "get_example_timeline_source",
51
+ description: "Read the builder script that made a shipped example: its full JavaScript source, as authored, plus the module specifiers it imports. Use this to see how a scene, an effect chain or a repeater was actually built — get_example_timeline only shows the compiled document. Exact slug from list_example_timelines.",
52
+ inputSchema: {
53
+ type: "object",
54
+ properties: {
55
+ slug: {
56
+ type: "string",
57
+ description: "Exact slug from list_example_timelines, such as kite or prism."
58
+ }
59
+ },
60
+ required: ["slug"],
61
+ additionalProperties: false
62
+ },
63
+ category: "read",
64
+ userMessage: (params) => `Reading example timeline source ${String(params["slug"])}`
65
+ };
49
66
  export const exampleTimelinesSpecs = [
50
67
  listExampleTimelinesSpec,
51
- getExampleTimelineSpec
68
+ getExampleTimelineSpec,
69
+ getExampleTimelineSourceSpec
52
70
  ];
53
71
  //# sourceMappingURL=example-timelines.specs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"example-timelines.specs.js","sourceRoot":"","sources":["../../src/capabilities/example-timelines.specs.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,wBAAwB,GAAmB;IACtD,IAAI,EAAE,wBAAwB;IAC9B,WAAW,EACT,wOAAwO;IAC1O,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,gDAAgD;aAC9D;SACF;QACD,oBAAoB,EAAE,KAAK;KAC5B;IACD,QAAQ,EAAE,MAAM;IAChB,WAAW,EAAE,GAAG,EAAE,CAAC,2BAA2B;CAC/C,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAmB;IACpD,IAAI,EAAE,sBAAsB;IAC5B,WAAW,EACT,yaAAya;IAC3a,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,gEAAgE;aACnE;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,mFAAmF;aACtF;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,CAAC;gBACV,WAAW,EACT,oEAAoE;aACvE;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,CAAC;gBACV,OAAO,EAAE,EAAE;gBACX,WAAW,EACT,iJAAiJ;aACpJ;SACF;QACD,QAAQ,EAAE,CAAC,MAAM,CAAC;QAClB,oBAAoB,EAAE,KAAK;KAC5B;IACD,QAAQ,EAAE,MAAM;IAChB,WAAW,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,4BAA4B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE;CAC9E,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAA8B;IAC9D,wBAAwB;IACxB,sBAAsB;CACvB,CAAC"}
1
+ {"version":3,"file":"example-timelines.specs.js","sourceRoot":"","sources":["../../src/capabilities/example-timelines.specs.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,wBAAwB,GAAmB;IACtD,IAAI,EAAE,wBAAwB;IAC9B,WAAW,EACT,wOAAwO;IAC1O,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,gDAAgD;aAC9D;SACF;QACD,oBAAoB,EAAE,KAAK;KAC5B;IACD,QAAQ,EAAE,MAAM;IAChB,WAAW,EAAE,GAAG,EAAE,CAAC,2BAA2B;CAC/C,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAmB;IACpD,IAAI,EAAE,sBAAsB;IAC5B,WAAW,EACT,4fAA4f;IAC9f,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,gEAAgE;aACnE;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,uHAAuH;aAC1H;YACD,WAAW,EAAE;gBACX,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,CAAC;gBACV,WAAW,EACT,oEAAoE;aACvE;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,CAAC;gBACV,OAAO,EAAE,EAAE;gBACX,WAAW,EACT,iJAAiJ;aACpJ;SACF;QACD,QAAQ,EAAE,CAAC,MAAM,CAAC;QAClB,oBAAoB,EAAE,KAAK;KAC5B;IACD,QAAQ,EAAE,MAAM;IAChB,WAAW,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,4BAA4B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE;CAC9E,CAAC;AAEF,MAAM,CAAC,MAAM,4BAA4B,GAAmB;IAC1D,IAAI,EAAE,6BAA6B;IACnC,WAAW,EACT,qTAAqT;IACvT,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,gEAAgE;aACnE;SACF;QACD,QAAQ,EAAE,CAAC,MAAM,CAAC;QAClB,oBAAoB,EAAE,KAAK;KAC5B;IACD,QAAQ,EAAE,MAAM;IAChB,WAAW,EAAE,CAAC,MAAM,EAAE,EAAE,CACtB,mCAAmC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE;CAC9D,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAA8B;IAC9D,wBAAwB;IACxB,sBAAsB;IACtB,4BAA4B;CAC7B,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { CapabilityExport } from "./types.js";
2
+ export declare const finishStoryboard: CapabilityExport;
3
+ export declare const layoutStoryboard: CapabilityExport;
4
+ export declare const previewStoryboardDesign: CapabilityExport;
5
+ //# sourceMappingURL=finish-storyboard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"finish-storyboard.d.ts","sourceRoot":"","sources":["../../src/capabilities/finish-storyboard.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,gBAAgB,EAAiB,MAAM,YAAY,CAAC;AAqMlE,eAAO,MAAM,gBAAgB,EAAE,gBAG9B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,gBAG9B,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,gBAGrC,CAAC"}
@@ -0,0 +1,278 @@
1
+ import { createHash } from "node:crypto";
2
+ import { measureStoryboardAssetSizes, measureStoryboardSources } from "./storyboard-measured-sources.js";
3
+ import { isRecord } from "@nodetool-ai/protocol";
4
+ import { budgetFromContext } from "@nodetool-ai/runtime";
5
+ import { finishStoryboardSpec, layoutStoryboardSpec, previewStoryboardDesignSpec } from "./storyboards.specs.js";
6
+ const isModelRef = (value) => isRecord(value) && typeof value["provider"] === "string" && !!value["provider"].trim() && typeof value["id"] === "string" && !!value["id"].trim();
7
+ /**
8
+ * "preview" returns the deterministic design in memory. "finish" saves the cut,
9
+ * agentic or not. "layout" saves an agent-composed static layout, which a
10
+ * later finish keeps while it authors the motion.
11
+ */
12
+ async function materializeAuthorizedStoryboard(run, params, mode) {
13
+ const previewOnly = mode === "preview";
14
+ const strategy = mode === "layout" ? "agentic" : params["strategy"] ?? "deterministic";
15
+ if (strategy !== "deterministic" && strategy !== "agentic") {
16
+ return { error: "Unsupported finishing strategy." };
17
+ }
18
+ const explicitModel = params["model"];
19
+ if (explicitModel !== undefined && !isModelRef(explicitModel)) {
20
+ return { error: "Finishing model must have a non-empty provider and id." };
21
+ }
22
+ const imageModel = params["imageModel"];
23
+ if (imageModel !== undefined && !isModelRef(imageModel)) {
24
+ return { error: "Image model must have a non-empty provider and id." };
25
+ }
26
+ if (strategy === "agentic" && !explicitModel && !run.subAgent) {
27
+ return { error: "Agentic finishing requires an explicit model reference or the session's provider and model." };
28
+ }
29
+ const signal = run.signal ?? run.context.signal;
30
+ signal?.throwIfAborted();
31
+ const userId = run.context.userId;
32
+ if (!userId)
33
+ return { error: "No user is bound to this session." };
34
+ const { findFinishResourceIds, Storyboard, TimelineSequence, Asset, entityFromAsset, commitFinishedStoryboard } = await import("@nodetool-ai/models");
35
+ const { materializeStoryboard, stableSerialize, activeStoryboardGraphics, shotSources, resolveShotSource, validateStoryboardSemantics, frameSizeForAspect, makeSequence } = await import("@nodetool-ai/timeline");
36
+ const { resolveEffectiveProductionRequirement } = await import("@nodetool-ai/protocol");
37
+ const boardId = String(params["storyboardId"] ?? "");
38
+ const boardRows = await findFinishResourceIds("storyboard", boardId, userId, run.projectId);
39
+ if (boardRows.length !== 1)
40
+ return { error: boardRows.length ? "Storyboard prefix is ambiguous." : "Storyboard was not found." };
41
+ const board = await Storyboard.findById(boardRows[0]);
42
+ if (!board)
43
+ return { error: "Storyboard was not found." };
44
+ if (run.projectId && run.projectId !== board.project_id)
45
+ return { error: "Storyboard was not found in this project." };
46
+ if (board.revision !== params["expectedStoryboardRevision"])
47
+ return { error: "Storyboard revision conflict." };
48
+ const doc = board.toDocument();
49
+ let shots = structuredClone(doc.shots).map((shot) => ({ ...shot, production: resolveEffectiveProductionRequirement(undefined, shot.production) }));
50
+ const assets = new Set();
51
+ const assetContentTypes = new Map();
52
+ const entities = new Set();
53
+ const resolveAssetId = async (id) => {
54
+ const matches = await findFinishResourceIds("asset", id, userId);
55
+ if (matches.length !== 1)
56
+ throw new Error(matches.length ? `Asset prefix ${id} is ambiguous.` : `Asset ${id} is unavailable.`);
57
+ return matches[0];
58
+ };
59
+ const sources = shotSources(shots, { requireRendered: false });
60
+ try {
61
+ for (const shot of shots) {
62
+ for (const protection of shot.production?.protected_inputs ?? []) {
63
+ if (protection.asset_id)
64
+ protection.asset_id = await resolveAssetId(protection.asset_id);
65
+ if (protection.entity_id)
66
+ protection.entity_id = await resolveAssetId(protection.entity_id);
67
+ }
68
+ for (const element of activeStoryboardGraphics(shot)) {
69
+ if (element.asset_id)
70
+ element.asset_id = await resolveAssetId(element.asset_id);
71
+ if (element.entity_id)
72
+ element.entity_id = await resolveAssetId(element.entity_id);
73
+ }
74
+ const source = resolveShotSource(shot, undefined, sources.get(shot.id)?.assetId);
75
+ if (source && source.kind !== "graphics") {
76
+ const canonical = await resolveAssetId(source.assetId);
77
+ if (source.kind === "still" && shot.keyframe)
78
+ shot.keyframe.asset_id = canonical;
79
+ if (source.kind === "video" && shot.clip)
80
+ shot.clip.asset_id = canonical;
81
+ source.assetId = canonical;
82
+ }
83
+ const selectedAssetId = source && source.kind !== "graphics" ? source.assetId : undefined;
84
+ const protectionsById = new Map((shot.production?.protected_inputs ?? []).map((input) => [input.id, input]));
85
+ const imageIds = new Set((shot.production?.protected_inputs ?? []).filter((input) => ["product", "logo"].includes(input.kind)).map((input) => input.asset_id));
86
+ if (source?.kind === "still") {
87
+ imageIds.add(source.assetId);
88
+ }
89
+ for (const element of activeStoryboardGraphics(shot)) {
90
+ if (element.kind === "asset") {
91
+ imageIds.add(element.asset_id);
92
+ if (element.protected_input_id) {
93
+ imageIds.add(protectionsById.get(element.protected_input_id)?.asset_id);
94
+ }
95
+ }
96
+ }
97
+ const refs = [selectedAssetId, ...(shot.production?.protected_inputs ?? []).map((input) => input.asset_id), ...(activeStoryboardGraphics(shot)).map((element) => element.asset_id)];
98
+ for (const id of refs) {
99
+ if (!id) {
100
+ continue;
101
+ }
102
+ let contentType = assetContentTypes.get(id);
103
+ if (!contentType) {
104
+ const asset = await Asset.get(id);
105
+ if (asset?.user_id !== userId) {
106
+ return { error: `Asset ${id} is unavailable.` };
107
+ }
108
+ contentType = asset.content_type;
109
+ assets.add(id);
110
+ assetContentTypes.set(id, contentType);
111
+ }
112
+ if (imageIds.has(id) && !contentType.startsWith("image/")) {
113
+ return { error: `Asset ${id} must be an image for this editable graphics/still layer.` };
114
+ }
115
+ if (source?.kind === "video" && selectedAssetId === id && !contentType.startsWith("video/")) {
116
+ return { error: `Asset ${id} must be a video for this selected shot source.` };
117
+ }
118
+ }
119
+ for (const element of activeStoryboardGraphics(shot)) {
120
+ const protection = element.protected_input_id ? shot.production?.protected_inputs?.find((input) => input.id === element.protected_input_id) : undefined;
121
+ const entityId = element.entity_id ?? protection?.entity_id;
122
+ if (!entityId)
123
+ continue;
124
+ const row = await Asset.get(entityId);
125
+ const entity = row?.user_id === userId ? entityFromAsset(row) : null;
126
+ if (!entity)
127
+ return { error: `Entity ${entityId} is unavailable or is not an entity.` };
128
+ const rawReferenceId = entity.reference_images?.[0]?.asset_id;
129
+ const referenceId = rawReferenceId ? await resolveAssetId(rawReferenceId) : undefined;
130
+ if (!referenceId)
131
+ return { error: `Entity ${entityId} has no reference image.` };
132
+ const reference = await Asset.get(referenceId);
133
+ if (reference?.user_id !== userId || !reference.content_type.startsWith("image/"))
134
+ return { error: `Entity reference image ${referenceId} is unavailable.` };
135
+ entities.add(entityId);
136
+ assets.add(referenceId);
137
+ if (element.kind === "asset" && !element.asset_id)
138
+ element.asset_id = referenceId;
139
+ if (protection && !protection.asset_id && ["product", "logo", "source_asset"].includes(protection.kind))
140
+ protection.asset_id = referenceId;
141
+ }
142
+ }
143
+ }
144
+ catch (error) {
145
+ return { error: error instanceof Error ? error.message : String(error) };
146
+ }
147
+ const semanticErrors = validateStoryboardSemantics(shots, doc.screenplay, { assetIds: assets, entityIds: entities });
148
+ if (semanticErrors.length)
149
+ return { error: "Storyboard cannot be finished.", validation: semanticErrors };
150
+ const requestedTimelineId = previewOnly ? undefined : params["timelineId"] ?? board.timeline_id;
151
+ let timeline;
152
+ if (requestedTimelineId) {
153
+ const id = String(requestedTimelineId);
154
+ const rows = await findFinishResourceIds("timeline", id, userId, board.project_id);
155
+ if (rows.length !== 1)
156
+ return { error: rows.length ? "Timeline prefix is ambiguous." : "Timeline was not found in this project." };
157
+ timeline = await TimelineSequence.findById(rows[0]) ?? undefined;
158
+ if (!timeline)
159
+ return { error: "Timeline was not found." };
160
+ if (timeline.revision !== params["expectedTimelineRevision"])
161
+ return { error: "Timeline revision conflict. Supply expectedTimelineRevision for an existing result." };
162
+ }
163
+ else if (params["expectedTimelineRevision"] !== undefined)
164
+ return { error: "expectedTimelineRevision requires an existing timeline." };
165
+ let script;
166
+ let linkedScriptFingerprint = "";
167
+ if (doc.screenplay?.script_id) {
168
+ const { Script } = await import("@nodetool-ai/models");
169
+ const row = await Script.findById(doc.screenplay.script_id);
170
+ if (!row || row.user_id !== userId) {
171
+ return { error: "Linked script is unavailable." };
172
+ }
173
+ const scriptDoc = row.toDocument();
174
+ script = { scriptId: row.id, cast: scriptDoc.cast, sections: scriptDoc.sections };
175
+ linkedScriptFingerprint = createHash("sha256").update(stableSerialize(script)).digest("hex");
176
+ if (!previewOnly && params["expectedLinkedScriptFingerprint"] !== linkedScriptFingerprint) {
177
+ return { error: "Linked script changed or has not been reviewed. Refresh the design preview before finishing." };
178
+ }
179
+ for (const section of script.sections) {
180
+ for (const line of section.lines) {
181
+ const take = line.takes.find((value) => value.id === line.currentTakeId);
182
+ if (!take) {
183
+ continue;
184
+ }
185
+ const asset = await Asset.get(take.assetId);
186
+ if (!asset || asset.user_id !== userId || !asset.content_type.startsWith("audio/")) {
187
+ return { error: "Linked script audio is unavailable." };
188
+ }
189
+ }
190
+ }
191
+ }
192
+ shots = await measureStoryboardSources(shots, run.context, signal);
193
+ const assetSizes = await measureStoryboardAssetSizes(shots, run.context, signal);
194
+ const size = frameSizeForAspect(doc.aspectRatio ?? "9:16");
195
+ const result = materializeStoryboard({ boardId: board.id, shots, script, assetSizes, width: timeline?.width ?? size.width, height: timeline?.height ?? size.height, motionDesign: doc.screenplay?.motion_design, current: timeline ? JSON.parse(timeline.document) : undefined });
196
+ if (result.validation.length)
197
+ return { error: `Produced Timeline violates production requirements: ${result.validation.map((issue) => issue.message).join(" ")}`, validation: result.validation };
198
+ const { validateTimelineSequence } = await import("@nodetool-ai/execution/timeline-debug");
199
+ const structural = validateTimelineSequence(result.document, { fps: timeline?.fps ?? 30, width: timeline?.width ?? size.width, height: timeline?.height ?? size.height });
200
+ if (!structural.ok)
201
+ return { error: "Produced Timeline is structurally invalid.", validation: structural };
202
+ if (previewOnly) {
203
+ return { timeline: { type: "timeline", data: makeSequence({ ...result.document, id: board.id, projectId: board.project_id, name: `Design preview: ${board.name}`, width: size.width, height: size.height, fps: 30, durationMs: result.durationMs }) }, storyboardRevision: board.revision, linkedScriptFingerprint, validation: [] };
204
+ }
205
+ try {
206
+ let document = result.document;
207
+ let reviews;
208
+ let costUsd;
209
+ let decorations = [];
210
+ let findings;
211
+ if (strategy === "agentic") {
212
+ const { finishStoryboardAgentically } = await import("./agentic-storyboard-finish.js");
213
+ const runtime = isModelRef(explicitModel)
214
+ ? { provider: await run.context.getProvider(explicitModel.provider), model: explicitModel.id, budget: run.budget ?? budgetFromContext(run.context) }
215
+ : run.subAgent;
216
+ if (!runtime) {
217
+ return { error: "No finishing model is bound to this run." };
218
+ }
219
+ const candidate = await finishStoryboardAgentically(run, { boardId: board.id, shots, script, assetSizes, width: timeline?.width ?? size.width, height: timeline?.height ?? size.height, motionDesign: doc.screenplay?.motion_design, current: timeline?.toDocument() }, doc, timeline ?? new TimelineSequence({ user_id: userId, project_id: board.project_id, name: board.name, width: size.width, height: size.height, duration_ms: result.durationMs, document: JSON.stringify(result.document) }), result.document, runtime, { phase: mode === "layout" ? "layout" : "finish", ...(imageModel !== undefined && { imageModel }) });
220
+ document = candidate.document;
221
+ reviews = candidate.reviews;
222
+ costUsd = candidate.costUsd;
223
+ decorations = candidate.decorations;
224
+ if (candidate.needsReview) {
225
+ findings = candidate.findings ?? [];
226
+ }
227
+ }
228
+ signal?.throwIfAborted();
229
+ run.context.signal?.throwIfAborted();
230
+ if (script) {
231
+ const { Script } = await import("@nodetool-ai/models");
232
+ const latest = await Script.findById(script.scriptId);
233
+ const latestDoc = latest?.toDocument();
234
+ const latestFingerprint = latestDoc ? createHash("sha256").update(stableSerialize({ scriptId: script.scriptId, cast: latestDoc.cast, sections: latestDoc.sections })).digest("hex") : "";
235
+ if (latest?.user_id !== userId || latestFingerprint !== linkedScriptFingerprint) {
236
+ return { error: "Linked script changed during finishing. Refresh the design preview before finishing again." };
237
+ }
238
+ }
239
+ // Generated decoration is new source media, so the board names it too.
240
+ // The next finish materializes it like any other element.
241
+ let boardDocument;
242
+ if (decorations.length) {
243
+ const stored = JSON.parse(board.document);
244
+ const storedShots = isRecord(stored) && Array.isArray(stored["shots"]) ? stored["shots"] : [];
245
+ for (const decoration of decorations) {
246
+ const shot = storedShots.find((value) => isRecord(value) && value["id"] === decoration.shotId);
247
+ if (!isRecord(shot)) {
248
+ return { error: `Shot ${decoration.shotId} disappeared before the layout was saved.` };
249
+ }
250
+ const graphics = isRecord(shot["graphics"]) ? shot["graphics"] : (shot["graphics"] = { mode: "graphics_first", elements: [] });
251
+ const elements = Array.isArray(graphics["elements"]) ? graphics["elements"] : (graphics["elements"] = []);
252
+ elements.push(decoration.element);
253
+ }
254
+ boardDocument = JSON.stringify(stored);
255
+ }
256
+ const saved = await commitFinishedStoryboard({ board, timeline, document, width: timeline?.width ?? size.width, height: timeline?.height ?? size.height, durationMs: result.durationMs, ...(boardDocument !== undefined && { boardDocument }) });
257
+ if (mode === "layout") {
258
+ return { status: findings ? "needs_review" : "laid_out", ...(findings && { findings }), reviews: reviews ?? [], decorations: decorations.length, timelineId: saved.timeline.id, timelineRevision: saved.timeline.revision, storyboardRevision: saved.board.revision, linkedScriptFingerprint, timeline: { type: "timeline", id: saved.timeline.id }, validation: [], ...(costUsd !== undefined && { costUsd }) };
259
+ }
260
+ return { status: strategy === "agentic" ? "reviewed_finished" : "unreviewed_draft", reviewed: strategy === "agentic", reviews: reviews ?? [], timelineId: saved.timeline.id, timelineRevision: saved.timeline.revision, storyboardRevision: saved.board.revision, validation: [], ...(costUsd !== undefined && { costUsd }) };
261
+ }
262
+ catch (error) {
263
+ return { error: error instanceof Error ? error.message : String(error) };
264
+ }
265
+ }
266
+ export const finishStoryboard = {
267
+ spec: finishStoryboardSpec,
268
+ impl: (run, params) => materializeAuthorizedStoryboard(run, params, "finish")
269
+ };
270
+ export const layoutStoryboard = {
271
+ spec: layoutStoryboardSpec,
272
+ impl: (run, params) => materializeAuthorizedStoryboard(run, params, "layout")
273
+ };
274
+ export const previewStoryboardDesign = {
275
+ spec: previewStoryboardDesignSpec,
276
+ impl: (run, params) => materializeAuthorizedStoryboard(run, params, "preview")
277
+ };
278
+ //# sourceMappingURL=finish-storyboard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"finish-storyboard.js","sourceRoot":"","sources":["../../src/capabilities/finish-storyboard.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,7 @@ export const gameGenerationResult = z.object({
13
13
  export const gameModelResult = z.object({ ref: z.object({ provider: z.string().optional(), id: z.string().optional() }).optional() });
14
14
  export async function readGameAssetInput(run, gameWorkspace, input) {
15
15
  if (input.startsWith("asset://")) {
16
- const id = input.slice("asset://".length).replace(/\.(png|jpe?g|webp|wav|ogg|mp3|ttf|otf)$/i, "");
16
+ const id = input.slice("asset://".length).replace(/\.(png|jpe?g|webp|wav|ogg|mp3|ttf|otf|glb|gltf|json)$/i, "");
17
17
  const owner = run.context.userId;
18
18
  const asset = owner ? await Asset.find(owner, id) : null;
19
19
  return asset ? (await run.context.resolveAssetBytes(`asset://${asset.id}`)).bytes : null;
@@ -1 +1 @@
1
- {"version":3,"file":"game-asset-source.js","sourceRoot":"","sources":["../../src/capabilities/game-asset-source.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"game-asset-source.js","sourceRoot":"","sources":["../../src/capabilities/game-asset-source.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,20 @@
1
1
  import { Game } from "@nodetool-ai/models";
2
- import { type GameDocument } from "@nodetool-ai/protocol";
2
+ import { type AnyGameDocument as GameDocument, type GameDocument as LegacyGameDocument, type GameDocument3D } from "@nodetool-ai/protocol";
3
3
  import type { CapabilityModule } from "./types.js";
4
4
  /** Shared by explicit game creation and the guided asset workflow builder. */
5
- export declare function createNativeGame(user: string, projectId: string, name: string, source?: GameDocument): Promise<{
5
+ export declare function createNativeGame(user: string, projectId: string, name: string, source?: LegacyGameDocument): Promise<{
6
+ game: Game;
7
+ document: LegacyGameDocument;
8
+ } | {
9
+ error: string;
10
+ }>;
11
+ export declare function createNativeGame(user: string, projectId: string, name: string, source: GameDocument3D | undefined, dimension: "3d"): Promise<{
12
+ game: Game;
13
+ document: GameDocument3D;
14
+ } | {
15
+ error: string;
16
+ }>;
17
+ export declare function createNativeGame(user: string, projectId: string, name: string, source: GameDocument | undefined, dimension: "2d" | "3d"): Promise<{
6
18
  game: Game;
7
19
  document: GameDocument;
8
20
  } | {
@@ -1 +1 @@
1
- {"version":3,"file":"game.d.ts","sourceRoot":"","sources":["../../src/capabilities/game.ts"],"names":[],"mappings":"AAIA,OAAO,EAA+B,IAAI,EAAkC,MAAM,qBAAqB,CAAC;AACxG,OAAO,EAAmE,KAAK,YAAY,EAA6C,MAAM,uBAAuB,CAAC;AAKtK,OAAO,KAAK,EAAoB,gBAAgB,EAAiB,MAAM,YAAY,CAAC;AAuVpF,8EAA8E;AAC9E,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,QAAQ,EAAE,YAAY,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CA4BhL;AAirBD,eAAO,MAAM,MAAM,EAAE,gBAGpB,CAAC"}
1
+ {"version":3,"file":"game.d.ts","sourceRoot":"","sources":["../../src/capabilities/game.ts"],"names":[],"mappings":"AAIA,OAAO,EAA+B,IAAI,EAAkC,MAAM,qBAAqB,CAAC;AACxG,OAAO,EAAyK,KAAK,eAAe,IAAI,YAAY,EAAE,KAAK,YAAY,IAAI,kBAAkB,EAAE,KAAK,cAAc,EAA6C,MAAM,uBAAuB,CAAC;AAK7V,OAAO,KAAK,EAAoB,gBAAgB,EAAiB,MAAM,YAAY,CAAC;AAyXpF,8EAA8E;AAC9E,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,QAAQ,EAAE,kBAAkB,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AACxL,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAG,SAAS,EAAE,SAAS,EAAE,IAAI,GAAG,OAAO,CAAC;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,QAAQ,EAAE,cAAc,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAC5M,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,SAAS,EAAE,SAAS,EAAE,IAAI,GAAG,IAAI,GAAG,OAAO,CAAC;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,QAAQ,EAAE,YAAY,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAgxB/M,eAAO,MAAM,MAAM,EAAE,gBAKpB,CAAC"}