@sogni-ai/sogni-intelligence-client 3.0.0-alpha.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 (659) hide show
  1. package/.env.example +33 -0
  2. package/LICENSE +22 -0
  3. package/README.md +823 -0
  4. package/contracts/index.d.ts +1 -0
  5. package/contracts/index.js +2 -0
  6. package/dist/client/SogniClientWrapper.d.ts +86 -0
  7. package/dist/client/SogniClientWrapper.d.ts.map +1 -0
  8. package/dist/client/SogniClientWrapper.js +914 -0
  9. package/dist/client/SogniClientWrapper.js.map +1 -0
  10. package/dist/contracts/backboneDurableWorkflow.d.ts +82 -0
  11. package/dist/contracts/backboneDurableWorkflow.d.ts.map +1 -0
  12. package/dist/contracts/backboneDurableWorkflow.js +96 -0
  13. package/dist/contracts/backboneDurableWorkflow.js.map +1 -0
  14. package/dist/contracts/backboneToolCatalog.d.ts +7 -0
  15. package/dist/contracts/backboneToolCatalog.d.ts.map +1 -0
  16. package/dist/contracts/backboneToolCatalog.js +62 -0
  17. package/dist/contracts/backboneToolCatalog.js.map +1 -0
  18. package/dist/contracts/composeWorkflowTypes.d.ts +6 -0
  19. package/dist/contracts/composeWorkflowTypes.d.ts.map +1 -0
  20. package/dist/contracts/composeWorkflowTypes.js +3 -0
  21. package/dist/contracts/composeWorkflowTypes.js.map +1 -0
  22. package/dist/contracts/data/costEstimation.d.ts +5 -0
  23. package/dist/contracts/data/costEstimation.d.ts.map +1 -0
  24. package/dist/contracts/data/costEstimation.js +22 -0
  25. package/dist/contracts/data/costEstimation.js.map +1 -0
  26. package/dist/contracts/data/gatingPolicies.d.ts +6 -0
  27. package/dist/contracts/data/gatingPolicies.d.ts.map +1 -0
  28. package/dist/contracts/data/gatingPolicies.js +218 -0
  29. package/dist/contracts/data/gatingPolicies.js.map +1 -0
  30. package/dist/contracts/data/gatingPoliciesToolSurface.d.ts +7 -0
  31. package/dist/contracts/data/gatingPoliciesToolSurface.d.ts.map +1 -0
  32. package/dist/contracts/data/gatingPoliciesToolSurface.js +61 -0
  33. package/dist/contracts/data/gatingPoliciesToolSurface.js.map +1 -0
  34. package/dist/contracts/data/index.d.ts +14 -0
  35. package/dist/contracts/data/index.d.ts.map +1 -0
  36. package/dist/contracts/data/index.js +57 -0
  37. package/dist/contracts/data/index.js.map +1 -0
  38. package/dist/contracts/data/promptContracts.d.ts +5 -0
  39. package/dist/contracts/data/promptContracts.d.ts.map +1 -0
  40. package/dist/contracts/data/promptContracts.js +1173 -0
  41. package/dist/contracts/data/promptContracts.js.map +1 -0
  42. package/dist/contracts/data/repairRecipes.d.ts +5 -0
  43. package/dist/contracts/data/repairRecipes.d.ts.map +1 -0
  44. package/dist/contracts/data/repairRecipes.js +197 -0
  45. package/dist/contracts/data/repairRecipes.js.map +1 -0
  46. package/dist/contracts/data/toolCatalog.d.ts +31 -0
  47. package/dist/contracts/data/toolCatalog.d.ts.map +1 -0
  48. package/dist/contracts/data/toolCatalog.js +129 -0
  49. package/dist/contracts/data/toolCatalog.js.map +1 -0
  50. package/dist/contracts/data/toolCostMetadata.d.ts +16 -0
  51. package/dist/contracts/data/toolCostMetadata.d.ts.map +1 -0
  52. package/dist/contracts/data/toolCostMetadata.js +284 -0
  53. package/dist/contracts/data/toolCostMetadata.js.map +1 -0
  54. package/dist/contracts/data/toolPermissions.d.ts +27 -0
  55. package/dist/contracts/data/toolPermissions.d.ts.map +1 -0
  56. package/dist/contracts/data/toolPermissions.js +78 -0
  57. package/dist/contracts/data/toolPermissions.js.map +1 -0
  58. package/dist/contracts/evaluators.d.ts +94 -0
  59. package/dist/contracts/evaluators.d.ts.map +1 -0
  60. package/dist/contracts/evaluators.js +468 -0
  61. package/dist/contracts/evaluators.js.map +1 -0
  62. package/dist/contracts/hostedComposition.d.ts +85 -0
  63. package/dist/contracts/hostedComposition.d.ts.map +1 -0
  64. package/dist/contracts/hostedComposition.js +139 -0
  65. package/dist/contracts/hostedComposition.js.map +1 -0
  66. package/dist/contracts/hostedToolValidation.d.ts +47 -0
  67. package/dist/contracts/hostedToolValidation.d.ts.map +1 -0
  68. package/dist/contracts/hostedToolValidation.js +301 -0
  69. package/dist/contracts/hostedToolValidation.js.map +1 -0
  70. package/dist/contracts/idLoraPrompt.d.ts +13 -0
  71. package/dist/contracts/idLoraPrompt.d.ts.map +1 -0
  72. package/dist/contracts/idLoraPrompt.js +78 -0
  73. package/dist/contracts/idLoraPrompt.js.map +1 -0
  74. package/dist/contracts/imagePrompt.d.ts +16 -0
  75. package/dist/contracts/imagePrompt.d.ts.map +1 -0
  76. package/dist/contracts/imagePrompt.js +148 -0
  77. package/dist/contracts/imagePrompt.js.map +1 -0
  78. package/dist/contracts/index.d.ts +48 -0
  79. package/dist/contracts/index.d.ts.map +1 -0
  80. package/dist/contracts/index.js +156 -0
  81. package/dist/contracts/index.js.map +1 -0
  82. package/dist/contracts/index.mjs +102 -0
  83. package/dist/contracts/musicComposition.d.ts +17 -0
  84. package/dist/contracts/musicComposition.d.ts.map +1 -0
  85. package/dist/contracts/musicComposition.js +188 -0
  86. package/dist/contracts/musicComposition.js.map +1 -0
  87. package/dist/contracts/promptContract.d.ts +11 -0
  88. package/dist/contracts/promptContract.d.ts.map +1 -0
  89. package/dist/contracts/promptContract.js +37 -0
  90. package/dist/contracts/promptContract.js.map +1 -0
  91. package/dist/contracts/promptOverrideMarker.d.ts +2 -0
  92. package/dist/contracts/promptOverrideMarker.d.ts.map +1 -0
  93. package/dist/contracts/promptOverrideMarker.js +5 -0
  94. package/dist/contracts/promptOverrideMarker.js.map +1 -0
  95. package/dist/contracts/randomThemes.d.ts +5 -0
  96. package/dist/contracts/randomThemes.d.ts.map +1 -0
  97. package/dist/contracts/randomThemes.js +159 -0
  98. package/dist/contracts/randomThemes.js.map +1 -0
  99. package/dist/contracts/registry.d.ts +29 -0
  100. package/dist/contracts/registry.d.ts.map +1 -0
  101. package/dist/contracts/registry.js +104 -0
  102. package/dist/contracts/registry.js.map +1 -0
  103. package/dist/contracts/repairRecipe.d.ts +14 -0
  104. package/dist/contracts/repairRecipe.d.ts.map +1 -0
  105. package/dist/contracts/repairRecipe.js +38 -0
  106. package/dist/contracts/repairRecipe.js.map +1 -0
  107. package/dist/contracts/storyboard.d.ts +112 -0
  108. package/dist/contracts/storyboard.d.ts.map +1 -0
  109. package/dist/contracts/storyboard.js +7 -0
  110. package/dist/contracts/storyboard.js.map +1 -0
  111. package/dist/contracts/telemetry.d.ts +57 -0
  112. package/dist/contracts/telemetry.d.ts.map +1 -0
  113. package/dist/contracts/telemetry.js +37 -0
  114. package/dist/contracts/telemetry.js.map +1 -0
  115. package/dist/contracts/toolGatingPolicy.d.ts +19 -0
  116. package/dist/contracts/toolGatingPolicy.d.ts.map +1 -0
  117. package/dist/contracts/toolGatingPolicy.js +63 -0
  118. package/dist/contracts/toolGatingPolicy.js.map +1 -0
  119. package/dist/contracts/toolPromptMarkers.d.ts +9 -0
  120. package/dist/contracts/toolPromptMarkers.d.ts.map +1 -0
  121. package/dist/contracts/toolPromptMarkers.js +13 -0
  122. package/dist/contracts/toolPromptMarkers.js.map +1 -0
  123. package/dist/contracts/toolSurface.d.ts +46 -0
  124. package/dist/contracts/toolSurface.d.ts.map +1 -0
  125. package/dist/contracts/toolSurface.js +119 -0
  126. package/dist/contracts/toolSurface.js.map +1 -0
  127. package/dist/contracts/turnPolicy.d.ts +22 -0
  128. package/dist/contracts/turnPolicy.d.ts.map +1 -0
  129. package/dist/contracts/turnPolicy.js +16 -0
  130. package/dist/contracts/turnPolicy.js.map +1 -0
  131. package/dist/contracts/videoComposition.d.ts +35 -0
  132. package/dist/contracts/videoComposition.d.ts.map +1 -0
  133. package/dist/contracts/videoComposition.js +224 -0
  134. package/dist/contracts/videoComposition.js.map +1 -0
  135. package/dist/index.d.ts +8 -0
  136. package/dist/index.d.ts.map +1 -0
  137. package/dist/index.js +46 -0
  138. package/dist/index.js.map +1 -0
  139. package/dist/media/aspectRatio.d.ts +15 -0
  140. package/dist/media/aspectRatio.d.ts.map +1 -0
  141. package/dist/media/aspectRatio.js +72 -0
  142. package/dist/media/aspectRatio.js.map +1 -0
  143. package/dist/media/audioReference.d.ts +57 -0
  144. package/dist/media/audioReference.d.ts.map +1 -0
  145. package/dist/media/audioReference.js +194 -0
  146. package/dist/media/audioReference.js.map +1 -0
  147. package/dist/media/cameraAngle.d.ts +170 -0
  148. package/dist/media/cameraAngle.d.ts.map +1 -0
  149. package/dist/media/cameraAngle.js +48 -0
  150. package/dist/media/cameraAngle.js.map +1 -0
  151. package/dist/media/characterSheet.d.ts +9 -0
  152. package/dist/media/characterSheet.d.ts.map +1 -0
  153. package/dist/media/characterSheet.js +54 -0
  154. package/dist/media/characterSheet.js.map +1 -0
  155. package/dist/media/danceMontage.d.ts +18 -0
  156. package/dist/media/danceMontage.d.ts.map +1 -0
  157. package/dist/media/danceMontage.js +34 -0
  158. package/dist/media/danceMontage.js.map +1 -0
  159. package/dist/media/enhancementProfiles.d.ts +158 -0
  160. package/dist/media/enhancementProfiles.d.ts.map +1 -0
  161. package/dist/media/enhancementProfiles.js +224 -0
  162. package/dist/media/enhancementProfiles.js.map +1 -0
  163. package/dist/media/generationJob.d.ts +81 -0
  164. package/dist/media/generationJob.d.ts.map +1 -0
  165. package/dist/media/generationJob.js +91 -0
  166. package/dist/media/generationJob.js.map +1 -0
  167. package/dist/media/gptImage.d.ts +21 -0
  168. package/dist/media/gptImage.d.ts.map +1 -0
  169. package/dist/media/gptImage.js +162 -0
  170. package/dist/media/gptImage.js.map +1 -0
  171. package/dist/media/imageDimensions.d.ts +24 -0
  172. package/dist/media/imageDimensions.d.ts.map +1 -0
  173. package/dist/media/imageDimensions.js +64 -0
  174. package/dist/media/imageDimensions.js.map +1 -0
  175. package/dist/media/index.d.ts +16 -0
  176. package/dist/media/index.d.ts.map +1 -0
  177. package/dist/media/index.js +32 -0
  178. package/dist/media/index.js.map +1 -0
  179. package/dist/media/index.mjs +116 -0
  180. package/dist/media/musicSettings.d.ts +86 -0
  181. package/dist/media/musicSettings.d.ts.map +1 -0
  182. package/dist/media/musicSettings.js +234 -0
  183. package/dist/media/musicSettings.js.map +1 -0
  184. package/dist/media/vendorModelPremium.d.ts +21 -0
  185. package/dist/media/vendorModelPremium.d.ts.map +1 -0
  186. package/dist/media/vendorModelPremium.js +89 -0
  187. package/dist/media/vendorModelPremium.js.map +1 -0
  188. package/dist/media/videoAppSettings.d.ts +41 -0
  189. package/dist/media/videoAppSettings.d.ts.map +1 -0
  190. package/dist/media/videoAppSettings.js +128 -0
  191. package/dist/media/videoAppSettings.js.map +1 -0
  192. package/dist/media/videoContentLimit.d.ts +15 -0
  193. package/dist/media/videoContentLimit.d.ts.map +1 -0
  194. package/dist/media/videoContentLimit.js +169 -0
  195. package/dist/media/videoContentLimit.js.map +1 -0
  196. package/dist/media/videoReference.d.ts +35 -0
  197. package/dist/media/videoReference.d.ts.map +1 -0
  198. package/dist/media/videoReference.js +77 -0
  199. package/dist/media/videoReference.js.map +1 -0
  200. package/dist/media/videoSettings.d.ts +50 -0
  201. package/dist/media/videoSettings.d.ts.map +1 -0
  202. package/dist/media/videoSettings.js +200 -0
  203. package/dist/media/videoSettings.js.map +1 -0
  204. package/dist/public-skill-runtime/index.d.ts +1220 -0
  205. package/dist/public-skill-runtime/index.d.ts.map +1 -0
  206. package/dist/public-skill-runtime/index.js +6396 -0
  207. package/dist/public-skill-runtime/index.js.map +1 -0
  208. package/dist/public-skill-runtime/index.mjs +141 -0
  209. package/dist/replay/index.d.ts +4 -0
  210. package/dist/replay/index.d.ts.map +1 -0
  211. package/dist/replay/index.js +12 -0
  212. package/dist/replay/index.js.map +1 -0
  213. package/dist/replay/index.mjs +12 -0
  214. package/dist/replay/redact.d.ts +7 -0
  215. package/dist/replay/redact.d.ts.map +1 -0
  216. package/dist/replay/redact.js +108 -0
  217. package/dist/replay/redact.js.map +1 -0
  218. package/dist/replay/types.d.ts +61 -0
  219. package/dist/replay/types.d.ts.map +1 -0
  220. package/dist/replay/types.js +24 -0
  221. package/dist/replay/types.js.map +1 -0
  222. package/dist/runtime/chatTypes.d.ts +47 -0
  223. package/dist/runtime/chatTypes.d.ts.map +1 -0
  224. package/dist/runtime/chatTypes.js +3 -0
  225. package/dist/runtime/chatTypes.js.map +1 -0
  226. package/dist/runtime/durableWorkflowClient.d.ts +80 -0
  227. package/dist/runtime/durableWorkflowClient.d.ts.map +1 -0
  228. package/dist/runtime/durableWorkflowClient.js +312 -0
  229. package/dist/runtime/durableWorkflowClient.js.map +1 -0
  230. package/dist/runtime/index.d.ts +3 -0
  231. package/dist/runtime/index.d.ts.map +1 -0
  232. package/dist/runtime/index.js +18 -0
  233. package/dist/runtime/index.js.map +1 -0
  234. package/dist/runtime/index.mjs +21 -0
  235. package/dist/skills/asset_reference_management/index.d.ts +6 -0
  236. package/dist/skills/asset_reference_management/index.d.ts.map +1 -0
  237. package/dist/skills/asset_reference_management/index.js +18 -0
  238. package/dist/skills/asset_reference_management/index.js.map +1 -0
  239. package/dist/skills/asset_reference_management/index.mjs +18 -0
  240. package/dist/skills/asset_reference_management/manifest.d.ts +42 -0
  241. package/dist/skills/asset_reference_management/manifest.d.ts.map +1 -0
  242. package/dist/skills/asset_reference_management/manifest.js +237 -0
  243. package/dist/skills/asset_reference_management/manifest.js.map +1 -0
  244. package/dist/skills/asset_reference_management/modelRefRegistry.d.ts +24 -0
  245. package/dist/skills/asset_reference_management/modelRefRegistry.d.ts.map +1 -0
  246. package/dist/skills/asset_reference_management/modelRefRegistry.js +136 -0
  247. package/dist/skills/asset_reference_management/modelRefRegistry.js.map +1 -0
  248. package/dist/skills/asset_reference_management/types.d.ts +31 -0
  249. package/dist/skills/asset_reference_management/types.d.ts.map +1 -0
  250. package/dist/skills/asset_reference_management/types.js +3 -0
  251. package/dist/skills/asset_reference_management/types.js.map +1 -0
  252. package/dist/tools/definitions/add-subtitles/definition.d.ts +4 -0
  253. package/dist/tools/definitions/add-subtitles/definition.d.ts.map +1 -0
  254. package/dist/tools/definitions/add-subtitles/definition.js +83 -0
  255. package/dist/tools/definitions/add-subtitles/definition.js.map +1 -0
  256. package/dist/tools/definitions/animate-photo/definition.d.ts +3 -0
  257. package/dist/tools/definitions/animate-photo/definition.d.ts.map +1 -0
  258. package/dist/tools/definitions/animate-photo/definition.js +124 -0
  259. package/dist/tools/definitions/animate-photo/definition.js.map +1 -0
  260. package/dist/tools/definitions/apply-style/definition.d.ts +3 -0
  261. package/dist/tools/definitions/apply-style/definition.d.ts.map +1 -0
  262. package/dist/tools/definitions/apply-style/definition.js +50 -0
  263. package/dist/tools/definitions/apply-style/definition.js.map +1 -0
  264. package/dist/tools/definitions/change-angle/definition.d.ts +3 -0
  265. package/dist/tools/definitions/change-angle/definition.d.ts.map +1 -0
  266. package/dist/tools/definitions/change-angle/definition.js +49 -0
  267. package/dist/tools/definitions/change-angle/definition.js.map +1 -0
  268. package/dist/tools/definitions/dance-montage/dances.d.ts +11 -0
  269. package/dist/tools/definitions/dance-montage/dances.d.ts.map +1 -0
  270. package/dist/tools/definitions/dance-montage/dances.js +90 -0
  271. package/dist/tools/definitions/dance-montage/dances.js.map +1 -0
  272. package/dist/tools/definitions/dance-montage/definition.d.ts +3 -0
  273. package/dist/tools/definitions/dance-montage/definition.d.ts.map +1 -0
  274. package/dist/tools/definitions/dance-montage/definition.js +45 -0
  275. package/dist/tools/definitions/dance-montage/definition.js.map +1 -0
  276. package/dist/tools/definitions/edit-image/definition.d.ts +3 -0
  277. package/dist/tools/definitions/edit-image/definition.d.ts.map +1 -0
  278. package/dist/tools/definitions/edit-image/definition.js +128 -0
  279. package/dist/tools/definitions/edit-image/definition.js.map +1 -0
  280. package/dist/tools/definitions/extend-video/definition.d.ts +3 -0
  281. package/dist/tools/definitions/extend-video/definition.d.ts.map +1 -0
  282. package/dist/tools/definitions/extend-video/definition.js +51 -0
  283. package/dist/tools/definitions/extend-video/definition.js.map +1 -0
  284. package/dist/tools/definitions/generate-image/definition.d.ts +3 -0
  285. package/dist/tools/definitions/generate-image/definition.d.ts.map +1 -0
  286. package/dist/tools/definitions/generate-image/definition.js +107 -0
  287. package/dist/tools/definitions/generate-image/definition.js.map +1 -0
  288. package/dist/tools/definitions/generate-music/definition.d.ts +3 -0
  289. package/dist/tools/definitions/generate-music/definition.d.ts.map +1 -0
  290. package/dist/tools/definitions/generate-music/definition.js +75 -0
  291. package/dist/tools/definitions/generate-music/definition.js.map +1 -0
  292. package/dist/tools/definitions/generate-video/definition.d.ts +3 -0
  293. package/dist/tools/definitions/generate-video/definition.d.ts.map +1 -0
  294. package/dist/tools/definitions/generate-video/definition.js +120 -0
  295. package/dist/tools/definitions/generate-video/definition.js.map +1 -0
  296. package/dist/tools/definitions/index.d.ts +25 -0
  297. package/dist/tools/definitions/index.d.ts.map +1 -0
  298. package/dist/tools/definitions/index.js +66 -0
  299. package/dist/tools/definitions/index.js.map +1 -0
  300. package/dist/tools/definitions/orbit-video/definition.d.ts +3 -0
  301. package/dist/tools/definitions/orbit-video/definition.d.ts.map +1 -0
  302. package/dist/tools/definitions/orbit-video/definition.js +103 -0
  303. package/dist/tools/definitions/orbit-video/definition.js.map +1 -0
  304. package/dist/tools/definitions/overlay-video/definition.d.ts +4 -0
  305. package/dist/tools/definitions/overlay-video/definition.d.ts.map +1 -0
  306. package/dist/tools/definitions/overlay-video/definition.js +142 -0
  307. package/dist/tools/definitions/overlay-video/definition.js.map +1 -0
  308. package/dist/tools/definitions/refine-result/definition.d.ts +3 -0
  309. package/dist/tools/definitions/refine-result/definition.d.ts.map +1 -0
  310. package/dist/tools/definitions/refine-result/definition.js +56 -0
  311. package/dist/tools/definitions/refine-result/definition.js.map +1 -0
  312. package/dist/tools/definitions/replace-video-segment/definition.d.ts +3 -0
  313. package/dist/tools/definitions/replace-video-segment/definition.d.ts.map +1 -0
  314. package/dist/tools/definitions/replace-video-segment/definition.js +65 -0
  315. package/dist/tools/definitions/replace-video-segment/definition.js.map +1 -0
  316. package/dist/tools/definitions/restore-photo/definition.d.ts +3 -0
  317. package/dist/tools/definitions/restore-photo/definition.d.ts.map +1 -0
  318. package/dist/tools/definitions/restore-photo/definition.js +58 -0
  319. package/dist/tools/definitions/restore-photo/definition.js.map +1 -0
  320. package/dist/tools/definitions/sound-to-video/definition.d.ts +3 -0
  321. package/dist/tools/definitions/sound-to-video/definition.d.ts.map +1 -0
  322. package/dist/tools/definitions/sound-to-video/definition.js +91 -0
  323. package/dist/tools/definitions/sound-to-video/definition.js.map +1 -0
  324. package/dist/tools/definitions/stitch-video/definition.d.ts +4 -0
  325. package/dist/tools/definitions/stitch-video/definition.d.ts.map +1 -0
  326. package/dist/tools/definitions/stitch-video/definition.js +89 -0
  327. package/dist/tools/definitions/stitch-video/definition.js.map +1 -0
  328. package/dist/tools/definitions/types.d.ts +15 -0
  329. package/dist/tools/definitions/types.d.ts.map +1 -0
  330. package/dist/tools/definitions/types.js +3 -0
  331. package/dist/tools/definitions/types.js.map +1 -0
  332. package/dist/tools/definitions/video-to-video/definition.d.ts +3 -0
  333. package/dist/tools/definitions/video-to-video/definition.d.ts.map +1 -0
  334. package/dist/tools/definitions/video-to-video/definition.js +101 -0
  335. package/dist/tools/definitions/video-to-video/definition.js.map +1 -0
  336. package/dist/tools/index.d.ts +19 -0
  337. package/dist/tools/index.d.ts.map +1 -0
  338. package/dist/tools/index.js +70 -0
  339. package/dist/tools/index.js.map +1 -0
  340. package/dist/tools/index.mjs +86 -0
  341. package/dist/tools/normalizeArgs.d.ts +2 -0
  342. package/dist/tools/normalizeArgs.d.ts.map +1 -0
  343. package/dist/tools/normalizeArgs.js +40 -0
  344. package/dist/tools/normalizeArgs.js.map +1 -0
  345. package/dist/tools/result.d.ts +47 -0
  346. package/dist/tools/result.d.ts.map +1 -0
  347. package/dist/tools/result.js +38 -0
  348. package/dist/tools/result.js.map +1 -0
  349. package/dist/tools/shared/downloadFilename.d.ts +18 -0
  350. package/dist/tools/shared/downloadFilename.d.ts.map +1 -0
  351. package/dist/tools/shared/downloadFilename.js +157 -0
  352. package/dist/tools/shared/downloadFilename.js.map +1 -0
  353. package/dist/tools/shared/errorClassification.d.ts +15 -0
  354. package/dist/tools/shared/errorClassification.d.ts.map +1 -0
  355. package/dist/tools/shared/errorClassification.js +78 -0
  356. package/dist/tools/shared/errorClassification.js.map +1 -0
  357. package/dist/tools/shared/imageEncoding.d.ts +2 -0
  358. package/dist/tools/shared/imageEncoding.d.ts.map +1 -0
  359. package/dist/tools/shared/imageEncoding.js +11 -0
  360. package/dist/tools/shared/imageEncoding.js.map +1 -0
  361. package/dist/tools/shared/llmHelpers.d.ts +14 -0
  362. package/dist/tools/shared/llmHelpers.d.ts.map +1 -0
  363. package/dist/tools/shared/llmHelpers.js +145 -0
  364. package/dist/tools/shared/llmHelpers.js.map +1 -0
  365. package/dist/tools/shared/modelRegistry.d.ts +10 -0
  366. package/dist/tools/shared/modelRegistry.d.ts.map +1 -0
  367. package/dist/tools/shared/modelRegistry.js +98 -0
  368. package/dist/tools/shared/modelRegistry.js.map +1 -0
  369. package/dist/tools/shared/policyChecks.d.ts +25 -0
  370. package/dist/tools/shared/policyChecks.d.ts.map +1 -0
  371. package/dist/tools/shared/policyChecks.js +79 -0
  372. package/dist/tools/shared/policyChecks.js.map +1 -0
  373. package/dist/tools/shared/promptRefinementCache.d.ts +10 -0
  374. package/dist/tools/shared/promptRefinementCache.d.ts.map +1 -0
  375. package/dist/tools/shared/promptRefinementCache.js +81 -0
  376. package/dist/tools/shared/promptRefinementCache.js.map +1 -0
  377. package/dist/tools/shared/promptSanitizer.d.ts +2 -0
  378. package/dist/tools/shared/promptSanitizer.d.ts.map +1 -0
  379. package/dist/tools/shared/promptSanitizer.js +73 -0
  380. package/dist/tools/shared/promptSanitizer.js.map +1 -0
  381. package/dist/tools/shared/seedancePolicyErrors.d.ts +33 -0
  382. package/dist/tools/shared/seedancePolicyErrors.d.ts.map +1 -0
  383. package/dist/tools/shared/seedancePolicyErrors.js +239 -0
  384. package/dist/tools/shared/seedancePolicyErrors.js.map +1 -0
  385. package/dist/tools/shared/slotFailureSummary.d.ts +7 -0
  386. package/dist/tools/shared/slotFailureSummary.d.ts.map +1 -0
  387. package/dist/tools/shared/slotFailureSummary.js +63 -0
  388. package/dist/tools/shared/slotFailureSummary.js.map +1 -0
  389. package/dist/tools/shared/visionDescriptionCache.d.ts +5 -0
  390. package/dist/tools/shared/visionDescriptionCache.d.ts.map +1 -0
  391. package/dist/tools/shared/visionDescriptionCache.js +35 -0
  392. package/dist/tools/shared/visionDescriptionCache.js.map +1 -0
  393. package/dist/types/index.d.ts +224 -0
  394. package/dist/types/index.d.ts.map +1 -0
  395. package/dist/types/index.js +34 -0
  396. package/dist/types/index.js.map +1 -0
  397. package/dist/utils/errors.d.ts +38 -0
  398. package/dist/utils/errors.d.ts.map +1 -0
  399. package/dist/utils/errors.js +99 -0
  400. package/dist/utils/errors.js.map +1 -0
  401. package/dist/utils/helpers.d.ts +36 -0
  402. package/dist/utils/helpers.d.ts.map +1 -0
  403. package/dist/utils/helpers.js +445 -0
  404. package/dist/utils/helpers.js.map +1 -0
  405. package/dist/workflows/bindings.d.ts +23 -0
  406. package/dist/workflows/bindings.d.ts.map +1 -0
  407. package/dist/workflows/bindings.js +190 -0
  408. package/dist/workflows/bindings.js.map +1 -0
  409. package/dist/workflows/executor-ports.d.ts +11 -0
  410. package/dist/workflows/executor-ports.d.ts.map +1 -0
  411. package/dist/workflows/executor-ports.js +3 -0
  412. package/dist/workflows/executor-ports.js.map +1 -0
  413. package/dist/workflows/executor.d.ts +17 -0
  414. package/dist/workflows/executor.d.ts.map +1 -0
  415. package/dist/workflows/executor.js +526 -0
  416. package/dist/workflows/executor.js.map +1 -0
  417. package/dist/workflows/index.d.ts +8 -0
  418. package/dist/workflows/index.d.ts.map +1 -0
  419. package/dist/workflows/index.js +25 -0
  420. package/dist/workflows/index.js.map +1 -0
  421. package/dist/workflows/index.mjs +22 -0
  422. package/dist/workflows/summarize.d.ts +7 -0
  423. package/dist/workflows/summarize.d.ts.map +1 -0
  424. package/dist/workflows/summarize.js +54 -0
  425. package/dist/workflows/summarize.js.map +1 -0
  426. package/dist/workflows/types.d.ts +302 -0
  427. package/dist/workflows/types.d.ts.map +1 -0
  428. package/dist/workflows/types.js +3 -0
  429. package/dist/workflows/types.js.map +1 -0
  430. package/dist/workflows/validation.d.ts +10 -0
  431. package/dist/workflows/validation.d.ts.map +1 -0
  432. package/dist/workflows/validation.js +340 -0
  433. package/dist/workflows/validation.js.map +1 -0
  434. package/dist-esm/client/SogniClientWrapper.js +877 -0
  435. package/dist-esm/client/SogniClientWrapper.js.map +1 -0
  436. package/dist-esm/contracts/backboneDurableWorkflow.js +90 -0
  437. package/dist-esm/contracts/backboneDurableWorkflow.js.map +1 -0
  438. package/dist-esm/contracts/backboneToolCatalog.js +59 -0
  439. package/dist-esm/contracts/backboneToolCatalog.js.map +1 -0
  440. package/dist-esm/contracts/composeWorkflowTypes.js +2 -0
  441. package/dist-esm/contracts/composeWorkflowTypes.js.map +1 -0
  442. package/dist-esm/contracts/data/costEstimation.js +18 -0
  443. package/dist-esm/contracts/data/costEstimation.js.map +1 -0
  444. package/dist-esm/contracts/data/gatingPolicies.js +214 -0
  445. package/dist-esm/contracts/data/gatingPolicies.js.map +1 -0
  446. package/dist-esm/contracts/data/gatingPoliciesToolSurface.js +57 -0
  447. package/dist-esm/contracts/data/gatingPoliciesToolSurface.js.map +1 -0
  448. package/dist-esm/contracts/data/index.js +23 -0
  449. package/dist-esm/contracts/data/index.js.map +1 -0
  450. package/dist-esm/contracts/data/promptContracts.js +1169 -0
  451. package/dist-esm/contracts/data/promptContracts.js.map +1 -0
  452. package/dist-esm/contracts/data/repairRecipes.js +193 -0
  453. package/dist-esm/contracts/data/repairRecipes.js.map +1 -0
  454. package/dist-esm/contracts/data/toolCatalog.js +122 -0
  455. package/dist-esm/contracts/data/toolCatalog.js.map +1 -0
  456. package/dist-esm/contracts/data/toolCostMetadata.js +277 -0
  457. package/dist-esm/contracts/data/toolCostMetadata.js.map +1 -0
  458. package/dist-esm/contracts/data/toolPermissions.js +70 -0
  459. package/dist-esm/contracts/data/toolPermissions.js.map +1 -0
  460. package/dist-esm/contracts/evaluators.js +463 -0
  461. package/dist-esm/contracts/evaluators.js.map +1 -0
  462. package/dist-esm/contracts/hostedComposition.js +128 -0
  463. package/dist-esm/contracts/hostedComposition.js.map +1 -0
  464. package/dist-esm/contracts/hostedToolValidation.js +296 -0
  465. package/dist-esm/contracts/hostedToolValidation.js.map +1 -0
  466. package/dist-esm/contracts/idLoraPrompt.js +72 -0
  467. package/dist-esm/contracts/idLoraPrompt.js.map +1 -0
  468. package/dist-esm/contracts/imagePrompt.js +143 -0
  469. package/dist-esm/contracts/imagePrompt.js.map +1 -0
  470. package/dist-esm/contracts/index.js +27 -0
  471. package/dist-esm/contracts/index.js.map +1 -0
  472. package/dist-esm/contracts/musicComposition.js +182 -0
  473. package/dist-esm/contracts/musicComposition.js.map +1 -0
  474. package/dist-esm/contracts/promptContract.js +34 -0
  475. package/dist-esm/contracts/promptContract.js.map +1 -0
  476. package/dist-esm/contracts/promptOverrideMarker.js +2 -0
  477. package/dist-esm/contracts/promptOverrideMarker.js.map +1 -0
  478. package/dist-esm/contracts/randomThemes.js +154 -0
  479. package/dist-esm/contracts/randomThemes.js.map +1 -0
  480. package/dist-esm/contracts/registry.js +100 -0
  481. package/dist-esm/contracts/registry.js.map +1 -0
  482. package/dist-esm/contracts/repairRecipe.js +35 -0
  483. package/dist-esm/contracts/repairRecipe.js.map +1 -0
  484. package/dist-esm/contracts/storyboard.js +4 -0
  485. package/dist-esm/contracts/storyboard.js.map +1 -0
  486. package/dist-esm/contracts/telemetry.js +33 -0
  487. package/dist-esm/contracts/telemetry.js.map +1 -0
  488. package/dist-esm/contracts/toolGatingPolicy.js +60 -0
  489. package/dist-esm/contracts/toolGatingPolicy.js.map +1 -0
  490. package/dist-esm/contracts/toolPromptMarkers.js +10 -0
  491. package/dist-esm/contracts/toolPromptMarkers.js.map +1 -0
  492. package/dist-esm/contracts/toolSurface.js +110 -0
  493. package/dist-esm/contracts/toolSurface.js.map +1 -0
  494. package/dist-esm/contracts/turnPolicy.js +13 -0
  495. package/dist-esm/contracts/turnPolicy.js.map +1 -0
  496. package/dist-esm/contracts/videoComposition.js +216 -0
  497. package/dist-esm/contracts/videoComposition.js.map +1 -0
  498. package/dist-esm/index.js +7 -0
  499. package/dist-esm/index.js.map +1 -0
  500. package/dist-esm/media/aspectRatio.js +65 -0
  501. package/dist-esm/media/aspectRatio.js.map +1 -0
  502. package/dist-esm/media/audioReference.js +186 -0
  503. package/dist-esm/media/audioReference.js.map +1 -0
  504. package/dist-esm/media/cameraAngle.js +41 -0
  505. package/dist-esm/media/cameraAngle.js.map +1 -0
  506. package/dist-esm/media/characterSheet.js +48 -0
  507. package/dist-esm/media/characterSheet.js.map +1 -0
  508. package/dist-esm/media/danceMontage.js +29 -0
  509. package/dist-esm/media/danceMontage.js.map +1 -0
  510. package/dist-esm/media/enhancementProfiles.js +219 -0
  511. package/dist-esm/media/enhancementProfiles.js.map +1 -0
  512. package/dist-esm/media/generationJob.js +87 -0
  513. package/dist-esm/media/generationJob.js.map +1 -0
  514. package/dist-esm/media/gptImage.js +150 -0
  515. package/dist-esm/media/gptImage.js.map +1 -0
  516. package/dist-esm/media/imageDimensions.js +59 -0
  517. package/dist-esm/media/imageDimensions.js.map +1 -0
  518. package/dist-esm/media/index.js +16 -0
  519. package/dist-esm/media/index.js.map +1 -0
  520. package/dist-esm/media/musicSettings.js +230 -0
  521. package/dist-esm/media/musicSettings.js.map +1 -0
  522. package/dist-esm/media/vendorModelPremium.js +81 -0
  523. package/dist-esm/media/vendorModelPremium.js.map +1 -0
  524. package/dist-esm/media/videoAppSettings.js +125 -0
  525. package/dist-esm/media/videoAppSettings.js.map +1 -0
  526. package/dist-esm/media/videoContentLimit.js +162 -0
  527. package/dist-esm/media/videoContentLimit.js.map +1 -0
  528. package/dist-esm/media/videoReference.js +72 -0
  529. package/dist-esm/media/videoReference.js.map +1 -0
  530. package/dist-esm/media/videoSettings.js +191 -0
  531. package/dist-esm/media/videoSettings.js.map +1 -0
  532. package/dist-esm/package.json +3 -0
  533. package/dist-esm/public-skill-runtime/index.js +6294 -0
  534. package/dist-esm/public-skill-runtime/index.js.map +1 -0
  535. package/dist-esm/replay/index.js +3 -0
  536. package/dist-esm/replay/index.js.map +1 -0
  537. package/dist-esm/replay/redact.js +102 -0
  538. package/dist-esm/replay/redact.js.map +1 -0
  539. package/dist-esm/replay/types.js +20 -0
  540. package/dist-esm/replay/types.js.map +1 -0
  541. package/dist-esm/runtime/chatTypes.js +2 -0
  542. package/dist-esm/runtime/chatTypes.js.map +1 -0
  543. package/dist-esm/runtime/durableWorkflowClient.js +295 -0
  544. package/dist-esm/runtime/durableWorkflowClient.js.map +1 -0
  545. package/dist-esm/runtime/index.js +2 -0
  546. package/dist-esm/runtime/index.js.map +1 -0
  547. package/dist-esm/skills/asset_reference_management/index.js +3 -0
  548. package/dist-esm/skills/asset_reference_management/index.js.map +1 -0
  549. package/dist-esm/skills/asset_reference_management/manifest.js +228 -0
  550. package/dist-esm/skills/asset_reference_management/manifest.js.map +1 -0
  551. package/dist-esm/skills/asset_reference_management/modelRefRegistry.js +129 -0
  552. package/dist-esm/skills/asset_reference_management/modelRefRegistry.js.map +1 -0
  553. package/dist-esm/skills/asset_reference_management/types.js +2 -0
  554. package/dist-esm/skills/asset_reference_management/types.js.map +1 -0
  555. package/dist-esm/tools/definitions/add-subtitles/definition.js +80 -0
  556. package/dist-esm/tools/definitions/add-subtitles/definition.js.map +1 -0
  557. package/dist-esm/tools/definitions/animate-photo/definition.js +121 -0
  558. package/dist-esm/tools/definitions/animate-photo/definition.js.map +1 -0
  559. package/dist-esm/tools/definitions/apply-style/definition.js +47 -0
  560. package/dist-esm/tools/definitions/apply-style/definition.js.map +1 -0
  561. package/dist-esm/tools/definitions/change-angle/definition.js +46 -0
  562. package/dist-esm/tools/definitions/change-angle/definition.js.map +1 -0
  563. package/dist-esm/tools/definitions/dance-montage/dances.js +86 -0
  564. package/dist-esm/tools/definitions/dance-montage/dances.js.map +1 -0
  565. package/dist-esm/tools/definitions/dance-montage/definition.js +42 -0
  566. package/dist-esm/tools/definitions/dance-montage/definition.js.map +1 -0
  567. package/dist-esm/tools/definitions/edit-image/definition.js +125 -0
  568. package/dist-esm/tools/definitions/edit-image/definition.js.map +1 -0
  569. package/dist-esm/tools/definitions/extend-video/definition.js +48 -0
  570. package/dist-esm/tools/definitions/extend-video/definition.js.map +1 -0
  571. package/dist-esm/tools/definitions/generate-image/definition.js +104 -0
  572. package/dist-esm/tools/definitions/generate-image/definition.js.map +1 -0
  573. package/dist-esm/tools/definitions/generate-music/definition.js +72 -0
  574. package/dist-esm/tools/definitions/generate-music/definition.js.map +1 -0
  575. package/dist-esm/tools/definitions/generate-video/definition.js +117 -0
  576. package/dist-esm/tools/definitions/generate-video/definition.js.map +1 -0
  577. package/dist-esm/tools/definitions/index.js +41 -0
  578. package/dist-esm/tools/definitions/index.js.map +1 -0
  579. package/dist-esm/tools/definitions/orbit-video/definition.js +100 -0
  580. package/dist-esm/tools/definitions/orbit-video/definition.js.map +1 -0
  581. package/dist-esm/tools/definitions/overlay-video/definition.js +139 -0
  582. package/dist-esm/tools/definitions/overlay-video/definition.js.map +1 -0
  583. package/dist-esm/tools/definitions/refine-result/definition.js +53 -0
  584. package/dist-esm/tools/definitions/refine-result/definition.js.map +1 -0
  585. package/dist-esm/tools/definitions/replace-video-segment/definition.js +62 -0
  586. package/dist-esm/tools/definitions/replace-video-segment/definition.js.map +1 -0
  587. package/dist-esm/tools/definitions/restore-photo/definition.js +55 -0
  588. package/dist-esm/tools/definitions/restore-photo/definition.js.map +1 -0
  589. package/dist-esm/tools/definitions/sound-to-video/definition.js +88 -0
  590. package/dist-esm/tools/definitions/sound-to-video/definition.js.map +1 -0
  591. package/dist-esm/tools/definitions/stitch-video/definition.js +86 -0
  592. package/dist-esm/tools/definitions/stitch-video/definition.js.map +1 -0
  593. package/dist-esm/tools/definitions/types.js +2 -0
  594. package/dist-esm/tools/definitions/types.js.map +1 -0
  595. package/dist-esm/tools/definitions/video-to-video/definition.js +98 -0
  596. package/dist-esm/tools/definitions/video-to-video/definition.js.map +1 -0
  597. package/dist-esm/tools/index.js +15 -0
  598. package/dist-esm/tools/index.js.map +1 -0
  599. package/dist-esm/tools/normalizeArgs.js +37 -0
  600. package/dist-esm/tools/normalizeArgs.js.map +1 -0
  601. package/dist-esm/tools/result.js +31 -0
  602. package/dist-esm/tools/result.js.map +1 -0
  603. package/dist-esm/tools/shared/downloadFilename.js +147 -0
  604. package/dist-esm/tools/shared/downloadFilename.js.map +1 -0
  605. package/dist-esm/tools/shared/errorClassification.js +74 -0
  606. package/dist-esm/tools/shared/errorClassification.js.map +1 -0
  607. package/dist-esm/tools/shared/imageEncoding.js +8 -0
  608. package/dist-esm/tools/shared/imageEncoding.js.map +1 -0
  609. package/dist-esm/tools/shared/llmHelpers.js +137 -0
  610. package/dist-esm/tools/shared/llmHelpers.js.map +1 -0
  611. package/dist-esm/tools/shared/modelRegistry.js +91 -0
  612. package/dist-esm/tools/shared/modelRegistry.js.map +1 -0
  613. package/dist-esm/tools/shared/policyChecks.js +73 -0
  614. package/dist-esm/tools/shared/policyChecks.js.map +1 -0
  615. package/dist-esm/tools/shared/promptRefinementCache.js +70 -0
  616. package/dist-esm/tools/shared/promptRefinementCache.js.map +1 -0
  617. package/dist-esm/tools/shared/promptSanitizer.js +70 -0
  618. package/dist-esm/tools/shared/promptSanitizer.js.map +1 -0
  619. package/dist-esm/tools/shared/seedancePolicyErrors.js +232 -0
  620. package/dist-esm/tools/shared/seedancePolicyErrors.js.map +1 -0
  621. package/dist-esm/tools/shared/slotFailureSummary.js +60 -0
  622. package/dist-esm/tools/shared/slotFailureSummary.js.map +1 -0
  623. package/dist-esm/tools/shared/visionDescriptionCache.js +29 -0
  624. package/dist-esm/tools/shared/visionDescriptionCache.js.map +1 -0
  625. package/dist-esm/types/index.js +31 -0
  626. package/dist-esm/types/index.js.map +1 -0
  627. package/dist-esm/utils/errors.js +86 -0
  628. package/dist-esm/utils/errors.js.map +1 -0
  629. package/dist-esm/utils/helpers.js +419 -0
  630. package/dist-esm/utils/helpers.js.map +1 -0
  631. package/dist-esm/workflows/bindings.js +182 -0
  632. package/dist-esm/workflows/bindings.js.map +1 -0
  633. package/dist-esm/workflows/executor-ports.js +2 -0
  634. package/dist-esm/workflows/executor-ports.js.map +1 -0
  635. package/dist-esm/workflows/executor.js +522 -0
  636. package/dist-esm/workflows/executor.js.map +1 -0
  637. package/dist-esm/workflows/index.js +7 -0
  638. package/dist-esm/workflows/index.js.map +1 -0
  639. package/dist-esm/workflows/summarize.js +51 -0
  640. package/dist-esm/workflows/summarize.js.map +1 -0
  641. package/dist-esm/workflows/types.js +2 -0
  642. package/dist-esm/workflows/types.js.map +1 -0
  643. package/dist-esm/workflows/validation.js +330 -0
  644. package/dist-esm/workflows/validation.js.map +1 -0
  645. package/media/index.d.ts +1 -0
  646. package/media/index.js +2 -0
  647. package/package.json +134 -0
  648. package/public-skill-runtime/index.d.ts +1 -0
  649. package/public-skill-runtime/index.js +2 -0
  650. package/replay/index.d.ts +1 -0
  651. package/replay/index.js +2 -0
  652. package/runtime/index.d.ts +1 -0
  653. package/runtime/index.js +2 -0
  654. package/skills/asset_reference_management/index.d.ts +1 -0
  655. package/skills/asset_reference_management/index.js +2 -0
  656. package/tools/index.d.ts +1 -0
  657. package/tools/index.js +2 -0
  658. package/workflows/index.d.ts +1 -0
  659. package/workflows/index.js +2 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"definition.js","sourceRoot":"","sources":["../../../../src/tools/definitions/generate-video/definition.ts"],"names":[],"mappings":";;;AAMA,kFAKiD;AACjD,sDAAmE;AAEtD,QAAA,UAAU,GAAmB;IACxC,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE;QACR,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACT,m1IAAm1I;QACr1I,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE;;EAErB,oDAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;uQA0BwO;iBAC9P;gBACD,YAAY,EAAE;oBACZ,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,yDAAkC;iBAChD;gBACD,oBAAoB,EAAE;oBACpB,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,wEAAiD;iBAC/D;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,8GAA8G;oBAChH,OAAO,EAAE,CAAC;oBACV,OAAO,EAAE,EAAE;iBACZ;gBACD,cAAc,EAAE;oBACd,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,0PAA0P;iBAC7P;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,gBAAgB,CAAC;oBACvD,WAAW,EACT,i+BAAi+B;wBACj+B,kEAA2C;iBAC9C;gBACD,aAAa,EAAE;oBACb,IAAI,EAAE,SAAS;oBACf,WAAW,EACT,oKAAoK;iBACvK;gBACD,qBAAqB,EAAE;oBACrB,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACzB,WAAW,EACT,w0BAAw0B;iBAC30B;gBACD,qBAAqB,EAAE;oBACrB,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACzB,WAAW,EACT,mfAAmf;iBACtf;gBACD,qBAAqB,EAAE;oBACrB,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACzB,WAAW,EACT,6sBAA6sB;iBAChtB;gBACD,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,i/BAAi/B;iBACp/B;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,urBAAurB;iBAC1rB;gBACD,gBAAgB,EAAE;oBAChB,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,kyBAAkyB;iBACryB;gBACD,kBAAkB,EAAE;oBAClB,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,wLAAwL;oBAC1L,OAAO,EAAE,CAAC;oBACV,OAAO,EAAE,EAAE;iBACZ;gBACD,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,mCAAwB;iBACtC;gBACD,gBAAgB,EAAE;oBAChB,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,8jBAA8jB;iBACjkB;aACF;YACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;SACrB;KACF;CACF,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { definition as generateImageDefinition } from './generate-image/definition.js';
2
+ import { definition as generateVideoDefinition } from './generate-video/definition.js';
3
+ import { definition as generateMusicDefinition } from './generate-music/definition.js';
4
+ import { definition as editImageDefinition } from './edit-image/definition.js';
5
+ import { definition as applyStyleDefinition } from './apply-style/definition.js';
6
+ import { definition as restorePhotoDefinition } from './restore-photo/definition.js';
7
+ import { definition as refineResultDefinition } from './refine-result/definition.js';
8
+ import { definition as animatePhotoDefinition } from './animate-photo/definition.js';
9
+ import { definition as changeAngleDefinition } from './change-angle/definition.js';
10
+ import { definition as videoToVideoDefinition } from './video-to-video/definition.js';
11
+ import { definition as stitchVideoDefinition, STITCH_TRANSITION_TYPES } from './stitch-video/definition.js';
12
+ import { definition as orbitVideoDefinition } from './orbit-video/definition.js';
13
+ import { definition as danceMontageDefinition } from './dance-montage/definition.js';
14
+ import { definition as soundToVideoDefinition } from './sound-to-video/definition.js';
15
+ import { definition as extendVideoDefinition } from './extend-video/definition.js';
16
+ import { definition as replaceVideoSegmentDefinition } from './replace-video-segment/definition.js';
17
+ import { definition as overlayVideoDefinition, OVERLAY_POSITIONS } from './overlay-video/definition.js';
18
+ import { definition as addSubtitlesDefinition, SUBTITLE_VERTICAL_POSITIONS } from './add-subtitles/definition.js';
19
+ import type { ToolDefinition } from './types.js';
20
+ export { addSubtitlesDefinition, animatePhotoDefinition, applyStyleDefinition, changeAngleDefinition, danceMontageDefinition, editImageDefinition, extendVideoDefinition, generateImageDefinition, generateMusicDefinition, generateVideoDefinition, orbitVideoDefinition, overlayVideoDefinition, refineResultDefinition, replaceVideoSegmentDefinition, restorePhotoDefinition, soundToVideoDefinition, stitchVideoDefinition, videoToVideoDefinition, OVERLAY_POSITIONS, STITCH_TRANSITION_TYPES, SUBTITLE_VERTICAL_POSITIONS, };
21
+ export declare const generationToolDefinitions: readonly [ToolDefinition, ToolDefinition, ToolDefinition, ToolDefinition, ToolDefinition, ToolDefinition, ToolDefinition, ToolDefinition, ToolDefinition, ToolDefinition, ToolDefinition, ToolDefinition, ToolDefinition, ToolDefinition, ToolDefinition, ToolDefinition, ToolDefinition, ToolDefinition];
22
+ export { DANCE_PRESETS, resolveDancePresetForRequest } from './dance-montage/dances.js';
23
+ export type { DancePreset } from './dance-montage/dances.js';
24
+ export type { ToolDefinition } from './types.js';
25
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/definitions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,IAAI,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACvF,OAAO,EAAE,UAAU,IAAI,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACvF,OAAO,EAAE,UAAU,IAAI,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACvF,OAAO,EAAE,UAAU,IAAI,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAC/E,OAAO,EAAE,UAAU,IAAI,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACjF,OAAO,EAAE,UAAU,IAAI,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACrF,OAAO,EAAE,UAAU,IAAI,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACrF,OAAO,EAAE,UAAU,IAAI,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACrF,OAAO,EAAE,UAAU,IAAI,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACnF,OAAO,EAAE,UAAU,IAAI,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACtF,OAAO,EACL,UAAU,IAAI,qBAAqB,EACnC,uBAAuB,EACxB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,UAAU,IAAI,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACjF,OAAO,EAAE,UAAU,IAAI,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACrF,OAAO,EAAE,UAAU,IAAI,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACtF,OAAO,EAAE,UAAU,IAAI,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACnF,OAAO,EAAE,UAAU,IAAI,6BAA6B,EAAE,MAAM,uCAAuC,CAAC;AACpG,OAAO,EACL,UAAU,IAAI,sBAAsB,EACpC,iBAAiB,EAClB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,UAAU,IAAI,sBAAsB,EACpC,2BAA2B,EAC5B,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,uBAAuB,EACvB,uBAAuB,EACvB,uBAAuB,EACvB,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,EACtB,6BAA6B,EAC7B,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,EACjB,uBAAuB,EACvB,2BAA2B,GAC5B,CAAC;AAEF,eAAO,MAAM,yBAAyB,2SAmBQ,CAAC;AAE/C,OAAO,EAAE,aAAa,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAC;AACxF,YAAY,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAC7D,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveDancePresetForRequest = exports.DANCE_PRESETS = exports.generationToolDefinitions = exports.SUBTITLE_VERTICAL_POSITIONS = exports.STITCH_TRANSITION_TYPES = exports.OVERLAY_POSITIONS = exports.videoToVideoDefinition = exports.stitchVideoDefinition = exports.soundToVideoDefinition = exports.restorePhotoDefinition = exports.replaceVideoSegmentDefinition = exports.refineResultDefinition = exports.overlayVideoDefinition = exports.orbitVideoDefinition = exports.generateVideoDefinition = exports.generateMusicDefinition = exports.generateImageDefinition = exports.extendVideoDefinition = exports.editImageDefinition = exports.danceMontageDefinition = exports.changeAngleDefinition = exports.applyStyleDefinition = exports.animatePhotoDefinition = exports.addSubtitlesDefinition = void 0;
4
+ const definition_js_1 = require("./generate-image/definition.js");
5
+ Object.defineProperty(exports, "generateImageDefinition", { enumerable: true, get: function () { return definition_js_1.definition; } });
6
+ const definition_js_2 = require("./generate-video/definition.js");
7
+ Object.defineProperty(exports, "generateVideoDefinition", { enumerable: true, get: function () { return definition_js_2.definition; } });
8
+ const definition_js_3 = require("./generate-music/definition.js");
9
+ Object.defineProperty(exports, "generateMusicDefinition", { enumerable: true, get: function () { return definition_js_3.definition; } });
10
+ const definition_js_4 = require("./edit-image/definition.js");
11
+ Object.defineProperty(exports, "editImageDefinition", { enumerable: true, get: function () { return definition_js_4.definition; } });
12
+ const definition_js_5 = require("./apply-style/definition.js");
13
+ Object.defineProperty(exports, "applyStyleDefinition", { enumerable: true, get: function () { return definition_js_5.definition; } });
14
+ const definition_js_6 = require("./restore-photo/definition.js");
15
+ Object.defineProperty(exports, "restorePhotoDefinition", { enumerable: true, get: function () { return definition_js_6.definition; } });
16
+ const definition_js_7 = require("./refine-result/definition.js");
17
+ Object.defineProperty(exports, "refineResultDefinition", { enumerable: true, get: function () { return definition_js_7.definition; } });
18
+ const definition_js_8 = require("./animate-photo/definition.js");
19
+ Object.defineProperty(exports, "animatePhotoDefinition", { enumerable: true, get: function () { return definition_js_8.definition; } });
20
+ const definition_js_9 = require("./change-angle/definition.js");
21
+ Object.defineProperty(exports, "changeAngleDefinition", { enumerable: true, get: function () { return definition_js_9.definition; } });
22
+ const definition_js_10 = require("./video-to-video/definition.js");
23
+ Object.defineProperty(exports, "videoToVideoDefinition", { enumerable: true, get: function () { return definition_js_10.definition; } });
24
+ const definition_js_11 = require("./stitch-video/definition.js");
25
+ Object.defineProperty(exports, "stitchVideoDefinition", { enumerable: true, get: function () { return definition_js_11.definition; } });
26
+ Object.defineProperty(exports, "STITCH_TRANSITION_TYPES", { enumerable: true, get: function () { return definition_js_11.STITCH_TRANSITION_TYPES; } });
27
+ const definition_js_12 = require("./orbit-video/definition.js");
28
+ Object.defineProperty(exports, "orbitVideoDefinition", { enumerable: true, get: function () { return definition_js_12.definition; } });
29
+ const definition_js_13 = require("./dance-montage/definition.js");
30
+ Object.defineProperty(exports, "danceMontageDefinition", { enumerable: true, get: function () { return definition_js_13.definition; } });
31
+ const definition_js_14 = require("./sound-to-video/definition.js");
32
+ Object.defineProperty(exports, "soundToVideoDefinition", { enumerable: true, get: function () { return definition_js_14.definition; } });
33
+ const definition_js_15 = require("./extend-video/definition.js");
34
+ Object.defineProperty(exports, "extendVideoDefinition", { enumerable: true, get: function () { return definition_js_15.definition; } });
35
+ const definition_js_16 = require("./replace-video-segment/definition.js");
36
+ Object.defineProperty(exports, "replaceVideoSegmentDefinition", { enumerable: true, get: function () { return definition_js_16.definition; } });
37
+ const definition_js_17 = require("./overlay-video/definition.js");
38
+ Object.defineProperty(exports, "overlayVideoDefinition", { enumerable: true, get: function () { return definition_js_17.definition; } });
39
+ Object.defineProperty(exports, "OVERLAY_POSITIONS", { enumerable: true, get: function () { return definition_js_17.OVERLAY_POSITIONS; } });
40
+ const definition_js_18 = require("./add-subtitles/definition.js");
41
+ Object.defineProperty(exports, "addSubtitlesDefinition", { enumerable: true, get: function () { return definition_js_18.definition; } });
42
+ Object.defineProperty(exports, "SUBTITLE_VERTICAL_POSITIONS", { enumerable: true, get: function () { return definition_js_18.SUBTITLE_VERTICAL_POSITIONS; } });
43
+ exports.generationToolDefinitions = [
44
+ definition_js_1.definition,
45
+ definition_js_2.definition,
46
+ definition_js_3.definition,
47
+ definition_js_4.definition,
48
+ definition_js_5.definition,
49
+ definition_js_6.definition,
50
+ definition_js_7.definition,
51
+ definition_js_8.definition,
52
+ definition_js_9.definition,
53
+ definition_js_10.definition,
54
+ definition_js_11.definition,
55
+ definition_js_12.definition,
56
+ definition_js_13.definition,
57
+ definition_js_14.definition,
58
+ definition_js_15.definition,
59
+ definition_js_16.definition,
60
+ definition_js_17.definition,
61
+ definition_js_18.definition,
62
+ ];
63
+ var dances_js_1 = require("./dance-montage/dances.js");
64
+ Object.defineProperty(exports, "DANCE_PRESETS", { enumerable: true, get: function () { return dances_js_1.DANCE_PRESETS; } });
65
+ Object.defineProperty(exports, "resolveDancePresetForRequest", { enumerable: true, get: function () { return dances_js_1.resolveDancePresetForRequest; } });
66
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/definitions/index.ts"],"names":[],"mappings":";;;AAAA,kEAAuF;AAqCrF,wGArCqB,0BAAuB,OAqCrB;AApCzB,kEAAuF;AAsCrF,wGAtCqB,0BAAuB,OAsCrB;AArCzB,kEAAuF;AAoCrF,wGApCqB,0BAAuB,OAoCrB;AAnCzB,8DAA+E;AAgC7E,oGAhCqB,0BAAmB,OAgCrB;AA/BrB,+DAAiF;AA4B/E,qGA5BqB,0BAAoB,OA4BrB;AA3BtB,iEAAqF;AAuCnF,uGAvCqB,0BAAsB,OAuCrB;AAtCxB,iEAAqF;AAoCnF,uGApCqB,0BAAsB,OAoCrB;AAnCxB,iEAAqF;AAwBnF,uGAxBqB,0BAAsB,OAwBrB;AAvBxB,gEAAmF;AAyBjF,sGAzBqB,0BAAqB,OAyBrB;AAxBvB,mEAAsF;AAsCpF,uGAtCqB,2BAAsB,OAsCrB;AArCxB,iEAGsC;AAiCpC,sGAnCc,2BAAqB,OAmCd;AAGrB,wGArCA,wCAAuB,OAqCA;AAnCzB,gEAAiF;AA0B/E,qGA1BqB,2BAAoB,OA0BrB;AAzBtB,kEAAqF;AAmBnF,uGAnBqB,2BAAsB,OAmBrB;AAlBxB,mEAAsF;AA6BpF,uGA7BqB,2BAAsB,OA6BrB;AA5BxB,iEAAmF;AAmBjF,sGAnBqB,2BAAqB,OAmBrB;AAlBvB,0EAAoG;AAyBlG,8GAzBqB,2BAA6B,OAyBrB;AAxB/B,kEAGuC;AAmBrC,uGArBc,2BAAsB,OAqBd;AAOtB,kGA3BA,kCAAiB,OA2BA;AAzBnB,kEAGuC;AAIrC,uGANc,2BAAsB,OAMd;AAoBtB,4GAzBA,4CAA2B,OAyBA;AAGhB,QAAA,yBAAyB,GAAG;IACvC,0BAAuB;IACvB,0BAAuB;IACvB,0BAAuB;IACvB,0BAAmB;IACnB,0BAAoB;IACpB,0BAAsB;IACtB,0BAAsB;IACtB,0BAAsB;IACtB,0BAAqB;IACrB,2BAAsB;IACtB,2BAAqB;IACrB,2BAAoB;IACpB,2BAAsB;IACtB,2BAAsB;IACtB,2BAAqB;IACrB,2BAA6B;IAC7B,2BAAsB;IACtB,2BAAsB;CACsB,CAAC;AAE/C,uDAAwF;AAA/E,0GAAA,aAAa,OAAA;AAAE,yHAAA,4BAA4B,OAAA"}
@@ -0,0 +1,3 @@
1
+ import type { ToolDefinition } from '../types.js';
2
+ export declare const definition: ToolDefinition;
3
+ //# sourceMappingURL=definition.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"definition.d.ts","sourceRoot":"","sources":["../../../../src/tools/definitions/orbit-video/definition.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,eAAO,MAAM,UAAU,EAAE,cAyGxB,CAAC"}
@@ -0,0 +1,103 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.definition = void 0;
4
+ exports.definition = {
5
+ type: 'function',
6
+ function: {
7
+ name: 'orbit_video',
8
+ description: 'Create a 360-degree orbit video around a subject. This is a SELF-CONTAINED ' +
9
+ 'pipeline — it automatically generates angle views (via change_angle), creates ' +
10
+ 'transition video clips, and stitches them into one seamless looping video. ' +
11
+ 'You only need ONE source image as the front view — either an uploaded image ' +
12
+ 'or a previously generated result. If the user uploaded an image, call this ' +
13
+ 'tool directly without generating anything first. Do NOT pre-generate multiple ' +
14
+ 'angles or variations — this tool handles everything internally. ' +
15
+ 'Use when the user asks for a "360 pan", "orbit", "rotate around", "spin ' +
16
+ 'around", or "turntable" view.',
17
+ parameters: {
18
+ type: 'object',
19
+ properties: {
20
+ elevation: {
21
+ type: 'string',
22
+ enum: ['low-angle shot', 'eye-level shot', 'elevated shot', 'high-angle shot'],
23
+ description: 'Camera elevation for all angles. Default: "eye-level shot".',
24
+ },
25
+ distance: {
26
+ type: 'string',
27
+ enum: ['close-up', 'medium shot', 'wide shot'],
28
+ description: 'Camera distance for all angles. Default: "medium shot".',
29
+ },
30
+ prompt: {
31
+ type: 'string',
32
+ description: 'Describe the SUBJECT and ambient environment (for example, a concise ' +
33
+ 'description of the visible subject, location, weather, props, and ambience). ' +
34
+ 'Do NOT describe camera motion, rotation, panning, orbiting, ' +
35
+ 'or 360-degree movement — camera motion is handled automatically. ' +
36
+ 'Do NOT put spoken dialogue here — use the dialogue parameter instead. ' +
37
+ 'Music is automatically suppressed — use generate_music separately.',
38
+ },
39
+ dialogue: {
40
+ type: 'string',
41
+ description: 'Spoken dialogue or narration for a SINGLE segment of the orbit video. ' +
42
+ 'This is applied ONLY to the segment specified by dialogueSegment (default: ' +
43
+ 'first segment). All other segments get foley/ambient audio only. Keep it ' +
44
+ 'brief — each segment is 2.5 seconds (~6 words max). If the user asks for ' +
45
+ 'dialogue in "just the first segment" or "only at the start", put the speech ' +
46
+ 'here and leave prompt for motion/foley only. If the user asks for dialogue ' +
47
+ 'in multiple/every segment, use dialogues instead.',
48
+ },
49
+ dialogues: {
50
+ type: 'array',
51
+ items: { type: 'string' },
52
+ description: 'Per-segment spoken dialogue lines for multiple orbit transitions. Use this ' +
53
+ 'when the user asks for dialogue in multiple segments, every turn, or before ' +
54
+ 'each 90-degree turn. With the default standard 360° orbit there are 4 ' +
55
+ 'transitions, so provide exactly 4 short lines in order. Each line should be ' +
56
+ 'brief enough for a 2.5 second segment (~6 words max). Preserve real names ' +
57
+ 'from the request or prior generated image; never invent placeholder speakers. ' +
58
+ 'For "us"/"we"/couple requests, make the named people speak together. ' +
59
+ 'Omit entries or use an empty string for ' +
60
+ 'segments that should have foley/ambient audio only. Do NOT also put these ' +
61
+ 'dialogue lines in prompt.',
62
+ },
63
+ dialogueSegment: {
64
+ type: 'number',
65
+ description: 'Which transition segment receives the dialogue (0-based index into the ' +
66
+ 'transition sequence). 0 = first transition (default), last index = wrap-back ' +
67
+ 'to front. With default angles there are 4 transitions (0-3). With custom ' +
68
+ 'angles the count equals angles.length + 1. Only used when dialogue is provided.',
69
+ },
70
+ angles: {
71
+ type: 'array',
72
+ items: {
73
+ type: 'string',
74
+ enum: [
75
+ 'front-right quarter view',
76
+ 'right side view',
77
+ 'back-right quarter view',
78
+ 'back view',
79
+ 'back-left quarter view',
80
+ 'left side view',
81
+ 'front-left quarter view',
82
+ ],
83
+ },
84
+ description: 'OMIT THIS PARAMETER for standard 360° orbits — the default (3 angles ' +
85
+ 'at 90° increments: right, back, left + source as front = 4 transitions) ' +
86
+ 'works for nearly all requests. Only provide this when the user explicitly ' +
87
+ 'asks for specific angles, a partial orbit, or extra-smooth rotation. ' +
88
+ 'Each additional angle costs extra credits and generation time. ' +
89
+ 'Values are clockwise azimuths between the source (front) and wrap-back.',
90
+ },
91
+ sourceImageIndex: {
92
+ type: 'number',
93
+ description: 'Which result image to orbit around (0-based). If the user picked a ' +
94
+ '1-based image number, subtract 1 and set this explicitly (number 3 -> 2). ' +
95
+ 'Omit only when the user did not choose a specific prior result; then the ' +
96
+ 'tool uses the latest result or original upload.',
97
+ },
98
+ },
99
+ required: [],
100
+ },
101
+ },
102
+ };
103
+ //# sourceMappingURL=definition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"definition.js","sourceRoot":"","sources":["../../../../src/tools/definitions/orbit-video/definition.ts"],"names":[],"mappings":";;;AAEa,QAAA,UAAU,GAAmB;IACxC,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE;QACR,IAAI,EAAE,aAAa;QACnB,WAAW,EACT,6EAA6E;YAC7E,gFAAgF;YAChF,6EAA6E;YAC7E,8EAA8E;YAC9E,6EAA6E;YAC7E,gFAAgF;YAChF,kEAAkE;YAClE,0EAA0E;YAC1E,+BAA+B;QACjC,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,SAAS,EAAE;oBACT,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,eAAe,EAAE,iBAAiB,CAAC;oBAC9E,WAAW,EAAE,6DAA6D;iBAC3E;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,UAAU,EAAE,aAAa,EAAE,WAAW,CAAC;oBAC9C,WAAW,EAAE,yDAAyD;iBACvE;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,uEAAuE;wBACvE,+EAA+E;wBAC/E,8DAA8D;wBAC9D,mEAAmE;wBACnE,wEAAwE;wBACxE,oEAAoE;iBACvE;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,wEAAwE;wBACxE,6EAA6E;wBAC7E,2EAA2E;wBAC3E,2EAA2E;wBAC3E,8EAA8E;wBAC9E,6EAA6E;wBAC7E,mDAAmD;iBACtD;gBACD,SAAS,EAAE;oBACT,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACzB,WAAW,EACT,6EAA6E;wBAC7E,8EAA8E;wBAC9E,wEAAwE;wBACxE,8EAA8E;wBAC9E,4EAA4E;wBAC5E,gFAAgF;wBAChF,uEAAuE;wBACvE,0CAA0C;wBAC1C,4EAA4E;wBAC5E,2BAA2B;iBAC9B;gBACD,eAAe,EAAE;oBACf,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,yEAAyE;wBACzE,+EAA+E;wBAC/E,2EAA2E;wBAC3E,iFAAiF;iBACpF;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE;4BACJ,0BAA0B;4BAC1B,iBAAiB;4BACjB,yBAAyB;4BACzB,WAAW;4BACX,wBAAwB;4BACxB,gBAAgB;4BAChB,yBAAyB;yBAC1B;qBACF;oBACD,WAAW,EACT,uEAAuE;wBACvE,0EAA0E;wBAC1E,4EAA4E;wBAC5E,uEAAuE;wBACvE,iEAAiE;wBACjE,yEAAyE;iBAC5E;gBACD,gBAAgB,EAAE;oBAChB,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,qEAAqE;wBACrE,4EAA4E;wBAC5E,2EAA2E;wBAC3E,iDAAiD;iBACpD;aACF;YACD,QAAQ,EAAE,EAAE;SACb;KACF;CACF,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { ToolDefinition } from '../types.js';
2
+ export declare const OVERLAY_POSITIONS: readonly ["top-left", "top-center", "top-right", "center", "bottom-left", "bottom-center", "bottom-right"];
3
+ export declare const definition: ToolDefinition;
4
+ //# sourceMappingURL=definition.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"definition.d.ts","sourceRoot":"","sources":["../../../../src/tools/definitions/overlay-video/definition.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,eAAO,MAAM,iBAAiB,4GAQpB,CAAC;AAEX,eAAO,MAAM,UAAU,EAAE,cA6IxB,CAAC"}
@@ -0,0 +1,142 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.definition = exports.OVERLAY_POSITIONS = void 0;
4
+ exports.OVERLAY_POSITIONS = [
5
+ 'top-left',
6
+ 'top-center',
7
+ 'top-right',
8
+ 'center',
9
+ 'bottom-left',
10
+ 'bottom-center',
11
+ 'bottom-right',
12
+ ];
13
+ exports.definition = {
14
+ type: 'function',
15
+ function: {
16
+ name: 'overlay_video',
17
+ description: 'Burn text and/or logo/watermark image overlays onto a previously rendered or uploaded video. ' +
18
+ 'Use when the user asks to add a title, caption, label, watermark, brand logo, sponsor mark, lower-third, ' +
19
+ 'tagline, sticker, or any persistent text/graphic over the existing video frames. ' +
20
+ 'Multiple overlays can be supplied in one call (e.g. a corner logo plus a top-center title). ' +
21
+ 'Each overlay can optionally be limited to a [startSeconds, endSeconds] time range. ' +
22
+ 'When the user asks for an overlay to appear for a specific window (for example "2 seconds in the middle"), set startSeconds/endSeconds on the overlay item in the same call. ' +
23
+ 'Negative startSeconds/endSeconds are relative to the end of the base video, so startSeconds=-2 with omitted endSeconds means "the last 2 seconds". ' +
24
+ 'When replacing a video time window with an uploaded still image or screenshot, use an image overlay with widthPct=100 and fit="cover" for that window. ' +
25
+ 'This is a pure ffmpeg post-production op — it does not regenerate the video. ' +
26
+ 'Do not use for generative intro/outro/bumper/end-card/start-card requests; those add or regenerate video time and should use extend_video or replace_video_segment. ' +
27
+ 'Do not call it again just to refine default size/placement after it succeeds; finalize and wait for user feedback. ' +
28
+ 'Do not use for animated typography, kinetic captions, or moving stickers; this lays down static overlays only.',
29
+ parameters: {
30
+ type: 'object',
31
+ properties: {
32
+ sourceVideoIndex: {
33
+ type: 'number',
34
+ description: 'Which video to overlay onto. Omit to use the most recent generated video, or the first uploaded video when no generated video exists. ' +
35
+ 'Non-negative values are 0-based indices into prior generated video results. ' +
36
+ 'Negative values reference uploaded videos: -1 = first uploaded video, -2 = second, etc., ' +
37
+ 'falling back to the most recent generated video when no uploads exist.',
38
+ },
39
+ overlays: {
40
+ type: 'array',
41
+ minItems: 1,
42
+ description: 'Ordered list of overlays to burn in. Each overlay is rendered on top of all previous overlays. ' +
43
+ 'Either kind="text" (with `text` and styling) or kind="image" (with `sourceImageIndex`).',
44
+ items: {
45
+ type: 'object',
46
+ properties: {
47
+ kind: {
48
+ type: 'string',
49
+ enum: ['text', 'image'],
50
+ description: 'Overlay kind. "text" renders drawtext; "image" composites an existing image asset.',
51
+ },
52
+ position: {
53
+ type: 'string',
54
+ enum: [...exports.OVERLAY_POSITIONS],
55
+ description: 'Anchor position on the frame. Pixel offsets nudge inward; the renderer pads ' +
56
+ 'each anchor by a small safe margin so overlays do not touch the frame edge.',
57
+ },
58
+ offsetX: {
59
+ type: 'number',
60
+ description: 'Optional horizontal offset in pixels. Positive = inward from the anchor edge.',
61
+ },
62
+ offsetY: {
63
+ type: 'number',
64
+ description: 'Optional vertical offset in pixels. Positive = inward from the anchor edge.',
65
+ },
66
+ startSeconds: {
67
+ type: 'number',
68
+ description: 'Show the overlay from this time. Default 0 (show from the start). ' +
69
+ 'Negative values are relative to the end of the base video; startSeconds=-2 means start 2 seconds before the end.',
70
+ },
71
+ endSeconds: {
72
+ type: 'number',
73
+ description: 'Hide the overlay at this time. Default = full video duration. ' +
74
+ 'Negative values are relative to the end of the base video.',
75
+ },
76
+ text: {
77
+ type: 'string',
78
+ description: 'Overlay text. Required when kind="text". Use plain text; line breaks are honored.',
79
+ },
80
+ fontSizePct: {
81
+ type: 'number',
82
+ minimum: 1,
83
+ maximum: 30,
84
+ description: 'Font size as a percentage of the video height. Default: 6 (≈ 43px on a 720p frame). ' +
85
+ 'Only valid when kind="text".',
86
+ },
87
+ color: {
88
+ type: 'string',
89
+ description: 'Text fill color (CSS hex like "#FFFFFF" or named ffmpeg color). Default "#FFFFFF". ' +
90
+ 'Only valid when kind="text".',
91
+ },
92
+ outlineColor: {
93
+ type: 'string',
94
+ description: 'Text outline color. Default "#000000" with a thin stroke for legibility. ' +
95
+ 'Only valid when kind="text".',
96
+ },
97
+ backgroundColor: {
98
+ type: ['string', 'null'],
99
+ description: 'Optional rgba background pill behind the text (e.g. "rgba(0,0,0,0.5)"). null = no box. ' +
100
+ 'Only valid when kind="text".',
101
+ },
102
+ fontWeight: {
103
+ type: 'string',
104
+ enum: ['normal', 'bold'],
105
+ description: 'Default "normal". Only valid when kind="text".',
106
+ },
107
+ sourceImageIndex: {
108
+ type: 'number',
109
+ description: 'Which image to overlay. Required when kind="image". ' +
110
+ 'Non-negative values are 0-based indices into prior generated image results. ' +
111
+ 'Negative values reference uploaded images in image-only order: -1 = first uploaded image, -2 = second, etc. ' +
112
+ 'If the user uploaded one video and one logo image, the logo is sourceImageIndex=-1.',
113
+ },
114
+ widthPct: {
115
+ type: 'number',
116
+ minimum: 1,
117
+ maximum: 100,
118
+ description: 'Logo width as a percentage of the video width. Default: 15. ' +
119
+ 'Only valid when kind="image".',
120
+ },
121
+ opacity: {
122
+ type: 'number',
123
+ minimum: 0,
124
+ maximum: 1,
125
+ description: 'Image overlay opacity, 0..1. Default 1.0 (fully opaque). Only valid when kind="image".',
126
+ },
127
+ fit: {
128
+ type: 'string',
129
+ enum: ['contain', 'cover'],
130
+ description: 'Image sizing mode. Default "contain" scales by widthPct and preserves the full overlay image. ' +
131
+ '"cover" scales/crops the image to cover the full video frame; use with widthPct=100 for screenshot/still-frame replacement windows.',
132
+ },
133
+ },
134
+ required: ['kind', 'position'],
135
+ },
136
+ },
137
+ },
138
+ required: ['overlays'],
139
+ },
140
+ },
141
+ };
142
+ //# sourceMappingURL=definition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"definition.js","sourceRoot":"","sources":["../../../../src/tools/definitions/overlay-video/definition.ts"],"names":[],"mappings":";;;AAYa,QAAA,iBAAiB,GAAG;IAC/B,UAAU;IACV,YAAY;IACZ,WAAW;IACX,QAAQ;IACR,aAAa;IACb,eAAe;IACf,cAAc;CACN,CAAC;AAEE,QAAA,UAAU,GAAmB;IACxC,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE;QACR,IAAI,EAAE,eAAe;QACrB,WAAW,EACT,+FAA+F;YAC/F,2GAA2G;YAC3G,mFAAmF;YACnF,8FAA8F;YAC9F,qFAAqF;YACrF,+KAA+K;YAC/K,qJAAqJ;YACrJ,yJAAyJ;YACzJ,+EAA+E;YAC/E,sKAAsK;YACtK,qHAAqH;YACrH,gHAAgH;QAClH,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,gBAAgB,EAAE;oBAChB,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,wIAAwI;wBACxI,8EAA8E;wBAC9E,2FAA2F;wBAC3F,wEAAwE;iBAC3E;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,OAAO;oBACb,QAAQ,EAAE,CAAC;oBACX,WAAW,EACT,iGAAiG;wBACjG,yFAAyF;oBAC3F,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,IAAI,EAAE;gCACJ,IAAI,EAAE,QAAQ;gCACd,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;gCACvB,WAAW,EAAE,oFAAoF;6BAClG;4BACD,QAAQ,EAAE;gCACR,IAAI,EAAE,QAAQ;gCACd,IAAI,EAAE,CAAC,GAAG,yBAAiB,CAAC;gCAC5B,WAAW,EACT,8EAA8E;oCAC9E,6EAA6E;6BAChF;4BACD,OAAO,EAAE;gCACP,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,+EAA+E;6BAC7F;4BACD,OAAO,EAAE;gCACP,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,6EAA6E;6BAC3F;4BACD,YAAY,EAAE;gCACZ,IAAI,EAAE,QAAQ;gCACd,WAAW,EACT,oEAAoE;oCACpE,kHAAkH;6BACrH;4BACD,UAAU,EAAE;gCACV,IAAI,EAAE,QAAQ;gCACd,WAAW,EACT,gEAAgE;oCAChE,4DAA4D;6BAC/D;4BACD,IAAI,EAAE;gCACJ,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,mFAAmF;6BACjG;4BACD,WAAW,EAAE;gCACX,IAAI,EAAE,QAAQ;gCACd,OAAO,EAAE,CAAC;gCACV,OAAO,EAAE,EAAE;gCACX,WAAW,EACT,sFAAsF;oCACtF,8BAA8B;6BACjC;4BACD,KAAK,EAAE;gCACL,IAAI,EAAE,QAAQ;gCACd,WAAW,EACT,qFAAqF;oCACrF,8BAA8B;6BACjC;4BACD,YAAY,EAAE;gCACZ,IAAI,EAAE,QAAQ;gCACd,WAAW,EACT,2EAA2E;oCAC3E,8BAA8B;6BACjC;4BACD,eAAe,EAAE;gCACf,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;gCACxB,WAAW,EACT,yFAAyF;oCACzF,8BAA8B;6BACjC;4BACD,UAAU,EAAE;gCACV,IAAI,EAAE,QAAQ;gCACd,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;gCACxB,WAAW,EAAE,gDAAgD;6BAC9D;4BACD,gBAAgB,EAAE;gCAChB,IAAI,EAAE,QAAQ;gCACd,WAAW,EACT,sDAAsD;oCACtD,8EAA8E;oCAC9E,8GAA8G;oCAC9G,qFAAqF;6BACxF;4BACD,QAAQ,EAAE;gCACR,IAAI,EAAE,QAAQ;gCACd,OAAO,EAAE,CAAC;gCACV,OAAO,EAAE,GAAG;gCACZ,WAAW,EACT,8DAA8D;oCAC9D,+BAA+B;6BAClC;4BACD,OAAO,EAAE;gCACP,IAAI,EAAE,QAAQ;gCACd,OAAO,EAAE,CAAC;gCACV,OAAO,EAAE,CAAC;gCACV,WAAW,EAAE,wFAAwF;6BACtG;4BACD,GAAG,EAAE;gCACH,IAAI,EAAE,QAAQ;gCACd,IAAI,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC;gCAC1B,WAAW,EACT,gGAAgG;oCAChG,qIAAqI;6BACxI;yBACF;wBACD,QAAQ,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC;qBAC/B;iBACF;aACF;YACD,QAAQ,EAAE,CAAC,UAAU,CAAC;SACvB;KACF;CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { ToolDefinition } from '../types.js';
2
+ export declare const definition: ToolDefinition;
3
+ //# sourceMappingURL=definition.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"definition.d.ts","sourceRoot":"","sources":["../../../../src/tools/definitions/refine-result/definition.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAIlD,eAAO,MAAM,UAAU,EAAE,cAqDxB,CAAC"}
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.definition = void 0;
4
+ const promptOverrideMarker_js_1 = require("../../../contracts/promptOverrideMarker.js");
5
+ const index_js_1 = require("../../../media/index.js");
6
+ exports.definition = {
7
+ type: 'function',
8
+ function: {
9
+ name: 'refine_result',
10
+ description: 'Make ANY edit to an existing result image. This is the DEFAULT tool for follow-up requests after results exist. Use whenever the user wants to modify, adjust, or build upon a previous result — including brightness, color, sharpening, object removal, background changes, further restoration, or any other edit. If the user does not specify which image, use the most recent result (index 0 if only one result, or the last result the user referenced). Only use restore_photo instead if the user explicitly wants to start over from the original upload.',
11
+ parameters: {
12
+ type: 'object',
13
+ properties: {
14
+ prompt: {
15
+ type: 'string',
16
+ description: `Targeted refinement prompt for Qwen Image Edit 2511 (50-150 words, natural language sentences).
17
+
18
+ ${promptOverrideMarker_js_1.LITERAL_PROMPT_OVERRIDE}
19
+
20
+ PROMPT ORDER: [IDENTITY LOCK if people] → [SPECIFIC CHANGE] → [PRESERVE EVERYTHING ELSE]
21
+
22
+ Rules:
23
+ - Use POSITIVE phrasing only. The model ignores negatives ("preserve exact facial likeness" NOT "don't change the face").
24
+ - Describe ONLY what needs to change (the delta). The base image already contains most of the truth — do not rewrite the entire image.
25
+ - Be specific about what to change: "warmer skin tones", "cooler shadows", "sharper facial features", "more natural greens".
26
+ - For creative refinements: lean into specifics — "add more dramatic Rembrandt lighting", "push the colors more toward Warhol neon pop", "make the anime eyes larger and more expressive", "add more superhero energy with glowing effects".
27
+ - CRITICAL for photos with people: FRONT-LOAD identity preservation before the edit. Start with "Preserve exact facial likeness, face structure, eye shape, nose shape, mouth shape, jawline, skin tone, hairline, apparent age, and overall recognizability."
28
+ - ALWAYS end with "Preserve all unmentioned details" to prevent unwanted changes.
29
+
30
+ BATCH VARIATIONS: Only use Dynamic Prompt syntax when the user explicitly asks to explore different refinement directions. Example: "refine with {more contrast|softer lighting|richer colors}". Default to identical prompts for refine_result batches.`,
31
+ },
32
+ sourceImageIndex: {
33
+ type: 'number',
34
+ description: 'Which result image to refine (0-based index). If the user specifies an image number, use that index. If omitted, the latest result is used automatically. When multiple results exist and the user previously referenced a specific one, use that one.',
35
+ },
36
+ numberOfVariations: {
37
+ type: 'number',
38
+ description: 'Number of variations (1-16). Use 1 unless user requests multiple. Default: 1.',
39
+ minimum: 1,
40
+ maximum: 16,
41
+ },
42
+ scale: {
43
+ type: 'number',
44
+ enum: [1, 1.5, 2, 3, 4],
45
+ description: 'Output scale multiplier relative to the source image size. 1 = same resolution as source (default). Use higher values when user asks to upscale, enlarge, make bigger, or increase resolution. Small images (<480px) are automatically upscaled to at least 480px regardless of this setting. Default: 1.',
46
+ },
47
+ aspectRatio: {
48
+ type: 'string',
49
+ description: index_js_1.ASPECT_RATIO_DESCRIPTION,
50
+ },
51
+ },
52
+ required: ['prompt'],
53
+ },
54
+ },
55
+ };
56
+ //# sourceMappingURL=definition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"definition.js","sourceRoot":"","sources":["../../../../src/tools/definitions/refine-result/definition.ts"],"names":[],"mappings":";;;AAMA,wFAAqF;AACrF,sDAAmE;AAEtD,QAAA,UAAU,GAAmB;IACxC,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE;QACR,IAAI,EAAE,eAAe;QACrB,WAAW,EACT,siBAAsiB;QACxiB,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE;;EAErB,iDAAuB;;;;;;;;;;;;yPAYgO;iBAChP;gBACD,gBAAgB,EAAE;oBAChB,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,wPAAwP;iBAC3P;gBACD,kBAAkB,EAAE;oBAClB,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,+EAA+E;oBACjF,OAAO,EAAE,CAAC;oBACV,OAAO,EAAE,EAAE;iBACZ;gBACD,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;oBACvB,WAAW,EACT,2SAA2S;iBAC9S;gBACD,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,mCAAwB;iBACtC;aACF;YACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;SACrB;KACF;CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { ToolDefinition } from '../types.js';
2
+ export declare const definition: ToolDefinition;
3
+ //# sourceMappingURL=definition.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"definition.d.ts","sourceRoot":"","sources":["../../../../src/tools/definitions/replace-video-segment/definition.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,eAAO,MAAM,UAAU,EAAE,cAsExB,CAAC"}
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.definition = void 0;
4
+ exports.definition = {
5
+ type: 'function',
6
+ function: {
7
+ name: 'replace_video_segment',
8
+ description: 'Regenerate a slice of a video and splice the new segment into the original at the same position. Works on BOTH videos previously rendered in this session AND user-uploaded videos — set videoIndex to a negative number (e.g. -1) to target an uploaded video when no prior render exists. ' +
9
+ 'Use when the user asks to modify a portion of an existing video while keeping the rest intact: "regenerate from 5s to 10s", "redo the last 3 seconds", "swap out the middle of the video", "replace the bumper at the end", "swap the end card", "change the outro", "redo the intro", "change the ending", "replace the last clip", etc. ' +
10
+ 'Also use this tool for pure ffmpeg splices where the replacement already exists as another uploaded or generated video: "splice video 2 into video 1", "insert the second clip at 5s", or "replace 5s to 15s with uploaded clip 2". In that case pass replacementVideoIndex, do not call generate_video/animate_photo/video_to_video, and set endSeconds=startSeconds for an insertion that should not remove time from the base video. ' +
11
+ 'For time-sliced edits such as "alternate 1 second from each video", pass replacementStartSeconds and replacementEndSeconds to cut the next source slice out of the replacement video before splicing it into the base. Repeat this call for each alternating window. Use replacement windows (endSeconds=startSeconds+sliceDuration), not insertion windows, unless the user explicitly asks to lengthen the output by inserting extra slices. replacementStartSeconds and replacementEndSeconds must be concrete non-negative seconds; never use -1 as an end-of-source sentinel. Do not use stitch_video for interleaving because stitch_video only concatenates whole clips end-to-end. ' +
12
+ 'STRONGLY PREFER this over re-running generate_video / animate_photo on the original prompt when the user only wants part of the video changed — re-rendering wastes credits, loses the unchanged sections, and breaks the original timing. ' +
13
+ 'If the user does not specify the exact start/end seconds (e.g. "replace the bumper at the end"), call analyze_video first to identify the correct window, OR derive it from the storyboard timing already in the conversation (e.g. last beat\'s time range). Do not guess wildly — pick a sensible bumper/end-card window such as the final 1-3 seconds when the storyboard says scene_07 is 14-15s. ' +
14
+ 'Returns both the standalone replacement clip and the spliced composite. ' +
15
+ 'For LTX-2.3 and Wan 2.2 base videos the tool locks both ends with first/last-frame keyframes for seamless edges. ' +
16
+ 'For Seedance base videos the tool uses the original window as a reference for video-to-video transformation. If a requested window is shorter than the selected model\'s native render minimum, the handler renders a slightly larger handled clip, trims the result back to the requested seconds, then splices exactly that requested range. ' +
17
+ 'By default the regenerated segment\'s audio replaces the original audio in the [startSeconds, endSeconds] window, so new motion stays in sync with new sound. Pass keepOriginalAudio=true only when the user explicitly asks to keep the existing audio — phrasings like "keep the audio", "leave the original audio", "preserve the music/score/dialogue", "don\'t change the audio". If the user uses an ambiguous phrasing such as "with the audio" (which could mean either "with the original audio kept" or "with new audio"), DO NOT call this tool yet — first ask the user whether to preserve or replace the original audio in the replaced window. When replacementVideoIndex is set, the existing replacement clip\'s own audio is used; pass keepOriginalAudio=true only when the user explicitly wants the base video audio to stay over the replacement window.',
18
+ parameters: {
19
+ type: 'object',
20
+ properties: {
21
+ startSeconds: {
22
+ type: 'number',
23
+ description: 'Start of the window (in seconds) inside the base video that should be regenerated. Must be ≥ 0 and < endSeconds. For "the last N seconds" requests, set startSeconds = max(0, baseDuration - N). When unsure of the exact base duration, you may pass a sentinel value of -1 to mean "from the end of the base video"; the handler will resolve it after probing.',
24
+ },
25
+ endSeconds: {
26
+ type: 'number',
27
+ description: 'End of the window (in seconds) inside the base video. For regenerated segments it must be > startSeconds and ≤ base video duration. When replacementVideoIndex is set, endSeconds may equal startSeconds to insert the replacement clip at that timestamp without removing any base-video time. For alternating/interleaved time-slice edits, use endSeconds=startSeconds+sliceDuration so the source slice replaces that base window; do not use insertion unless the user explicitly asks to lengthen the output. Pass -1 to mean "until the end of the base video". Windows shorter than the selected model\'s native render minimum are rendered with handles and trimmed before splicing; windows longer than the model maximum must be split.',
28
+ },
29
+ prompt: {
30
+ type: 'string',
31
+ description: 'What should happen in the replaced window — motion, action, dialogue, audio. For LTX include exact spoken words in double quotes when speech is requested. For Seedance V2V describe the transformation relative to the existing visuals (the original window is provided as a reference clip).',
32
+ },
33
+ videoIndex: {
34
+ type: 'number',
35
+ description: 'Which video to edit. Default: -1 (most recent video in this session, falling back to the first uploaded video when no prior render exists). Use 0-based non-negative indices for prior tool result videos. For uploaded videos with no prior render, leave this absent or pass -1 — the handler will pick the uploaded base automatically.',
36
+ },
37
+ replacementVideoIndex: {
38
+ type: 'number',
39
+ description: 'Optional existing video clip to splice into the base video instead of regenerating a segment. Non-negative values reference prior generated videos; negative values reference uploaded videos (-1 = first uploaded video, -2 = second, etc.). Use for requests like "splice video 2 into video 1", "replace 5s to 15s with uploaded clip 2", or alternating/interleaved edits that pull timed slices from another existing clip. When this is set, the operation is pure ffmpeg post-production and keeps the replacement clip audio unless keepOriginalAudio=true.',
40
+ },
41
+ replacementStartSeconds: {
42
+ type: 'number',
43
+ minimum: 0,
44
+ description: 'Optional start time, in seconds, inside replacementVideoIndex. Must be a concrete non-negative source time; do not use -1 sentinels for replacement source windows. Use with replacementEndSeconds when only a slice of the replacement clip should be spliced. Example: alternating 1-second clips from video 1 and video 2 should replace base window 1..2 with the first replacement slice by setting replacementVideoIndex=-2, replacementStartSeconds=0, replacementEndSeconds=1.',
45
+ },
46
+ replacementEndSeconds: {
47
+ type: 'number',
48
+ minimum: 0,
49
+ description: 'Optional end time, in seconds, inside replacementVideoIndex. Must be a concrete non-negative source time greater than replacementStartSeconds. Do not pass -1 to mean "end of replacement video"; use the known uploaded/generated clip duration from metadata for routine time-sliced edits, or omit both replacementStartSeconds and replacementEndSeconds to use the whole replacement clip. Do not call analyze_video just to learn duration.',
50
+ },
51
+ videoModel: {
52
+ type: 'string',
53
+ enum: ['auto', 'ltx23', 'wan22', 'seedance2', 'seedance2-fast'],
54
+ description: 'Which model to use for the new segment. Default: "auto" — detect from the base video\'s producer (Seedance base → Seedance, Wan base → Wan 2.2, otherwise LTX-2.3). Override only when the user explicitly requests a different model.',
55
+ },
56
+ keepOriginalAudio: {
57
+ type: 'boolean',
58
+ description: 'When true, the audio from the original [startSeconds, endSeconds] window is muxed onto the regenerated visuals so the user keeps the original dialogue/score. When false (default), the new clip\'s own audio is used (LTX renders fresh audio; Seedance V2V depends on generateAudio). Default: false. Set true only when the user explicitly asks to preserve the existing audio; if the user uses an ambiguous phrasing like "with the audio", ask the user to clarify rather than guessing.',
59
+ },
60
+ },
61
+ required: ['startSeconds', 'endSeconds'],
62
+ },
63
+ },
64
+ };
65
+ //# sourceMappingURL=definition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"definition.js","sourceRoot":"","sources":["../../../../src/tools/definitions/replace-video-segment/definition.ts"],"names":[],"mappings":";;;AAuBa,QAAA,UAAU,GAAmB;IACxC,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE;QACR,IAAI,EAAE,uBAAuB;QAC7B,WAAW,EACT,8RAA8R;YAC9R,4UAA4U;YAC5U,0aAA0a;YAC1a,6pBAA6pB;YAC7pB,6OAA6O;YAC7O,wYAAwY;YACxY,0EAA0E;YAC1E,mHAAmH;YACnH,iVAAiV;YACjV,g1BAAg1B;QACl1B,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,YAAY,EAAE;oBACZ,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,mWAAmW;iBACtW;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,qtBAAqtB;iBACxtB;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,iSAAiS;iBACpS;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,4UAA4U;iBAC/U;gBACD,qBAAqB,EAAE;oBACrB,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,qiBAAqiB;iBACxiB;gBACD,uBAAuB,EAAE;oBACvB,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,CAAC;oBACV,WAAW,EACT,wdAAwd;iBAC3d;gBACD,qBAAqB,EAAE;oBACrB,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,CAAC;oBACV,WAAW,EACT,mbAAmb;iBACtb;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,gBAAgB,CAAC;oBAC/D,WAAW,EACT,wOAAwO;iBAC3O;gBACD,iBAAiB,EAAE;oBACjB,IAAI,EAAE,SAAS;oBACf,WAAW,EACT,ieAAie;iBACpe;aACF;YACD,QAAQ,EAAE,CAAC,cAAc,EAAE,YAAY,CAAC;SACzC;KACF;CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { ToolDefinition } from '../types.js';
2
+ export declare const definition: ToolDefinition;
3
+ //# sourceMappingURL=definition.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"definition.d.ts","sourceRoot":"","sources":["../../../../src/tools/definitions/restore-photo/definition.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAIlD,eAAO,MAAM,UAAU,EAAE,cAuDxB,CAAC"}