@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,188 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.INSTRUMENTAL_COMPOSITION_TOOL = exports.LYRICS_COMPOSITION_TOOL = exports.LYRICS_MAX_TOKENS = void 0;
4
+ exports.buildLyricsMessages = buildLyricsMessages;
5
+ exports.buildInstrumentalMessages = buildInstrumentalMessages;
6
+ exports.parseToolCallResult = parseToolCallResult;
7
+ const musicSettings_js_1 = require("../media/musicSettings.js");
8
+ const randomThemes_js_1 = require("./randomThemes.js");
9
+ exports.LYRICS_MAX_TOKENS = 2048;
10
+ const LYRICS_SYSTEM_PROMPT = `You are an expert songwriter. Generate song lyrics using the ACE-Step structured format and return them via the compose_lyrics tool.
11
+
12
+ Section headers — each section tag can optionally include a vocal/performance modifier after a hyphen, e.g. [Section - modifier]. Choose modifiers that fit the song's mood and vary them across sections.
13
+ Common structures: Verse, Chorus, Bridge, Intro, Outro, Instrumental, Interlude, Build, Drop, Breakdown — but you can use any descriptive section name like Guitar Solo, Piano Interlude, Fade Out, etc.
14
+ Modifiers are free-form — describe vocal delivery or performance feel in your own words. Not every section needs one. Examples for inspiration: raspy, breathy, falsetto, belting, spoken word, humming, anthemic, gentle, building, harmonies, a cappella
15
+ Keep modifiers to one or two words per tag.
16
+
17
+ Rules:
18
+ - Write natural, creative lyrics that match the requested style/mood
19
+ - Keep line lengths appropriate for singing (6-10 syllables per line for optimal rhythm)
20
+ - Use CAPS for intense/shouted lines: "WE ARE THE FIRE!"
21
+ - Use parentheses for background vocals: "We rise together (together)"
22
+ - The lyrics should be suitable for a song, not a poem
23
+
24
+ Suggest a duration that fits the lyrics naturally at the chosen tempo.`;
25
+ const INSTRUMENTAL_SYSTEM_PROMPT = `You are an expert music composer and arranger. Design an instrumental music structure using the ACE-Step structured format and return it via the compose_instrumental tool.
26
+
27
+ Output ONLY section tags in brackets — one per line, nothing else between them. The AI music model interprets any text outside brackets as lyrics to sing, so do NOT include descriptions, directions, or any other text between section tags.
28
+
29
+ Section tags — use tags like [Intro], [Main Theme], [Bridge], [Build], [Drop], [Breakdown], [Climax], [Outro], [Guitar Solo], [Piano Interlude], [Fade Out], etc.
30
+ Each tag can optionally include a performance modifier after a hyphen, e.g. [Section - modifier]. Choose modifiers that describe the instrumental feel.
31
+ Modifiers are free-form — describe the energy, dynamics, or featured instruments. Examples: building, ambient, driving, melodic, percussive, atmospheric, powerful, delicate, syncopated, distorted
32
+
33
+ Example output format:
34
+ [Intro - ambient pads]
35
+ [Main Theme - driving guitar]
36
+ [Bridge - stripped back piano]
37
+ [Build - percussive, rising]
38
+ [Drop - powerful, full band]
39
+ [Outro - fade out]
40
+
41
+ Rules:
42
+ - Output ONLY bracketed section tags, one per line — NO text between sections
43
+ - Use modifiers within the brackets to convey dynamics, instrumentation, and energy
44
+ - Structure the sections to create a natural musical arc
45
+ - Match the requested style/mood
46
+
47
+ Suggest a duration that fits the structure naturally at the chosen tempo.`;
48
+ exports.LYRICS_COMPOSITION_TOOL = {
49
+ type: 'function',
50
+ function: {
51
+ name: 'compose_lyrics',
52
+ description: 'Output the composed song lyrics and musical parameters',
53
+ parameters: {
54
+ type: 'object',
55
+ properties: {
56
+ lyrics: {
57
+ type: 'string',
58
+ description: 'Song lyrics with enriched section headers (e.g. [Verse 1 - soft vocal]). Use \\n for newlines.',
59
+ },
60
+ bpm: { type: 'number', description: 'Tempo in beats per minute, e.g. 120 for a pop song' },
61
+ keyscale: {
62
+ type: 'string',
63
+ description: 'Musical key and scale, e.g. "D minor", "A major", "F# minor"',
64
+ },
65
+ timesignature: {
66
+ type: 'string',
67
+ enum: ['2/4', '3/4', '4/4', '6/8'],
68
+ description: 'Time signature. Most songs use 4/4; waltzes use 3/4',
69
+ },
70
+ duration: {
71
+ type: 'number',
72
+ description: 'Estimated song duration in seconds that fits the lyrics at the chosen tempo',
73
+ },
74
+ },
75
+ required: ['lyrics', 'bpm', 'keyscale', 'timesignature', 'duration'],
76
+ },
77
+ },
78
+ };
79
+ exports.INSTRUMENTAL_COMPOSITION_TOOL = {
80
+ type: 'function',
81
+ function: {
82
+ name: 'compose_instrumental',
83
+ description: 'Output the composed instrumental music structure and musical parameters',
84
+ parameters: {
85
+ type: 'object',
86
+ properties: {
87
+ structure: {
88
+ type: 'string',
89
+ description: 'Instrumental structure as ONLY bracketed section tags, one per line, with NO text between them (e.g. [Intro - ambient pads]\\n[Main Theme - driving guitar]\\n[Bridge - stripped back]). Use \\n for newlines.',
90
+ },
91
+ bpm: {
92
+ type: 'number',
93
+ description: 'Tempo in beats per minute, e.g. 120 for an upbeat track',
94
+ },
95
+ keyscale: {
96
+ type: 'string',
97
+ description: 'Musical key and scale, e.g. "D minor", "A major", "F# minor"',
98
+ },
99
+ timesignature: {
100
+ type: 'string',
101
+ enum: ['2/4', '3/4', '4/4', '6/8'],
102
+ description: 'Time signature. Most songs use 4/4; waltzes use 3/4',
103
+ },
104
+ duration: {
105
+ type: 'number',
106
+ description: 'Estimated track duration in seconds that fits the structure at the chosen tempo',
107
+ },
108
+ },
109
+ required: ['structure', 'bpm', 'keyscale', 'timesignature', 'duration'],
110
+ },
111
+ },
112
+ };
113
+ function buildLyricsMessages(prompt, language, musicPrompt, randomTheme) {
114
+ const messages = [{ role: 'system', content: LYRICS_SYSTEM_PROMPT }];
115
+ let userMessage;
116
+ if (prompt.trim()) {
117
+ userMessage = prompt;
118
+ }
119
+ else {
120
+ const theme = randomTheme || (0, randomThemes_js_1.getRandomLyricsTheme)();
121
+ userMessage = `Come up with a unique, original song about: ${theme}. Be creative and surprising.`;
122
+ }
123
+ if (musicPrompt) {
124
+ userMessage += `\n\nMusic style context: ${musicPrompt}`;
125
+ }
126
+ if (language && language !== 'unknown') {
127
+ userMessage += `\n\nWrite the lyrics in: ${musicSettings_js_1.LANGUAGE_LABELS[language]}`;
128
+ }
129
+ messages.push({ role: 'user', content: userMessage });
130
+ return messages;
131
+ }
132
+ function buildInstrumentalMessages(prompt, musicPrompt, randomTheme) {
133
+ const messages = [{ role: 'system', content: INSTRUMENTAL_SYSTEM_PROMPT }];
134
+ let userMessage;
135
+ if (prompt.trim()) {
136
+ userMessage = prompt;
137
+ }
138
+ else {
139
+ const theme = randomTheme || (0, randomThemes_js_1.getRandomLyricsTheme)();
140
+ userMessage = `Come up with a unique, original instrumental piece inspired by: ${theme}. Be creative and surprising.`;
141
+ }
142
+ if (musicPrompt) {
143
+ userMessage += `\n\nMusic style context: ${musicPrompt}`;
144
+ }
145
+ messages.push({ role: 'user', content: userMessage });
146
+ return messages;
147
+ }
148
+ function parseTimeSignature(value) {
149
+ const str = String(value ?? '');
150
+ const map = { '2/4': '2', '3/4': '3', '4/4': '4', '6/8': '6' };
151
+ if (map[str])
152
+ return map[str];
153
+ const signatures = Object.keys(musicSettings_js_1.MUSIC_TIME_SIGNATURES);
154
+ if (signatures.includes(str))
155
+ return str;
156
+ return null;
157
+ }
158
+ function parseTempo(value) {
159
+ const num = Number(value);
160
+ if (!isNaN(num) && num >= musicSettings_js_1.MUSIC_BPM.min && num <= musicSettings_js_1.MUSIC_BPM.max)
161
+ return Math.round(num);
162
+ return null;
163
+ }
164
+ function parseDuration(value) {
165
+ const num = Number(value);
166
+ if (!isNaN(num) && num >= musicSettings_js_1.MUSIC_DURATION.min && num <= musicSettings_js_1.MUSIC_DURATION.max)
167
+ return Math.round(num);
168
+ return null;
169
+ }
170
+ function parseKeyScale(value) {
171
+ if (!value)
172
+ return null;
173
+ const str = String(value);
174
+ const found = musicSettings_js_1.MUSIC_KEY_SCALES.find((k) => k.toLowerCase() === str.toLowerCase());
175
+ return found || null;
176
+ }
177
+ function parseToolCallResult(args) {
178
+ const rawText = String(args.lyrics || args.structure || '');
179
+ const lyrics = rawText.includes('\n') ? rawText : rawText.replace(/\\n/g, '\n');
180
+ return {
181
+ lyrics: lyrics.trim(),
182
+ tempo: parseTempo(args.bpm),
183
+ key: parseKeyScale(args.keyscale),
184
+ timeSignature: parseTimeSignature(args.timesignature),
185
+ duration: parseDuration(args.duration),
186
+ };
187
+ }
188
+ //# sourceMappingURL=musicComposition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"musicComposition.js","sourceRoot":"","sources":["../../src/contracts/musicComposition.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ export interface PromptContract {
2
+ contractId: string;
3
+ version: string;
4
+ toolName: string;
5
+ baseDescription: string;
6
+ parameterDocs: Record<string, string>;
7
+ voiceExamples?: string[];
8
+ conditionalNotes?: Record<string, string>;
9
+ }
10
+ export declare function isPromptContract(value: unknown): value is PromptContract;
11
+ //# sourceMappingURL=promptContract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promptContract.d.ts","sourceRoot":"","sources":["../../src/contracts/promptContract.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,cAAc;IAE7B,UAAU,EAAE,MAAM,CAAC;IAEnB,OAAO,EAAE,MAAM,CAAC;IAEhB,QAAQ,EAAE,MAAM,CAAC;IAEjB,eAAe,EAAE,MAAM,CAAC;IAExB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEtC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IAMzB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC3C;AAUD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,cAAc,CAcxE"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isPromptContract = isPromptContract;
4
+ function isStringRecord(value) {
5
+ if (value === null || typeof value !== 'object')
6
+ return false;
7
+ for (const v of Object.values(value)) {
8
+ if (typeof v !== 'string')
9
+ return false;
10
+ }
11
+ return true;
12
+ }
13
+ function isPromptContract(value) {
14
+ if (value === null || typeof value !== 'object')
15
+ return false;
16
+ const v = value;
17
+ if (typeof v.contractId !== 'string' || v.contractId.length === 0)
18
+ return false;
19
+ if (typeof v.version !== 'string' || v.version.length === 0)
20
+ return false;
21
+ if (typeof v.toolName !== 'string' || v.toolName.length === 0)
22
+ return false;
23
+ if (typeof v.baseDescription !== 'string')
24
+ return false;
25
+ if (!isStringRecord(v.parameterDocs))
26
+ return false;
27
+ if (v.voiceExamples !== undefined) {
28
+ if (!Array.isArray(v.voiceExamples))
29
+ return false;
30
+ if (v.voiceExamples.some((x) => typeof x !== 'string'))
31
+ return false;
32
+ }
33
+ if (v.conditionalNotes !== undefined && !isStringRecord(v.conditionalNotes))
34
+ return false;
35
+ return true;
36
+ }
37
+ //# sourceMappingURL=promptContract.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promptContract.js","sourceRoot":"","sources":["../../src/contracts/promptContract.ts"],"names":[],"mappings":";;AAkCA,4CAcC;AAtBD,SAAS,cAAc,CAAC,KAAc;IACpC,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC9D,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,KAAgC,CAAC,EAAE,CAAC;QAChE,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;IAC1C,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAgB,gBAAgB,CAAC,KAAc;IAC7C,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,CAAC,GAAG,KAAgC,CAAC;IAC3C,IAAI,OAAO,CAAC,CAAC,UAAU,KAAK,QAAQ,IAAI,CAAC,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAChF,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC1E,IAAI,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC5E,IAAI,OAAO,CAAC,CAAC,eAAe,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACxD,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa,CAAC;QAAE,OAAO,KAAK,CAAC;IACnD,IAAI,CAAC,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;QAClC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC;YAAE,OAAO,KAAK,CAAC;QAClD,IAAI,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;YAAE,OAAO,KAAK,CAAC;IACvE,CAAC;IACD,IAAI,CAAC,CAAC,gBAAgB,KAAK,SAAS,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,gBAAgB,CAAC;QAAE,OAAO,KAAK,CAAC;IAC1F,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const LITERAL_PROMPT_OVERRIDE = "LITERAL PROMPT OVERRIDE: If the user explicitly says not to modify the prompt, or to use it exactly/verbatim/as-is, copy the identified prompt text verbatim instead of applying these construction rules unless a hard requirement is missing.";
2
+ //# sourceMappingURL=promptOverrideMarker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promptOverrideMarker.d.ts","sourceRoot":"","sources":["../../src/contracts/promptOverrideMarker.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,uBAAuB,oPAC+M,CAAC"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LITERAL_PROMPT_OVERRIDE = void 0;
4
+ exports.LITERAL_PROMPT_OVERRIDE = 'LITERAL PROMPT OVERRIDE: If the user explicitly says not to modify the prompt, or to use it exactly/verbatim/as-is, copy the identified prompt text verbatim instead of applying these construction rules unless a hard requirement is missing.';
5
+ //# sourceMappingURL=promptOverrideMarker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"promptOverrideMarker.js","sourceRoot":"","sources":["../../src/contracts/promptOverrideMarker.ts"],"names":[],"mappings":";;;AAIa,QAAA,uBAAuB,GAClC,iPAAiP,CAAC"}
@@ -0,0 +1,5 @@
1
+ export declare const RANDOM_THEMES: readonly ["a mountain summit", "a bamboo forest", "a frozen waterfall", "a lavender field", "a volcanic coastline", "a bay at night", "a salt flat with cracked earth", "a redwood forest", "a coral reef with sea life", "a rolling prairie", "a narrow alley in the rain", "an old movie theater", "a busy outdoor market", "a concrete overpass", "a rooftop garden above a city", "a canal with boats", "a glass skyscraper", "a subway station", "a cobblestone square", "an open-air night market", "a bookshop with tall shelves", "an arcade with game machines", "a cathedral interior", "a cabin interior during a storm", "an artist studio with paint everywhere", "an abandoned hallway", "a spaceship control room", "a greenhouse full of plants", "a small music club with a stage", "a pottery workshop", "a street musician playing violin", "a fisherman mending nets", "a dancer practicing alone", "a blacksmith forging metal", "a child chasing fireflies", "a surfer riding a wave", "a chef preparing food in a kitchen", "a climber resting on a ridge", "a painter working on a mural", "a person walking through a temple garden", "a wolf pack crossing a river", "a hummingbird near flowers", "an octopus moving through a shipwreck", "wild horses galloping on a beach", "a leopard on a cliff edge", "an owl swooping through a forest", "jellyfish drifting in deep water", "a fox on a forest floor", "a whale breaching the surface", "flamingos on a lake", "a city floating above clouds", "a street vendor selling unusual wares", "a dragon on a tower", "an explorer in an alien jungle", "a knight crossing a stone bridge", "a person stepping out of a portal", "a robot tending a garden", "a potion brewer in a tower", "a warrior standing in a flower field", "a domed city underwater", "a locomotive crossing a bridge", "a sailboat on the open ocean", "a motorcycle on a coastal road", "a hot air balloon over a valley", "a truck on a desert road", "a fishing boat in rough seas", "a bicycle leaning against a wall", "a cable car over a gorge", "a canoe on a still lake", "a spaceship landing on a planet", "a lightning storm over a field", "a rainbow over a waterfall", "a sandstorm approaching an oasis", "an aurora over a tundra", "fog rolling through a harbor", "a downpour flooding a street", "snowfall covering a village", "heat shimmer over a highway", "a wildfire on a ridge", "rain falling on a garden", "a table set for a feast outdoors", "a bowl of soup in a small shop", "a market stall with tropical fruits", "a pastry display in a bakery", "a campfire under the stars", "ink dissolving in water", "glass fragments mid-explosion", "paint splashing on a canvas", "smoke forming spirals", "leaves caught in wind"];
2
+ export declare const RANDOM_LYRICS_THEMES: readonly ["missing someone far away", "falling for a stranger", "letting go of the past", "a love that came too late", "growing apart from a friend", "forgiving someone who hurt you", "the moment before a first kiss", "a letter you never sent", "dancing alone in your room", "waiting for a phone call", "finding yourself after losing everything", "pretending to be fine", "the person you used to be", "learning to trust yourself", "the mask you wear for others", "outgrowing your hometown", "starting over in a new place", "the voice inside your head", "becoming someone unexpected", "celebrating your own flaws", "a road trip with no destination", "the last day of summer", "a conversation at 3am", "running away from responsibility", "a promise made in the rain", "sneaking out at midnight", "a goodbye at a train station", "waking up in an unfamiliar place", "a party that changed everything", "chasing a dream everyone doubts", "the ocean at night", "walking through an empty city", "a fire burning low", "stars seen from a rooftop", "a storm rolling in", "footprints in fresh snow", "a river that keeps flowing", "the silence after thunder", "a garden growing wild", "the horizon at sunrise", "time moving too fast", "the weight of unspoken words", "chasing shadows", "a door that only opens once", "the space between heartbeats", "colors you cannot name", "echoes of a forgotten song", "building something from nothing", "the price of freedom", "a world inside a dream"];
3
+ export declare function getRandomTheme(random?: () => number): string;
4
+ export declare function getRandomLyricsTheme(random?: () => number): string;
5
+ //# sourceMappingURL=randomThemes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"randomThemes.d.ts","sourceRoot":"","sources":["../../src/contracts/randomThemes.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,aAAa,spFA2FhB,CAAC;AAEX,eAAO,MAAM,oBAAoB,s8CAmDvB,CAAC;AAMX,wBAAgB,cAAc,CAAC,MAAM,GAAE,MAAM,MAAoB,GAAG,MAAM,CAEzE;AAED,wBAAgB,oBAAoB,CAAC,MAAM,GAAE,MAAM,MAAoB,GAAG,MAAM,CAE/E"}
@@ -0,0 +1,159 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RANDOM_LYRICS_THEMES = exports.RANDOM_THEMES = void 0;
4
+ exports.getRandomTheme = getRandomTheme;
5
+ exports.getRandomLyricsTheme = getRandomLyricsTheme;
6
+ exports.RANDOM_THEMES = [
7
+ 'a mountain summit',
8
+ 'a bamboo forest',
9
+ 'a frozen waterfall',
10
+ 'a lavender field',
11
+ 'a volcanic coastline',
12
+ 'a bay at night',
13
+ 'a salt flat with cracked earth',
14
+ 'a redwood forest',
15
+ 'a coral reef with sea life',
16
+ 'a rolling prairie',
17
+ 'a narrow alley in the rain',
18
+ 'an old movie theater',
19
+ 'a busy outdoor market',
20
+ 'a concrete overpass',
21
+ 'a rooftop garden above a city',
22
+ 'a canal with boats',
23
+ 'a glass skyscraper',
24
+ 'a subway station',
25
+ 'a cobblestone square',
26
+ 'an open-air night market',
27
+ 'a bookshop with tall shelves',
28
+ 'an arcade with game machines',
29
+ 'a cathedral interior',
30
+ 'a cabin interior during a storm',
31
+ 'an artist studio with paint everywhere',
32
+ 'an abandoned hallway',
33
+ 'a spaceship control room',
34
+ 'a greenhouse full of plants',
35
+ 'a small music club with a stage',
36
+ 'a pottery workshop',
37
+ 'a street musician playing violin',
38
+ 'a fisherman mending nets',
39
+ 'a dancer practicing alone',
40
+ 'a blacksmith forging metal',
41
+ 'a child chasing fireflies',
42
+ 'a surfer riding a wave',
43
+ 'a chef preparing food in a kitchen',
44
+ 'a climber resting on a ridge',
45
+ 'a painter working on a mural',
46
+ 'a person walking through a temple garden',
47
+ 'a wolf pack crossing a river',
48
+ 'a hummingbird near flowers',
49
+ 'an octopus moving through a shipwreck',
50
+ 'wild horses galloping on a beach',
51
+ 'a leopard on a cliff edge',
52
+ 'an owl swooping through a forest',
53
+ 'jellyfish drifting in deep water',
54
+ 'a fox on a forest floor',
55
+ 'a whale breaching the surface',
56
+ 'flamingos on a lake',
57
+ 'a city floating above clouds',
58
+ 'a street vendor selling unusual wares',
59
+ 'a dragon on a tower',
60
+ 'an explorer in an alien jungle',
61
+ 'a knight crossing a stone bridge',
62
+ 'a person stepping out of a portal',
63
+ 'a robot tending a garden',
64
+ 'a potion brewer in a tower',
65
+ 'a warrior standing in a flower field',
66
+ 'a domed city underwater',
67
+ 'a locomotive crossing a bridge',
68
+ 'a sailboat on the open ocean',
69
+ 'a motorcycle on a coastal road',
70
+ 'a hot air balloon over a valley',
71
+ 'a truck on a desert road',
72
+ 'a fishing boat in rough seas',
73
+ 'a bicycle leaning against a wall',
74
+ 'a cable car over a gorge',
75
+ 'a canoe on a still lake',
76
+ 'a spaceship landing on a planet',
77
+ 'a lightning storm over a field',
78
+ 'a rainbow over a waterfall',
79
+ 'a sandstorm approaching an oasis',
80
+ 'an aurora over a tundra',
81
+ 'fog rolling through a harbor',
82
+ 'a downpour flooding a street',
83
+ 'snowfall covering a village',
84
+ 'heat shimmer over a highway',
85
+ 'a wildfire on a ridge',
86
+ 'rain falling on a garden',
87
+ 'a table set for a feast outdoors',
88
+ 'a bowl of soup in a small shop',
89
+ 'a market stall with tropical fruits',
90
+ 'a pastry display in a bakery',
91
+ 'a campfire under the stars',
92
+ 'ink dissolving in water',
93
+ 'glass fragments mid-explosion',
94
+ 'paint splashing on a canvas',
95
+ 'smoke forming spirals',
96
+ 'leaves caught in wind',
97
+ ];
98
+ exports.RANDOM_LYRICS_THEMES = [
99
+ 'missing someone far away',
100
+ 'falling for a stranger',
101
+ 'letting go of the past',
102
+ 'a love that came too late',
103
+ 'growing apart from a friend',
104
+ 'forgiving someone who hurt you',
105
+ 'the moment before a first kiss',
106
+ 'a letter you never sent',
107
+ 'dancing alone in your room',
108
+ 'waiting for a phone call',
109
+ 'finding yourself after losing everything',
110
+ 'pretending to be fine',
111
+ 'the person you used to be',
112
+ 'learning to trust yourself',
113
+ 'the mask you wear for others',
114
+ 'outgrowing your hometown',
115
+ 'starting over in a new place',
116
+ 'the voice inside your head',
117
+ 'becoming someone unexpected',
118
+ 'celebrating your own flaws',
119
+ 'a road trip with no destination',
120
+ 'the last day of summer',
121
+ 'a conversation at 3am',
122
+ 'running away from responsibility',
123
+ 'a promise made in the rain',
124
+ 'sneaking out at midnight',
125
+ 'a goodbye at a train station',
126
+ 'waking up in an unfamiliar place',
127
+ 'a party that changed everything',
128
+ 'chasing a dream everyone doubts',
129
+ 'the ocean at night',
130
+ 'walking through an empty city',
131
+ 'a fire burning low',
132
+ 'stars seen from a rooftop',
133
+ 'a storm rolling in',
134
+ 'footprints in fresh snow',
135
+ 'a river that keeps flowing',
136
+ 'the silence after thunder',
137
+ 'a garden growing wild',
138
+ 'the horizon at sunrise',
139
+ 'time moving too fast',
140
+ 'the weight of unspoken words',
141
+ 'chasing shadows',
142
+ 'a door that only opens once',
143
+ 'the space between heartbeats',
144
+ 'colors you cannot name',
145
+ 'echoes of a forgotten song',
146
+ 'building something from nothing',
147
+ 'the price of freedom',
148
+ 'a world inside a dream',
149
+ ];
150
+ function pickRandom(items, random) {
151
+ return items[Math.floor(random() * items.length)];
152
+ }
153
+ function getRandomTheme(random = Math.random) {
154
+ return pickRandom(exports.RANDOM_THEMES, random);
155
+ }
156
+ function getRandomLyricsTheme(random = Math.random) {
157
+ return pickRandom(exports.RANDOM_LYRICS_THEMES, random);
158
+ }
159
+ //# sourceMappingURL=randomThemes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"randomThemes.js","sourceRoot":"","sources":["../../src/contracts/randomThemes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import { type PromptContract } from './promptContract.js';
2
+ import { type ToolGatingPolicy } from './toolGatingPolicy.js';
3
+ import { type RepairRecipe } from './repairRecipe.js';
4
+ import type { ToolCostMetadata } from './data/toolCostMetadata.js';
5
+ import type { ToolPermission } from './data/toolPermissions.js';
6
+ export declare class ContractRegistry {
7
+ private readonly promptContracts;
8
+ private readonly gatingPolicies;
9
+ private readonly repairRecipes;
10
+ private readonly toolCostMetadata;
11
+ private readonly toolPermissions;
12
+ registerPromptContract(contract: PromptContract): void;
13
+ registerGatingPolicy(policy: ToolGatingPolicy): void;
14
+ registerRepairRecipe(recipe: RepairRecipe): void;
15
+ registerToolCostMetadata(metadata: ToolCostMetadata): void;
16
+ registerToolPermission(permission: ToolPermission): void;
17
+ getPromptContract(toolName: string): PromptContract | undefined;
18
+ getGatingPolicy(policyId: string): ToolGatingPolicy | undefined;
19
+ findRepairRecipe(toolName: string, errorCode: string): RepairRecipe | undefined;
20
+ getToolCostMetadata(toolName: string): ToolCostMetadata | undefined;
21
+ getToolPermission(toolName: string): ToolPermission | undefined;
22
+ listPromptContracts(): PromptContract[];
23
+ listGatingPolicies(): ToolGatingPolicy[];
24
+ listRepairRecipes(): RepairRecipe[];
25
+ listToolCostMetadata(): ToolCostMetadata[];
26
+ listToolPermissions(): ToolPermission[];
27
+ private repairKey;
28
+ }
29
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/contracts/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EAAsB,KAAK,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAClF,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAiChE,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAqC;IACrE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAuC;IACtE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAmC;IACjE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAuC;IACxE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAqC;IAErE,sBAAsB,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI;IAOtD,oBAAoB,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAOpD,oBAAoB,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI;IAOhD,wBAAwB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,IAAI;IAO1D,sBAAsB,CAAC,UAAU,EAAE,cAAc,GAAG,IAAI;IAOxD,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;IAI/D,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS;IAI/D,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAI/E,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS;IAInE,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;IAI/D,mBAAmB,IAAI,cAAc,EAAE;IAIvC,kBAAkB,IAAI,gBAAgB,EAAE;IAIxC,iBAAiB,IAAI,YAAY,EAAE;IAInC,oBAAoB,IAAI,gBAAgB,EAAE;IAI1C,mBAAmB,IAAI,cAAc,EAAE;IAIvC,OAAO,CAAC,SAAS;CAGlB"}
@@ -0,0 +1,104 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ContractRegistry = void 0;
4
+ const promptContract_js_1 = require("./promptContract.js");
5
+ const toolGatingPolicy_js_1 = require("./toolGatingPolicy.js");
6
+ const repairRecipe_js_1 = require("./repairRecipe.js");
7
+ function isString(value) {
8
+ return typeof value === 'string' && value.length > 0;
9
+ }
10
+ function isStringRecord(value) {
11
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
12
+ }
13
+ function isToolCostMetadata(value) {
14
+ if (!isStringRecord(value))
15
+ return false;
16
+ return isString(value.tool)
17
+ && isString(value.costClass)
18
+ && ['safe', 'paid', 'destructive'].includes(String(value.riskLevel))
19
+ && isString(value.userVisibleCost)
20
+ && isString(value.description);
21
+ }
22
+ function isToolPermission(value) {
23
+ if (!isStringRecord(value))
24
+ return false;
25
+ return isString(value.tool)
26
+ && ['allow', 'require_user_approval', 'require_explicit_intent'].includes(String(value.decision))
27
+ && ['safe', 'paid', 'destructive'].includes(String(value.riskLevel))
28
+ && typeof value.requiresUserApproval === 'boolean'
29
+ && isString(value.userVisibleCost);
30
+ }
31
+ class ContractRegistry {
32
+ constructor() {
33
+ this.promptContracts = new Map();
34
+ this.gatingPolicies = new Map();
35
+ this.repairRecipes = new Map();
36
+ this.toolCostMetadata = new Map();
37
+ this.toolPermissions = new Map();
38
+ }
39
+ registerPromptContract(contract) {
40
+ if (!(0, promptContract_js_1.isPromptContract)(contract)) {
41
+ throw new Error(`Invalid PromptContract: ${JSON.stringify(contract)}`);
42
+ }
43
+ this.promptContracts.set(contract.toolName, contract);
44
+ }
45
+ registerGatingPolicy(policy) {
46
+ if (!(0, toolGatingPolicy_js_1.isToolGatingPolicy)(policy)) {
47
+ throw new Error(`Invalid ToolGatingPolicy: ${JSON.stringify(policy)}`);
48
+ }
49
+ this.gatingPolicies.set(policy.policyId, policy);
50
+ }
51
+ registerRepairRecipe(recipe) {
52
+ if (!(0, repairRecipe_js_1.isRepairRecipe)(recipe)) {
53
+ throw new Error(`Invalid RepairRecipe: ${JSON.stringify(recipe)}`);
54
+ }
55
+ this.repairRecipes.set(this.repairKey(recipe.toolName, recipe.errorCode), recipe);
56
+ }
57
+ registerToolCostMetadata(metadata) {
58
+ if (!isToolCostMetadata(metadata)) {
59
+ throw new Error(`Invalid ToolCostMetadata: ${JSON.stringify(metadata)}`);
60
+ }
61
+ this.toolCostMetadata.set(metadata.tool, metadata);
62
+ }
63
+ registerToolPermission(permission) {
64
+ if (!isToolPermission(permission)) {
65
+ throw new Error(`Invalid ToolPermission: ${JSON.stringify(permission)}`);
66
+ }
67
+ this.toolPermissions.set(permission.tool, permission);
68
+ }
69
+ getPromptContract(toolName) {
70
+ return this.promptContracts.get(toolName);
71
+ }
72
+ getGatingPolicy(policyId) {
73
+ return this.gatingPolicies.get(policyId);
74
+ }
75
+ findRepairRecipe(toolName, errorCode) {
76
+ return this.repairRecipes.get(this.repairKey(toolName, errorCode));
77
+ }
78
+ getToolCostMetadata(toolName) {
79
+ return this.toolCostMetadata.get(toolName);
80
+ }
81
+ getToolPermission(toolName) {
82
+ return this.toolPermissions.get(toolName);
83
+ }
84
+ listPromptContracts() {
85
+ return Array.from(this.promptContracts.values());
86
+ }
87
+ listGatingPolicies() {
88
+ return Array.from(this.gatingPolicies.values());
89
+ }
90
+ listRepairRecipes() {
91
+ return Array.from(this.repairRecipes.values());
92
+ }
93
+ listToolCostMetadata() {
94
+ return Array.from(this.toolCostMetadata.values());
95
+ }
96
+ listToolPermissions() {
97
+ return Array.from(this.toolPermissions.values());
98
+ }
99
+ repairKey(toolName, errorCode) {
100
+ return `${toolName}::${errorCode}`;
101
+ }
102
+ }
103
+ exports.ContractRegistry = ContractRegistry;
104
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/contracts/registry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ export type RepairRecipeMode = 'autoRepair' | 'suggestFollowup' | 'stopAndAsk';
2
+ export interface RepairRecipe {
3
+ recipeId: string;
4
+ version: string;
5
+ toolName: string;
6
+ errorCode: string;
7
+ mode: RepairRecipeMode;
8
+ maxRetries: number;
9
+ repairNoteTemplate: string;
10
+ autoRepairFields?: string[];
11
+ suggestedFollowupTool?: string;
12
+ }
13
+ export declare function isRepairRecipe(value: unknown): value is RepairRecipe;
14
+ //# sourceMappingURL=repairRecipe.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repairRecipe.d.ts","sourceRoot":"","sources":["../../src/contracts/repairRecipe.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,gBAAgB,GAAG,YAAY,GAAG,iBAAiB,GAAG,YAAY,CAAC;AAQ/E,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IAKjB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,gBAAgB,CAAC;IAEvB,UAAU,EAAE,MAAM,CAAC;IAKnB,kBAAkB,EAAE,MAAM,CAAC;IAK3B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAK5B,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,YAAY,CAkBpE"}