@transloadit/node 4.7.6 → 4.7.7

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 (463) hide show
  1. package/dist/alphalib/assembly-linter.js +1 -1
  2. package/dist/alphalib/assembly-linter.js.map +1 -1
  3. package/dist/alphalib/stepParsing.js +2 -2
  4. package/dist/alphalib/stepParsing.js.map +1 -1
  5. package/dist/alphalib/types/assemblyReplay.d.ts +2 -7860
  6. package/dist/alphalib/types/assemblyReplay.d.ts.map +1 -1
  7. package/dist/alphalib/types/assemblyReplayNotification.d.ts +2 -7860
  8. package/dist/alphalib/types/assemblyReplayNotification.d.ts.map +1 -1
  9. package/dist/alphalib/types/assemblyStatus.d.ts +4807 -298
  10. package/dist/alphalib/types/assemblyStatus.d.ts.map +1 -1
  11. package/dist/alphalib/types/assemblyStatus.js +36 -1
  12. package/dist/alphalib/types/assemblyStatus.js.map +1 -1
  13. package/dist/alphalib/types/robots/_index.d.ts +903 -72620
  14. package/dist/alphalib/types/robots/_index.d.ts.map +1 -1
  15. package/dist/alphalib/types/robots/_index.js +62 -11
  16. package/dist/alphalib/types/robots/_index.js.map +1 -1
  17. package/dist/alphalib/types/robots/_instructions-primitives.d.ts +41 -10
  18. package/dist/alphalib/types/robots/_instructions-primitives.d.ts.map +1 -1
  19. package/dist/alphalib/types/robots/_instructions-primitives.js +89 -3
  20. package/dist/alphalib/types/robots/_instructions-primitives.js.map +1 -1
  21. package/dist/alphalib/types/robots/ai-chat.d.ts +33 -0
  22. package/dist/alphalib/types/robots/ai-chat.d.ts.map +1 -1
  23. package/dist/alphalib/types/robots/ai-chat.js +28 -5
  24. package/dist/alphalib/types/robots/ai-chat.js.map +1 -1
  25. package/dist/alphalib/types/robots/assembly-savejson.d.ts.map +1 -1
  26. package/dist/alphalib/types/robots/assembly-savejson.js +8 -0
  27. package/dist/alphalib/types/robots/assembly-savejson.js.map +1 -1
  28. package/dist/alphalib/types/robots/audio-artwork.d.ts.map +1 -1
  29. package/dist/alphalib/types/robots/audio-artwork.js +4 -5
  30. package/dist/alphalib/types/robots/audio-artwork.js.map +1 -1
  31. package/dist/alphalib/types/robots/audio-concat.d.ts.map +1 -1
  32. package/dist/alphalib/types/robots/audio-concat.js +1 -2
  33. package/dist/alphalib/types/robots/audio-concat.js.map +1 -1
  34. package/dist/alphalib/types/robots/audio-encode.d.ts.map +1 -1
  35. package/dist/alphalib/types/robots/audio-encode.js +1 -2
  36. package/dist/alphalib/types/robots/audio-encode.js.map +1 -1
  37. package/dist/alphalib/types/robots/audio-loop.d.ts.map +1 -1
  38. package/dist/alphalib/types/robots/audio-loop.js +1 -2
  39. package/dist/alphalib/types/robots/audio-loop.js.map +1 -1
  40. package/dist/alphalib/types/robots/audio-merge.d.ts.map +1 -1
  41. package/dist/alphalib/types/robots/audio-merge.js +1 -2
  42. package/dist/alphalib/types/robots/audio-merge.js.map +1 -1
  43. package/dist/alphalib/types/robots/audio-split.d.ts +2936 -0
  44. package/dist/alphalib/types/robots/audio-split.d.ts.map +1 -0
  45. package/dist/alphalib/types/robots/audio-split.js +88 -0
  46. package/dist/alphalib/types/robots/audio-split.js.map +1 -0
  47. package/dist/alphalib/types/robots/audio-waveform.d.ts +92 -6
  48. package/dist/alphalib/types/robots/audio-waveform.d.ts.map +1 -1
  49. package/dist/alphalib/types/robots/audio-waveform.js +72 -6
  50. package/dist/alphalib/types/robots/audio-waveform.js.map +1 -1
  51. package/dist/alphalib/types/robots/azure-import.d.ts.map +1 -1
  52. package/dist/alphalib/types/robots/azure-import.js +0 -1
  53. package/dist/alphalib/types/robots/azure-import.js.map +1 -1
  54. package/dist/alphalib/types/robots/azure-store.d.ts.map +1 -1
  55. package/dist/alphalib/types/robots/azure-store.js +0 -1
  56. package/dist/alphalib/types/robots/azure-store.js.map +1 -1
  57. package/dist/alphalib/types/robots/backblaze-import.d.ts.map +1 -1
  58. package/dist/alphalib/types/robots/backblaze-import.js +0 -1
  59. package/dist/alphalib/types/robots/backblaze-import.js.map +1 -1
  60. package/dist/alphalib/types/robots/backblaze-store.d.ts.map +1 -1
  61. package/dist/alphalib/types/robots/backblaze-store.js +0 -1
  62. package/dist/alphalib/types/robots/backblaze-store.js.map +1 -1
  63. package/dist/alphalib/types/robots/box-import.d.ts +150 -0
  64. package/dist/alphalib/types/robots/box-import.d.ts.map +1 -0
  65. package/dist/alphalib/types/robots/box-import.js +63 -0
  66. package/dist/alphalib/types/robots/box-import.js.map +1 -0
  67. package/dist/alphalib/types/robots/box-store.d.ts +455 -0
  68. package/dist/alphalib/types/robots/box-store.d.ts.map +1 -0
  69. package/dist/alphalib/types/robots/box-store.js +66 -0
  70. package/dist/alphalib/types/robots/box-store.js.map +1 -0
  71. package/dist/alphalib/types/robots/cloudfiles-import.d.ts.map +1 -1
  72. package/dist/alphalib/types/robots/cloudfiles-import.js +0 -1
  73. package/dist/alphalib/types/robots/cloudfiles-import.js.map +1 -1
  74. package/dist/alphalib/types/robots/cloudfiles-store.d.ts.map +1 -1
  75. package/dist/alphalib/types/robots/cloudfiles-store.js +0 -1
  76. package/dist/alphalib/types/robots/cloudfiles-store.js.map +1 -1
  77. package/dist/alphalib/types/robots/cloudflare-import.d.ts.map +1 -1
  78. package/dist/alphalib/types/robots/cloudflare-import.js +0 -1
  79. package/dist/alphalib/types/robots/cloudflare-import.js.map +1 -1
  80. package/dist/alphalib/types/robots/cloudflare-store.d.ts.map +1 -1
  81. package/dist/alphalib/types/robots/cloudflare-store.js +0 -1
  82. package/dist/alphalib/types/robots/cloudflare-store.js.map +1 -1
  83. package/dist/alphalib/types/robots/digitalocean-import.d.ts.map +1 -1
  84. package/dist/alphalib/types/robots/digitalocean-import.js +0 -1
  85. package/dist/alphalib/types/robots/digitalocean-import.js.map +1 -1
  86. package/dist/alphalib/types/robots/digitalocean-store.d.ts.map +1 -1
  87. package/dist/alphalib/types/robots/digitalocean-store.js +0 -1
  88. package/dist/alphalib/types/robots/digitalocean-store.js.map +1 -1
  89. package/dist/alphalib/types/robots/document-autorotate.d.ts.map +1 -1
  90. package/dist/alphalib/types/robots/document-autorotate.js +8 -1
  91. package/dist/alphalib/types/robots/document-autorotate.js.map +1 -1
  92. package/dist/alphalib/types/robots/document-convert.d.ts +8 -8
  93. package/dist/alphalib/types/robots/document-convert.d.ts.map +1 -1
  94. package/dist/alphalib/types/robots/document-convert.js +9 -3
  95. package/dist/alphalib/types/robots/document-convert.js.map +1 -1
  96. package/dist/alphalib/types/robots/document-merge.d.ts.map +1 -1
  97. package/dist/alphalib/types/robots/document-merge.js +0 -1
  98. package/dist/alphalib/types/robots/document-merge.js.map +1 -1
  99. package/dist/alphalib/types/robots/document-ocr.d.ts.map +1 -1
  100. package/dist/alphalib/types/robots/document-ocr.js +0 -1
  101. package/dist/alphalib/types/robots/document-ocr.js.map +1 -1
  102. package/dist/alphalib/types/robots/document-optimize.d.ts.map +1 -1
  103. package/dist/alphalib/types/robots/document-optimize.js +0 -1
  104. package/dist/alphalib/types/robots/document-optimize.js.map +1 -1
  105. package/dist/alphalib/types/robots/document-split.d.ts.map +1 -1
  106. package/dist/alphalib/types/robots/document-split.js +9 -1
  107. package/dist/alphalib/types/robots/document-split.js.map +1 -1
  108. package/dist/alphalib/types/robots/document-thumbs.d.ts +12 -0
  109. package/dist/alphalib/types/robots/document-thumbs.d.ts.map +1 -1
  110. package/dist/alphalib/types/robots/document-thumbs.js +23 -4
  111. package/dist/alphalib/types/robots/document-thumbs.js.map +1 -1
  112. package/dist/alphalib/types/robots/dropbox-import.d.ts.map +1 -1
  113. package/dist/alphalib/types/robots/dropbox-import.js +0 -1
  114. package/dist/alphalib/types/robots/dropbox-import.js.map +1 -1
  115. package/dist/alphalib/types/robots/dropbox-store.d.ts.map +1 -1
  116. package/dist/alphalib/types/robots/dropbox-store.js +0 -1
  117. package/dist/alphalib/types/robots/dropbox-store.js.map +1 -1
  118. package/dist/alphalib/types/robots/edgly-deliver.d.ts.map +1 -1
  119. package/dist/alphalib/types/robots/edgly-deliver.js +8 -1
  120. package/dist/alphalib/types/robots/edgly-deliver.js.map +1 -1
  121. package/dist/alphalib/types/robots/file-compress.d.ts +12 -0
  122. package/dist/alphalib/types/robots/file-compress.d.ts.map +1 -1
  123. package/dist/alphalib/types/robots/file-compress.js +8 -1
  124. package/dist/alphalib/types/robots/file-compress.js.map +1 -1
  125. package/dist/alphalib/types/robots/file-decompress.d.ts +24 -0
  126. package/dist/alphalib/types/robots/file-decompress.d.ts.map +1 -1
  127. package/dist/alphalib/types/robots/file-decompress.js +30 -5
  128. package/dist/alphalib/types/robots/file-decompress.js.map +1 -1
  129. package/dist/alphalib/types/robots/file-filter.d.ts.map +1 -1
  130. package/dist/alphalib/types/robots/file-filter.js +23 -6
  131. package/dist/alphalib/types/robots/file-filter.js.map +1 -1
  132. package/dist/alphalib/types/robots/file-hash.d.ts +24 -0
  133. package/dist/alphalib/types/robots/file-hash.d.ts.map +1 -1
  134. package/dist/alphalib/types/robots/file-hash.js +23 -1
  135. package/dist/alphalib/types/robots/file-hash.js.map +1 -1
  136. package/dist/alphalib/types/robots/file-preview.d.ts +12 -0
  137. package/dist/alphalib/types/robots/file-preview.d.ts.map +1 -1
  138. package/dist/alphalib/types/robots/file-preview.js +8 -1
  139. package/dist/alphalib/types/robots/file-preview.js.map +1 -1
  140. package/dist/alphalib/types/robots/file-read.d.ts.map +1 -1
  141. package/dist/alphalib/types/robots/file-read.js +9 -1
  142. package/dist/alphalib/types/robots/file-read.js.map +1 -1
  143. package/dist/alphalib/types/robots/file-serve.d.ts +12 -0
  144. package/dist/alphalib/types/robots/file-serve.d.ts.map +1 -1
  145. package/dist/alphalib/types/robots/file-serve.js +38 -7
  146. package/dist/alphalib/types/robots/file-serve.js.map +1 -1
  147. package/dist/alphalib/types/robots/file-verify.d.ts.map +1 -1
  148. package/dist/alphalib/types/robots/file-verify.js +0 -1
  149. package/dist/alphalib/types/robots/file-verify.js.map +1 -1
  150. package/dist/alphalib/types/robots/file-virusscan.d.ts.map +1 -1
  151. package/dist/alphalib/types/robots/file-virusscan.js +5 -4
  152. package/dist/alphalib/types/robots/file-virusscan.js.map +1 -1
  153. package/dist/alphalib/types/robots/file-watermark.d.ts.map +1 -1
  154. package/dist/alphalib/types/robots/file-watermark.js +10 -0
  155. package/dist/alphalib/types/robots/file-watermark.js.map +1 -1
  156. package/dist/alphalib/types/robots/ftp-import.d.ts.map +1 -1
  157. package/dist/alphalib/types/robots/ftp-import.js +0 -1
  158. package/dist/alphalib/types/robots/ftp-import.js.map +1 -1
  159. package/dist/alphalib/types/robots/ftp-store.d.ts.map +1 -1
  160. package/dist/alphalib/types/robots/ftp-store.js +0 -1
  161. package/dist/alphalib/types/robots/ftp-store.js.map +1 -1
  162. package/dist/alphalib/types/robots/google-import.d.ts.map +1 -1
  163. package/dist/alphalib/types/robots/google-import.js +0 -1
  164. package/dist/alphalib/types/robots/google-import.js.map +1 -1
  165. package/dist/alphalib/types/robots/google-store.d.ts.map +1 -1
  166. package/dist/alphalib/types/robots/google-store.js +0 -1
  167. package/dist/alphalib/types/robots/google-store.js.map +1 -1
  168. package/dist/alphalib/types/robots/html-convert.d.ts.map +1 -1
  169. package/dist/alphalib/types/robots/html-convert.js +0 -1
  170. package/dist/alphalib/types/robots/html-convert.js.map +1 -1
  171. package/dist/alphalib/types/robots/http-import.d.ts.map +1 -1
  172. package/dist/alphalib/types/robots/http-import.js +0 -1
  173. package/dist/alphalib/types/robots/http-import.js.map +1 -1
  174. package/dist/alphalib/types/robots/image-bgremove.d.ts +8 -8
  175. package/dist/alphalib/types/robots/image-bgremove.d.ts.map +1 -1
  176. package/dist/alphalib/types/robots/image-bgremove.js +4 -2
  177. package/dist/alphalib/types/robots/image-bgremove.js.map +1 -1
  178. package/dist/alphalib/types/robots/image-copyrightdetect.d.ts +465 -0
  179. package/dist/alphalib/types/robots/image-copyrightdetect.d.ts.map +1 -0
  180. package/dist/alphalib/types/robots/image-copyrightdetect.js +136 -0
  181. package/dist/alphalib/types/robots/image-copyrightdetect.js.map +1 -0
  182. package/dist/alphalib/types/robots/image-describe.d.ts.map +1 -1
  183. package/dist/alphalib/types/robots/image-describe.js +0 -1
  184. package/dist/alphalib/types/robots/image-describe.js.map +1 -1
  185. package/dist/alphalib/types/robots/image-enhance.d.ts +502 -0
  186. package/dist/alphalib/types/robots/image-enhance.d.ts.map +1 -0
  187. package/dist/alphalib/types/robots/image-enhance.js +146 -0
  188. package/dist/alphalib/types/robots/image-enhance.js.map +1 -0
  189. package/dist/alphalib/types/robots/image-facedetect.d.ts.map +1 -1
  190. package/dist/alphalib/types/robots/image-facedetect.js +0 -1
  191. package/dist/alphalib/types/robots/image-facedetect.js.map +1 -1
  192. package/dist/alphalib/types/robots/image-generate.d.ts +4 -5
  193. package/dist/alphalib/types/robots/image-generate.d.ts.map +1 -1
  194. package/dist/alphalib/types/robots/image-generate.js +62 -8
  195. package/dist/alphalib/types/robots/image-generate.js.map +1 -1
  196. package/dist/alphalib/types/robots/image-merge.d.ts +12 -12
  197. package/dist/alphalib/types/robots/image-merge.d.ts.map +1 -1
  198. package/dist/alphalib/types/robots/image-merge.js +0 -1
  199. package/dist/alphalib/types/robots/image-merge.js.map +1 -1
  200. package/dist/alphalib/types/robots/image-ocr.d.ts.map +1 -1
  201. package/dist/alphalib/types/robots/image-ocr.js +0 -1
  202. package/dist/alphalib/types/robots/image-ocr.js.map +1 -1
  203. package/dist/alphalib/types/robots/image-optimize.d.ts +12 -0
  204. package/dist/alphalib/types/robots/image-optimize.d.ts.map +1 -1
  205. package/dist/alphalib/types/robots/image-optimize.js +16 -3
  206. package/dist/alphalib/types/robots/image-optimize.js.map +1 -1
  207. package/dist/alphalib/types/robots/image-resize.d.ts +20 -8
  208. package/dist/alphalib/types/robots/image-resize.d.ts.map +1 -1
  209. package/dist/alphalib/types/robots/image-resize.js +37 -1
  210. package/dist/alphalib/types/robots/image-resize.js.map +1 -1
  211. package/dist/alphalib/types/robots/image-upscale.d.ts +447 -0
  212. package/dist/alphalib/types/robots/image-upscale.d.ts.map +1 -0
  213. package/dist/alphalib/types/robots/image-upscale.js +65 -0
  214. package/dist/alphalib/types/robots/image-upscale.js.map +1 -0
  215. package/dist/alphalib/types/robots/mega-import.d.ts +244 -0
  216. package/dist/alphalib/types/robots/mega-import.d.ts.map +1 -0
  217. package/dist/alphalib/types/robots/mega-import.js +84 -0
  218. package/dist/alphalib/types/robots/mega-import.js.map +1 -0
  219. package/dist/alphalib/types/robots/mega-store.d.ts +526 -0
  220. package/dist/alphalib/types/robots/mega-store.d.ts.map +1 -0
  221. package/dist/alphalib/types/robots/mega-store.js +82 -0
  222. package/dist/alphalib/types/robots/mega-store.js.map +1 -0
  223. package/dist/alphalib/types/robots/meta-read.d.ts.map +1 -1
  224. package/dist/alphalib/types/robots/meta-read.js +8 -0
  225. package/dist/alphalib/types/robots/meta-read.js.map +1 -1
  226. package/dist/alphalib/types/robots/meta-write.d.ts.map +1 -1
  227. package/dist/alphalib/types/robots/meta-write.js +0 -1
  228. package/dist/alphalib/types/robots/meta-write.js.map +1 -1
  229. package/dist/alphalib/types/robots/minio-import.d.ts.map +1 -1
  230. package/dist/alphalib/types/robots/minio-import.js +0 -1
  231. package/dist/alphalib/types/robots/minio-import.js.map +1 -1
  232. package/dist/alphalib/types/robots/minio-store.d.ts.map +1 -1
  233. package/dist/alphalib/types/robots/minio-store.js +0 -1
  234. package/dist/alphalib/types/robots/minio-store.js.map +1 -1
  235. package/dist/alphalib/types/robots/progress-simulate.d.ts.map +1 -1
  236. package/dist/alphalib/types/robots/progress-simulate.js +13 -0
  237. package/dist/alphalib/types/robots/progress-simulate.js.map +1 -1
  238. package/dist/alphalib/types/robots/s3-import.d.ts.map +1 -1
  239. package/dist/alphalib/types/robots/s3-import.js +0 -1
  240. package/dist/alphalib/types/robots/s3-import.js.map +1 -1
  241. package/dist/alphalib/types/robots/s3-store.d.ts.map +1 -1
  242. package/dist/alphalib/types/robots/s3-store.js +0 -1
  243. package/dist/alphalib/types/robots/s3-store.js.map +1 -1
  244. package/dist/alphalib/types/robots/script-run.d.ts.map +1 -1
  245. package/dist/alphalib/types/robots/script-run.js +10 -1
  246. package/dist/alphalib/types/robots/script-run.js.map +1 -1
  247. package/dist/alphalib/types/robots/sftp-import.d.ts.map +1 -1
  248. package/dist/alphalib/types/robots/sftp-import.js +0 -1
  249. package/dist/alphalib/types/robots/sftp-import.js.map +1 -1
  250. package/dist/alphalib/types/robots/sftp-store.d.ts.map +1 -1
  251. package/dist/alphalib/types/robots/sftp-store.js +0 -1
  252. package/dist/alphalib/types/robots/sftp-store.js.map +1 -1
  253. package/dist/alphalib/types/robots/speech-transcribe.d.ts.map +1 -1
  254. package/dist/alphalib/types/robots/speech-transcribe.js +0 -1
  255. package/dist/alphalib/types/robots/speech-transcribe.js.map +1 -1
  256. package/dist/alphalib/types/robots/supabase-import.d.ts.map +1 -1
  257. package/dist/alphalib/types/robots/supabase-import.js +0 -1
  258. package/dist/alphalib/types/robots/supabase-import.js.map +1 -1
  259. package/dist/alphalib/types/robots/supabase-store.d.ts.map +1 -1
  260. package/dist/alphalib/types/robots/supabase-store.js +0 -1
  261. package/dist/alphalib/types/robots/supabase-store.js.map +1 -1
  262. package/dist/alphalib/types/robots/swift-import.d.ts.map +1 -1
  263. package/dist/alphalib/types/robots/swift-import.js +0 -1
  264. package/dist/alphalib/types/robots/swift-import.js.map +1 -1
  265. package/dist/alphalib/types/robots/swift-store.d.ts.map +1 -1
  266. package/dist/alphalib/types/robots/swift-store.js +0 -1
  267. package/dist/alphalib/types/robots/swift-store.js.map +1 -1
  268. package/dist/alphalib/types/robots/text-speak.d.ts.map +1 -1
  269. package/dist/alphalib/types/robots/text-speak.js +0 -1
  270. package/dist/alphalib/types/robots/text-speak.js.map +1 -1
  271. package/dist/alphalib/types/robots/text-translate.d.ts.map +1 -1
  272. package/dist/alphalib/types/robots/text-translate.js +0 -1
  273. package/dist/alphalib/types/robots/text-translate.js.map +1 -1
  274. package/dist/alphalib/types/robots/tigris-import.d.ts.map +1 -1
  275. package/dist/alphalib/types/robots/tigris-import.js +0 -1
  276. package/dist/alphalib/types/robots/tigris-import.js.map +1 -1
  277. package/dist/alphalib/types/robots/tigris-store.d.ts.map +1 -1
  278. package/dist/alphalib/types/robots/tigris-store.js +0 -1
  279. package/dist/alphalib/types/robots/tigris-store.js.map +1 -1
  280. package/dist/alphalib/types/robots/tlcdn-deliver.d.ts.map +1 -1
  281. package/dist/alphalib/types/robots/tlcdn-deliver.js +8 -1
  282. package/dist/alphalib/types/robots/tlcdn-deliver.js.map +1 -1
  283. package/dist/alphalib/types/robots/tus-store.d.ts.map +1 -1
  284. package/dist/alphalib/types/robots/tus-store.js +1 -14
  285. package/dist/alphalib/types/robots/tus-store.js.map +1 -1
  286. package/dist/alphalib/types/robots/upload-handle.d.ts.map +1 -1
  287. package/dist/alphalib/types/robots/upload-handle.js +0 -1
  288. package/dist/alphalib/types/robots/upload-handle.js.map +1 -1
  289. package/dist/alphalib/types/robots/video-adaptive.d.ts +32 -8
  290. package/dist/alphalib/types/robots/video-adaptive.d.ts.map +1 -1
  291. package/dist/alphalib/types/robots/video-adaptive.js +22 -6
  292. package/dist/alphalib/types/robots/video-adaptive.js.map +1 -1
  293. package/dist/alphalib/types/robots/video-artwork.d.ts +2855 -0
  294. package/dist/alphalib/types/robots/video-artwork.d.ts.map +1 -0
  295. package/dist/alphalib/types/robots/video-artwork.js +66 -0
  296. package/dist/alphalib/types/robots/video-artwork.js.map +1 -0
  297. package/dist/alphalib/types/robots/video-concat.d.ts +36 -0
  298. package/dist/alphalib/types/robots/video-concat.d.ts.map +1 -1
  299. package/dist/alphalib/types/robots/video-concat.js +30 -1
  300. package/dist/alphalib/types/robots/video-concat.js.map +1 -1
  301. package/dist/alphalib/types/robots/video-encode.d.ts.map +1 -1
  302. package/dist/alphalib/types/robots/video-encode.js +0 -1
  303. package/dist/alphalib/types/robots/video-encode.js.map +1 -1
  304. package/dist/alphalib/types/robots/video-generate.d.ts +594 -0
  305. package/dist/alphalib/types/robots/video-generate.d.ts.map +1 -0
  306. package/dist/alphalib/types/robots/video-generate.js +90 -0
  307. package/dist/alphalib/types/robots/video-generate.js.map +1 -0
  308. package/dist/alphalib/types/robots/video-merge.d.ts +24 -0
  309. package/dist/alphalib/types/robots/video-merge.d.ts.map +1 -1
  310. package/dist/alphalib/types/robots/video-merge.js +33 -1
  311. package/dist/alphalib/types/robots/video-merge.js.map +1 -1
  312. package/dist/alphalib/types/robots/video-ondemand.d.ts.map +1 -1
  313. package/dist/alphalib/types/robots/video-ondemand.js +3 -4
  314. package/dist/alphalib/types/robots/video-ondemand.js.map +1 -1
  315. package/dist/alphalib/types/robots/video-split.d.ts +2939 -0
  316. package/dist/alphalib/types/robots/video-split.d.ts.map +1 -0
  317. package/dist/alphalib/types/robots/video-split.js +78 -0
  318. package/dist/alphalib/types/robots/video-split.js.map +1 -0
  319. package/dist/alphalib/types/robots/video-subtitle.d.ts +52 -4
  320. package/dist/alphalib/types/robots/video-subtitle.d.ts.map +1 -1
  321. package/dist/alphalib/types/robots/video-subtitle.js +61 -8
  322. package/dist/alphalib/types/robots/video-subtitle.js.map +1 -1
  323. package/dist/alphalib/types/robots/video-thumbs.d.ts.map +1 -1
  324. package/dist/alphalib/types/robots/video-thumbs.js +0 -1
  325. package/dist/alphalib/types/robots/video-thumbs.js.map +1 -1
  326. package/dist/alphalib/types/robots/vimeo-import.d.ts +4 -4
  327. package/dist/alphalib/types/robots/vimeo-import.d.ts.map +1 -1
  328. package/dist/alphalib/types/robots/vimeo-import.js +0 -1
  329. package/dist/alphalib/types/robots/vimeo-import.js.map +1 -1
  330. package/dist/alphalib/types/robots/vimeo-store.d.ts +2 -2
  331. package/dist/alphalib/types/robots/vimeo-store.d.ts.map +1 -1
  332. package/dist/alphalib/types/robots/vimeo-store.js +14 -3
  333. package/dist/alphalib/types/robots/vimeo-store.js.map +1 -1
  334. package/dist/alphalib/types/robots/wasabi-import.d.ts.map +1 -1
  335. package/dist/alphalib/types/robots/wasabi-import.js +0 -1
  336. package/dist/alphalib/types/robots/wasabi-import.js.map +1 -1
  337. package/dist/alphalib/types/robots/wasabi-store.d.ts.map +1 -1
  338. package/dist/alphalib/types/robots/wasabi-store.js +0 -1
  339. package/dist/alphalib/types/robots/wasabi-store.js.map +1 -1
  340. package/dist/alphalib/types/robots/youtube-store.d.ts.map +1 -1
  341. package/dist/alphalib/types/robots/youtube-store.js +4 -5
  342. package/dist/alphalib/types/robots/youtube-store.js.map +1 -1
  343. package/dist/alphalib/types/template.d.ts +41 -132175
  344. package/dist/alphalib/types/template.d.ts.map +1 -1
  345. package/dist/alphalib/types/template.js +16 -3
  346. package/dist/alphalib/types/template.js.map +1 -1
  347. package/dist/alphalib/types/templateCredential.d.ts +3 -3
  348. package/dist/alphalib/types/templateCredential.d.ts.map +1 -1
  349. package/dist/alphalib/types/templateCredential.js +1 -0
  350. package/dist/alphalib/types/templateCredential.js.map +1 -1
  351. package/dist/alphalib/zodParseWithContext.d.ts.map +1 -1
  352. package/dist/alphalib/zodParseWithContext.js +15 -11
  353. package/dist/alphalib/zodParseWithContext.js.map +1 -1
  354. package/dist/cli.js +0 -0
  355. package/dist/robots.js +2 -2
  356. package/dist/robots.js.map +1 -1
  357. package/package.json +2 -2
  358. package/src/alphalib/assembly-linter.ts +1 -1
  359. package/src/alphalib/stepParsing.ts +2 -2
  360. package/src/alphalib/types/assemblyStatus.ts +41 -2
  361. package/src/alphalib/types/robots/_index.ts +211 -20
  362. package/src/alphalib/types/robots/_instructions-primitives.ts +93 -3
  363. package/src/alphalib/types/robots/ai-chat.ts +35 -5
  364. package/src/alphalib/types/robots/assembly-savejson.ts +8 -0
  365. package/src/alphalib/types/robots/audio-artwork.ts +4 -5
  366. package/src/alphalib/types/robots/audio-concat.ts +1 -2
  367. package/src/alphalib/types/robots/audio-encode.ts +1 -2
  368. package/src/alphalib/types/robots/audio-loop.ts +1 -2
  369. package/src/alphalib/types/robots/audio-merge.ts +1 -2
  370. package/src/alphalib/types/robots/audio-split.ts +130 -0
  371. package/src/alphalib/types/robots/audio-waveform.ts +90 -6
  372. package/src/alphalib/types/robots/azure-import.ts +0 -1
  373. package/src/alphalib/types/robots/azure-store.ts +0 -1
  374. package/src/alphalib/types/robots/backblaze-import.ts +0 -1
  375. package/src/alphalib/types/robots/backblaze-store.ts +0 -1
  376. package/src/alphalib/types/robots/box-import.ts +97 -0
  377. package/src/alphalib/types/robots/box-store.ts +94 -0
  378. package/src/alphalib/types/robots/cloudfiles-import.ts +0 -1
  379. package/src/alphalib/types/robots/cloudfiles-store.ts +0 -1
  380. package/src/alphalib/types/robots/cloudflare-import.ts +0 -1
  381. package/src/alphalib/types/robots/cloudflare-store.ts +0 -1
  382. package/src/alphalib/types/robots/digitalocean-import.ts +0 -1
  383. package/src/alphalib/types/robots/digitalocean-store.ts +0 -1
  384. package/src/alphalib/types/robots/document-autorotate.ts +8 -1
  385. package/src/alphalib/types/robots/document-convert.ts +10 -3
  386. package/src/alphalib/types/robots/document-merge.ts +0 -1
  387. package/src/alphalib/types/robots/document-ocr.ts +0 -1
  388. package/src/alphalib/types/robots/document-optimize.ts +0 -1
  389. package/src/alphalib/types/robots/document-split.ts +9 -1
  390. package/src/alphalib/types/robots/document-thumbs.ts +26 -4
  391. package/src/alphalib/types/robots/dropbox-import.ts +0 -1
  392. package/src/alphalib/types/robots/dropbox-store.ts +0 -1
  393. package/src/alphalib/types/robots/edgly-deliver.ts +8 -1
  394. package/src/alphalib/types/robots/file-compress.ts +8 -1
  395. package/src/alphalib/types/robots/file-decompress.ts +30 -5
  396. package/src/alphalib/types/robots/file-filter.ts +23 -6
  397. package/src/alphalib/types/robots/file-hash.ts +23 -1
  398. package/src/alphalib/types/robots/file-preview.ts +8 -1
  399. package/src/alphalib/types/robots/file-read.ts +9 -1
  400. package/src/alphalib/types/robots/file-serve.ts +39 -7
  401. package/src/alphalib/types/robots/file-verify.ts +0 -1
  402. package/src/alphalib/types/robots/file-virusscan.ts +6 -4
  403. package/src/alphalib/types/robots/file-watermark.ts +10 -0
  404. package/src/alphalib/types/robots/ftp-import.ts +0 -1
  405. package/src/alphalib/types/robots/ftp-store.ts +0 -1
  406. package/src/alphalib/types/robots/google-import.ts +0 -1
  407. package/src/alphalib/types/robots/google-store.ts +0 -1
  408. package/src/alphalib/types/robots/html-convert.ts +0 -1
  409. package/src/alphalib/types/robots/http-import.ts +0 -1
  410. package/src/alphalib/types/robots/image-bgremove.ts +4 -2
  411. package/src/alphalib/types/robots/image-copyrightdetect.ts +167 -0
  412. package/src/alphalib/types/robots/image-describe.ts +0 -1
  413. package/src/alphalib/types/robots/image-enhance.ts +185 -0
  414. package/src/alphalib/types/robots/image-facedetect.ts +0 -1
  415. package/src/alphalib/types/robots/image-generate.ts +74 -8
  416. package/src/alphalib/types/robots/image-merge.ts +0 -1
  417. package/src/alphalib/types/robots/image-ocr.ts +0 -1
  418. package/src/alphalib/types/robots/image-optimize.ts +16 -3
  419. package/src/alphalib/types/robots/image-resize.ts +37 -1
  420. package/src/alphalib/types/robots/image-upscale.ts +93 -0
  421. package/src/alphalib/types/robots/mega-import.ts +123 -0
  422. package/src/alphalib/types/robots/mega-store.ts +109 -0
  423. package/src/alphalib/types/robots/meta-read.ts +8 -0
  424. package/src/alphalib/types/robots/meta-write.ts +0 -1
  425. package/src/alphalib/types/robots/minio-import.ts +0 -1
  426. package/src/alphalib/types/robots/minio-store.ts +0 -1
  427. package/src/alphalib/types/robots/progress-simulate.ts +13 -0
  428. package/src/alphalib/types/robots/s3-import.ts +0 -1
  429. package/src/alphalib/types/robots/s3-store.ts +0 -1
  430. package/src/alphalib/types/robots/script-run.ts +11 -1
  431. package/src/alphalib/types/robots/sftp-import.ts +0 -1
  432. package/src/alphalib/types/robots/sftp-store.ts +0 -1
  433. package/src/alphalib/types/robots/speech-transcribe.ts +0 -1
  434. package/src/alphalib/types/robots/supabase-import.ts +0 -1
  435. package/src/alphalib/types/robots/supabase-store.ts +0 -1
  436. package/src/alphalib/types/robots/swift-import.ts +0 -1
  437. package/src/alphalib/types/robots/swift-store.ts +0 -1
  438. package/src/alphalib/types/robots/text-speak.ts +0 -1
  439. package/src/alphalib/types/robots/text-translate.ts +0 -1
  440. package/src/alphalib/types/robots/tigris-import.ts +0 -1
  441. package/src/alphalib/types/robots/tigris-store.ts +0 -1
  442. package/src/alphalib/types/robots/tlcdn-deliver.ts +8 -1
  443. package/src/alphalib/types/robots/tus-store.ts +1 -14
  444. package/src/alphalib/types/robots/upload-handle.ts +0 -1
  445. package/src/alphalib/types/robots/video-adaptive.ts +22 -6
  446. package/src/alphalib/types/robots/video-artwork.ts +100 -0
  447. package/src/alphalib/types/robots/video-concat.ts +30 -1
  448. package/src/alphalib/types/robots/video-encode.ts +0 -1
  449. package/src/alphalib/types/robots/video-generate.ts +120 -0
  450. package/src/alphalib/types/robots/video-merge.ts +33 -1
  451. package/src/alphalib/types/robots/video-ondemand.ts +3 -4
  452. package/src/alphalib/types/robots/video-split.ts +117 -0
  453. package/src/alphalib/types/robots/video-subtitle.ts +61 -8
  454. package/src/alphalib/types/robots/video-thumbs.ts +0 -1
  455. package/src/alphalib/types/robots/vimeo-import.ts +0 -1
  456. package/src/alphalib/types/robots/vimeo-store.ts +14 -3
  457. package/src/alphalib/types/robots/wasabi-import.ts +0 -1
  458. package/src/alphalib/types/robots/wasabi-store.ts +0 -1
  459. package/src/alphalib/types/robots/youtube-store.ts +4 -5
  460. package/src/alphalib/types/template.ts +47 -15
  461. package/src/alphalib/types/templateCredential.ts +1 -0
  462. package/src/alphalib/zodParseWithContext.ts +19 -12
  463. package/src/robots.ts +2 -2
@@ -22,12 +22,20 @@ export const robotNames = z.enum([
22
22
  'AudioConcatRobot',
23
23
  'AudioMergeRobot',
24
24
  'AudioArtworkRobot',
25
+ 'AudioSplitRobot',
26
+ 'BoxImportRobot',
27
+ 'BoxStoreRobot',
28
+ 'VideoArtworkRobot',
25
29
  'ImageFacedetectRobot',
26
30
  'ImageDescribeRobot',
31
+ 'ImageCopyrightdetectRobot',
27
32
  'ImageOcrRobot',
28
33
  'ImageBgremoveRobot',
34
+ 'ImageUpscaleRobot',
29
35
  'ImageGenerateRobot',
36
+ 'ImageEnhanceRobot',
30
37
  'DocumentOcrRobot',
38
+ 'DocumentOptimizeRobot',
31
39
  'SpeechTranscribeRobot',
32
40
  'VideoThumbsRobot',
33
41
  'FileVirusscanRobot',
@@ -52,10 +60,12 @@ export const robotNames = z.enum([
52
60
  'BackblazeImportRobot',
53
61
  'BackblazeStoreRobot',
54
62
  'MinioImportRobot',
63
+ 'MegaImportRobot',
55
64
  'TigrisImportRobot',
56
65
  'CloudflareImportRobot',
57
66
  'SupabaseImportRobot',
58
67
  'MinioStoreRobot',
68
+ 'MegaStoreRobot',
59
69
  'TigrisStoreRobot',
60
70
  'CloudflareStoreRobot',
61
71
  'SupabaseStoreRobot',
@@ -84,6 +94,8 @@ export const robotNames = z.enum([
84
94
  'FileHashRobot',
85
95
  'FileReadRobot',
86
96
  'VideoOndemandRobot',
97
+ 'VideoSplitRobot',
98
+ 'VideoGenerateRobot',
87
99
  'FileFilterRobot',
88
100
  'TextSpeakRobot',
89
101
  'TextTranslateRobot',
@@ -125,7 +137,6 @@ export const robotMetaSchema = z.object({
125
137
  extraChargeForImageResize: z.number().optional(),
126
138
 
127
139
  // Original keys from content repo:
128
- allowed_for_url_transform: z.boolean(),
129
140
  bytescount: z.number(),
130
141
  description: z.string().optional(),
131
142
  discount_factor: z.number(),
@@ -152,6 +163,7 @@ export const robotMetaSchema = z.object({
152
163
  'convert',
153
164
  'decompress',
154
165
  'detect',
166
+ 'enhance',
155
167
  'encode',
156
168
  'export',
157
169
  'extract',
@@ -169,6 +181,7 @@ export const robotMetaSchema = z.object({
169
181
  'scan',
170
182
  'serve',
171
183
  'speak',
184
+ 'split',
172
185
  'subtitle',
173
186
  'take',
174
187
  'transcode',
@@ -181,6 +194,7 @@ export const robotMetaSchema = z.object({
181
194
  ]),
182
195
  purpose_word: z.string(),
183
196
  purpose_words: z.string(),
197
+ hideCredentialsWarning: z.boolean().optional(),
184
198
  requires_credentials: z.literal(true).optional(),
185
199
  service_slug: z.enum([
186
200
  'artificial-intelligence',
@@ -443,6 +457,8 @@ Allows you to specify a set of metadata that is more expensive on CPU power to c
443
457
 
444
458
  For images, you can add \`"has_transparency": true\` in this object to extract if the image contains transparent parts and \`"dominant_colors": true\` to extract an array of hexadecimal color codes from the image.
445
459
 
460
+ For images, you can also add \`"blurhash": true\` to extract a [BlurHash](https://blurha.sh) string — a compact representation of a placeholder for the image, useful for showing a blurred preview while the full image loads.
461
+
446
462
  For videos, you can add the \`"colorspace: true"\` parameter to extract the colorspace of the output video.
447
463
 
448
464
  For audio, you can add \`"mean_volume": true\` to get a single value representing the mean average volume of the audio file.
@@ -571,6 +587,22 @@ Specifies which Step(s) to use as input.
571
587
  ]
572
588
  }
573
589
  \`\`\`
590
+ - You can also tag an input Step with \`as\` to pass semantic intent to robots:
591
+ - You can also tag input Steps with \`as\` to pass semantic intent to robots:
592
+ \`\`\`json
593
+ {
594
+ "use": [
595
+ {
596
+ "name": ":original",
597
+ "as": "image"
598
+ },
599
+ {
600
+ "name": ":original",
601
+ "as": "mask"
602
+ }
603
+ ]
604
+ }
605
+ \`\`\`
574
606
 
575
607
  > [!Tip]
576
608
  > That's likely all you need to know about \`use\`, but you can view [Advanced use cases](/docs/topics/use-parameter/).
@@ -600,6 +632,22 @@ Specifies which Step(s) to use as input.
600
632
  ]
601
633
  }
602
634
  \`\`\`
635
+ - You can also tag an input Step with \`as\` to pass semantic intent to robots:
636
+ - You can also tag input Steps with \`as\` to pass semantic intent to robots:
637
+ \`\`\`json
638
+ {
639
+ "use": [
640
+ {
641
+ "name": ":original",
642
+ "as": "image"
643
+ },
644
+ {
645
+ "name": ":original",
646
+ "as": "mask"
647
+ }
648
+ ]
649
+ }
650
+ \`\`\`
603
651
 
604
652
  > [!Tip]
605
653
  > That's likely all you need to know about \`use\`, but you can view [Advanced use cases](/docs/topics/use-parameter/).
@@ -621,7 +669,7 @@ export const complexWidthSchema = z.preprocess((val) => {
621
669
  return num
622
670
  }
623
671
  return val
624
- }, z.number().int().min(1).max(7680))
672
+ }, z.number().int().min(1).max(25_000))
625
673
 
626
674
  export const complexHeightSchema = z.preprocess((val) => {
627
675
  if (typeof val === 'string' && val.startsWith('${')) {
@@ -635,7 +683,7 @@ export const complexHeightSchema = z.preprocess((val) => {
635
683
  return num
636
684
  }
637
685
  return val
638
- }, z.number().int().min(1).max(4320))
686
+ }, z.number().int().min(1).max(25_000))
639
687
 
640
688
  /**
641
689
  * A robot that uses FFmpeg.
@@ -1252,6 +1300,24 @@ While we recommend to use <dfn>Template Credentials</dfn> at all times, some use
1252
1300
  })
1253
1301
  .strict()
1254
1302
 
1303
+ export type BoxBase = z.infer<typeof boxBase>
1304
+ export const boxBase = z
1305
+ .object({
1306
+ credentials: z
1307
+ .string()
1308
+ .optional()
1309
+ .describe(`
1310
+ Create a Box app in the [Box Developer Console](https://app.box.com/developers/console) using **Server Authentication (JWT)**.
1311
+
1312
+ Generate a public/private keypair for that app. Box will download a JSON config file (with \`boxAppSettings\` and \`appAuth\`) that includes your JWT private key material.
1313
+
1314
+ In your Transloadit account, create [Template Credentials](/c/template-credentials/) of type Box and paste that full JSON file into \`key_file_contents\`. Then set this \`credentials\` parameter to the Template Credentials name.
1315
+
1316
+ If your Box enterprise requires it, make sure the app is authorized by an admin before using it in production.
1317
+ `),
1318
+ })
1319
+ .strict()
1320
+
1255
1321
  export type CloudfilesBase = z.infer<typeof cloudfilesBase>
1256
1322
  export const cloudfilesBase = z
1257
1323
  .object({
@@ -1389,6 +1455,30 @@ While we recommend to use <dfn>Template Credentials</dfn> at all times, some use
1389
1455
  })
1390
1456
  .strict()
1391
1457
 
1458
+ export type MegaBase = z.infer<typeof megaBase>
1459
+ export const megaBase = z
1460
+ .object({
1461
+ credentials: z
1462
+ .string()
1463
+ .optional()
1464
+ .describe(`
1465
+ Please create your associated <dfn>Template Credentials</dfn> in your Transloadit account and use the name of your <dfn>Template Credentials</dfn> as this parameter's value. They will contain the values for your MEGA object storage bucket, Key, Secret and Bucket region.
1466
+
1467
+ While we recommend to use <dfn>Template Credentials</dfn> at all times, some use cases demand dynamic credentials for which using <dfn>Template Credentials</dfn> is too unwieldy because of their static nature. If you have this requirement, feel free to use the following parameters instead: \`"bucket"\`, \`"bucket_region"\`, \`"key"\`, \`"secret"\`.
1468
+ `),
1469
+ bucket: z.string().optional(),
1470
+ bucket_region: z
1471
+ .string()
1472
+ .optional()
1473
+ .describe(`
1474
+ The region where the bucket is located.
1475
+ `),
1476
+ host: z.string().optional(),
1477
+ key: z.string().optional(),
1478
+ secret: z.string().optional(),
1479
+ })
1480
+ .strict()
1481
+
1392
1482
  export type S3Base = z.infer<typeof s3Base>
1393
1483
  export const s3Base = z
1394
1484
  .object({
@@ -115,10 +115,20 @@ const coreMessageSchema = z.discriminatedUnion('role', [
115
115
 
116
116
  export const meta: RobotMetaInput = {
117
117
  name: 'AiChatRobot',
118
- allowed_for_url_transform: true,
119
118
  bytescount: 1,
120
119
  discount_factor: 1,
121
120
  discount_pct: 0,
121
+ example_code: {
122
+ steps: {
123
+ reply: {
124
+ robot: '/ai/chat',
125
+ model: 'auto',
126
+ messages:
127
+ 'Summarize this in one sentence: Transloadit handles uploads and media processing.',
128
+ },
129
+ },
130
+ },
131
+ example_code_description: 'Generate a concise AI response from a text prompt:',
122
132
  minimum_charge: 0,
123
133
  output_factor: 0.6,
124
134
  purpose_sentence: 'generates AI chat responses from prompts',
@@ -132,7 +142,7 @@ export const meta: RobotMetaInput = {
132
142
  typical_file_type: 'document',
133
143
  priceFactor: 1,
134
144
  queueSlotCount: 10,
135
- // Is this a sensbile minimum charge? What if the customer supplies their own keys? Is it low enough for these cases?
145
+ // Is this a sensible minimum charge? What if the customer supplies their own keys? Is it low enough for these cases?
136
146
  minimumChargeUsd: 0.06,
137
147
  isAllowedForUrlTransform: true,
138
148
  trackOutputFileSize: true,
@@ -148,7 +158,6 @@ export const meta: RobotMetaInput = {
148
158
  export const MODEL_CAPABILITIES: Record<string, { pdf: boolean; image: boolean }> = {
149
159
  'anthropic/claude-4-sonnet-20250514': { pdf: true, image: true },
150
160
  'anthropic/claude-4-opus-20250514': { pdf: true, image: true },
151
- 'anthropic/claude-sonnet-4-6': { pdf: true, image: true },
152
161
  'anthropic/claude-sonnet-4-5': { pdf: true, image: true },
153
162
  'anthropic/claude-opus-4-5': { pdf: true, image: true },
154
163
  'anthropic/claude-opus-4-6': { pdf: true, image: true },
@@ -160,10 +169,19 @@ export const MODEL_CAPABILITIES: Record<string, { pdf: boolean; image: boolean }
160
169
  'openai/gpt-5.2-2025-12-11': { pdf: false, image: true },
161
170
  'openai/gpt-5.2-chat-latest': { pdf: false, image: true },
162
171
  'openai/gpt-5.2-pro': { pdf: false, image: true },
172
+ 'openai/gpt-5.4': { pdf: false, image: true },
173
+ 'openai/gpt-5.4-mini': { pdf: false, image: true },
174
+ 'openai/gpt-5.4-nano': { pdf: false, image: true },
163
175
  'google/gemini-2.5-pro': { pdf: true, image: true },
164
176
  'moonshot/kimi-k2': { pdf: false, image: false },
165
177
  }
166
178
 
179
+ // Default model for /ai/chat when `model: "auto"` (or unset).
180
+ // 2026-02-10: default is Opus 4.6 (intentional; aligns with our current recommended Anthropic
181
+ // flagship model and the system tests in this repo). Keep this aligned with MODEL_CAPABILITIES.
182
+ export const AI_CHAT_DEFAULT_MODEL =
183
+ 'anthropic/claude-opus-4-6' satisfies keyof typeof MODEL_CAPABILITIES
184
+
167
185
  const supportedModelsList = Object.keys(MODEL_CAPABILITIES)
168
186
 
169
187
  export const vendorModelSchema = z
@@ -179,7 +197,7 @@ export const robotAiChatInstructionsSchema = robotBase
179
197
  .merge(robotUse)
180
198
  .extend({
181
199
  robot: z.literal('/ai/chat'),
182
- // TODO: Is the auto mode yet implemented?
200
+ // NOTE: model:"auto" is resolved server-side to AI_CHAT_DEFAULT_MODEL for now.
183
201
  model: z
184
202
  .union([vendorModelSchema, z.literal('auto')])
185
203
  .default('auto')
@@ -196,6 +214,12 @@ export const robotAiChatInstructionsSchema = robotBase
196
214
  .string()
197
215
  .optional()
198
216
  .describe('Set the system/developer prompt, if the model allows it'),
217
+ reasoning_effort: z
218
+ .enum(['high', 'medium', 'low'])
219
+ .optional()
220
+ .describe(
221
+ 'Controls how much effort the model spends on reasoning. Higher values produce more thorough responses but cost more tokens. Applies to models that support extended thinking (OpenAI o-series, GPT-5.x, Anthropic Claude with thinking). If omitted, the model default is used.',
222
+ ),
199
223
  credentials: z
200
224
  .union([z.string(), z.array(z.string())])
201
225
  .optional()
@@ -215,11 +239,17 @@ export const robotAiChatInstructionsSchema = robotBase
215
239
  url: z.string(),
216
240
  headers: z.record(z.string()).optional(),
217
241
  auth: z.enum(['transloadit']).optional(),
242
+ allowed_tools: z
243
+ .array(z.string())
244
+ .optional()
245
+ .describe(
246
+ 'Optional allowlist of tool names to expose from this MCP server. If omitted, all tools exposed by the server are available to the model.',
247
+ ),
218
248
  }),
219
249
  )
220
250
  .optional()
221
251
  .describe(
222
- 'The MCP servers to use. This is used to call tools from the LLM. Use `headers` to pass `Authorization: Bearer <token>` when needed. You can use any MCP server reachable from your environment. For Transloadit\'s own MCP server, you can set `auth: "transloadit"` to let API2 auto-auth and inject an Authorization header for you (only for Transloadit-hosted MCP servers).',
252
+ 'The MCP servers to use for tool calling. You can use any MCP server reachable from your environment. Use `headers` to pass server-specific auth (for example `Authorization: Bearer <token>`). For Transloadit\'s MCP server: Bearer tokens minted via `/token` satisfy Signature Authentication (signature checks apply only to key/secret requests). `auth: "transloadit"` is reserved for API2-managed auth to Transloadit-hosted MCP servers.',
223
253
  ),
224
254
  })
225
255
  .strict()
@@ -5,6 +5,14 @@ import { interpolateRobot, robotBase } from './_instructions-primitives.ts'
5
5
  // @ts-expect-error - AssemblySavejsonRobot is not ready yet @TODO please supply missing keys
6
6
  export const meta: RobotMetaInput = {
7
7
  name: 'AssemblySavejsonRobot',
8
+ example_code: {
9
+ steps: {
10
+ save_json: {
11
+ robot: '/assembly/savejson',
12
+ },
13
+ },
14
+ },
15
+ example_code_description: 'Save Assembly result data as JSON:',
8
16
  priceFactor: 0,
9
17
  queueSlotCount: 5,
10
18
  isAllowedForUrlTransform: true,
@@ -10,7 +10,6 @@ import {
10
10
  } from './_instructions-primitives.ts'
11
11
 
12
12
  export const meta: RobotMetaInput = {
13
- allowed_for_url_transform: true,
14
13
  bytescount: 1,
15
14
  discount_factor: 1,
16
15
  discount_pct: 0,
@@ -28,7 +27,7 @@ export const meta: RobotMetaInput = {
28
27
  output_factor: 0.8,
29
28
  override_lvl1: 'Audio Encoding',
30
29
  purpose_sentence:
31
- 'extracts the embedded cover artwork from audio files and allows you to pipe it into other Steps, for example into /image/resize Steps. It can also insert images into audio files as cover artwork',
30
+ 'extracts embedded cover artwork from audio files or inserts a new cover image into them. Extracted artwork can be piped into other Steps such as /image/resize. Use `method: "insert"` to embed artwork into audio files like MP3, FLAC, or M4A',
32
31
  purpose_verb: 'extract',
33
32
  purpose_word: 'extract/insert artwork',
34
33
  purpose_words: 'Extract or insert audio artwork',
@@ -53,11 +52,11 @@ export const robotAudioArtworkInstructionsSchema = robotBase
53
52
  .merge(robotFFmpegAudio)
54
53
  .extend({
55
54
  robot: z.literal('/audio/artwork').describe(`
56
- For extraction, this <dfn>Robot</dfn> uses the image format embedded within the audio file — most often, this is JPEG.
55
+ This <dfn>Robot</dfn> extracts or inserts cover artwork in audio files.
57
56
 
58
- If you need the image in a different format, pipe the result of this <dfn>Robot</dfn> into [🤖/image/resize](/docs/robots/image-resize/).
57
+ For extraction, it uses the image format embedded within the audio file — most often, this is JPEG. If you need the image in a different format, pipe the result into [🤖/image/resize](/docs/robots/image-resize/).
59
58
 
60
- The \`method\` parameter determines whether to extract or insert.
59
+ For insertion, provide both an audio file (as \`"audio"\`) and an image file (as \`"image"\`) via the \`use\` parameter, and set \`method\` to \`"insert"\`. The image will be embedded as the cover artwork of the audio file.
61
60
  `),
62
61
  method: z
63
62
  .enum(['extract', 'insert'])
@@ -13,7 +13,6 @@ import {
13
13
  } from './_instructions-primitives.ts'
14
14
 
15
15
  export const meta: RobotMetaInput = {
16
- allowed_for_url_transform: false,
17
16
  bytescount: 4,
18
17
  discount_factor: 0.25,
19
18
  discount_pct: 75,
@@ -62,7 +61,7 @@ export const meta: RobotMetaInput = {
62
61
  name: 'AudioConcatRobot',
63
62
  priceFactor: 4,
64
63
  queueSlotCount: 20,
65
- isAllowedForUrlTransform: false,
64
+ isAllowedForUrlTransform: true,
66
65
  trackOutputFileSize: true,
67
66
  isInternal: false,
68
67
  removeJobResultFilesFromDiskRightAfterStoringOnS3: false,
@@ -12,7 +12,6 @@ import {
12
12
  } from './_instructions-primitives.ts'
13
13
 
14
14
  export const meta: RobotMetaInput = {
15
- allowed_for_url_transform: false,
16
15
  bytescount: 4,
17
16
  discount_factor: 0.25,
18
17
  discount_pct: 75,
@@ -45,7 +44,7 @@ export const meta: RobotMetaInput = {
45
44
  name: 'AudioEncodeRobot',
46
45
  priceFactor: 4,
47
46
  queueSlotCount: 20,
48
- isAllowedForUrlTransform: false,
47
+ isAllowedForUrlTransform: true,
49
48
  trackOutputFileSize: true,
50
49
  isInternal: false,
51
50
  stage: 'ga',
@@ -12,7 +12,6 @@ import {
12
12
  } from './_instructions-primitives.ts'
13
13
 
14
14
  export const meta: RobotMetaInput = {
15
- allowed_for_url_transform: false,
16
15
  bytescount: 4,
17
16
  discount_factor: 0.25,
18
17
  discount_pct: 75,
@@ -45,7 +44,7 @@ export const meta: RobotMetaInput = {
45
44
  name: 'AudioLoopRobot',
46
45
  priceFactor: 4,
47
46
  queueSlotCount: 20,
48
- isAllowedForUrlTransform: false,
47
+ isAllowedForUrlTransform: true,
49
48
  trackOutputFileSize: true,
50
49
  isInternal: false,
51
50
  removeJobResultFilesFromDiskRightAfterStoringOnS3: false,
@@ -13,7 +13,6 @@ import {
13
13
  } from './_instructions-primitives.ts'
14
14
 
15
15
  export const meta: RobotMetaInput = {
16
- allowed_for_url_transform: false,
17
16
  bytescount: 4,
18
17
  discount_factor: 0.25,
19
18
  discount_pct: 75,
@@ -63,7 +62,7 @@ export const meta: RobotMetaInput = {
63
62
  name: 'AudioMergeRobot',
64
63
  priceFactor: 4,
65
64
  queueSlotCount: 20,
66
- isAllowedForUrlTransform: false,
65
+ isAllowedForUrlTransform: true,
67
66
  trackOutputFileSize: true,
68
67
  isInternal: false,
69
68
  removeJobResultFilesFromDiskRightAfterStoringOnS3: false,
@@ -0,0 +1,130 @@
1
+ import { z } from 'zod'
2
+
3
+ import { stackVersions } from '../stackVersions.ts'
4
+ import type { RobotMetaInput } from './_instructions-primitives.ts'
5
+ import {
6
+ bitrateSchema,
7
+ interpolateRobot,
8
+ robotBase,
9
+ robotFFmpegAudio,
10
+ robotUse,
11
+ sampleRateSchema,
12
+ } from './_instructions-primitives.ts'
13
+
14
+ export const meta: RobotMetaInput = {
15
+ bytescount: 4,
16
+ discount_factor: 0.25,
17
+ discount_pct: 75,
18
+ example_code: {
19
+ steps: {
20
+ split: {
21
+ robot: '/audio/split',
22
+ use: ':original',
23
+ ffmpeg_stack: stackVersions.ffmpeg.recommendedVersion,
24
+ segments: [
25
+ { from: 0, to: 30 },
26
+ { from: 60, to: 90 },
27
+ ],
28
+ },
29
+ },
30
+ },
31
+ example_code_description:
32
+ 'Split an audio file into two segments, extracting the first 30 seconds and a segment from 1:00 to 1:30:',
33
+ minimum_charge: 0,
34
+ output_factor: 0.8,
35
+ override_lvl1: 'Audio Encoding',
36
+ purpose_sentence:
37
+ 'splits an audio file into multiple segments based on an array of from/to durations',
38
+ purpose_verb: 'split',
39
+ purpose_word: 'split',
40
+ purpose_words: 'Split audio',
41
+ service_slug: 'audio-encoding',
42
+ slot_count: 20,
43
+ title: 'Split audio',
44
+ typical_file_size_mb: 3.8,
45
+ typical_file_type: 'audio file',
46
+ uses_tools: ['ffmpeg'],
47
+ name: 'AudioSplitRobot',
48
+ priceFactor: 4,
49
+ queueSlotCount: 20,
50
+ isAllowedForUrlTransform: true,
51
+ trackOutputFileSize: true,
52
+ isInternal: false,
53
+ removeJobResultFilesFromDiskRightAfterStoringOnS3: false,
54
+ stage: 'ga',
55
+ }
56
+
57
+ const segmentSchema = z
58
+ .object({
59
+ from: z
60
+ .union([z.number(), z.string()])
61
+ .describe(
62
+ 'Start time of the segment in seconds (e.g. `30`) or as a timecode string (e.g. `"00:00:30.000"`).',
63
+ ),
64
+ to: z
65
+ .union([z.number(), z.string()])
66
+ .describe(
67
+ 'End time of the segment in seconds (e.g. `60`) or as a timecode string (e.g. `"00:01:00.000"`).',
68
+ ),
69
+ })
70
+ .strict()
71
+
72
+ export const robotAudioSplitInstructionsSchema = robotBase
73
+ .merge(robotUse)
74
+ .merge(robotFFmpegAudio)
75
+ .extend({
76
+ result: z
77
+ .boolean()
78
+ .optional()
79
+ .describe('Whether the results of this Step should be present in the Assembly Status JSON'),
80
+ robot: z.literal('/audio/split').describe(`
81
+ Splits an audio file into multiple segments based on an array of from/to durations. Each segment produces a separate output file. This is useful for cutting an audio file into parts, for example to insert ads later via [🤖/audio/concat](/docs/robots/audio-concat/).
82
+ `),
83
+ segments: z
84
+ .array(segmentSchema)
85
+ .min(1)
86
+ .describe(`
87
+ An array of objects, each specifying a segment to extract from the input audio. Each object must have a \`from\` and \`to\` key indicating the start and end time of the segment.
88
+
89
+ Times can be specified as numbers (seconds) or as timecode strings (e.g. \`"00:01:30.000"\`).
90
+ `),
91
+ bitrate: bitrateSchema.optional().describe(`
92
+ Bit rate of the resulting audio file, in bits per second. If not specified will default to the bit rate of the input audio file.
93
+ `),
94
+ sample_rate: sampleRateSchema.optional().describe(`
95
+ Sample rate of the resulting audio file, in Hertz. If not specified will default to the sample rate of the input audio file.
96
+ `),
97
+ })
98
+ .strict()
99
+
100
+ export const robotAudioSplitInstructionsWithHiddenFieldsSchema =
101
+ robotAudioSplitInstructionsSchema.extend({
102
+ result: z
103
+ .union([z.literal('debug'), robotAudioSplitInstructionsSchema.shape.result])
104
+ .optional(),
105
+ })
106
+
107
+ export type RobotAudioSplitInstructions = z.infer<typeof robotAudioSplitInstructionsSchema>
108
+ export type RobotAudioSplitInstructionsWithHiddenFields = z.infer<
109
+ typeof robotAudioSplitInstructionsWithHiddenFieldsSchema
110
+ >
111
+
112
+ export const interpolatableRobotAudioSplitInstructionsSchema = interpolateRobot(
113
+ robotAudioSplitInstructionsSchema,
114
+ )
115
+ export type InterpolatableRobotAudioSplitInstructions =
116
+ InterpolatableRobotAudioSplitInstructionsInput
117
+
118
+ export type InterpolatableRobotAudioSplitInstructionsInput = z.input<
119
+ typeof interpolatableRobotAudioSplitInstructionsSchema
120
+ >
121
+
122
+ export const interpolatableRobotAudioSplitInstructionsWithHiddenFieldsSchema = interpolateRobot(
123
+ robotAudioSplitInstructionsWithHiddenFieldsSchema,
124
+ )
125
+ export type InterpolatableRobotAudioSplitInstructionsWithHiddenFields = z.infer<
126
+ typeof interpolatableRobotAudioSplitInstructionsWithHiddenFieldsSchema
127
+ >
128
+ export type InterpolatableRobotAudioSplitInstructionsWithHiddenFieldsInput = z.input<
129
+ typeof interpolatableRobotAudioSplitInstructionsWithHiddenFieldsSchema
130
+ >