vidspotai-shared 1.0.67 → 1.0.69-dev.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 (502) hide show
  1. package/lib/globals/aiModels/enums.d.ts +63 -6
  2. package/lib/globals/aiModels/enums.d.ts.map +1 -1
  3. package/lib/globals/aiModels/enums.js +78 -9
  4. package/lib/globals/aiModels/index.d.ts +2 -0
  5. package/lib/globals/aiModels/index.d.ts.map +1 -1
  6. package/lib/globals/aiModels/index.js +6 -0
  7. package/lib/globals/aiModels/providers/alibaba.d.ts +4 -0
  8. package/lib/globals/aiModels/providers/alibaba.d.ts.map +1 -0
  9. package/lib/globals/aiModels/providers/alibaba.js +194 -0
  10. package/lib/globals/aiModels/providers/bytedance.d.ts.map +1 -1
  11. package/lib/globals/aiModels/providers/bytedance.js +19 -0
  12. package/lib/globals/aiModels/providers/elevenlabs.d.ts +14 -0
  13. package/lib/globals/aiModels/providers/elevenlabs.d.ts.map +1 -0
  14. package/lib/globals/aiModels/providers/elevenlabs.js +29 -0
  15. package/lib/globals/aiModels/providers/google.d.ts.map +1 -1
  16. package/lib/globals/aiModels/providers/google.js +150 -2
  17. package/lib/globals/aiModels/providers/kling.d.ts.map +1 -1
  18. package/lib/globals/aiModels/providers/kling.js +280 -37
  19. package/lib/globals/aiModels/providers/minimax.d.ts.map +1 -1
  20. package/lib/globals/aiModels/providers/minimax.js +73 -2
  21. package/lib/globals/aiModels/providers/openai.d.ts.map +1 -1
  22. package/lib/globals/aiModels/providers/openai.js +90 -6
  23. package/lib/globals/aiModels/providers/pixverse.d.ts.map +1 -1
  24. package/lib/globals/aiModels/providers/pixverse.js +111 -29
  25. package/lib/globals/aiModels/providers/pixverseTemplates.d.ts +36 -0
  26. package/lib/globals/aiModels/providers/pixverseTemplates.d.ts.map +1 -0
  27. package/lib/globals/aiModels/providers/pixverseTemplates.js +42 -0
  28. package/lib/globals/aiModels/providers/runway.d.ts.map +1 -1
  29. package/lib/globals/aiModels/providers/runway.js +64 -2
  30. package/lib/globals/aiModels/tierHelpers.d.ts +33 -0
  31. package/lib/globals/aiModels/tierHelpers.d.ts.map +1 -0
  32. package/lib/globals/aiModels/tierHelpers.js +109 -0
  33. package/lib/globals/aiModels/types.d.ts +20 -1
  34. package/lib/globals/aiModels/types.d.ts.map +1 -1
  35. package/lib/globals/ttsModels/index.d.ts +2 -0
  36. package/lib/globals/ttsModels/index.d.ts.map +1 -1
  37. package/lib/globals/ttsModels/index.js +9 -1
  38. package/lib/globals/ttsModels/providers/minimax.d.ts +8 -0
  39. package/lib/globals/ttsModels/providers/minimax.d.ts.map +1 -0
  40. package/lib/globals/ttsModels/providers/minimax.js +18 -0
  41. package/lib/globals/ttsModels/providers/openai.d.ts +12 -0
  42. package/lib/globals/ttsModels/providers/openai.d.ts.map +1 -0
  43. package/lib/globals/ttsModels/providers/openai.js +22 -0
  44. package/lib/globals/ttsModels/types.d.ts +1 -1
  45. package/lib/globals/ttsModels/types.d.ts.map +1 -1
  46. package/lib/globals/ttsModels/voices.d.ts +39 -4
  47. package/lib/globals/ttsModels/voices.d.ts.map +1 -1
  48. package/lib/globals/ttsModels/voices.js +273 -26
  49. package/lib/globals/types.d.ts +59 -1
  50. package/lib/globals/types.d.ts.map +1 -1
  51. package/lib/globals/types.js +81 -2
  52. package/lib/index.d.ts +1 -0
  53. package/lib/index.d.ts.map +1 -1
  54. package/lib/index.js +1 -0
  55. package/lib/models/agent.model.d.ts +357 -0
  56. package/lib/models/agent.model.d.ts.map +1 -0
  57. package/lib/models/agent.model.js +21 -0
  58. package/lib/models/cachedAsset.model.d.ts +18 -0
  59. package/lib/models/cachedAsset.model.d.ts.map +1 -0
  60. package/lib/models/cachedAsset.model.js +2 -0
  61. package/lib/models/cachedRawAsset.model.d.ts +20 -0
  62. package/lib/models/cachedRawAsset.model.d.ts.map +1 -0
  63. package/lib/models/cachedRawAsset.model.js +2 -0
  64. package/lib/models/image.model.d.ts +47 -0
  65. package/lib/models/image.model.d.ts.map +1 -0
  66. package/lib/models/image.model.js +2 -0
  67. package/lib/models/index.d.ts +6 -0
  68. package/lib/models/index.d.ts.map +1 -1
  69. package/lib/models/index.js +6 -0
  70. package/lib/models/notification.model.d.ts +25 -0
  71. package/lib/models/notification.model.d.ts.map +1 -0
  72. package/lib/models/notification.model.js +2 -0
  73. package/lib/models/ref.model.d.ts +80 -0
  74. package/lib/models/ref.model.d.ts.map +1 -0
  75. package/lib/models/ref.model.js +13 -0
  76. package/lib/models/share.model.d.ts +29 -0
  77. package/lib/models/share.model.d.ts.map +1 -0
  78. package/lib/models/share.model.js +2 -0
  79. package/lib/models/user.model.d.ts +12 -1
  80. package/lib/models/user.model.d.ts.map +1 -1
  81. package/lib/models/video.model.d.ts +120 -0
  82. package/lib/models/video.model.d.ts.map +1 -1
  83. package/lib/models/video.model.js +10 -0
  84. package/lib/schemas/agentPersona.schema.d.ts +10 -0
  85. package/lib/schemas/agentPersona.schema.d.ts.map +1 -0
  86. package/lib/schemas/agentPersona.schema.js +11 -0
  87. package/lib/schemas/agentRunJob.schema.d.ts +105 -0
  88. package/lib/schemas/agentRunJob.schema.d.ts.map +1 -0
  89. package/lib/schemas/agentRunJob.schema.js +88 -0
  90. package/lib/schemas/brandKit.schema.d.ts +113 -0
  91. package/lib/schemas/brandKit.schema.d.ts.map +1 -0
  92. package/lib/schemas/brandKit.schema.js +46 -0
  93. package/lib/schemas/brief.schema.d.ts +263 -0
  94. package/lib/schemas/brief.schema.d.ts.map +1 -0
  95. package/lib/schemas/brief.schema.js +157 -0
  96. package/lib/schemas/index.d.ts +7 -0
  97. package/lib/schemas/index.d.ts.map +1 -0
  98. package/lib/schemas/index.js +22 -0
  99. package/lib/schemas/project.schema.d.ts +1025 -0
  100. package/lib/schemas/project.schema.d.ts.map +1 -0
  101. package/lib/schemas/project.schema.js +256 -0
  102. package/lib/schemas/videoPlan.schema.d.ts +590 -0
  103. package/lib/schemas/videoPlan.schema.d.ts.map +1 -0
  104. package/lib/schemas/videoPlan.schema.js +412 -0
  105. package/lib/services/agent/beatSnap.d.ts +10 -0
  106. package/lib/services/agent/beatSnap.d.ts.map +1 -0
  107. package/lib/services/agent/beatSnap.js +128 -0
  108. package/lib/services/agent/bibleBuilder.d.ts +43 -0
  109. package/lib/services/agent/bibleBuilder.d.ts.map +1 -0
  110. package/lib/services/agent/bibleBuilder.js +102 -0
  111. package/lib/services/agent/bibleImageVision.d.ts +45 -0
  112. package/lib/services/agent/bibleImageVision.d.ts.map +1 -0
  113. package/lib/services/agent/bibleImageVision.js +169 -0
  114. package/lib/services/agent/chatAgent.d.ts +79 -0
  115. package/lib/services/agent/chatAgent.d.ts.map +1 -0
  116. package/lib/services/agent/chatAgent.js +136 -0
  117. package/lib/services/agent/costPreflight.d.ts +61 -0
  118. package/lib/services/agent/costPreflight.d.ts.map +1 -0
  119. package/lib/services/agent/costPreflight.js +143 -0
  120. package/lib/services/agent/critic.d.ts +103 -0
  121. package/lib/services/agent/critic.d.ts.map +1 -0
  122. package/lib/services/agent/critic.js +139 -0
  123. package/lib/services/agent/editClassifier.d.ts +262 -0
  124. package/lib/services/agent/editClassifier.d.ts.map +1 -0
  125. package/lib/services/agent/editClassifier.js +186 -0
  126. package/lib/services/agent/eval/index.d.ts +5 -0
  127. package/lib/services/agent/eval/index.d.ts.map +1 -0
  128. package/lib/services/agent/eval/index.js +20 -0
  129. package/lib/services/agent/eval/judge.d.ts +14 -0
  130. package/lib/services/agent/eval/judge.d.ts.map +1 -0
  131. package/lib/services/agent/eval/judge.js +96 -0
  132. package/lib/services/agent/eval/recorder.d.ts +28 -0
  133. package/lib/services/agent/eval/recorder.d.ts.map +1 -0
  134. package/lib/services/agent/eval/recorder.js +100 -0
  135. package/lib/services/agent/eval/seedBriefs.d.ts +16 -0
  136. package/lib/services/agent/eval/seedBriefs.d.ts.map +1 -0
  137. package/lib/services/agent/eval/seedBriefs.js +1188 -0
  138. package/lib/services/agent/eval/types.d.ts +230 -0
  139. package/lib/services/agent/eval/types.d.ts.map +1 -0
  140. package/lib/services/agent/eval/types.js +73 -0
  141. package/lib/services/agent/executor.d.ts +141 -0
  142. package/lib/services/agent/executor.d.ts.map +1 -0
  143. package/lib/services/agent/executor.js +561 -0
  144. package/lib/services/agent/globalActions.d.ts +49 -0
  145. package/lib/services/agent/globalActions.d.ts.map +1 -0
  146. package/lib/services/agent/globalActions.js +328 -0
  147. package/lib/services/agent/index.d.ts +38 -0
  148. package/lib/services/agent/index.d.ts.map +1 -0
  149. package/lib/services/agent/index.js +53 -0
  150. package/lib/services/agent/llmCaller.d.ts +144 -0
  151. package/lib/services/agent/llmCaller.d.ts.map +1 -0
  152. package/lib/services/agent/llmCaller.js +16 -0
  153. package/lib/services/agent/llmCallerAnthropic.d.ts +90 -0
  154. package/lib/services/agent/llmCallerAnthropic.d.ts.map +1 -0
  155. package/lib/services/agent/llmCallerAnthropic.js +255 -0
  156. package/lib/services/agent/llmCallerGateway.d.ts +61 -0
  157. package/lib/services/agent/llmCallerGateway.d.ts.map +1 -0
  158. package/lib/services/agent/llmCallerGateway.js +360 -0
  159. package/lib/services/agent/llmCallerRegistry.d.ts +6 -0
  160. package/lib/services/agent/llmCallerRegistry.d.ts.map +1 -0
  161. package/lib/services/agent/llmCallerRegistry.js +39 -0
  162. package/lib/services/agent/modelQualityNotes.d.ts +100 -0
  163. package/lib/services/agent/modelQualityNotes.d.ts.map +1 -0
  164. package/lib/services/agent/modelQualityNotes.js +248 -0
  165. package/lib/services/agent/modelRouter.d.ts +41 -0
  166. package/lib/services/agent/modelRouter.d.ts.map +1 -0
  167. package/lib/services/agent/modelRouter.js +65 -0
  168. package/lib/services/agent/musicSelect.d.ts +23 -0
  169. package/lib/services/agent/musicSelect.d.ts.map +1 -0
  170. package/lib/services/agent/musicSelect.js +109 -0
  171. package/lib/services/agent/overlayRenderer.d.ts +67 -0
  172. package/lib/services/agent/overlayRenderer.d.ts.map +1 -0
  173. package/lib/services/agent/overlayRenderer.js +253 -0
  174. package/lib/services/agent/perSceneCritic.d.ts +90 -0
  175. package/lib/services/agent/perSceneCritic.d.ts.map +1 -0
  176. package/lib/services/agent/perSceneCritic.js +125 -0
  177. package/lib/services/agent/personas.d.ts +78 -0
  178. package/lib/services/agent/personas.d.ts.map +1 -0
  179. package/lib/services/agent/personas.js +177 -0
  180. package/lib/services/agent/planDiff.d.ts +76 -0
  181. package/lib/services/agent/planDiff.d.ts.map +1 -0
  182. package/lib/services/agent/planDiff.js +182 -0
  183. package/lib/services/agent/planMutations.d.ts +46 -0
  184. package/lib/services/agent/planMutations.d.ts.map +1 -0
  185. package/lib/services/agent/planMutations.js +120 -0
  186. package/lib/services/agent/planner/Planner.d.ts +107 -0
  187. package/lib/services/agent/planner/Planner.d.ts.map +1 -0
  188. package/lib/services/agent/planner/Planner.js +591 -0
  189. package/lib/services/agent/planner/overlaySanity.d.ts +7 -0
  190. package/lib/services/agent/planner/overlaySanity.d.ts.map +1 -0
  191. package/lib/services/agent/planner/overlaySanity.js +86 -0
  192. package/lib/services/agent/planner/promptSections.d.ts +25 -0
  193. package/lib/services/agent/planner/promptSections.d.ts.map +1 -0
  194. package/lib/services/agent/planner/promptSections.js +174 -0
  195. package/lib/services/agent/planner/repair.d.ts +16 -0
  196. package/lib/services/agent/planner/repair.d.ts.map +1 -0
  197. package/lib/services/agent/planner/repair.js +51 -0
  198. package/lib/services/agent/planner/structuralRules.d.ts +10 -0
  199. package/lib/services/agent/planner/structuralRules.d.ts.map +1 -0
  200. package/lib/services/agent/planner/structuralRules.js +111 -0
  201. package/lib/services/agent/planner/validators.d.ts +65 -0
  202. package/lib/services/agent/planner/validators.d.ts.map +1 -0
  203. package/lib/services/agent/planner/validators.js +284 -0
  204. package/lib/services/agent/planner.d.ts +3 -0
  205. package/lib/services/agent/planner.d.ts.map +1 -0
  206. package/lib/services/agent/planner.js +14 -0
  207. package/lib/services/agent/providerFallback/chains.d.ts +100 -0
  208. package/lib/services/agent/providerFallback/chains.d.ts.map +1 -0
  209. package/lib/services/agent/providerFallback/chains.js +198 -0
  210. package/lib/services/agent/providerFallback/classifier.d.ts +36 -0
  211. package/lib/services/agent/providerFallback/classifier.d.ts.map +1 -0
  212. package/lib/services/agent/providerFallback/classifier.js +103 -0
  213. package/lib/services/agent/providerFallback/index.d.ts +4 -0
  214. package/lib/services/agent/providerFallback/index.d.ts.map +1 -0
  215. package/lib/services/agent/providerFallback/index.js +19 -0
  216. package/lib/services/agent/providerFallback/withFallback.d.ts +60 -0
  217. package/lib/services/agent/providerFallback/withFallback.d.ts.map +1 -0
  218. package/lib/services/agent/providerFallback/withFallback.js +93 -0
  219. package/lib/services/agent/providerTaskCache.d.ts +50 -0
  220. package/lib/services/agent/providerTaskCache.d.ts.map +1 -0
  221. package/lib/services/agent/providerTaskCache.js +98 -0
  222. package/lib/services/agent/qualityGate.d.ts +82 -0
  223. package/lib/services/agent/qualityGate.d.ts.map +1 -0
  224. package/lib/services/agent/qualityGate.js +232 -0
  225. package/lib/services/agent/referenceImageRenderer.d.ts +37 -0
  226. package/lib/services/agent/referenceImageRenderer.d.ts.map +1 -0
  227. package/lib/services/agent/referenceImageRenderer.js +92 -0
  228. package/lib/services/agent/regenCore.d.ts +60 -0
  229. package/lib/services/agent/regenCore.d.ts.map +1 -0
  230. package/lib/services/agent/regenCore.js +487 -0
  231. package/lib/services/agent/runHelpers.d.ts +44 -0
  232. package/lib/services/agent/runHelpers.d.ts.map +1 -0
  233. package/lib/services/agent/runHelpers.js +196 -0
  234. package/lib/services/agent/sceneLayoutVision.d.ts +90 -0
  235. package/lib/services/agent/sceneLayoutVision.d.ts.map +1 -0
  236. package/lib/services/agent/sceneLayoutVision.js +212 -0
  237. package/lib/services/agent/stitchedVideoCritic.d.ts +136 -0
  238. package/lib/services/agent/stitchedVideoCritic.d.ts.map +1 -0
  239. package/lib/services/agent/stitchedVideoCritic.gemini.d.ts +26 -0
  240. package/lib/services/agent/stitchedVideoCritic.gemini.d.ts.map +1 -0
  241. package/lib/services/agent/stitchedVideoCritic.gemini.js +198 -0
  242. package/lib/services/agent/stitchedVideoCritic.js +162 -0
  243. package/lib/services/agent/taskPoller.d.ts +65 -0
  244. package/lib/services/agent/taskPoller.d.ts.map +1 -0
  245. package/lib/services/agent/taskPoller.js +176 -0
  246. package/lib/services/agent/textOverlayStyles.d.ts +60 -0
  247. package/lib/services/agent/textOverlayStyles.d.ts.map +1 -0
  248. package/lib/services/agent/textOverlayStyles.js +174 -0
  249. package/lib/services/agent/toolRegistry.d.ts +73 -0
  250. package/lib/services/agent/toolRegistry.d.ts.map +1 -0
  251. package/lib/services/agent/toolRegistry.js +95 -0
  252. package/lib/services/agent/tools/analyzeReference.tool.d.ts +36 -0
  253. package/lib/services/agent/tools/analyzeReference.tool.d.ts.map +1 -0
  254. package/lib/services/agent/tools/analyzeReference.tool.js +44 -0
  255. package/lib/services/agent/tools/animateImage.tool.d.ts +24 -0
  256. package/lib/services/agent/tools/animateImage.tool.d.ts.map +1 -0
  257. package/lib/services/agent/tools/animateImage.tool.js +115 -0
  258. package/lib/services/agent/tools/animateImageWithMotionBrush.tool.d.ts +32 -0
  259. package/lib/services/agent/tools/animateImageWithMotionBrush.tool.d.ts.map +1 -0
  260. package/lib/services/agent/tools/animateImageWithMotionBrush.tool.js +135 -0
  261. package/lib/services/agent/tools/composeScene.tool.d.ts +978 -0
  262. package/lib/services/agent/tools/composeScene.tool.d.ts.map +1 -0
  263. package/lib/services/agent/tools/composeScene.tool.js +90 -0
  264. package/lib/services/agent/tools/estimateCost.tool.d.ts +352 -0
  265. package/lib/services/agent/tools/estimateCost.tool.d.ts.map +1 -0
  266. package/lib/services/agent/tools/estimateCost.tool.js +62 -0
  267. package/lib/services/agent/tools/generateAvatarVideo.tool.d.ts +32 -0
  268. package/lib/services/agent/tools/generateAvatarVideo.tool.d.ts.map +1 -0
  269. package/lib/services/agent/tools/generateAvatarVideo.tool.js +143 -0
  270. package/lib/services/agent/tools/generateCaptions.tool.d.ts +42 -0
  271. package/lib/services/agent/tools/generateCaptions.tool.d.ts.map +1 -0
  272. package/lib/services/agent/tools/generateCaptions.tool.js +196 -0
  273. package/lib/services/agent/tools/generateImage.tool.d.ts +74 -0
  274. package/lib/services/agent/tools/generateImage.tool.d.ts.map +1 -0
  275. package/lib/services/agent/tools/generateImage.tool.js +206 -0
  276. package/lib/services/agent/tools/generateVideo.tool.d.ts +31 -0
  277. package/lib/services/agent/tools/generateVideo.tool.d.ts.map +1 -0
  278. package/lib/services/agent/tools/generateVideo.tool.js +153 -0
  279. package/lib/services/agent/tools/generateVoiceover.tool.d.ts +44 -0
  280. package/lib/services/agent/tools/generateVoiceover.tool.d.ts.map +1 -0
  281. package/lib/services/agent/tools/generateVoiceover.tool.js +206 -0
  282. package/lib/services/agent/tools/index.d.ts +20 -0
  283. package/lib/services/agent/tools/index.d.ts.map +1 -0
  284. package/lib/services/agent/tools/index.js +35 -0
  285. package/lib/services/agent/tools/planVideo.tool.d.ts +343 -0
  286. package/lib/services/agent/tools/planVideo.tool.d.ts.map +1 -0
  287. package/lib/services/agent/tools/planVideo.tool.js +46 -0
  288. package/lib/services/agent/tools/render.tool.d.ts +367 -0
  289. package/lib/services/agent/tools/render.tool.d.ts.map +1 -0
  290. package/lib/services/agent/tools/render.tool.js +48 -0
  291. package/lib/services/agent/tools/searchMusic.tool.d.ts +49 -0
  292. package/lib/services/agent/tools/searchMusic.tool.d.ts.map +1 -0
  293. package/lib/services/agent/tools/searchMusic.tool.js +74 -0
  294. package/lib/services/agent/tools/searchStock.tool.d.ts +41 -0
  295. package/lib/services/agent/tools/searchStock.tool.d.ts.map +1 -0
  296. package/lib/services/agent/tools/searchStock.tool.js +314 -0
  297. package/lib/services/agent/tools/searchUserLibrary.tool.d.ts +59 -0
  298. package/lib/services/agent/tools/searchUserLibrary.tool.d.ts.map +1 -0
  299. package/lib/services/agent/tools/searchUserLibrary.tool.js +58 -0
  300. package/lib/services/agent/ttsDuration.d.ts +29 -0
  301. package/lib/services/agent/ttsDuration.d.ts.map +1 -0
  302. package/lib/services/agent/ttsDuration.js +60 -0
  303. package/lib/services/aiGen/aiGenFactory.service.d.ts +21 -1
  304. package/lib/services/aiGen/aiGenFactory.service.d.ts.map +1 -1
  305. package/lib/services/aiGen/aiGenFactory.service.js +84 -21
  306. package/lib/services/aiGen/canonicalAdapters/cameraControl.types.d.ts +31 -0
  307. package/lib/services/aiGen/canonicalAdapters/cameraControl.types.d.ts.map +1 -0
  308. package/lib/services/aiGen/canonicalAdapters/cameraControl.types.js +2 -0
  309. package/lib/services/aiGen/canonicalAdapters/index.d.ts +3 -0
  310. package/lib/services/aiGen/canonicalAdapters/index.d.ts.map +1 -0
  311. package/lib/services/aiGen/canonicalAdapters/index.js +18 -0
  312. package/lib/services/aiGen/canonicalAdapters/multiShot.types.d.ts +23 -0
  313. package/lib/services/aiGen/canonicalAdapters/multiShot.types.d.ts.map +1 -0
  314. package/lib/services/aiGen/canonicalAdapters/multiShot.types.js +12 -0
  315. package/lib/services/aiGen/helpers.d.ts.map +1 -1
  316. package/lib/services/aiGen/helpers.js +10 -0
  317. package/lib/services/aiGen/providers/alibaba/alibaba.d.ts +14 -3
  318. package/lib/services/aiGen/providers/alibaba/alibaba.d.ts.map +1 -1
  319. package/lib/services/aiGen/providers/alibaba/alibaba.js +155 -22
  320. package/lib/services/aiGen/providers/baseAiGenProvider.service.d.ts +22 -4
  321. package/lib/services/aiGen/providers/baseAiGenProvider.service.d.ts.map +1 -1
  322. package/lib/services/aiGen/providers/baseAiGenProvider.service.js +32 -0
  323. package/lib/services/aiGen/providers/bytedance/bytedance.service.d.ts.map +1 -1
  324. package/lib/services/aiGen/providers/bytedance/bytedance.service.js +13 -13
  325. package/lib/services/aiGen/providers/elevenlabs/elevenlabs.service.d.ts +18 -0
  326. package/lib/services/aiGen/providers/elevenlabs/elevenlabs.service.d.ts.map +1 -0
  327. package/lib/services/aiGen/providers/elevenlabs/elevenlabs.service.js +102 -0
  328. package/lib/services/aiGen/providers/fal/falImage.service.d.ts +15 -0
  329. package/lib/services/aiGen/providers/fal/falImage.service.d.ts.map +1 -0
  330. package/lib/services/aiGen/providers/fal/falImage.service.js +141 -0
  331. package/lib/services/aiGen/providers/fal/index.d.ts +2 -0
  332. package/lib/services/aiGen/providers/fal/index.d.ts.map +1 -0
  333. package/lib/services/aiGen/providers/fal/index.js +17 -0
  334. package/lib/services/aiGen/providers/google/google.service.d.ts +11 -2
  335. package/lib/services/aiGen/providers/google/google.service.d.ts.map +1 -1
  336. package/lib/services/aiGen/providers/google/google.service.js +245 -28
  337. package/lib/services/aiGen/providers/index.d.ts +3 -0
  338. package/lib/services/aiGen/providers/index.d.ts.map +1 -1
  339. package/lib/services/aiGen/providers/index.js +3 -0
  340. package/lib/services/aiGen/providers/kling/cameraAdapter.d.ts +4 -0
  341. package/lib/services/aiGen/providers/kling/cameraAdapter.d.ts.map +1 -0
  342. package/lib/services/aiGen/providers/kling/cameraAdapter.js +53 -0
  343. package/lib/services/aiGen/providers/kling/index.d.ts +1 -0
  344. package/lib/services/aiGen/providers/kling/index.d.ts.map +1 -1
  345. package/lib/services/aiGen/providers/kling/index.js +1 -0
  346. package/lib/services/aiGen/providers/kling/kling.service.d.ts +12 -1
  347. package/lib/services/aiGen/providers/kling/kling.service.d.ts.map +1 -1
  348. package/lib/services/aiGen/providers/kling/kling.service.js +357 -26
  349. package/lib/services/aiGen/providers/kling/klingImage.service.d.ts +21 -0
  350. package/lib/services/aiGen/providers/kling/klingImage.service.d.ts.map +1 -0
  351. package/lib/services/aiGen/providers/kling/klingImage.service.js +208 -0
  352. package/lib/services/aiGen/providers/kling/types.d.ts +105 -0
  353. package/lib/services/aiGen/providers/kling/types.d.ts.map +1 -1
  354. package/lib/services/aiGen/providers/minimax/minimax.service.d.ts +15 -2
  355. package/lib/services/aiGen/providers/minimax/minimax.service.d.ts.map +1 -1
  356. package/lib/services/aiGen/providers/minimax/minimax.service.js +127 -1
  357. package/lib/services/aiGen/providers/minimax/types.d.ts +10 -1
  358. package/lib/services/aiGen/providers/minimax/types.d.ts.map +1 -1
  359. package/lib/services/aiGen/providers/openai/openai.service.d.ts +8 -2
  360. package/lib/services/aiGen/providers/openai/openai.service.d.ts.map +1 -1
  361. package/lib/services/aiGen/providers/openai/openai.service.js +184 -7
  362. package/lib/services/aiGen/providers/pexels/index.d.ts +2 -0
  363. package/lib/services/aiGen/providers/pexels/index.d.ts.map +1 -0
  364. package/lib/services/aiGen/providers/{azure → pexels}/index.js +1 -1
  365. package/lib/services/aiGen/providers/pexels/pexels.service.d.ts +11 -0
  366. package/lib/services/aiGen/providers/pexels/pexels.service.d.ts.map +1 -0
  367. package/lib/services/aiGen/providers/pexels/pexels.service.js +150 -0
  368. package/lib/services/aiGen/providers/pixabay/index.d.ts +2 -0
  369. package/lib/services/aiGen/providers/pixabay/index.d.ts.map +1 -0
  370. package/lib/services/aiGen/providers/pixabay/index.js +17 -0
  371. package/lib/services/aiGen/providers/pixabay/pixabay.service.d.ts +12 -0
  372. package/lib/services/aiGen/providers/pixabay/pixabay.service.d.ts.map +1 -0
  373. package/lib/services/aiGen/providers/pixabay/pixabay.service.js +156 -0
  374. package/lib/services/aiGen/providers/pixverse/pixverse.service.d.ts.map +1 -1
  375. package/lib/services/aiGen/providers/pixverse/pixverse.service.js +125 -2
  376. package/lib/services/aiGen/providers/runway/cameraAdapter.d.ts +3 -0
  377. package/lib/services/aiGen/providers/runway/cameraAdapter.d.ts.map +1 -0
  378. package/lib/services/aiGen/providers/runway/cameraAdapter.js +46 -0
  379. package/lib/services/aiGen/providers/runway/runway.service.d.ts +12 -2
  380. package/lib/services/aiGen/providers/runway/runway.service.d.ts.map +1 -1
  381. package/lib/services/aiGen/providers/runway/runway.service.js +224 -21
  382. package/lib/services/aiGen/providers/types.d.ts +263 -6
  383. package/lib/services/aiGen/providers/types.d.ts.map +1 -1
  384. package/lib/services/aiGen/providers/unsplash/index.d.ts +2 -0
  385. package/lib/services/aiGen/providers/unsplash/index.d.ts.map +1 -0
  386. package/lib/services/aiGen/providers/unsplash/index.js +17 -0
  387. package/lib/services/aiGen/providers/unsplash/unsplash.service.d.ts +16 -0
  388. package/lib/services/aiGen/providers/unsplash/unsplash.service.d.ts.map +1 -0
  389. package/lib/services/aiGen/providers/unsplash/unsplash.service.js +131 -0
  390. package/lib/services/analytics.service.js +2 -4
  391. package/lib/services/apiUsageCounter.service.d.ts +20 -0
  392. package/lib/services/apiUsageCounter.service.d.ts.map +1 -0
  393. package/lib/services/apiUsageCounter.service.js +84 -0
  394. package/lib/services/asr/assemblyai.service.d.ts +72 -0
  395. package/lib/services/asr/assemblyai.service.d.ts.map +1 -0
  396. package/lib/services/asr/assemblyai.service.js +89 -0
  397. package/lib/services/asr/index.d.ts +3 -0
  398. package/lib/services/asr/index.d.ts.map +1 -0
  399. package/lib/services/asr/index.js +18 -0
  400. package/lib/services/asr/whisper.service.d.ts +18 -0
  401. package/lib/services/asr/whisper.service.d.ts.map +1 -0
  402. package/lib/services/asr/whisper.service.js +151 -0
  403. package/lib/services/assetCache.service.d.ts +54 -0
  404. package/lib/services/assetCache.service.d.ts.map +1 -0
  405. package/lib/services/assetCache.service.js +109 -0
  406. package/lib/services/audioAnalysis/index.d.ts +2 -0
  407. package/lib/services/audioAnalysis/index.d.ts.map +1 -0
  408. package/lib/services/audioAnalysis/index.js +17 -0
  409. package/lib/services/audioAnalysis/onsetDetection.service.d.ts +50 -0
  410. package/lib/services/audioAnalysis/onsetDetection.service.d.ts.map +1 -0
  411. package/lib/services/audioAnalysis/onsetDetection.service.js +140 -0
  412. package/lib/services/bullmq.service.d.ts +6 -1
  413. package/lib/services/bullmq.service.d.ts.map +1 -1
  414. package/lib/services/bullmq.service.js +62 -14
  415. package/lib/services/credit.service.d.ts.map +1 -1
  416. package/lib/services/credit.service.js +45 -7
  417. package/lib/services/credits/pricing.d.ts +58 -0
  418. package/lib/services/credits/pricing.d.ts.map +1 -0
  419. package/lib/services/credits/pricing.js +111 -0
  420. package/lib/services/editor/designToProject.d.ts +75 -0
  421. package/lib/services/editor/designToProject.d.ts.map +1 -0
  422. package/lib/services/editor/designToProject.js +295 -0
  423. package/lib/services/editor/planToProject.d.ts +84 -0
  424. package/lib/services/editor/planToProject.d.ts.map +1 -0
  425. package/lib/services/editor/planToProject.js +395 -0
  426. package/lib/services/editor/projectToDesign.d.ts +4 -0
  427. package/lib/services/editor/projectToDesign.d.ts.map +1 -0
  428. package/lib/services/editor/projectToDesign.js +186 -0
  429. package/lib/services/firestore.service.d.ts +17 -0
  430. package/lib/services/firestore.service.d.ts.map +1 -1
  431. package/lib/services/firestore.service.js +30 -0
  432. package/lib/services/gcp/index.d.ts +1 -0
  433. package/lib/services/gcp/index.d.ts.map +1 -1
  434. package/lib/services/gcp/index.js +1 -0
  435. package/lib/services/gcp/uploadAudioBuffer.d.ts +13 -0
  436. package/lib/services/gcp/uploadAudioBuffer.d.ts.map +1 -0
  437. package/lib/services/gcp/uploadAudioBuffer.js +28 -0
  438. package/lib/services/index.d.ts +13 -0
  439. package/lib/services/index.d.ts.map +1 -1
  440. package/lib/services/index.js +13 -0
  441. package/lib/services/musicGen/index.d.ts +6 -0
  442. package/lib/services/musicGen/index.d.ts.map +1 -0
  443. package/lib/services/musicGen/index.js +26 -0
  444. package/lib/services/musicGen/musicSearchFactory.service.d.ts +14 -0
  445. package/lib/services/musicGen/musicSearchFactory.service.d.ts.map +1 -0
  446. package/lib/services/musicGen/musicSearchFactory.service.js +59 -0
  447. package/lib/services/musicGen/providers/curated.service.d.ts +24 -0
  448. package/lib/services/musicGen/providers/curated.service.d.ts.map +1 -0
  449. package/lib/services/musicGen/providers/curated.service.js +173 -0
  450. package/lib/services/musicGen/providers/jamendo.service.d.ts +8 -0
  451. package/lib/services/musicGen/providers/jamendo.service.d.ts.map +1 -0
  452. package/lib/services/musicGen/providers/jamendo.service.js +113 -0
  453. package/lib/services/musicGen/providers/mubert.service.d.ts +10 -0
  454. package/lib/services/musicGen/providers/mubert.service.d.ts.map +1 -0
  455. package/lib/services/musicGen/providers/mubert.service.js +128 -0
  456. package/lib/services/musicGen/types.d.ts +46 -0
  457. package/lib/services/musicGen/types.d.ts.map +1 -0
  458. package/lib/services/musicGen/types.js +10 -0
  459. package/lib/services/notification.service.d.ts +22 -0
  460. package/lib/services/notification.service.d.ts.map +1 -0
  461. package/lib/services/notification.service.js +76 -0
  462. package/lib/services/rateLimiter/distributedRateLimiter.service.d.ts +78 -0
  463. package/lib/services/rateLimiter/distributedRateLimiter.service.d.ts.map +1 -0
  464. package/lib/services/rateLimiter/distributedRateLimiter.service.js +269 -0
  465. package/lib/services/rateLimiter/index.d.ts +2 -0
  466. package/lib/services/rateLimiter/index.d.ts.map +1 -0
  467. package/lib/services/rateLimiter/index.js +17 -0
  468. package/lib/services/redis.service.d.ts +9 -0
  469. package/lib/services/redis.service.d.ts.map +1 -1
  470. package/lib/services/redis.service.js +20 -11
  471. package/lib/services/redisOptions.d.ts +22 -0
  472. package/lib/services/redisOptions.d.ts.map +1 -0
  473. package/lib/services/redisOptions.js +51 -0
  474. package/lib/services/tts/index.d.ts +2 -0
  475. package/lib/services/tts/index.d.ts.map +1 -1
  476. package/lib/services/tts/index.js +2 -0
  477. package/lib/services/tts/providers/elevenlabs.service.d.ts.map +1 -1
  478. package/lib/services/tts/providers/elevenlabs.service.js +91 -24
  479. package/lib/services/tts/providers/minimax.service.d.ts +14 -0
  480. package/lib/services/tts/providers/minimax.service.d.ts.map +1 -0
  481. package/lib/services/tts/providers/minimax.service.js +78 -0
  482. package/lib/services/tts/providers/openai.service.d.ts +14 -0
  483. package/lib/services/tts/providers/openai.service.d.ts.map +1 -0
  484. package/lib/services/tts/providers/openai.service.js +73 -0
  485. package/lib/services/tts/ttsFactory.service.d.ts.map +1 -1
  486. package/lib/services/tts/ttsFactory.service.js +6 -0
  487. package/lib/services/tts/types.d.ts +33 -0
  488. package/lib/services/tts/types.d.ts.map +1 -1
  489. package/lib/utils/errors.d.ts +8 -0
  490. package/lib/utils/errors.d.ts.map +1 -1
  491. package/lib/utils/errors.js +8 -0
  492. package/lib/utils/helpers.d.ts +13 -0
  493. package/lib/utils/helpers.d.ts.map +1 -1
  494. package/lib/utils/helpers.js +48 -11
  495. package/lib/utils/logger.d.ts.map +1 -1
  496. package/lib/utils/logger.js +37 -1
  497. package/package.json +5 -1
  498. package/lib/services/aiGen/providers/azure/azure.service.d.ts +0 -14
  499. package/lib/services/aiGen/providers/azure/azure.service.d.ts.map +0 -1
  500. package/lib/services/aiGen/providers/azure/azure.service.js +0 -108
  501. package/lib/services/aiGen/providers/azure/index.d.ts +0 -2
  502. package/lib/services/aiGen/providers/azure/index.d.ts.map +0 -1
@@ -0,0 +1,31 @@
1
+ import { z } from "zod";
2
+ import { EVideoGenModels } from "../../../globals/aiModels";
3
+ import { ToolDefinition } from "../toolRegistry";
4
+ declare const InputSchema: z.ZodObject<{
5
+ prompt: z.ZodString;
6
+ modelKey: z.ZodEnum<typeof EVideoGenModels>;
7
+ durationSec: z.ZodDefault<z.ZodNumber>;
8
+ aspectRatio: z.ZodDefault<z.ZodEnum<{
9
+ "9:16": "9:16";
10
+ "1:1": "1:1";
11
+ "16:9": "16:9";
12
+ }>>;
13
+ resolution: z.ZodOptional<z.ZodEnum<{
14
+ "720p": "720p";
15
+ "1080p": "1080p";
16
+ "4k": "4k";
17
+ }>>;
18
+ inputImageUrl: z.ZodOptional<z.ZodString>;
19
+ audio: z.ZodOptional<z.ZodBoolean>;
20
+ negativePrompt: z.ZodOptional<z.ZodString>;
21
+ }, z.core.$strip>;
22
+ declare const OutputSchema: z.ZodObject<{
23
+ status: z.ZodLiteral<"triggered">;
24
+ taskId: z.ZodString;
25
+ raw: z.ZodUnknown;
26
+ modelKeyUsed: z.ZodOptional<z.ZodString>;
27
+ attemptedProviders: z.ZodOptional<z.ZodArray<z.ZodString>>;
28
+ }, z.core.$strip>;
29
+ export declare const generateVideoTool: ToolDefinition<typeof InputSchema, typeof OutputSchema>;
30
+ export {};
31
+ //# sourceMappingURL=generateVideo.tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generateVideo.tool.d.ts","sourceRoot":"","sources":["../../../../src/services/agent/tools/generateVideo.tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAI5D,OAAO,EAAgB,cAAc,EAAE,MAAM,iBAAiB,CAAC;AA4B/D,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;iBA+Bf,CAAC;AAEH,QAAA,MAAM,YAAY;;;;;;iBAOhB,CAAC;AAEH,eAAO,MAAM,iBAAiB,EAAE,cAAc,CAC5C,OAAO,WAAW,EAClB,OAAO,YAAY,CA0GpB,CAAC"}
@@ -0,0 +1,153 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.generateVideoTool = void 0;
4
+ const zod_1 = require("zod");
5
+ const aiModels_1 = require("../../../globals/aiModels");
6
+ const logger_1 = require("../../../utils/logger");
7
+ const aiGenFactory_service_1 = require("../../aiGen/aiGenFactory.service");
8
+ const rateLimiter_1 = require("../../rateLimiter");
9
+ const toolRegistry_1 = require("../toolRegistry");
10
+ const chains_1 = require("../providerFallback/chains");
11
+ const withFallback_1 = require("../providerFallback/withFallback");
12
+ function pickChain(modelKey, isI2V) {
13
+ const isPremium = modelKey.startsWith("google-veo-3.1") ||
14
+ modelKey === aiModels_1.EVideoGenModels.KLING_V2_6 ||
15
+ modelKey === aiModels_1.EVideoGenModels.RUNWAY_GEN4_5 ||
16
+ modelKey === aiModels_1.EVideoGenModels.BYTEDANCE_SEEDANCE_2_0 ||
17
+ modelKey.startsWith("openai-sora");
18
+ if (isI2V)
19
+ return isPremium ? chains_1.T3_IMAGE_TO_VIDEO_CHAIN : chains_1.T2_IMAGE_TO_VIDEO_CHAIN;
20
+ return isPremium ? chains_1.T3_TEXT_TO_VIDEO_CHAIN : chains_1.T2_TEXT_TO_VIDEO_CHAIN;
21
+ }
22
+ const InputSchema = zod_1.z.object({
23
+ prompt: zod_1.z
24
+ .string()
25
+ .min(1)
26
+ .describe("Detailed motion + visual prompt. Describe subject, camera move, mood, lighting."),
27
+ modelKey: zod_1.z
28
+ .nativeEnum(aiModels_1.EVideoGenModels)
29
+ .describe("Pick by tier: T3 cinematic = google-veo-3.1, runway-gen4.5; balanced = kling-v2.6, bytedance-seedance-1.5-pro; cheap fast = minimax-hailuo-2.3-fast, pixverse-v5.6."),
30
+ durationSec: zod_1.z
31
+ .number()
32
+ .int()
33
+ .min(2)
34
+ .max(20)
35
+ .default(5)
36
+ .describe("Clip length in seconds (model-capped)."),
37
+ // AG-16: 4:5 removed — no video provider supports it.
38
+ aspectRatio: zod_1.z.enum(["9:16", "16:9", "1:1"]).default("9:16"),
39
+ resolution: zod_1.z.enum(["720p", "1080p", "4k"]).optional(),
40
+ inputImageUrl: zod_1.z
41
+ .string()
42
+ .url()
43
+ .optional()
44
+ .describe("Source image for image-to-video. If set, this is an animate_image-style call."),
45
+ audio: zod_1.z.boolean().optional().describe("Whether the model should generate audio."),
46
+ negativePrompt: zod_1.z.string().optional(),
47
+ });
48
+ const OutputSchema = zod_1.z.object({
49
+ status: zod_1.z.literal("triggered"),
50
+ taskId: zod_1.z.string().describe("Provider task id — pass to monitor/poll layer."),
51
+ raw: zod_1.z.unknown(),
52
+ /** Provider actually used (may differ from input.modelKey if fallback fired). */
53
+ modelKeyUsed: zod_1.z.string().optional(),
54
+ attemptedProviders: zod_1.z.array(zod_1.z.string()).optional(),
55
+ });
56
+ exports.generateVideoTool = {
57
+ name: "generate_video",
58
+ description: [
59
+ "Trigger AI video generation (T2 image-to-video or T3 text-to-video tier).",
60
+ "Returns immediately with a provider task id; the executor must poll status",
61
+ "via the existing job monitor — DO NOT block on completion in the tool.",
62
+ "Use sparingly: this is the most expensive tool. Prefer search_stock for",
63
+ "generic b-roll and animate_image (image-to-video) for product/scene shots",
64
+ "where a still + motion is enough.",
65
+ "Examples:",
66
+ ' { prompt: "slow dolly into a steaming espresso cup, warm light", modelKey: "kling-v2.6", durationSec: 5 }',
67
+ ' { prompt: "subject turns to camera, smiles", modelKey: "runway-gen4-turbo", inputImageUrl: "https://...", durationSec: 5 }',
68
+ ].join(" "),
69
+ inputSchema: InputSchema,
70
+ outputSchema: OutputSchema,
71
+ idempotent: false,
72
+ estimateCost: async (input) => {
73
+ // Rough per-second tier estimate; precise pricing comes from aiModelConfigs.
74
+ const isPremium = input.modelKey.startsWith("google-veo-3") ||
75
+ input.modelKey.startsWith("runway-gen4") ||
76
+ input.modelKey.startsWith("openai-sora");
77
+ return Math.ceil(input.durationSec * (isPremium ? 12 : 4));
78
+ },
79
+ handler: async (input) => {
80
+ const isI2V = Boolean(input.inputImageUrl);
81
+ const chain = (0, chains_1.buildVideoChain)(input.modelKey, pickChain(input.modelKey, isI2V));
82
+ const outcome = await (0, withFallback_1.withProviderFallback)({
83
+ providers: chain,
84
+ capable: (m) => (0, chains_1.isVideoModelCapable)(m, {
85
+ aspect: input.aspectRatio,
86
+ durationSec: input.durationSec,
87
+ type: isI2V ? "image-to-video" : "text-to-video",
88
+ lastFrame: false,
89
+ audio: input.audio,
90
+ hasInputImage: isI2V,
91
+ }),
92
+ onAttempt: (a) => {
93
+ if (a.classification) {
94
+ logger_1.logger.warn("generate_video provider attempt failed", {
95
+ provider: String(a.provider),
96
+ classification: a.classification.classification,
97
+ needsReplan: a.classification.needsReplan,
98
+ err: a.classification.message,
99
+ durationMs: a.durationMs,
100
+ });
101
+ }
102
+ },
103
+ call: async (modelKey) => {
104
+ // Three-gate quota: in-process concurrent + Redis per-min + Redis
105
+ // per-day. Hold the slot through return — release happens in the
106
+ // host's TaskPoller when the task settles. On submit error / no
107
+ // taskId we release here so the fallback chain can re-acquire for
108
+ // the next provider attempt.
109
+ const limiter = (0, rateLimiter_1.getAiGenModelRateLimiter)(modelKey);
110
+ await limiter.waitUntilAvailable();
111
+ let heldSlot = true;
112
+ try {
113
+ const provider = (0, aiGenFactory_service_1.getAiGenProviderService)(modelKey);
114
+ const result = await provider.generateVideo({
115
+ prompt: input.prompt,
116
+ modelKey,
117
+ duration: input.durationSec,
118
+ aspectRatio: input.aspectRatio,
119
+ resolution: input.resolution,
120
+ inputImageUrl: input.inputImageUrl,
121
+ audio: input.audio,
122
+ negativePrompt: input.negativePrompt,
123
+ type: isI2V ? "image-to-video" : "text-to-video",
124
+ });
125
+ const taskId = result.task?.taskId ??
126
+ result.task?.id ??
127
+ (typeof result.task === "string" ? result.task : "unknown");
128
+ if (taskId === "unknown") {
129
+ limiter.releaseSlot();
130
+ heldSlot = false;
131
+ }
132
+ return { taskId, raw: result.task, modelKey };
133
+ }
134
+ catch (err) {
135
+ if (heldSlot)
136
+ limiter.releaseSlot();
137
+ throw err;
138
+ }
139
+ },
140
+ });
141
+ if (!outcome.ok) {
142
+ throw new withFallback_1.ProviderFallbackExhaustedError(outcome.classification.classification, outcome.needsReplan, outcome.attempts.map((a) => String(a.provider)), `generate_video: chain exhausted (${outcome.classification.classification}): ${outcome.classification.message}`);
143
+ }
144
+ return {
145
+ status: "triggered",
146
+ taskId: outcome.value.taskId,
147
+ raw: outcome.value.raw,
148
+ modelKeyUsed: outcome.value.modelKey,
149
+ attemptedProviders: outcome.attempts.map((a) => String(a.provider)),
150
+ };
151
+ },
152
+ };
153
+ (0, toolRegistry_1.registerTool)(exports.generateVideoTool);
@@ -0,0 +1,44 @@
1
+ import { z } from "zod";
2
+ import { ToolDefinition } from "../toolRegistry";
3
+ declare const InputSchema: z.ZodObject<{
4
+ text: z.ZodString;
5
+ provider: z.ZodDefault<z.ZodEnum<{
6
+ elevenlabs: "elevenlabs";
7
+ minimax: "minimax";
8
+ openai: "openai";
9
+ }>>;
10
+ voiceId: z.ZodOptional<z.ZodString>;
11
+ modelId: z.ZodOptional<z.ZodEnum<{
12
+ eleven_v3: "eleven_v3";
13
+ eleven_multilingual_v2: "eleven_multilingual_v2";
14
+ eleven_turbo_v2_5: "eleven_turbo_v2_5";
15
+ eleven_flash_v2_5: "eleven_flash_v2_5";
16
+ }>>;
17
+ languageCode: z.ZodOptional<z.ZodString>;
18
+ outputFormat: z.ZodOptional<z.ZodString>;
19
+ stability: z.ZodOptional<z.ZodNumber>;
20
+ similarityBoost: z.ZodOptional<z.ZodNumber>;
21
+ style: z.ZodOptional<z.ZodNumber>;
22
+ useSpeakerBoost: z.ZodOptional<z.ZodBoolean>;
23
+ speed: z.ZodOptional<z.ZodNumber>;
24
+ seed: z.ZodOptional<z.ZodNumber>;
25
+ previousText: z.ZodOptional<z.ZodString>;
26
+ nextText: z.ZodOptional<z.ZodString>;
27
+ previousRequestIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
28
+ nextRequestIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
29
+ applyTextNormalization: z.ZodOptional<z.ZodEnum<{
30
+ on: "on";
31
+ off: "off";
32
+ auto: "auto";
33
+ }>>;
34
+ applyLanguageTextNormalization: z.ZodOptional<z.ZodBoolean>;
35
+ optimizeStreamingLatency: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<0>, z.ZodLiteral<1>, z.ZodLiteral<2>, z.ZodLiteral<3>, z.ZodLiteral<4>]>>;
36
+ }, z.core.$strip>;
37
+ declare const OutputSchema: z.ZodObject<{
38
+ audioBase64: z.ZodString;
39
+ mimeType: z.ZodString;
40
+ extension: z.ZodString;
41
+ }, z.core.$strip>;
42
+ export declare const generateVoiceoverTool: ToolDefinition<typeof InputSchema, typeof OutputSchema>;
43
+ export {};
44
+ //# sourceMappingURL=generateVoiceover.tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generateVoiceover.tool.d.ts","sourceRoot":"","sources":["../../../../src/services/agent/tools/generateVoiceover.tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,OAAO,EAAgB,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAe/D,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAyHf,CAAC;AAEH,QAAA,MAAM,YAAY;;;;iBAMhB,CAAC;AAEH,eAAO,MAAM,qBAAqB,EAAE,cAAc,CAChD,OAAO,WAAW,EAClB,OAAO,YAAY,CAwFpB,CAAC"}
@@ -0,0 +1,206 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.generateVoiceoverTool = void 0;
4
+ const zod_1 = require("zod");
5
+ const voices_1 = require("../../../globals/ttsModels/voices");
6
+ const assetCache_service_1 = require("../../assetCache.service");
7
+ const rateLimiter_1 = require("../../rateLimiter");
8
+ const ttsFactory_service_1 = require("../../tts/ttsFactory.service");
9
+ const toolRegistry_1 = require("../toolRegistry");
10
+ // Firestore docs are capped at ~1MB. Base64 inflates ~33%, so a 700KB
11
+ // payload limit keeps us safely under for the doc + metadata. Anything
12
+ // larger (long monologues at high bitrate) skips the cache write.
13
+ const VO_CACHE_MAX_BYTES = 700000;
14
+ // Surface the curated catalog inline so the LLM sees the full voice menu
15
+ // (id + name + accent + persona) in the tool description without having to
16
+ // call a separate listing tool. Cheap on tokens — ~20 voices, ~1 line each.
17
+ const ELEVENLABS_VOICE_MENU = voices_1.ELEVENLABS_VOICES.map((v) => ` ${v.id} — ${v.name} (${v.gender}, ${v.accent}${v.age ? `, ${v.age}` : ""}) — ${v.persona ?? ""}`).join("\n");
18
+ const InputSchema = zod_1.z.object({
19
+ text: zod_1.z.string().min(1).describe("VO line to synthesize. One scene's worth."),
20
+ provider: zod_1.z
21
+ .enum(["elevenlabs", "openai", "minimax"])
22
+ .default("elevenlabs")
23
+ .describe("TTS provider. elevenlabs = best quality + style control; openai = cheap/fast; minimax = strong multilingual."),
24
+ voiceId: zod_1.z
25
+ .string()
26
+ .optional()
27
+ .describe("Provider-specific voice id. Omit to use the project default; the brand kit's voice id is auto-injected by the executor. " +
28
+ `Available ElevenLabs voice ids:\n${ELEVENLABS_VOICE_MENU}`),
29
+ modelId: zod_1.z
30
+ .enum([
31
+ "eleven_v3",
32
+ "eleven_multilingual_v2",
33
+ "eleven_turbo_v2_5",
34
+ "eleven_flash_v2_5",
35
+ ])
36
+ .optional()
37
+ .describe("ElevenLabs model. v3 = best quality + style + 70+ langs (slower); multilingual_v2 = stable workhorse; turbo_v2_5 = ~3-5× faster (preview/draft); flash_v2_5 = lowest latency for real-time."),
38
+ languageCode: zod_1.z
39
+ .string()
40
+ .optional()
41
+ .describe('Locale, e.g. "en", "fr-FR". Omit to let the model auto-detect.'),
42
+ outputFormat: zod_1.z
43
+ .string()
44
+ .optional()
45
+ .describe('ElevenLabs output container/codec, e.g. "mp3_44100_192" (best mp3), "pcm_24000" (raw 24kHz pcm), "opus_48000_128". Default: mp3_44100_128.'),
46
+ // ── voice_settings ──────────────────────────────────────────────────
47
+ stability: zod_1.z
48
+ .number()
49
+ .min(0)
50
+ .max(1)
51
+ .optional()
52
+ .describe("ElevenLabs voice_settings.stability (0–1). Lower = more emotive/varied; higher = more consistent/monotone. Default 0.5."),
53
+ similarityBoost: zod_1.z
54
+ .number()
55
+ .min(0)
56
+ .max(1)
57
+ .optional()
58
+ .describe("ElevenLabs voice_settings.similarity_boost (0–1). Higher = closer to source voice's timbre. Default 0.75."),
59
+ style: zod_1.z
60
+ .number()
61
+ .min(0)
62
+ .max(1)
63
+ .optional()
64
+ .describe("ElevenLabs voice_settings.style — exaggeration (0–1). 0 = neutral; >0 amplifies the voice's signature delivery (use sparingly above 0.5 — can introduce artifacts)."),
65
+ useSpeakerBoost: zod_1.z
66
+ .boolean()
67
+ .optional()
68
+ .describe("ElevenLabs voice_settings.use_speaker_boost — boosts perceived similarity (small latency cost)."),
69
+ speed: zod_1.z
70
+ .number()
71
+ .min(0.7)
72
+ .max(1.2)
73
+ .optional()
74
+ .describe("ElevenLabs voice_settings.speed (0.7–1.2). 1.0 = natural pace. <1 slows down, >1 speeds up."),
75
+ // ── continuity / determinism ────────────────────────────────────────
76
+ seed: zod_1.z
77
+ .number()
78
+ .int()
79
+ .min(0)
80
+ .max(4294967295)
81
+ .optional()
82
+ .describe("Deterministic re-render seed when supported (ElevenLabs)."),
83
+ previousText: zod_1.z
84
+ .string()
85
+ .optional()
86
+ .describe("Preceding scene's VO text — prosody continuity hint (ElevenLabs)."),
87
+ nextText: zod_1.z
88
+ .string()
89
+ .optional()
90
+ .describe("Following scene's VO text — prosody continuity hint (ElevenLabs)."),
91
+ previousRequestIds: zod_1.z
92
+ .array(zod_1.z.string())
93
+ .max(3)
94
+ .optional()
95
+ .describe("Up to 3 ElevenLabs request ids of preceding generations. Strongest cross-scene continuity (better than previousText)."),
96
+ nextRequestIds: zod_1.z
97
+ .array(zod_1.z.string())
98
+ .max(3)
99
+ .optional()
100
+ .describe("Up to 3 ElevenLabs request ids of following generations."),
101
+ // ── text normalization ──────────────────────────────────────────────
102
+ applyTextNormalization: zod_1.z
103
+ .enum(["auto", "on", "off"])
104
+ .optional()
105
+ .describe('Whether to spell out numbers / symbols. "auto" (default) lets the model decide; "off" passes text verbatim (use for SSML-style tags or pre-normalised input).'),
106
+ applyLanguageTextNormalization: zod_1.z
107
+ .boolean()
108
+ .optional()
109
+ .describe("Apply language-specific normalisation. Currently effective for Japanese only."),
110
+ // ── streaming / latency ─────────────────────────────────────────────
111
+ optimizeStreamingLatency: zod_1.z
112
+ .union([zod_1.z.literal(0), zod_1.z.literal(1), zod_1.z.literal(2), zod_1.z.literal(3), zod_1.z.literal(4)])
113
+ .optional()
114
+ .describe("0 (default, best quality) → 4 (max speed, disables normaliser). Use 3–4 only for live/preview where latency dominates."),
115
+ });
116
+ const OutputSchema = zod_1.z.object({
117
+ audioBase64: zod_1.z
118
+ .string()
119
+ .describe("Base64-encoded audio bytes — host uploads to GCS and swaps for url."),
120
+ mimeType: zod_1.z.string(),
121
+ extension: zod_1.z.string(),
122
+ });
123
+ exports.generateVoiceoverTool = {
124
+ name: "generate_voiceover",
125
+ description: [
126
+ "Generate a TTS voiceover line. One call per scene; do NOT batch multi-scene",
127
+ "scripts in one call — per-scene calls give the editor clean cut points and",
128
+ "the asset cache deduplicates retries.",
129
+ "Examples:",
130
+ ' { text: "Try our new vitamin C serum — visibly brighter in 7 days." }',
131
+ ' { text: "Bonjour", languageCode: "fr-FR" }',
132
+ ].join(" "),
133
+ inputSchema: InputSchema,
134
+ outputSchema: OutputSchema,
135
+ idempotent: true,
136
+ estimateCost: async (input) => Math.max(1, Math.ceil(input.text.length / 200)),
137
+ handler: async (input) => {
138
+ const cacheParts = {
139
+ provider: `tts:${input.provider}`,
140
+ kind: "voiceover",
141
+ input: {
142
+ text: input.text,
143
+ voiceId: input.voiceId,
144
+ modelId: input.modelId,
145
+ languageCode: input.languageCode,
146
+ outputFormat: input.outputFormat,
147
+ stability: input.stability,
148
+ similarityBoost: input.similarityBoost,
149
+ style: input.style,
150
+ useSpeakerBoost: input.useSpeakerBoost,
151
+ speed: input.speed,
152
+ seed: input.seed,
153
+ applyTextNormalization: input.applyTextNormalization,
154
+ applyLanguageTextNormalization: input.applyLanguageTextNormalization,
155
+ },
156
+ // Continuity hints (previousText/nextText, request ids) and streaming
157
+ // latency are deliberately excluded from the cache key — they don't
158
+ // change deterministic output meaningfully and keying on them would
159
+ // evict otherwise-identical generations.
160
+ };
161
+ const hit = await assetCache_service_1.RawAssetCacheService.lookup(cacheParts);
162
+ if (hit)
163
+ return hit;
164
+ const provider = (0, ttsFactory_service_1.getTtsProviderService)(input.provider);
165
+ // Synchronous TTS call — slot released on return. Per-min consumption
166
+ // is durable in Redis so the per-minute cap holds across restarts.
167
+ const limiter = (0, rateLimiter_1.getTtsProviderRateLimiter)(input.provider);
168
+ await limiter.waitUntilAvailable();
169
+ let result;
170
+ try {
171
+ result = await provider.generate({
172
+ text: input.text,
173
+ voiceId: input.voiceId,
174
+ modelIdOverride: input.modelId,
175
+ languageCode: input.languageCode,
176
+ outputFormat: input.outputFormat,
177
+ stability: input.stability,
178
+ similarityBoost: input.similarityBoost,
179
+ style: input.style,
180
+ useSpeakerBoost: input.useSpeakerBoost,
181
+ speed: input.speed,
182
+ seed: input.seed,
183
+ previousText: input.previousText,
184
+ nextText: input.nextText,
185
+ previousRequestIds: input.previousRequestIds,
186
+ nextRequestIds: input.nextRequestIds,
187
+ applyTextNormalization: input.applyTextNormalization,
188
+ applyLanguageTextNormalization: input.applyLanguageTextNormalization,
189
+ optimizeStreamingLatency: input.optimizeStreamingLatency,
190
+ });
191
+ }
192
+ finally {
193
+ limiter.releaseSlot();
194
+ }
195
+ const payload = {
196
+ audioBase64: result.audioBuffer.toString("base64"),
197
+ mimeType: result.mimeType,
198
+ extension: result.extension,
199
+ };
200
+ if (payload.audioBase64.length <= VO_CACHE_MAX_BYTES) {
201
+ void assetCache_service_1.RawAssetCacheService.store(cacheParts, payload).catch(() => undefined);
202
+ }
203
+ return payload;
204
+ },
205
+ };
206
+ (0, toolRegistry_1.registerTool)(exports.generateVoiceoverTool);
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Importing this file registers every built-in tool with the toolRegistry.
3
+ * Host apps (Express server, Firebase Functions) import this once at boot.
4
+ */
5
+ export * from "./searchStock.tool";
6
+ export * from "./generateImage.tool";
7
+ export * from "./generateVideo.tool";
8
+ export * from "./generateVoiceover.tool";
9
+ export * from "./generateCaptions.tool";
10
+ export * from "./animateImage.tool";
11
+ export * from "./animateImageWithMotionBrush.tool";
12
+ export * from "./generateAvatarVideo.tool";
13
+ export * from "./planVideo.tool";
14
+ export * from "./composeScene.tool";
15
+ export * from "./render.tool";
16
+ export * from "./analyzeReference.tool";
17
+ export * from "./searchUserLibrary.tool";
18
+ export * from "./searchMusic.tool";
19
+ export * from "./estimateCost.tool";
20
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/services/agent/tools/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oCAAoC,CAAC;AACnD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC"}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ /**
18
+ * Importing this file registers every built-in tool with the toolRegistry.
19
+ * Host apps (Express server, Firebase Functions) import this once at boot.
20
+ */
21
+ __exportStar(require("./searchStock.tool"), exports);
22
+ __exportStar(require("./generateImage.tool"), exports);
23
+ __exportStar(require("./generateVideo.tool"), exports);
24
+ __exportStar(require("./generateVoiceover.tool"), exports);
25
+ __exportStar(require("./generateCaptions.tool"), exports);
26
+ __exportStar(require("./animateImage.tool"), exports);
27
+ __exportStar(require("./animateImageWithMotionBrush.tool"), exports);
28
+ __exportStar(require("./generateAvatarVideo.tool"), exports);
29
+ __exportStar(require("./planVideo.tool"), exports);
30
+ __exportStar(require("./composeScene.tool"), exports);
31
+ __exportStar(require("./render.tool"), exports);
32
+ __exportStar(require("./analyzeReference.tool"), exports);
33
+ __exportStar(require("./searchUserLibrary.tool"), exports);
34
+ __exportStar(require("./searchMusic.tool"), exports);
35
+ __exportStar(require("./estimateCost.tool"), exports);