transloadit 4.7.4 → 4.8.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 (585) hide show
  1. package/README.md +915 -5
  2. package/dist/Transloadit.d.ts +3 -3
  3. package/dist/Transloadit.d.ts.map +1 -1
  4. package/dist/Transloadit.js +2 -2
  5. package/dist/Transloadit.js.map +1 -1
  6. package/dist/alphalib/assembly-linter.js +1 -1
  7. package/dist/alphalib/assembly-linter.js.map +1 -1
  8. package/dist/alphalib/stepParsing.js +2 -2
  9. package/dist/alphalib/stepParsing.js.map +1 -1
  10. package/dist/alphalib/types/assembliesGet.d.ts +5 -0
  11. package/dist/alphalib/types/assembliesGet.d.ts.map +1 -1
  12. package/dist/alphalib/types/assemblyReplay.d.ts +7 -7860
  13. package/dist/alphalib/types/assemblyReplay.d.ts.map +1 -1
  14. package/dist/alphalib/types/assemblyReplayNotification.d.ts +7 -7860
  15. package/dist/alphalib/types/assemblyReplayNotification.d.ts.map +1 -1
  16. package/dist/alphalib/types/assemblyStatus.d.ts +4822 -313
  17. package/dist/alphalib/types/assemblyStatus.d.ts.map +1 -1
  18. package/dist/alphalib/types/assemblyStatus.js +40 -2
  19. package/dist/alphalib/types/assemblyStatus.js.map +1 -1
  20. package/dist/alphalib/types/bill.d.ts +5 -0
  21. package/dist/alphalib/types/bill.d.ts.map +1 -1
  22. package/dist/alphalib/types/builtinTemplates.d.ts +83 -0
  23. package/dist/alphalib/types/builtinTemplates.d.ts.map +1 -0
  24. package/dist/alphalib/types/builtinTemplates.js +19 -0
  25. package/dist/alphalib/types/builtinTemplates.js.map +1 -0
  26. package/dist/alphalib/types/robots/_index.d.ts +903 -72620
  27. package/dist/alphalib/types/robots/_index.d.ts.map +1 -1
  28. package/dist/alphalib/types/robots/_index.js +62 -11
  29. package/dist/alphalib/types/robots/_index.js.map +1 -1
  30. package/dist/alphalib/types/robots/_instructions-primitives.d.ts +41 -10
  31. package/dist/alphalib/types/robots/_instructions-primitives.d.ts.map +1 -1
  32. package/dist/alphalib/types/robots/_instructions-primitives.js +89 -3
  33. package/dist/alphalib/types/robots/_instructions-primitives.js.map +1 -1
  34. package/dist/alphalib/types/robots/ai-chat.d.ts +33 -0
  35. package/dist/alphalib/types/robots/ai-chat.d.ts.map +1 -1
  36. package/dist/alphalib/types/robots/ai-chat.js +28 -4
  37. package/dist/alphalib/types/robots/ai-chat.js.map +1 -1
  38. package/dist/alphalib/types/robots/assembly-savejson.d.ts.map +1 -1
  39. package/dist/alphalib/types/robots/assembly-savejson.js +8 -0
  40. package/dist/alphalib/types/robots/assembly-savejson.js.map +1 -1
  41. package/dist/alphalib/types/robots/audio-artwork.d.ts.map +1 -1
  42. package/dist/alphalib/types/robots/audio-artwork.js +4 -5
  43. package/dist/alphalib/types/robots/audio-artwork.js.map +1 -1
  44. package/dist/alphalib/types/robots/audio-concat.d.ts.map +1 -1
  45. package/dist/alphalib/types/robots/audio-concat.js +1 -2
  46. package/dist/alphalib/types/robots/audio-concat.js.map +1 -1
  47. package/dist/alphalib/types/robots/audio-encode.d.ts.map +1 -1
  48. package/dist/alphalib/types/robots/audio-encode.js +1 -2
  49. package/dist/alphalib/types/robots/audio-encode.js.map +1 -1
  50. package/dist/alphalib/types/robots/audio-loop.d.ts.map +1 -1
  51. package/dist/alphalib/types/robots/audio-loop.js +1 -2
  52. package/dist/alphalib/types/robots/audio-loop.js.map +1 -1
  53. package/dist/alphalib/types/robots/audio-merge.d.ts.map +1 -1
  54. package/dist/alphalib/types/robots/audio-merge.js +1 -2
  55. package/dist/alphalib/types/robots/audio-merge.js.map +1 -1
  56. package/dist/alphalib/types/robots/audio-split.d.ts +2936 -0
  57. package/dist/alphalib/types/robots/audio-split.d.ts.map +1 -0
  58. package/dist/alphalib/types/robots/audio-split.js +88 -0
  59. package/dist/alphalib/types/robots/audio-split.js.map +1 -0
  60. package/dist/alphalib/types/robots/audio-waveform.d.ts +92 -6
  61. package/dist/alphalib/types/robots/audio-waveform.d.ts.map +1 -1
  62. package/dist/alphalib/types/robots/audio-waveform.js +72 -6
  63. package/dist/alphalib/types/robots/audio-waveform.js.map +1 -1
  64. package/dist/alphalib/types/robots/azure-import.d.ts.map +1 -1
  65. package/dist/alphalib/types/robots/azure-import.js +0 -1
  66. package/dist/alphalib/types/robots/azure-import.js.map +1 -1
  67. package/dist/alphalib/types/robots/azure-store.d.ts.map +1 -1
  68. package/dist/alphalib/types/robots/azure-store.js +0 -1
  69. package/dist/alphalib/types/robots/azure-store.js.map +1 -1
  70. package/dist/alphalib/types/robots/backblaze-import.d.ts.map +1 -1
  71. package/dist/alphalib/types/robots/backblaze-import.js +0 -1
  72. package/dist/alphalib/types/robots/backblaze-import.js.map +1 -1
  73. package/dist/alphalib/types/robots/backblaze-store.d.ts.map +1 -1
  74. package/dist/alphalib/types/robots/backblaze-store.js +0 -1
  75. package/dist/alphalib/types/robots/backblaze-store.js.map +1 -1
  76. package/dist/alphalib/types/robots/box-import.d.ts +150 -0
  77. package/dist/alphalib/types/robots/box-import.d.ts.map +1 -0
  78. package/dist/alphalib/types/robots/box-import.js +63 -0
  79. package/dist/alphalib/types/robots/box-import.js.map +1 -0
  80. package/dist/alphalib/types/robots/box-store.d.ts +455 -0
  81. package/dist/alphalib/types/robots/box-store.d.ts.map +1 -0
  82. package/dist/alphalib/types/robots/box-store.js +66 -0
  83. package/dist/alphalib/types/robots/box-store.js.map +1 -0
  84. package/dist/alphalib/types/robots/cloudfiles-import.d.ts.map +1 -1
  85. package/dist/alphalib/types/robots/cloudfiles-import.js +0 -1
  86. package/dist/alphalib/types/robots/cloudfiles-import.js.map +1 -1
  87. package/dist/alphalib/types/robots/cloudfiles-store.d.ts.map +1 -1
  88. package/dist/alphalib/types/robots/cloudfiles-store.js +0 -1
  89. package/dist/alphalib/types/robots/cloudfiles-store.js.map +1 -1
  90. package/dist/alphalib/types/robots/cloudflare-import.d.ts.map +1 -1
  91. package/dist/alphalib/types/robots/cloudflare-import.js +0 -1
  92. package/dist/alphalib/types/robots/cloudflare-import.js.map +1 -1
  93. package/dist/alphalib/types/robots/cloudflare-store.d.ts.map +1 -1
  94. package/dist/alphalib/types/robots/cloudflare-store.js +0 -1
  95. package/dist/alphalib/types/robots/cloudflare-store.js.map +1 -1
  96. package/dist/alphalib/types/robots/digitalocean-import.d.ts.map +1 -1
  97. package/dist/alphalib/types/robots/digitalocean-import.js +0 -1
  98. package/dist/alphalib/types/robots/digitalocean-import.js.map +1 -1
  99. package/dist/alphalib/types/robots/digitalocean-store.d.ts.map +1 -1
  100. package/dist/alphalib/types/robots/digitalocean-store.js +0 -1
  101. package/dist/alphalib/types/robots/digitalocean-store.js.map +1 -1
  102. package/dist/alphalib/types/robots/document-autorotate.d.ts.map +1 -1
  103. package/dist/alphalib/types/robots/document-autorotate.js +8 -1
  104. package/dist/alphalib/types/robots/document-autorotate.js.map +1 -1
  105. package/dist/alphalib/types/robots/document-convert.d.ts +8 -8
  106. package/dist/alphalib/types/robots/document-convert.d.ts.map +1 -1
  107. package/dist/alphalib/types/robots/document-convert.js +9 -3
  108. package/dist/alphalib/types/robots/document-convert.js.map +1 -1
  109. package/dist/alphalib/types/robots/document-merge.d.ts.map +1 -1
  110. package/dist/alphalib/types/robots/document-merge.js +0 -1
  111. package/dist/alphalib/types/robots/document-merge.js.map +1 -1
  112. package/dist/alphalib/types/robots/document-ocr.d.ts.map +1 -1
  113. package/dist/alphalib/types/robots/document-ocr.js +0 -1
  114. package/dist/alphalib/types/robots/document-ocr.js.map +1 -1
  115. package/dist/alphalib/types/robots/document-optimize.d.ts.map +1 -1
  116. package/dist/alphalib/types/robots/document-optimize.js +0 -1
  117. package/dist/alphalib/types/robots/document-optimize.js.map +1 -1
  118. package/dist/alphalib/types/robots/document-split.d.ts.map +1 -1
  119. package/dist/alphalib/types/robots/document-split.js +9 -1
  120. package/dist/alphalib/types/robots/document-split.js.map +1 -1
  121. package/dist/alphalib/types/robots/document-thumbs.d.ts +12 -0
  122. package/dist/alphalib/types/robots/document-thumbs.d.ts.map +1 -1
  123. package/dist/alphalib/types/robots/document-thumbs.js +23 -4
  124. package/dist/alphalib/types/robots/document-thumbs.js.map +1 -1
  125. package/dist/alphalib/types/robots/dropbox-import.d.ts.map +1 -1
  126. package/dist/alphalib/types/robots/dropbox-import.js +0 -1
  127. package/dist/alphalib/types/robots/dropbox-import.js.map +1 -1
  128. package/dist/alphalib/types/robots/dropbox-store.d.ts.map +1 -1
  129. package/dist/alphalib/types/robots/dropbox-store.js +0 -1
  130. package/dist/alphalib/types/robots/dropbox-store.js.map +1 -1
  131. package/dist/alphalib/types/robots/edgly-deliver.d.ts.map +1 -1
  132. package/dist/alphalib/types/robots/edgly-deliver.js +8 -1
  133. package/dist/alphalib/types/robots/edgly-deliver.js.map +1 -1
  134. package/dist/alphalib/types/robots/file-compress.d.ts +12 -0
  135. package/dist/alphalib/types/robots/file-compress.d.ts.map +1 -1
  136. package/dist/alphalib/types/robots/file-compress.js +8 -1
  137. package/dist/alphalib/types/robots/file-compress.js.map +1 -1
  138. package/dist/alphalib/types/robots/file-decompress.d.ts +24 -0
  139. package/dist/alphalib/types/robots/file-decompress.d.ts.map +1 -1
  140. package/dist/alphalib/types/robots/file-decompress.js +30 -5
  141. package/dist/alphalib/types/robots/file-decompress.js.map +1 -1
  142. package/dist/alphalib/types/robots/file-filter.d.ts.map +1 -1
  143. package/dist/alphalib/types/robots/file-filter.js +23 -6
  144. package/dist/alphalib/types/robots/file-filter.js.map +1 -1
  145. package/dist/alphalib/types/robots/file-hash.d.ts +24 -0
  146. package/dist/alphalib/types/robots/file-hash.d.ts.map +1 -1
  147. package/dist/alphalib/types/robots/file-hash.js +23 -1
  148. package/dist/alphalib/types/robots/file-hash.js.map +1 -1
  149. package/dist/alphalib/types/robots/file-preview.d.ts +12 -0
  150. package/dist/alphalib/types/robots/file-preview.d.ts.map +1 -1
  151. package/dist/alphalib/types/robots/file-preview.js +8 -1
  152. package/dist/alphalib/types/robots/file-preview.js.map +1 -1
  153. package/dist/alphalib/types/robots/file-read.d.ts.map +1 -1
  154. package/dist/alphalib/types/robots/file-read.js +9 -1
  155. package/dist/alphalib/types/robots/file-read.js.map +1 -1
  156. package/dist/alphalib/types/robots/file-serve.d.ts +12 -0
  157. package/dist/alphalib/types/robots/file-serve.d.ts.map +1 -1
  158. package/dist/alphalib/types/robots/file-serve.js +38 -7
  159. package/dist/alphalib/types/robots/file-serve.js.map +1 -1
  160. package/dist/alphalib/types/robots/file-verify.d.ts.map +1 -1
  161. package/dist/alphalib/types/robots/file-verify.js +0 -1
  162. package/dist/alphalib/types/robots/file-verify.js.map +1 -1
  163. package/dist/alphalib/types/robots/file-virusscan.d.ts.map +1 -1
  164. package/dist/alphalib/types/robots/file-virusscan.js +5 -4
  165. package/dist/alphalib/types/robots/file-virusscan.js.map +1 -1
  166. package/dist/alphalib/types/robots/file-watermark.d.ts.map +1 -1
  167. package/dist/alphalib/types/robots/file-watermark.js +10 -0
  168. package/dist/alphalib/types/robots/file-watermark.js.map +1 -1
  169. package/dist/alphalib/types/robots/ftp-import.d.ts.map +1 -1
  170. package/dist/alphalib/types/robots/ftp-import.js +0 -1
  171. package/dist/alphalib/types/robots/ftp-import.js.map +1 -1
  172. package/dist/alphalib/types/robots/ftp-store.d.ts.map +1 -1
  173. package/dist/alphalib/types/robots/ftp-store.js +0 -1
  174. package/dist/alphalib/types/robots/ftp-store.js.map +1 -1
  175. package/dist/alphalib/types/robots/google-import.d.ts.map +1 -1
  176. package/dist/alphalib/types/robots/google-import.js +0 -1
  177. package/dist/alphalib/types/robots/google-import.js.map +1 -1
  178. package/dist/alphalib/types/robots/google-store.d.ts.map +1 -1
  179. package/dist/alphalib/types/robots/google-store.js +0 -1
  180. package/dist/alphalib/types/robots/google-store.js.map +1 -1
  181. package/dist/alphalib/types/robots/html-convert.d.ts.map +1 -1
  182. package/dist/alphalib/types/robots/html-convert.js +0 -1
  183. package/dist/alphalib/types/robots/html-convert.js.map +1 -1
  184. package/dist/alphalib/types/robots/http-import.d.ts.map +1 -1
  185. package/dist/alphalib/types/robots/http-import.js +0 -1
  186. package/dist/alphalib/types/robots/http-import.js.map +1 -1
  187. package/dist/alphalib/types/robots/image-bgremove.d.ts +8 -8
  188. package/dist/alphalib/types/robots/image-bgremove.d.ts.map +1 -1
  189. package/dist/alphalib/types/robots/image-bgremove.js +4 -2
  190. package/dist/alphalib/types/robots/image-bgremove.js.map +1 -1
  191. package/dist/alphalib/types/robots/image-copyrightdetect.d.ts +465 -0
  192. package/dist/alphalib/types/robots/image-copyrightdetect.d.ts.map +1 -0
  193. package/dist/alphalib/types/robots/image-copyrightdetect.js +136 -0
  194. package/dist/alphalib/types/robots/image-copyrightdetect.js.map +1 -0
  195. package/dist/alphalib/types/robots/image-describe.d.ts.map +1 -1
  196. package/dist/alphalib/types/robots/image-describe.js +0 -1
  197. package/dist/alphalib/types/robots/image-describe.js.map +1 -1
  198. package/dist/alphalib/types/robots/image-enhance.d.ts +502 -0
  199. package/dist/alphalib/types/robots/image-enhance.d.ts.map +1 -0
  200. package/dist/alphalib/types/robots/image-enhance.js +146 -0
  201. package/dist/alphalib/types/robots/image-enhance.js.map +1 -0
  202. package/dist/alphalib/types/robots/image-facedetect.d.ts.map +1 -1
  203. package/dist/alphalib/types/robots/image-facedetect.js +0 -1
  204. package/dist/alphalib/types/robots/image-facedetect.js.map +1 -1
  205. package/dist/alphalib/types/robots/image-generate.d.ts +4 -5
  206. package/dist/alphalib/types/robots/image-generate.d.ts.map +1 -1
  207. package/dist/alphalib/types/robots/image-generate.js +62 -8
  208. package/dist/alphalib/types/robots/image-generate.js.map +1 -1
  209. package/dist/alphalib/types/robots/image-merge.d.ts +12 -12
  210. package/dist/alphalib/types/robots/image-merge.d.ts.map +1 -1
  211. package/dist/alphalib/types/robots/image-merge.js +0 -1
  212. package/dist/alphalib/types/robots/image-merge.js.map +1 -1
  213. package/dist/alphalib/types/robots/image-ocr.d.ts.map +1 -1
  214. package/dist/alphalib/types/robots/image-ocr.js +0 -1
  215. package/dist/alphalib/types/robots/image-ocr.js.map +1 -1
  216. package/dist/alphalib/types/robots/image-optimize.d.ts +12 -0
  217. package/dist/alphalib/types/robots/image-optimize.d.ts.map +1 -1
  218. package/dist/alphalib/types/robots/image-optimize.js +16 -3
  219. package/dist/alphalib/types/robots/image-optimize.js.map +1 -1
  220. package/dist/alphalib/types/robots/image-resize.d.ts +20 -8
  221. package/dist/alphalib/types/robots/image-resize.d.ts.map +1 -1
  222. package/dist/alphalib/types/robots/image-resize.js +37 -1
  223. package/dist/alphalib/types/robots/image-resize.js.map +1 -1
  224. package/dist/alphalib/types/robots/image-upscale.d.ts +447 -0
  225. package/dist/alphalib/types/robots/image-upscale.d.ts.map +1 -0
  226. package/dist/alphalib/types/robots/image-upscale.js +65 -0
  227. package/dist/alphalib/types/robots/image-upscale.js.map +1 -0
  228. package/dist/alphalib/types/robots/mega-import.d.ts +244 -0
  229. package/dist/alphalib/types/robots/mega-import.d.ts.map +1 -0
  230. package/dist/alphalib/types/robots/mega-import.js +84 -0
  231. package/dist/alphalib/types/robots/mega-import.js.map +1 -0
  232. package/dist/alphalib/types/robots/mega-store.d.ts +526 -0
  233. package/dist/alphalib/types/robots/mega-store.d.ts.map +1 -0
  234. package/dist/alphalib/types/robots/mega-store.js +82 -0
  235. package/dist/alphalib/types/robots/mega-store.js.map +1 -0
  236. package/dist/alphalib/types/robots/meta-read.d.ts.map +1 -1
  237. package/dist/alphalib/types/robots/meta-read.js +8 -0
  238. package/dist/alphalib/types/robots/meta-read.js.map +1 -1
  239. package/dist/alphalib/types/robots/meta-write.d.ts.map +1 -1
  240. package/dist/alphalib/types/robots/meta-write.js +0 -1
  241. package/dist/alphalib/types/robots/meta-write.js.map +1 -1
  242. package/dist/alphalib/types/robots/minio-import.d.ts.map +1 -1
  243. package/dist/alphalib/types/robots/minio-import.js +0 -1
  244. package/dist/alphalib/types/robots/minio-import.js.map +1 -1
  245. package/dist/alphalib/types/robots/minio-store.d.ts.map +1 -1
  246. package/dist/alphalib/types/robots/minio-store.js +0 -1
  247. package/dist/alphalib/types/robots/minio-store.js.map +1 -1
  248. package/dist/alphalib/types/robots/progress-simulate.d.ts.map +1 -1
  249. package/dist/alphalib/types/robots/progress-simulate.js +13 -0
  250. package/dist/alphalib/types/robots/progress-simulate.js.map +1 -1
  251. package/dist/alphalib/types/robots/s3-import.d.ts.map +1 -1
  252. package/dist/alphalib/types/robots/s3-import.js +0 -1
  253. package/dist/alphalib/types/robots/s3-import.js.map +1 -1
  254. package/dist/alphalib/types/robots/s3-store.d.ts.map +1 -1
  255. package/dist/alphalib/types/robots/s3-store.js +0 -1
  256. package/dist/alphalib/types/robots/s3-store.js.map +1 -1
  257. package/dist/alphalib/types/robots/script-run.d.ts.map +1 -1
  258. package/dist/alphalib/types/robots/script-run.js +10 -1
  259. package/dist/alphalib/types/robots/script-run.js.map +1 -1
  260. package/dist/alphalib/types/robots/sftp-import.d.ts.map +1 -1
  261. package/dist/alphalib/types/robots/sftp-import.js +0 -1
  262. package/dist/alphalib/types/robots/sftp-import.js.map +1 -1
  263. package/dist/alphalib/types/robots/sftp-store.d.ts.map +1 -1
  264. package/dist/alphalib/types/robots/sftp-store.js +0 -1
  265. package/dist/alphalib/types/robots/sftp-store.js.map +1 -1
  266. package/dist/alphalib/types/robots/speech-transcribe.d.ts.map +1 -1
  267. package/dist/alphalib/types/robots/speech-transcribe.js +0 -1
  268. package/dist/alphalib/types/robots/speech-transcribe.js.map +1 -1
  269. package/dist/alphalib/types/robots/supabase-import.d.ts.map +1 -1
  270. package/dist/alphalib/types/robots/supabase-import.js +0 -1
  271. package/dist/alphalib/types/robots/supabase-import.js.map +1 -1
  272. package/dist/alphalib/types/robots/supabase-store.d.ts.map +1 -1
  273. package/dist/alphalib/types/robots/supabase-store.js +0 -1
  274. package/dist/alphalib/types/robots/supabase-store.js.map +1 -1
  275. package/dist/alphalib/types/robots/swift-import.d.ts.map +1 -1
  276. package/dist/alphalib/types/robots/swift-import.js +0 -1
  277. package/dist/alphalib/types/robots/swift-import.js.map +1 -1
  278. package/dist/alphalib/types/robots/swift-store.d.ts.map +1 -1
  279. package/dist/alphalib/types/robots/swift-store.js +0 -1
  280. package/dist/alphalib/types/robots/swift-store.js.map +1 -1
  281. package/dist/alphalib/types/robots/text-speak.d.ts.map +1 -1
  282. package/dist/alphalib/types/robots/text-speak.js +0 -1
  283. package/dist/alphalib/types/robots/text-speak.js.map +1 -1
  284. package/dist/alphalib/types/robots/text-translate.d.ts.map +1 -1
  285. package/dist/alphalib/types/robots/text-translate.js +0 -1
  286. package/dist/alphalib/types/robots/text-translate.js.map +1 -1
  287. package/dist/alphalib/types/robots/tigris-import.d.ts.map +1 -1
  288. package/dist/alphalib/types/robots/tigris-import.js +0 -1
  289. package/dist/alphalib/types/robots/tigris-import.js.map +1 -1
  290. package/dist/alphalib/types/robots/tigris-store.d.ts.map +1 -1
  291. package/dist/alphalib/types/robots/tigris-store.js +0 -1
  292. package/dist/alphalib/types/robots/tigris-store.js.map +1 -1
  293. package/dist/alphalib/types/robots/tlcdn-deliver.d.ts.map +1 -1
  294. package/dist/alphalib/types/robots/tlcdn-deliver.js +8 -1
  295. package/dist/alphalib/types/robots/tlcdn-deliver.js.map +1 -1
  296. package/dist/alphalib/types/robots/tus-store.d.ts.map +1 -1
  297. package/dist/alphalib/types/robots/tus-store.js +1 -14
  298. package/dist/alphalib/types/robots/tus-store.js.map +1 -1
  299. package/dist/alphalib/types/robots/upload-handle.d.ts.map +1 -1
  300. package/dist/alphalib/types/robots/upload-handle.js +0 -1
  301. package/dist/alphalib/types/robots/upload-handle.js.map +1 -1
  302. package/dist/alphalib/types/robots/video-adaptive.d.ts +32 -8
  303. package/dist/alphalib/types/robots/video-adaptive.d.ts.map +1 -1
  304. package/dist/alphalib/types/robots/video-adaptive.js +22 -6
  305. package/dist/alphalib/types/robots/video-adaptive.js.map +1 -1
  306. package/dist/alphalib/types/robots/video-artwork.d.ts +2855 -0
  307. package/dist/alphalib/types/robots/video-artwork.d.ts.map +1 -0
  308. package/dist/alphalib/types/robots/video-artwork.js +66 -0
  309. package/dist/alphalib/types/robots/video-artwork.js.map +1 -0
  310. package/dist/alphalib/types/robots/video-concat.d.ts +36 -0
  311. package/dist/alphalib/types/robots/video-concat.d.ts.map +1 -1
  312. package/dist/alphalib/types/robots/video-concat.js +30 -1
  313. package/dist/alphalib/types/robots/video-concat.js.map +1 -1
  314. package/dist/alphalib/types/robots/video-encode.d.ts.map +1 -1
  315. package/dist/alphalib/types/robots/video-encode.js +0 -1
  316. package/dist/alphalib/types/robots/video-encode.js.map +1 -1
  317. package/dist/alphalib/types/robots/video-generate.d.ts +594 -0
  318. package/dist/alphalib/types/robots/video-generate.d.ts.map +1 -0
  319. package/dist/alphalib/types/robots/video-generate.js +90 -0
  320. package/dist/alphalib/types/robots/video-generate.js.map +1 -0
  321. package/dist/alphalib/types/robots/video-merge.d.ts +24 -0
  322. package/dist/alphalib/types/robots/video-merge.d.ts.map +1 -1
  323. package/dist/alphalib/types/robots/video-merge.js +33 -1
  324. package/dist/alphalib/types/robots/video-merge.js.map +1 -1
  325. package/dist/alphalib/types/robots/video-ondemand.d.ts.map +1 -1
  326. package/dist/alphalib/types/robots/video-ondemand.js +3 -4
  327. package/dist/alphalib/types/robots/video-ondemand.js.map +1 -1
  328. package/dist/alphalib/types/robots/video-split.d.ts +2939 -0
  329. package/dist/alphalib/types/robots/video-split.d.ts.map +1 -0
  330. package/dist/alphalib/types/robots/video-split.js +78 -0
  331. package/dist/alphalib/types/robots/video-split.js.map +1 -0
  332. package/dist/alphalib/types/robots/video-subtitle.d.ts +52 -4
  333. package/dist/alphalib/types/robots/video-subtitle.d.ts.map +1 -1
  334. package/dist/alphalib/types/robots/video-subtitle.js +61 -8
  335. package/dist/alphalib/types/robots/video-subtitle.js.map +1 -1
  336. package/dist/alphalib/types/robots/video-thumbs.d.ts.map +1 -1
  337. package/dist/alphalib/types/robots/video-thumbs.js +0 -1
  338. package/dist/alphalib/types/robots/video-thumbs.js.map +1 -1
  339. package/dist/alphalib/types/robots/vimeo-import.d.ts +4 -4
  340. package/dist/alphalib/types/robots/vimeo-import.d.ts.map +1 -1
  341. package/dist/alphalib/types/robots/vimeo-import.js +0 -1
  342. package/dist/alphalib/types/robots/vimeo-import.js.map +1 -1
  343. package/dist/alphalib/types/robots/vimeo-store.d.ts +2 -2
  344. package/dist/alphalib/types/robots/vimeo-store.d.ts.map +1 -1
  345. package/dist/alphalib/types/robots/vimeo-store.js +14 -3
  346. package/dist/alphalib/types/robots/vimeo-store.js.map +1 -1
  347. package/dist/alphalib/types/robots/wasabi-import.d.ts.map +1 -1
  348. package/dist/alphalib/types/robots/wasabi-import.js +0 -1
  349. package/dist/alphalib/types/robots/wasabi-import.js.map +1 -1
  350. package/dist/alphalib/types/robots/wasabi-store.d.ts.map +1 -1
  351. package/dist/alphalib/types/robots/wasabi-store.js +0 -1
  352. package/dist/alphalib/types/robots/wasabi-store.js.map +1 -1
  353. package/dist/alphalib/types/robots/youtube-store.d.ts.map +1 -1
  354. package/dist/alphalib/types/robots/youtube-store.js +4 -5
  355. package/dist/alphalib/types/robots/youtube-store.js.map +1 -1
  356. package/dist/alphalib/types/skillFrontmatter.d.ts +29 -0
  357. package/dist/alphalib/types/skillFrontmatter.d.ts.map +1 -0
  358. package/dist/alphalib/types/skillFrontmatter.js +19 -0
  359. package/dist/alphalib/types/skillFrontmatter.js.map +1 -0
  360. package/dist/alphalib/types/template.d.ts +77 -132175
  361. package/dist/alphalib/types/template.d.ts.map +1 -1
  362. package/dist/alphalib/types/template.js +26 -3
  363. package/dist/alphalib/types/template.js.map +1 -1
  364. package/dist/alphalib/types/templateCredential.d.ts +13 -3
  365. package/dist/alphalib/types/templateCredential.d.ts.map +1 -1
  366. package/dist/alphalib/types/templateCredential.js +1 -0
  367. package/dist/alphalib/types/templateCredential.js.map +1 -1
  368. package/dist/alphalib/zodParseWithContext.d.ts.map +1 -1
  369. package/dist/alphalib/zodParseWithContext.js +15 -11
  370. package/dist/alphalib/zodParseWithContext.js.map +1 -1
  371. package/dist/cli/commands/assemblies.d.ts +8 -2
  372. package/dist/cli/commands/assemblies.d.ts.map +1 -1
  373. package/dist/cli/commands/assemblies.js +566 -411
  374. package/dist/cli/commands/assemblies.js.map +1 -1
  375. package/dist/cli/commands/index.d.ts.map +1 -1
  376. package/dist/cli/commands/index.js +5 -0
  377. package/dist/cli/commands/index.js.map +1 -1
  378. package/dist/cli/commands/templates.d.ts.map +1 -1
  379. package/dist/cli/commands/templates.js +4 -14
  380. package/dist/cli/commands/templates.js.map +1 -1
  381. package/dist/cli/fileProcessingOptions.d.ts +35 -0
  382. package/dist/cli/fileProcessingOptions.d.ts.map +1 -0
  383. package/dist/cli/fileProcessingOptions.js +182 -0
  384. package/dist/cli/fileProcessingOptions.js.map +1 -0
  385. package/dist/cli/generateIntentDocs.d.ts +6 -0
  386. package/dist/cli/generateIntentDocs.d.ts.map +1 -0
  387. package/dist/cli/generateIntentDocs.js +337 -0
  388. package/dist/cli/generateIntentDocs.js.map +1 -0
  389. package/dist/cli/intentCommandSpecs.d.ts +36 -0
  390. package/dist/cli/intentCommandSpecs.d.ts.map +1 -0
  391. package/dist/cli/intentCommandSpecs.js +179 -0
  392. package/dist/cli/intentCommandSpecs.js.map +1 -0
  393. package/dist/cli/intentCommands.d.ts +13 -0
  394. package/dist/cli/intentCommands.d.ts.map +1 -0
  395. package/dist/cli/intentCommands.js +368 -0
  396. package/dist/cli/intentCommands.js.map +1 -0
  397. package/dist/cli/intentFields.d.ts +25 -0
  398. package/dist/cli/intentFields.d.ts.map +1 -0
  399. package/dist/cli/intentFields.js +298 -0
  400. package/dist/cli/intentFields.js.map +1 -0
  401. package/dist/cli/intentInputPolicy.d.ts +10 -0
  402. package/dist/cli/intentInputPolicy.d.ts.map +1 -0
  403. package/dist/cli/intentInputPolicy.js +2 -0
  404. package/dist/cli/intentInputPolicy.js.map +1 -0
  405. package/dist/cli/intentRuntime.d.ts +114 -0
  406. package/dist/cli/intentRuntime.d.ts.map +1 -0
  407. package/dist/cli/intentRuntime.js +464 -0
  408. package/dist/cli/intentRuntime.js.map +1 -0
  409. package/dist/cli/resultFiles.d.ts +19 -0
  410. package/dist/cli/resultFiles.d.ts.map +1 -0
  411. package/dist/cli/resultFiles.js +66 -0
  412. package/dist/cli/resultFiles.js.map +1 -0
  413. package/dist/cli/resultUrls.d.ts +19 -0
  414. package/dist/cli/resultUrls.d.ts.map +1 -0
  415. package/dist/cli/resultUrls.js +36 -0
  416. package/dist/cli/resultUrls.js.map +1 -0
  417. package/dist/cli/semanticIntents/imageDescribe.d.ts +45 -0
  418. package/dist/cli/semanticIntents/imageDescribe.d.ts.map +1 -0
  419. package/dist/cli/semanticIntents/imageDescribe.js +188 -0
  420. package/dist/cli/semanticIntents/imageDescribe.js.map +1 -0
  421. package/dist/cli/semanticIntents/imageGenerate.d.ts +94 -0
  422. package/dist/cli/semanticIntents/imageGenerate.d.ts.map +1 -0
  423. package/dist/cli/semanticIntents/imageGenerate.js +215 -0
  424. package/dist/cli/semanticIntents/imageGenerate.js.map +1 -0
  425. package/dist/cli/semanticIntents/index.d.ts +20 -0
  426. package/dist/cli/semanticIntents/index.d.ts.map +1 -0
  427. package/dist/cli/semanticIntents/index.js +20 -0
  428. package/dist/cli/semanticIntents/index.js.map +1 -0
  429. package/dist/cli/semanticIntents/markdownPdf.d.ts +4 -0
  430. package/dist/cli/semanticIntents/markdownPdf.d.ts.map +1 -0
  431. package/dist/cli/semanticIntents/markdownPdf.js +93 -0
  432. package/dist/cli/semanticIntents/markdownPdf.js.map +1 -0
  433. package/dist/cli/semanticIntents/parsing.d.ts +11 -0
  434. package/dist/cli/semanticIntents/parsing.d.ts.map +1 -0
  435. package/dist/cli/semanticIntents/parsing.js +29 -0
  436. package/dist/cli/semanticIntents/parsing.js.map +1 -0
  437. package/dist/cli/stepsInput.d.ts +4 -0
  438. package/dist/cli/stepsInput.d.ts.map +1 -0
  439. package/dist/cli/stepsInput.js +23 -0
  440. package/dist/cli/stepsInput.js.map +1 -0
  441. package/dist/cli.d.ts +1 -1
  442. package/dist/cli.d.ts.map +1 -1
  443. package/dist/cli.js +5 -4
  444. package/dist/cli.js.map +1 -1
  445. package/dist/ensureUniqueCounter.d.ts +8 -0
  446. package/dist/ensureUniqueCounter.d.ts.map +1 -0
  447. package/dist/ensureUniqueCounter.js +48 -0
  448. package/dist/ensureUniqueCounter.js.map +1 -0
  449. package/dist/inputFiles.d.ts +9 -0
  450. package/dist/inputFiles.d.ts.map +1 -1
  451. package/dist/inputFiles.js +177 -26
  452. package/dist/inputFiles.js.map +1 -1
  453. package/dist/robots.js +3 -3
  454. package/dist/robots.js.map +1 -1
  455. package/package.json +9 -7
  456. package/src/Transloadit.ts +3 -3
  457. package/src/alphalib/assembly-linter.ts +1 -1
  458. package/src/alphalib/stepParsing.ts +2 -2
  459. package/src/alphalib/types/assemblyStatus.ts +45 -3
  460. package/src/alphalib/types/builtinTemplates.ts +24 -0
  461. package/src/alphalib/types/robots/_index.ts +211 -20
  462. package/src/alphalib/types/robots/_instructions-primitives.ts +93 -3
  463. package/src/alphalib/types/robots/ai-chat.ts +35 -4
  464. package/src/alphalib/types/robots/assembly-savejson.ts +8 -0
  465. package/src/alphalib/types/robots/audio-artwork.ts +4 -5
  466. package/src/alphalib/types/robots/audio-concat.ts +1 -2
  467. package/src/alphalib/types/robots/audio-encode.ts +1 -2
  468. package/src/alphalib/types/robots/audio-loop.ts +1 -2
  469. package/src/alphalib/types/robots/audio-merge.ts +1 -2
  470. package/src/alphalib/types/robots/audio-split.ts +130 -0
  471. package/src/alphalib/types/robots/audio-waveform.ts +90 -6
  472. package/src/alphalib/types/robots/azure-import.ts +0 -1
  473. package/src/alphalib/types/robots/azure-store.ts +0 -1
  474. package/src/alphalib/types/robots/backblaze-import.ts +0 -1
  475. package/src/alphalib/types/robots/backblaze-store.ts +0 -1
  476. package/src/alphalib/types/robots/box-import.ts +97 -0
  477. package/src/alphalib/types/robots/box-store.ts +94 -0
  478. package/src/alphalib/types/robots/cloudfiles-import.ts +0 -1
  479. package/src/alphalib/types/robots/cloudfiles-store.ts +0 -1
  480. package/src/alphalib/types/robots/cloudflare-import.ts +0 -1
  481. package/src/alphalib/types/robots/cloudflare-store.ts +0 -1
  482. package/src/alphalib/types/robots/digitalocean-import.ts +0 -1
  483. package/src/alphalib/types/robots/digitalocean-store.ts +0 -1
  484. package/src/alphalib/types/robots/document-autorotate.ts +8 -1
  485. package/src/alphalib/types/robots/document-convert.ts +10 -3
  486. package/src/alphalib/types/robots/document-merge.ts +0 -1
  487. package/src/alphalib/types/robots/document-ocr.ts +0 -1
  488. package/src/alphalib/types/robots/document-optimize.ts +0 -1
  489. package/src/alphalib/types/robots/document-split.ts +9 -1
  490. package/src/alphalib/types/robots/document-thumbs.ts +26 -4
  491. package/src/alphalib/types/robots/dropbox-import.ts +0 -1
  492. package/src/alphalib/types/robots/dropbox-store.ts +0 -1
  493. package/src/alphalib/types/robots/edgly-deliver.ts +8 -1
  494. package/src/alphalib/types/robots/file-compress.ts +8 -1
  495. package/src/alphalib/types/robots/file-decompress.ts +30 -5
  496. package/src/alphalib/types/robots/file-filter.ts +23 -6
  497. package/src/alphalib/types/robots/file-hash.ts +23 -1
  498. package/src/alphalib/types/robots/file-preview.ts +8 -1
  499. package/src/alphalib/types/robots/file-read.ts +9 -1
  500. package/src/alphalib/types/robots/file-serve.ts +39 -7
  501. package/src/alphalib/types/robots/file-verify.ts +0 -1
  502. package/src/alphalib/types/robots/file-virusscan.ts +6 -4
  503. package/src/alphalib/types/robots/file-watermark.ts +10 -0
  504. package/src/alphalib/types/robots/ftp-import.ts +0 -1
  505. package/src/alphalib/types/robots/ftp-store.ts +0 -1
  506. package/src/alphalib/types/robots/google-import.ts +0 -1
  507. package/src/alphalib/types/robots/google-store.ts +0 -1
  508. package/src/alphalib/types/robots/html-convert.ts +0 -1
  509. package/src/alphalib/types/robots/http-import.ts +0 -1
  510. package/src/alphalib/types/robots/image-bgremove.ts +4 -2
  511. package/src/alphalib/types/robots/image-copyrightdetect.ts +167 -0
  512. package/src/alphalib/types/robots/image-describe.ts +0 -1
  513. package/src/alphalib/types/robots/image-enhance.ts +185 -0
  514. package/src/alphalib/types/robots/image-facedetect.ts +0 -1
  515. package/src/alphalib/types/robots/image-generate.ts +74 -8
  516. package/src/alphalib/types/robots/image-merge.ts +0 -1
  517. package/src/alphalib/types/robots/image-ocr.ts +0 -1
  518. package/src/alphalib/types/robots/image-optimize.ts +16 -3
  519. package/src/alphalib/types/robots/image-resize.ts +37 -1
  520. package/src/alphalib/types/robots/image-upscale.ts +93 -0
  521. package/src/alphalib/types/robots/mega-import.ts +123 -0
  522. package/src/alphalib/types/robots/mega-store.ts +109 -0
  523. package/src/alphalib/types/robots/meta-read.ts +8 -0
  524. package/src/alphalib/types/robots/meta-write.ts +0 -1
  525. package/src/alphalib/types/robots/minio-import.ts +0 -1
  526. package/src/alphalib/types/robots/minio-store.ts +0 -1
  527. package/src/alphalib/types/robots/progress-simulate.ts +13 -0
  528. package/src/alphalib/types/robots/s3-import.ts +0 -1
  529. package/src/alphalib/types/robots/s3-store.ts +0 -1
  530. package/src/alphalib/types/robots/script-run.ts +11 -1
  531. package/src/alphalib/types/robots/sftp-import.ts +0 -1
  532. package/src/alphalib/types/robots/sftp-store.ts +0 -1
  533. package/src/alphalib/types/robots/speech-transcribe.ts +0 -1
  534. package/src/alphalib/types/robots/supabase-import.ts +0 -1
  535. package/src/alphalib/types/robots/supabase-store.ts +0 -1
  536. package/src/alphalib/types/robots/swift-import.ts +0 -1
  537. package/src/alphalib/types/robots/swift-store.ts +0 -1
  538. package/src/alphalib/types/robots/text-speak.ts +0 -1
  539. package/src/alphalib/types/robots/text-translate.ts +0 -1
  540. package/src/alphalib/types/robots/tigris-import.ts +0 -1
  541. package/src/alphalib/types/robots/tigris-store.ts +0 -1
  542. package/src/alphalib/types/robots/tlcdn-deliver.ts +8 -1
  543. package/src/alphalib/types/robots/tus-store.ts +1 -14
  544. package/src/alphalib/types/robots/upload-handle.ts +0 -1
  545. package/src/alphalib/types/robots/video-adaptive.ts +22 -6
  546. package/src/alphalib/types/robots/video-artwork.ts +100 -0
  547. package/src/alphalib/types/robots/video-concat.ts +30 -1
  548. package/src/alphalib/types/robots/video-encode.ts +0 -1
  549. package/src/alphalib/types/robots/video-generate.ts +120 -0
  550. package/src/alphalib/types/robots/video-merge.ts +33 -1
  551. package/src/alphalib/types/robots/video-ondemand.ts +3 -4
  552. package/src/alphalib/types/robots/video-split.ts +117 -0
  553. package/src/alphalib/types/robots/video-subtitle.ts +61 -8
  554. package/src/alphalib/types/robots/video-thumbs.ts +0 -1
  555. package/src/alphalib/types/robots/vimeo-import.ts +0 -1
  556. package/src/alphalib/types/robots/vimeo-store.ts +14 -3
  557. package/src/alphalib/types/robots/wasabi-import.ts +0 -1
  558. package/src/alphalib/types/robots/wasabi-store.ts +0 -1
  559. package/src/alphalib/types/robots/youtube-store.ts +4 -5
  560. package/src/alphalib/types/skillFrontmatter.ts +24 -0
  561. package/src/alphalib/types/template.ts +61 -15
  562. package/src/alphalib/types/templateCredential.ts +1 -0
  563. package/src/alphalib/zodParseWithContext.ts +19 -12
  564. package/src/cli/commands/assemblies.ts +825 -505
  565. package/src/cli/commands/index.ts +6 -3
  566. package/src/cli/commands/templates.ts +6 -17
  567. package/src/cli/fileProcessingOptions.ts +294 -0
  568. package/src/cli/generateIntentDocs.ts +438 -0
  569. package/src/cli/intentCommandSpecs.ts +277 -0
  570. package/src/cli/intentCommands.ts +525 -0
  571. package/src/cli/intentFields.ts +403 -0
  572. package/src/cli/intentInputPolicy.ts +11 -0
  573. package/src/cli/intentRuntime.ts +739 -0
  574. package/src/cli/resultFiles.ts +105 -0
  575. package/src/cli/resultUrls.ts +72 -0
  576. package/src/cli/semanticIntents/imageDescribe.ts +257 -0
  577. package/src/cli/semanticIntents/imageGenerate.ts +254 -0
  578. package/src/cli/semanticIntents/index.ts +53 -0
  579. package/src/cli/semanticIntents/markdownPdf.ts +120 -0
  580. package/src/cli/semanticIntents/parsing.ts +56 -0
  581. package/src/cli/stepsInput.ts +32 -0
  582. package/src/cli.ts +5 -4
  583. package/src/ensureUniqueCounter.ts +75 -0
  584. package/src/inputFiles.ts +277 -26
  585. package/src/robots.ts +3 -3
@@ -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,
@@ -159,10 +169,19 @@ export const MODEL_CAPABILITIES: Record<string, { pdf: boolean; image: boolean }
159
169
  'openai/gpt-5.2-2025-12-11': { pdf: false, image: true },
160
170
  'openai/gpt-5.2-chat-latest': { pdf: false, image: true },
161
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 },
162
175
  'google/gemini-2.5-pro': { pdf: true, image: true },
163
176
  'moonshot/kimi-k2': { pdf: false, image: false },
164
177
  }
165
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
+
166
185
  const supportedModelsList = Object.keys(MODEL_CAPABILITIES)
167
186
 
168
187
  export const vendorModelSchema = z
@@ -178,7 +197,7 @@ export const robotAiChatInstructionsSchema = robotBase
178
197
  .merge(robotUse)
179
198
  .extend({
180
199
  robot: z.literal('/ai/chat'),
181
- // TODO: Is the auto mode yet implemented?
200
+ // NOTE: model:"auto" is resolved server-side to AI_CHAT_DEFAULT_MODEL for now.
182
201
  model: z
183
202
  .union([vendorModelSchema, z.literal('auto')])
184
203
  .default('auto')
@@ -195,6 +214,12 @@ export const robotAiChatInstructionsSchema = robotBase
195
214
  .string()
196
215
  .optional()
197
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
+ ),
198
223
  credentials: z
199
224
  .union([z.string(), z.array(z.string())])
200
225
  .optional()
@@ -214,11 +239,17 @@ export const robotAiChatInstructionsSchema = robotBase
214
239
  url: z.string(),
215
240
  headers: z.record(z.string()).optional(),
216
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
+ ),
217
248
  }),
218
249
  )
219
250
  .optional()
220
251
  .describe(
221
- '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.',
222
253
  ),
223
254
  })
224
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
+ >
@@ -10,7 +10,6 @@ import {
10
10
  } from './_instructions-primitives.ts'
11
11
 
12
12
  export const meta: RobotMetaInput = {
13
- allowed_for_url_transform: false,
14
13
  bytescount: 1,
15
14
  discount_factor: 1,
16
15
  discount_pct: 0,
@@ -52,7 +51,7 @@ Here is an example waveform image:
52
51
  priceFactor: 1,
53
52
  queueSlotCount: 20,
54
53
  minimumCharge: 1048576,
55
- isAllowedForUrlTransform: false,
54
+ isAllowedForUrlTransform: true,
56
55
  trackOutputFileSize: true,
57
56
  isInternal: false,
58
57
  removeJobResultFilesFromDiskRightAfterStoringOnS3: false,
@@ -74,6 +73,7 @@ Similarly, if you need the output image in a different format, please pipe the r
74
73
  .default('image')
75
74
  .describe(`
76
75
  The format of the result file. Can be \`"image"\` or \`"json"\`. If \`"image"\` is supplied, a PNG image will be created, otherwise a JSON file.
76
+ When \`style\` is \`"spectrogram"\`, only \`"image"\` is supported.
77
77
  `),
78
78
  width: z
79
79
  .number()
@@ -110,15 +110,50 @@ The color used in the outer parts of the gradient. The format is "rrggbbaa" (red
110
110
 
111
111
  const styleSchema = z.preprocess(
112
112
  (val) => {
113
- // Backwards compatibility: historically this robot used numeric styles 0/1/2.
114
- // The new API is `style: "v0" | "v1"`. Old v2 values are mapped to v1.
113
+ // Backwards compatibility: historically this robot used numeric styles 0/1.
114
+ // The new API is `style: "v0" | "v1" | "spectrogram"`.
115
115
  if (val === 'v1' || val === 1 || val === '1') return 'v1'
116
116
  if (val === 'v0' || val === 0 || val === '0') return 'v0'
117
+ if (val === 'spectrogram') return 'spectrogram'
117
118
  return val
118
119
  },
119
- z.enum(['v0', 'v1']).default('v0'),
120
+ z.enum(['v0', 'v1', 'spectrogram']).default('v0'),
120
121
  )
121
122
 
123
+ // Color maps for spectrogram visualization
124
+ export type SpectrogramColorMap =
125
+ | 'viridis'
126
+ | 'plasma'
127
+ | 'magma'
128
+ | 'cividis'
129
+ | 'cool'
130
+ | 'rainbow'
131
+ | 'moreland'
132
+ | 'nebulae'
133
+ | 'fire'
134
+ | 'fiery'
135
+ | 'fruit'
136
+ | 'green'
137
+ | 'terrain'
138
+ | 'gray'
139
+
140
+ export const spectrogramColorMaps = [
141
+ 'viridis',
142
+ 'plasma',
143
+ 'magma',
144
+ 'cividis',
145
+ 'cool',
146
+ 'rainbow',
147
+ 'moreland',
148
+ 'nebulae',
149
+ 'fire',
150
+ 'fiery',
151
+ 'fruit',
152
+ 'green',
153
+ 'terrain',
154
+ 'gray',
155
+ ] as const satisfies readonly SpectrogramColorMap[]
156
+
122
157
  // Unified schema: all parameters exist for both styles, but v1-only parameters only apply when
123
158
  // `style` is `v1` (they are accepted for v0 but have no effect).
124
159
  export const robotAudioWaveformInstructionsSchema = robotAudioWaveformInstructionsBaseSchema
@@ -128,8 +163,9 @@ Waveform style version.
128
163
 
129
164
  - \`"v0"\`: Legacy waveform generation (default).
130
165
  - \`"v1"\`: Advanced waveform generation with additional parameters.
166
+ - \`"spectrogram"\`: Spectrogram visualization showing frequency content over time.
131
167
 
132
- For backwards compatibility, numeric values \`0\`, \`1\`, \`2\` are also accepted and mapped to \`"v0"\` (0) and \`"v1"\` (1/2).
168
+ For backwards compatibility, numeric values \`0\` and \`1\` are also accepted and mapped to \`"v0"\` and \`"v1"\`.
133
169
  `),
134
170
 
135
171
  // v1-only parameters (accepted for v0 but have no effect)
@@ -241,6 +277,54 @@ Available when style is \`"v1"\`. Amplitude scale factor.
241
277
  .optional()
242
278
  .describe(`
243
279
  Available when style is \`"v1"\`. PNG compression level: 0 (none) to 9 (best), or -1 (default). Only applicable when format is "image".
280
+ `),
281
+
282
+ // Spectrogram-specific parameters (only apply when style is "spectrogram")
283
+ color_map: z
284
+ .enum(spectrogramColorMaps)
285
+ .optional()
286
+ .describe(`
287
+ Available when style is \`"spectrogram"\`. Color scheme for the spectrogram visualization. Defaults to \`"viridis"\`.
288
+ `),
289
+ frequency_scale: z
290
+ .enum(['linear', 'logarithmic'])
291
+ .optional()
292
+ .describe(`
293
+ Available when style is \`"spectrogram"\`. Frequency scale for the spectrogram. \`"linear"\` shows frequencies evenly spaced, \`"logarithmic"\` emphasizes lower frequencies. Defaults to \`"logarithmic"\`.
294
+ `),
295
+ frequency_min: z
296
+ .number()
297
+ .min(0)
298
+ .optional()
299
+ .describe(`
300
+ Available when style is \`"spectrogram"\`. Minimum frequency in Hz to display. Defaults to \`0\`.
301
+ `),
302
+ frequency_max: z
303
+ .number()
304
+ .min(1)
305
+ .optional()
306
+ .describe(`
307
+ Available when style is \`"spectrogram"\`. Maximum frequency in Hz to display. Defaults to half the sample rate (Nyquist frequency).
308
+ `),
309
+ legend: z
310
+ .boolean()
311
+ .optional()
312
+ .describe(`
313
+ Available when style is \`"spectrogram"\`. Whether to include a legend showing the frequency and time scales. Defaults to \`false\`.
314
+ `),
315
+ gain: z
316
+ .number()
317
+ .min(0)
318
+ .max(128)
319
+ .optional()
320
+ .describe(`
321
+ Available when style is \`"spectrogram"\`. Linear gain factor for spectrogram intensity. Defaults to \`1\`.
322
+ `),
323
+ orientation: z
324
+ .enum(['vertical', 'horizontal'])
325
+ .optional()
326
+ .describe(`
327
+ Available when style is \`"spectrogram"\`. Orientation of the spectrogram. \`"horizontal"\` shows time on the x-axis (default), \`"vertical"\` shows time on the y-axis.
244
328
  `),
245
329
  })
246
330
  .strict()
@@ -13,7 +13,6 @@ import {
13
13
  } from './_instructions-primitives.ts'
14
14
 
15
15
  export const meta: RobotMetaInput = {
16
- allowed_for_url_transform: true,
17
16
  bytescount: 10,
18
17
  discount_factor: 0.1,
19
18
  discount_pct: 90,
@@ -4,7 +4,6 @@ import type { RobotMetaInput } from './_instructions-primitives.ts'
4
4
  import { azureBase, interpolateRobot, robotBase, robotUse } from './_instructions-primitives.ts'
5
5
 
6
6
  export const meta: RobotMetaInput = {
7
- allowed_for_url_transform: true,
8
7
  bytescount: 6,
9
8
  discount_factor: 0.15000150001500018,
10
9
  discount_pct: 84.99984999849998,
@@ -12,7 +12,6 @@ import {
12
12
  } from './_instructions-primitives.ts'
13
13
 
14
14
  export const meta: RobotMetaInput = {
15
- allowed_for_url_transform: true,
16
15
  bytescount: 10,
17
16
  discount_factor: 0.1,
18
17
  discount_pct: 90,
@@ -4,7 +4,6 @@ import type { RobotMetaInput } from './_instructions-primitives.ts'
4
4
  import { backblazeBase, interpolateRobot, robotBase, robotUse } from './_instructions-primitives.ts'
5
5
 
6
6
  export const meta: RobotMetaInput = {
7
- allowed_for_url_transform: true,
8
7
  bytescount: 6,
9
8
  discount_factor: 0.15000150001500018,
10
9
  discount_pct: 84.99984999849998,
@@ -0,0 +1,97 @@
1
+ import { z } from 'zod'
2
+
3
+ import type { RobotMetaInput } from './_instructions-primitives.ts'
4
+ import {
5
+ boxBase,
6
+ interpolateRobot,
7
+ path,
8
+ robotBase,
9
+ robotImport,
10
+ } from './_instructions-primitives.ts'
11
+
12
+ export const meta: RobotMetaInput = {
13
+ bytescount: 10,
14
+ discount_factor: 0.1,
15
+ discount_pct: 90,
16
+ example_code: {
17
+ steps: {
18
+ imported: {
19
+ robot: '/box/import',
20
+ credentials: 'YOUR_BOX_CREDENTIALS',
21
+ path: 'path/to/files/',
22
+ },
23
+ },
24
+ },
25
+ example_code_description:
26
+ 'Import files from the `path/to/files` directory and its subdirectories:',
27
+ has_small_icon: true,
28
+ minimum_charge: 0,
29
+ output_factor: 1,
30
+ override_lvl1: 'File Importing',
31
+ purpose_sentence: 'imports whole directories of files from your Box',
32
+ purpose_verb: 'import',
33
+ purpose_word: 'Box',
34
+ purpose_words: 'Import files from Box',
35
+ requires_credentials: true,
36
+ service_slug: 'file-importing',
37
+ slot_count: 20,
38
+ title: 'Import files from Box',
39
+ typical_file_size_mb: 1.2,
40
+ typical_file_type: 'file',
41
+ name: 'BoxImportRobot',
42
+ priceFactor: 6.6666,
43
+ queueSlotCount: 20,
44
+ isAllowedForUrlTransform: true,
45
+ trackOutputFileSize: false,
46
+ isInternal: false,
47
+ removeJobResultFilesFromDiskRightAfterStoringOnS3: true,
48
+ stage: 'ga',
49
+ }
50
+
51
+ export const robotBoxImportInstructionsSchema = robotBase
52
+ .merge(robotImport)
53
+ .merge(boxBase)
54
+ .extend({
55
+ robot: z.literal('/box/import'),
56
+ path: path.describe(`
57
+ The path in your Box to the specific file or directory. If the path points to a file, only this file will be imported. For example: \`images/avatar.jpg\`.
58
+
59
+ If it points to a directory, indicated by a trailing slash (\`/\`), then all files that are descendants of this directory are recursively imported. For example: \`images/\`.
60
+
61
+ If you want to import all files from the root directory, please use \`/\` as the value here.
62
+
63
+ You can also use an array of path strings here to import multiple paths in the same <dfn>Robot</dfn>'s <dfn>Step</dfn>.
64
+ `),
65
+ })
66
+ .strict()
67
+
68
+ export const robotBoxImportInstructionsWithHiddenFieldsSchema =
69
+ robotBoxImportInstructionsSchema.extend({
70
+ result: z.union([z.literal('debug'), robotBoxImportInstructionsSchema.shape.result]).optional(),
71
+ access_token: z.string().optional(),
72
+ key_file_contents: z.string().optional(),
73
+ })
74
+
75
+ export type RobotBoxImportInstructions = z.infer<typeof robotBoxImportInstructionsSchema>
76
+ export type RobotBoxImportInstructionsWithHiddenFields = z.infer<
77
+ typeof robotBoxImportInstructionsWithHiddenFieldsSchema
78
+ >
79
+
80
+ export const interpolatableRobotBoxImportInstructionsSchema = interpolateRobot(
81
+ robotBoxImportInstructionsSchema,
82
+ )
83
+ export type InterpolatableRobotBoxImportInstructions = InterpolatableRobotBoxImportInstructionsInput
84
+
85
+ export type InterpolatableRobotBoxImportInstructionsInput = z.input<
86
+ typeof interpolatableRobotBoxImportInstructionsSchema
87
+ >
88
+
89
+ export const interpolatableRobotBoxImportInstructionsWithHiddenFieldsSchema = interpolateRobot(
90
+ robotBoxImportInstructionsWithHiddenFieldsSchema,
91
+ )
92
+ export type InterpolatableRobotBoxImportInstructionsWithHiddenFields = z.infer<
93
+ typeof interpolatableRobotBoxImportInstructionsWithHiddenFieldsSchema
94
+ >
95
+ export type InterpolatableRobotBoxImportInstructionsWithHiddenFieldsInput = z.input<
96
+ typeof interpolatableRobotBoxImportInstructionsWithHiddenFieldsSchema
97
+ >