veryfront 0.1.502 → 0.1.503

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 (696) hide show
  1. package/esm/cli/commands/analyze-chunks/handler.d.ts +4 -4
  2. package/esm/cli/commands/analyze-chunks/handler.d.ts.map +1 -1
  3. package/esm/cli/commands/analyze-chunks/handler.js +6 -5
  4. package/esm/cli/commands/build/handler.d.ts +39 -27
  5. package/esm/cli/commands/build/handler.d.ts.map +1 -1
  6. package/esm/cli/commands/build/handler.js +15 -14
  7. package/esm/cli/commands/clean/command.js +1 -1
  8. package/esm/cli/commands/clean/handler.d.ts.map +1 -1
  9. package/esm/cli/commands/clean/handler.js +9 -8
  10. package/esm/cli/commands/demo/handler.d.ts +5 -5
  11. package/esm/cli/commands/demo/handler.d.ts.map +1 -1
  12. package/esm/cli/commands/demo/handler.js +7 -6
  13. package/esm/cli/commands/deploy/command.d.ts +30 -19
  14. package/esm/cli/commands/deploy/command.d.ts.map +1 -1
  15. package/esm/cli/commands/deploy/command.js +11 -10
  16. package/esm/cli/commands/dev/handler.d.ts +6 -6
  17. package/esm/cli/commands/dev/handler.d.ts.map +1 -1
  18. package/esm/cli/commands/dev/handler.js +8 -7
  19. package/esm/cli/commands/doctor/handler.d.ts +3 -3
  20. package/esm/cli/commands/doctor/handler.d.ts.map +1 -1
  21. package/esm/cli/commands/doctor/handler.js +5 -4
  22. package/esm/cli/commands/files/command.d.ts +38 -36
  23. package/esm/cli/commands/files/command.d.ts.map +1 -1
  24. package/esm/cli/commands/files/command.js +35 -31
  25. package/esm/cli/commands/generate/handler.d.ts +4 -4
  26. package/esm/cli/commands/generate/handler.d.ts.map +1 -1
  27. package/esm/cli/commands/generate/handler.js +6 -5
  28. package/esm/cli/commands/generate/integration-generator-helpers.js +4 -4
  29. package/esm/cli/commands/generate/integration-generator.js +8 -4
  30. package/esm/cli/commands/install/handler.d.ts +5 -5
  31. package/esm/cli/commands/install/handler.d.ts.map +1 -1
  32. package/esm/cli/commands/install/handler.js +7 -6
  33. package/esm/cli/commands/install/install.d.ts.map +1 -1
  34. package/esm/cli/commands/install/install.js +7 -4
  35. package/esm/cli/commands/install/types.d.ts +52 -43
  36. package/esm/cli/commands/install/types.d.ts.map +1 -1
  37. package/esm/cli/commands/install/types.js +26 -21
  38. package/esm/cli/commands/install/uninstall.d.ts.map +1 -1
  39. package/esm/cli/commands/install/uninstall.js +4 -2
  40. package/esm/cli/commands/knowledge/command.d.ts +19 -17
  41. package/esm/cli/commands/knowledge/command.d.ts.map +1 -1
  42. package/esm/cli/commands/knowledge/command.js +21 -20
  43. package/esm/cli/commands/lock/handler.d.ts.map +1 -1
  44. package/esm/cli/commands/lock/handler.js +10 -9
  45. package/esm/cli/commands/mcp/handler.d.ts +3 -3
  46. package/esm/cli/commands/mcp/handler.d.ts.map +1 -1
  47. package/esm/cli/commands/mcp/handler.js +5 -4
  48. package/esm/cli/commands/merge/command.d.ts +21 -15
  49. package/esm/cli/commands/merge/command.d.ts.map +1 -1
  50. package/esm/cli/commands/merge/command.js +9 -8
  51. package/esm/cli/commands/open/command.d.ts +17 -12
  52. package/esm/cli/commands/open/command.d.ts.map +1 -1
  53. package/esm/cli/commands/open/command.js +7 -6
  54. package/esm/cli/commands/pull/command.d.ts +36 -25
  55. package/esm/cli/commands/pull/command.d.ts.map +1 -1
  56. package/esm/cli/commands/pull/command.js +14 -13
  57. package/esm/cli/commands/push/command.d.ts +27 -19
  58. package/esm/cli/commands/push/command.d.ts.map +1 -1
  59. package/esm/cli/commands/push/command.js +11 -10
  60. package/esm/cli/commands/routes/handler.d.ts +4 -4
  61. package/esm/cli/commands/routes/handler.d.ts.map +1 -1
  62. package/esm/cli/commands/routes/handler.js +6 -5
  63. package/esm/cli/commands/schema/handler.d.ts.map +1 -1
  64. package/esm/cli/commands/schema/handler.js +5 -4
  65. package/esm/cli/commands/serve/handler.d.ts +9 -9
  66. package/esm/cli/commands/serve/handler.d.ts.map +1 -1
  67. package/esm/cli/commands/serve/handler.js +10 -9
  68. package/esm/cli/commands/start/handler.d.ts +6 -6
  69. package/esm/cli/commands/start/handler.d.ts.map +1 -1
  70. package/esm/cli/commands/start/handler.js +8 -7
  71. package/esm/cli/commands/studio/handler.d.ts +5 -5
  72. package/esm/cli/commands/studio/handler.d.ts.map +1 -1
  73. package/esm/cli/commands/studio/handler.js +7 -6
  74. package/esm/cli/commands/styles/command.d.ts.map +1 -1
  75. package/esm/cli/commands/styles/command.js +9 -8
  76. package/esm/cli/commands/styles/handler.d.ts +12 -12
  77. package/esm/cli/commands/styles/handler.d.ts.map +1 -1
  78. package/esm/cli/commands/styles/handler.js +7 -6
  79. package/esm/cli/commands/task/handler.d.ts +12 -12
  80. package/esm/cli/commands/task/handler.d.ts.map +1 -1
  81. package/esm/cli/commands/task/handler.js +7 -6
  82. package/esm/cli/commands/test/handler.d.ts.map +1 -1
  83. package/esm/cli/commands/test/handler.js +6 -5
  84. package/esm/cli/commands/up/command.d.ts +14 -10
  85. package/esm/cli/commands/up/command.d.ts.map +1 -1
  86. package/esm/cli/commands/up/command.js +6 -5
  87. package/esm/cli/commands/uploads/command.d.ts +43 -41
  88. package/esm/cli/commands/uploads/command.d.ts.map +1 -1
  89. package/esm/cli/commands/uploads/command.js +40 -36
  90. package/esm/cli/commands/worker/handler.d.ts +20 -23
  91. package/esm/cli/commands/worker/handler.d.ts.map +1 -1
  92. package/esm/cli/commands/worker/handler.js +11 -10
  93. package/esm/cli/commands/workflow/handler.d.ts +14 -16
  94. package/esm/cli/commands/workflow/handler.d.ts.map +1 -1
  95. package/esm/cli/commands/workflow/handler.js +8 -7
  96. package/esm/cli/mcp/jsonrpc.d.ts +34 -18
  97. package/esm/cli/mcp/jsonrpc.d.ts.map +1 -1
  98. package/esm/cli/mcp/jsonrpc.js +21 -17
  99. package/esm/cli/mcp/remote-file-tools.d.ts +79 -83
  100. package/esm/cli/mcp/remote-file-tools.d.ts.map +1 -1
  101. package/esm/cli/mcp/remote-file-tools.js +79 -67
  102. package/esm/cli/mcp/server.d.ts +0 -1
  103. package/esm/cli/mcp/server.d.ts.map +1 -1
  104. package/esm/cli/mcp/server.js +2 -60
  105. package/esm/cli/mcp/tools/bootstrap-tool.d.ts +5 -5
  106. package/esm/cli/mcp/tools/bootstrap-tool.d.ts.map +1 -1
  107. package/esm/cli/mcp/tools/bootstrap-tool.js +5 -4
  108. package/esm/cli/mcp/tools/build-tool.d.ts +9 -9
  109. package/esm/cli/mcp/tools/build-tool.d.ts.map +1 -1
  110. package/esm/cli/mcp/tools/build-tool.js +9 -8
  111. package/esm/cli/mcp/tools/catalog-tools.d.ts +18 -33
  112. package/esm/cli/mcp/tools/catalog-tools.d.ts.map +1 -1
  113. package/esm/cli/mcp/tools/catalog-tools.js +19 -14
  114. package/esm/cli/mcp/tools/context7-tools.d.ts.map +1 -1
  115. package/esm/cli/mcp/tools/context7-tools.js +9 -9
  116. package/esm/cli/mcp/tools/deploy-tool.d.ts +7 -7
  117. package/esm/cli/mcp/tools/deploy-tool.d.ts.map +1 -1
  118. package/esm/cli/mcp/tools/deploy-tool.js +7 -6
  119. package/esm/cli/mcp/tools/dev-tools.d.ts +31 -35
  120. package/esm/cli/mcp/tools/dev-tools.d.ts.map +1 -1
  121. package/esm/cli/mcp/tools/dev-tools.js +31 -25
  122. package/esm/cli/mcp/tools/introspection-tools.d.ts.map +1 -1
  123. package/esm/cli/mcp/tools/introspection-tools.js +6 -6
  124. package/esm/cli/mcp/tools/project-tools.d.ts +20 -25
  125. package/esm/cli/mcp/tools/project-tools.d.ts.map +1 -1
  126. package/esm/cli/mcp/tools/project-tools.js +20 -16
  127. package/esm/cli/mcp/tools/run-lint-tool.d.ts +5 -5
  128. package/esm/cli/mcp/tools/run-lint-tool.d.ts.map +1 -1
  129. package/esm/cli/mcp/tools/run-lint-tool.js +5 -4
  130. package/esm/cli/mcp/tools/run-tests-tool.d.ts +7 -7
  131. package/esm/cli/mcp/tools/run-tests-tool.d.ts.map +1 -1
  132. package/esm/cli/mcp/tools/run-tests-tool.js +7 -6
  133. package/esm/cli/mcp/tools/scaffold-tools.d.ts +12 -33
  134. package/esm/cli/mcp/tools/scaffold-tools.d.ts.map +1 -1
  135. package/esm/cli/mcp/tools/scaffold-tools.js +23 -21
  136. package/esm/cli/mcp/tools/skill-tools.d.ts +10 -10
  137. package/esm/cli/mcp/tools/skill-tools.d.ts.map +1 -1
  138. package/esm/cli/mcp/tools/skill-tools.js +8 -8
  139. package/esm/cli/mcp/tools.d.ts +27 -48
  140. package/esm/cli/mcp/tools.d.ts.map +1 -1
  141. package/esm/cli/mcp/tools.js +26 -21
  142. package/esm/cli/shared/args.d.ts +11 -8
  143. package/esm/cli/shared/args.d.ts.map +1 -1
  144. package/esm/cli/shared/args.js +9 -6
  145. package/esm/cli/shared/config.d.ts +38 -20
  146. package/esm/cli/shared/config.d.ts.map +1 -1
  147. package/esm/cli/shared/config.js +20 -17
  148. package/esm/cli/shared/types.d.ts +4 -7
  149. package/esm/cli/shared/types.d.ts.map +1 -1
  150. package/esm/cli/shared/types.js +3 -2
  151. package/esm/cli/skills/types.d.ts +30 -16
  152. package/esm/cli/skills/types.d.ts.map +1 -1
  153. package/esm/cli/skills/types.js +17 -15
  154. package/esm/cli/templates/manifest.js +211 -211
  155. package/esm/deno.d.ts +5 -0
  156. package/esm/deno.js +10 -4
  157. package/esm/extensions/ext-zod/src/adapter.d.ts +22 -0
  158. package/esm/extensions/ext-zod/src/adapter.d.ts.map +1 -0
  159. package/esm/extensions/ext-zod/src/adapter.js +159 -0
  160. package/esm/extensions/ext-zod/src/index.d.ts +19 -0
  161. package/esm/extensions/ext-zod/src/index.d.ts.map +1 -0
  162. package/esm/extensions/ext-zod/src/index.js +32 -0
  163. package/esm/extensions/ext-zod/src/json-schema.d.ts +15 -0
  164. package/esm/extensions/ext-zod/src/json-schema.d.ts.map +1 -0
  165. package/esm/extensions/ext-zod/src/json-schema.js +247 -0
  166. package/esm/src/agent/ag-ui-detached-start.d.ts +97 -50
  167. package/esm/src/agent/ag-ui-detached-start.d.ts.map +1 -1
  168. package/esm/src/agent/ag-ui-detached-start.js +26 -17
  169. package/esm/src/agent/ag-ui-forwarded-context.d.ts +3 -3
  170. package/esm/src/agent/ag-ui-forwarded-context.d.ts.map +1 -1
  171. package/esm/src/agent/ag-ui-forwarded-context.js +3 -2
  172. package/esm/src/agent/ag-ui-handler.d.ts.map +1 -1
  173. package/esm/src/agent/ag-ui-handler.js +5 -3
  174. package/esm/src/agent/ag-ui-host-support.d.ts +119 -65
  175. package/esm/src/agent/ag-ui-host-support.d.ts.map +1 -1
  176. package/esm/src/agent/ag-ui-host-support.js +48 -42
  177. package/esm/src/agent/ag-ui-request-shared.d.ts.map +1 -1
  178. package/esm/src/agent/ag-ui-request-shared.js +11 -2
  179. package/esm/src/agent/ag-ui-run-control.d.ts +15 -8
  180. package/esm/src/agent/ag-ui-run-control.d.ts.map +1 -1
  181. package/esm/src/agent/ag-ui-run-control.js +18 -13
  182. package/esm/src/agent/ag-ui-runtime-handler.d.ts.map +1 -1
  183. package/esm/src/agent/ag-ui-runtime-handler.js +5 -3
  184. package/esm/src/agent/ag-ui-sse-parser.d.ts +57 -0
  185. package/esm/src/agent/ag-ui-sse-parser.d.ts.map +1 -0
  186. package/esm/src/agent/ag-ui-sse-parser.js +227 -0
  187. package/esm/src/agent/ag-ui-tool-shared.d.ts.map +1 -1
  188. package/esm/src/agent/ag-ui-tool-shared.js +3 -2
  189. package/esm/src/agent/chat-handler.d.ts.map +1 -1
  190. package/esm/src/agent/chat-handler.js +58 -57
  191. package/esm/src/agent/composition/composition.js +2 -2
  192. package/esm/src/agent/conversation-bootstrap.d.ts +13 -16
  193. package/esm/src/agent/conversation-bootstrap.d.ts.map +1 -1
  194. package/esm/src/agent/conversation-bootstrap.js +19 -12
  195. package/esm/src/agent/conversation-hosted-lifecycle.d.ts.map +1 -1
  196. package/esm/src/agent/conversation-run-context.d.ts +1 -10
  197. package/esm/src/agent/conversation-run-context.d.ts.map +1 -1
  198. package/esm/src/agent/conversation-run-events.d.ts +9 -5
  199. package/esm/src/agent/conversation-run-events.d.ts.map +1 -1
  200. package/esm/src/agent/conversation-run-events.js +6 -4
  201. package/esm/src/agent/default-hosted-invoke-agent-tool.d.ts +37 -16
  202. package/esm/src/agent/default-hosted-invoke-agent-tool.d.ts.map +1 -1
  203. package/esm/src/agent/default-hosted-invoke-agent-tool.js +10 -5
  204. package/esm/src/agent/durable.d.ts +70 -129
  205. package/esm/src/agent/durable.d.ts.map +1 -1
  206. package/esm/src/agent/durable.js +107 -109
  207. package/esm/src/agent/hosted-ag-ui-chat-request.d.ts +29 -11
  208. package/esm/src/agent/hosted-ag-ui-chat-request.d.ts.map +1 -1
  209. package/esm/src/agent/hosted-ag-ui-chat-request.js +16 -15
  210. package/esm/src/agent/hosted-agent-service-config.d.ts +6 -6
  211. package/esm/src/agent/hosted-agent-service-routes.d.ts.map +1 -1
  212. package/esm/src/agent/hosted-agent-service-routes.js +4 -3
  213. package/esm/src/agent/hosted-chat-request-parser.d.ts.map +1 -1
  214. package/esm/src/agent/hosted-chat-request-parser.js +7 -4
  215. package/esm/src/agent/hosted-chat-request.d.ts +291 -20
  216. package/esm/src/agent/hosted-chat-request.d.ts.map +1 -1
  217. package/esm/src/agent/hosted-chat-request.js +33 -31
  218. package/esm/src/agent/hosted-child-fork-step-message-preparation.d.ts.map +1 -1
  219. package/esm/src/agent/hosted-child-status.d.ts.map +1 -1
  220. package/esm/src/agent/hosted-child-status.js +2 -0
  221. package/esm/src/agent/hosted-child-tool-input.d.ts +21 -11
  222. package/esm/src/agent/hosted-child-tool-input.d.ts.map +1 -1
  223. package/esm/src/agent/hosted-child-tool-input.js +12 -10
  224. package/esm/src/agent/hosted-form-input-tool.d.ts +78 -86
  225. package/esm/src/agent/hosted-form-input-tool.d.ts.map +1 -1
  226. package/esm/src/agent/hosted-form-input-tool.js +10 -3
  227. package/esm/src/agent/human-input.d.ts +337 -277
  228. package/esm/src/agent/human-input.d.ts.map +1 -1
  229. package/esm/src/agent/human-input.js +88 -72
  230. package/esm/src/agent/index.d.ts +8 -7
  231. package/esm/src/agent/index.d.ts.map +1 -1
  232. package/esm/src/agent/index.js +8 -7
  233. package/esm/src/agent/input-request-protocol.d.ts +461 -1611
  234. package/esm/src/agent/input-request-protocol.d.ts.map +1 -1
  235. package/esm/src/agent/input-request-protocol.js +120 -107
  236. package/esm/src/agent/invoke-agent-child-runs.d.ts +109 -107
  237. package/esm/src/agent/invoke-agent-child-runs.d.ts.map +1 -1
  238. package/esm/src/agent/invoke-agent-child-runs.js +36 -29
  239. package/esm/src/agent/runtime-ag-ui-contract.d.ts +206 -206
  240. package/esm/src/agent/runtime-ag-ui-contract.d.ts.map +1 -1
  241. package/esm/src/agent/runtime-ag-ui-contract.js +96 -91
  242. package/esm/src/agent/runtime-agent-definition.d.ts +47 -24
  243. package/esm/src/agent/runtime-agent-definition.d.ts.map +1 -1
  244. package/esm/src/agent/runtime-agent-definition.js +26 -20
  245. package/esm/src/agent/runtime-agent-invocation-contract.d.ts +306 -168
  246. package/esm/src/agent/runtime-agent-invocation-contract.d.ts.map +1 -1
  247. package/esm/src/agent/runtime-agent-invocation-contract.js +116 -101
  248. package/esm/src/agent/runtime-client-profile.d.ts +23 -32
  249. package/esm/src/agent/runtime-client-profile.d.ts.map +1 -1
  250. package/esm/src/agent/runtime-client-profile.js +29 -27
  251. package/esm/src/agent/runtime-load-skill-tool.d.ts +6 -7
  252. package/esm/src/agent/runtime-load-skill-tool.d.ts.map +1 -1
  253. package/esm/src/agent/runtime-load-skill-tool.js +7 -6
  254. package/esm/src/agent/runtime-project-files-client.d.ts +19 -10
  255. package/esm/src/agent/runtime-project-files-client.d.ts.map +1 -1
  256. package/esm/src/agent/runtime-project-files-client.js +33 -35
  257. package/esm/src/agent/runtime-skill-metadata.d.ts +6 -20
  258. package/esm/src/agent/runtime-skill-metadata.d.ts.map +1 -1
  259. package/esm/src/agent/runtime-skill-metadata.js +24 -18
  260. package/esm/src/agent/runtime-upload-url-client.d.ts.map +1 -1
  261. package/esm/src/agent/runtime-upload-url-client.js +19 -25
  262. package/esm/src/agent/schemas/agent.schema.d.ts +258 -307
  263. package/esm/src/agent/schemas/agent.schema.d.ts.map +1 -1
  264. package/esm/src/agent/schemas/agent.schema.js +105 -101
  265. package/esm/src/agent/schemas/index.d.ts +2 -2
  266. package/esm/src/agent/schemas/index.d.ts.map +1 -1
  267. package/esm/src/agent/schemas/index.js +2 -2
  268. package/esm/src/agent/schemas/tool.schema.d.ts +5 -5
  269. package/esm/src/agent/schemas/tool.schema.d.ts.map +1 -1
  270. package/esm/src/agent/schemas/tool.schema.js +4 -4
  271. package/esm/src/cache/schemas/cache-backend.schema.d.ts +15 -14
  272. package/esm/src/cache/schemas/cache-backend.schema.d.ts.map +1 -1
  273. package/esm/src/cache/schemas/cache-backend.schema.js +10 -7
  274. package/esm/src/cache/schemas/cache-key.schema.d.ts +12 -10
  275. package/esm/src/cache/schemas/cache-key.schema.d.ts.map +1 -1
  276. package/esm/src/cache/schemas/cache-key.schema.js +8 -6
  277. package/esm/src/channels/control-plane.d.ts +246 -156
  278. package/esm/src/channels/control-plane.d.ts.map +1 -1
  279. package/esm/src/channels/control-plane.js +80 -73
  280. package/esm/src/channels/invoke.d.ts +220 -134
  281. package/esm/src/channels/invoke.d.ts.map +1 -1
  282. package/esm/src/channels/invoke.js +105 -93
  283. package/esm/src/chat/ag-ui.d.ts +494 -273
  284. package/esm/src/chat/ag-ui.d.ts.map +1 -1
  285. package/esm/src/chat/ag-ui.js +164 -180
  286. package/esm/src/chat/conversation.d.ts +273 -183
  287. package/esm/src/chat/conversation.d.ts.map +1 -1
  288. package/esm/src/chat/conversation.js +97 -111
  289. package/esm/src/chat/types.d.ts +635 -14
  290. package/esm/src/chat/types.d.ts.map +1 -1
  291. package/esm/src/chat/types.js +146 -174
  292. package/esm/src/config/schemas/config.schema.d.ts +799 -395
  293. package/esm/src/config/schemas/config.schema.d.ts.map +1 -1
  294. package/esm/src/config/schemas/config.schema.js +300 -268
  295. package/esm/src/data/schemas/data.schema.d.ts +89 -48
  296. package/esm/src/data/schemas/data.schema.d.ts.map +1 -1
  297. package/esm/src/data/schemas/data.schema.js +36 -29
  298. package/esm/src/extensions/builtin-extensions.d.ts.map +1 -1
  299. package/esm/src/extensions/builtin-extensions.js +9 -0
  300. package/esm/src/extensions/schema/index.d.ts +1 -1
  301. package/esm/src/extensions/schema/index.d.ts.map +1 -1
  302. package/esm/src/extensions/schema/json-schema.d.ts +23 -0
  303. package/esm/src/extensions/schema/json-schema.d.ts.map +1 -0
  304. package/esm/src/extensions/schema/json-schema.js +8 -0
  305. package/esm/src/extensions/schema/schema-validator.d.ts +97 -4
  306. package/esm/src/extensions/schema/schema-validator.d.ts.map +1 -1
  307. package/esm/src/html/hydration-script-builder/hydration-data-generator.js +1 -1
  308. package/esm/src/html/schemas/html.schema.d.ts +107 -90
  309. package/esm/src/html/schemas/html.schema.d.ts.map +1 -1
  310. package/esm/src/html/schemas/html.schema.js +60 -52
  311. package/esm/src/html/utils.d.ts.map +1 -1
  312. package/esm/src/html/utils.js +1 -1
  313. package/esm/src/integrations/schema.d.ts +455 -433
  314. package/esm/src/integrations/schema.d.ts.map +1 -1
  315. package/esm/src/integrations/schema.js +105 -95
  316. package/esm/src/internal-agents/ag-ui-sse.d.ts.map +1 -1
  317. package/esm/src/internal-agents/ag-ui-sse.js +60 -82
  318. package/esm/src/internal-agents/control-plane-auth.d.ts +10 -10
  319. package/esm/src/internal-agents/control-plane-auth.d.ts.map +1 -1
  320. package/esm/src/internal-agents/run-stream.d.ts.map +1 -1
  321. package/esm/src/internal-agents/run-stream.js +3 -2
  322. package/esm/src/internal-agents/schema.d.ts +272 -281
  323. package/esm/src/internal-agents/schema.d.ts.map +1 -1
  324. package/esm/src/internal-agents/schema.js +55 -47
  325. package/esm/src/issues/core.d.ts.map +1 -1
  326. package/esm/src/issues/mcp.d.ts.map +1 -1
  327. package/esm/src/issues/mcp.js +47 -41
  328. package/esm/src/issues/schemas/index.d.ts +1 -1
  329. package/esm/src/issues/schemas/index.d.ts.map +1 -1
  330. package/esm/src/issues/schemas/index.js +1 -1
  331. package/esm/src/issues/schemas/issue.schema.d.ts +151 -116
  332. package/esm/src/issues/schemas/issue.schema.d.ts.map +1 -1
  333. package/esm/src/issues/schemas/issue.schema.js +64 -55
  334. package/esm/src/jobs/schemas.d.ts +1087 -658
  335. package/esm/src/jobs/schemas.d.ts.map +1 -1
  336. package/esm/src/jobs/schemas.js +244 -214
  337. package/esm/src/mcp/index.d.ts +6 -2
  338. package/esm/src/mcp/index.d.ts.map +1 -1
  339. package/esm/src/mcp/index.js +6 -2
  340. package/esm/src/mcp/schemas/index.d.ts +1 -1
  341. package/esm/src/mcp/schemas/index.d.ts.map +1 -1
  342. package/esm/src/mcp/schemas/index.js +1 -1
  343. package/esm/src/mcp/schemas/mcp.schema.d.ts +59 -31
  344. package/esm/src/mcp/schemas/mcp.schema.d.ts.map +1 -1
  345. package/esm/src/mcp/schemas/mcp.schema.js +28 -24
  346. package/esm/src/mcp/types.d.ts +2 -2
  347. package/esm/src/mcp/types.d.ts.map +1 -1
  348. package/esm/src/oauth/providers/atlassian.d.ts +36 -30
  349. package/esm/src/oauth/providers/atlassian.d.ts.map +1 -1
  350. package/esm/src/oauth/providers/common.d.ts +312 -260
  351. package/esm/src/oauth/providers/common.d.ts.map +1 -1
  352. package/esm/src/oauth/providers/google.d.ts +48 -40
  353. package/esm/src/oauth/providers/google.d.ts.map +1 -1
  354. package/esm/src/oauth/providers/microsoft.d.ts +48 -40
  355. package/esm/src/oauth/providers/microsoft.d.ts.map +1 -1
  356. package/esm/src/oauth/schemas/oauth.schema.d.ts +180 -92
  357. package/esm/src/oauth/schemas/oauth.schema.d.ts.map +1 -1
  358. package/esm/src/oauth/schemas/oauth.schema.js +67 -59
  359. package/esm/src/platform/adapters/fs/github/github-api-client.d.ts.map +1 -1
  360. package/esm/src/platform/adapters/fs/github/github-api-client.js +4 -4
  361. package/esm/src/platform/adapters/fs/github/index.d.ts +1 -1
  362. package/esm/src/platform/adapters/fs/github/index.d.ts.map +1 -1
  363. package/esm/src/platform/adapters/fs/github/index.js +1 -1
  364. package/esm/src/platform/adapters/fs/github/schemas/github-api.schema.d.ts +97 -140
  365. package/esm/src/platform/adapters/fs/github/schemas/github-api.schema.d.ts.map +1 -1
  366. package/esm/src/platform/adapters/fs/github/schemas/github-api.schema.js +40 -37
  367. package/esm/src/platform/adapters/fs/github/schemas/index.d.ts +1 -1
  368. package/esm/src/platform/adapters/fs/github/schemas/index.d.ts.map +1 -1
  369. package/esm/src/platform/adapters/fs/github/schemas/index.js +1 -1
  370. package/esm/src/platform/adapters/fs/veryfront/proxy-manager.d.ts.map +1 -1
  371. package/esm/src/platform/adapters/fs/veryfront/proxy-manager.js +7 -4
  372. package/esm/src/platform/adapters/fs/veryfront/schemas/index.d.ts +1 -1
  373. package/esm/src/platform/adapters/fs/veryfront/schemas/index.d.ts.map +1 -1
  374. package/esm/src/platform/adapters/fs/veryfront/schemas/index.js +1 -1
  375. package/esm/src/platform/adapters/fs/veryfront/schemas/proxy-manager.schema.d.ts +11 -11
  376. package/esm/src/platform/adapters/fs/veryfront/schemas/proxy-manager.schema.d.ts.map +1 -1
  377. package/esm/src/platform/adapters/fs/veryfront/schemas/proxy-manager.schema.js +10 -10
  378. package/esm/src/platform/adapters/fs/veryfront/stat-operations.d.ts.map +1 -1
  379. package/esm/src/platform/adapters/fs/veryfront/stat-operations.js +1 -0
  380. package/esm/src/platform/adapters/veryfront-api-client/client.d.ts +63 -63
  381. package/esm/src/platform/adapters/veryfront-api-client/index.d.ts +1 -1
  382. package/esm/src/platform/adapters/veryfront-api-client/index.d.ts.map +1 -1
  383. package/esm/src/platform/adapters/veryfront-api-client/index.js +1 -1
  384. package/esm/src/platform/adapters/veryfront-api-client/operations.d.ts.map +1 -1
  385. package/esm/src/platform/adapters/veryfront-api-client/operations.js +11 -21
  386. package/esm/src/platform/adapters/veryfront-api-client/schemas/api.schema.d.ts +444 -471
  387. package/esm/src/platform/adapters/veryfront-api-client/schemas/api.schema.d.ts.map +1 -1
  388. package/esm/src/platform/adapters/veryfront-api-client/schemas/api.schema.js +150 -122
  389. package/esm/src/platform/adapters/veryfront-api-client/schemas/index.d.ts +1 -1
  390. package/esm/src/platform/adapters/veryfront-api-client/schemas/index.d.ts.map +1 -1
  391. package/esm/src/platform/adapters/veryfront-api-client/schemas/index.js +1 -1
  392. package/esm/src/prompt/schemas/prompt.schema.d.ts +10 -9
  393. package/esm/src/prompt/schemas/prompt.schema.d.ts.map +1 -1
  394. package/esm/src/prompt/schemas/prompt.schema.js +8 -8
  395. package/esm/src/proxy/handler.d.ts.map +1 -1
  396. package/esm/src/proxy/handler.js +0 -1
  397. package/esm/src/repositories/schemas/repository.schema.d.ts +40 -25
  398. package/esm/src/repositories/schemas/repository.schema.d.ts.map +1 -1
  399. package/esm/src/repositories/schemas/repository.schema.js +23 -19
  400. package/esm/src/resource/index.d.ts +6 -2
  401. package/esm/src/resource/index.d.ts.map +1 -1
  402. package/esm/src/resource/index.js +6 -2
  403. package/esm/src/resource/schemas/index.d.ts +1 -1
  404. package/esm/src/resource/schemas/index.d.ts.map +1 -1
  405. package/esm/src/resource/schemas/index.js +1 -1
  406. package/esm/src/resource/schemas/resource.schema.d.ts +13 -16
  407. package/esm/src/resource/schemas/resource.schema.d.ts.map +1 -1
  408. package/esm/src/resource/schemas/resource.schema.js +9 -6
  409. package/esm/src/resource/types.d.ts +3 -3
  410. package/esm/src/resource/types.d.ts.map +1 -1
  411. package/esm/src/routing/api/openapi/types.d.ts +4 -4
  412. package/esm/src/routing/api/openapi/types.d.ts.map +1 -1
  413. package/esm/src/sandbox/hosted-tools.d.ts.map +1 -1
  414. package/esm/src/sandbox/hosted-tools.js +11 -13
  415. package/esm/src/schemas/common.d.ts +48 -28
  416. package/esm/src/schemas/common.d.ts.map +1 -1
  417. package/esm/src/schemas/common.js +67 -28
  418. package/esm/src/schemas/define.d.ts +3 -2
  419. package/esm/src/schemas/define.d.ts.map +1 -1
  420. package/esm/src/schemas/define.js +12 -6
  421. package/esm/src/schemas/index.d.ts +8 -4
  422. package/esm/src/schemas/index.d.ts.map +1 -1
  423. package/esm/src/schemas/index.js +8 -7
  424. package/esm/src/schemas/json-schema.d.ts +25 -0
  425. package/esm/src/schemas/json-schema.d.ts.map +1 -0
  426. package/esm/src/schemas/json-schema.js +27 -0
  427. package/esm/src/schemas/primitives.d.ts +34 -23
  428. package/esm/src/schemas/primitives.d.ts.map +1 -1
  429. package/esm/src/schemas/primitives.js +25 -18
  430. package/esm/src/security/input-validation/handler.d.ts +3 -3
  431. package/esm/src/security/input-validation/handler.d.ts.map +1 -1
  432. package/esm/src/security/input-validation/parsers.d.ts +4 -4
  433. package/esm/src/security/input-validation/parsers.d.ts.map +1 -1
  434. package/esm/src/security/input-validation/parsers.js +35 -45
  435. package/esm/src/server/bootstrap.js +2 -2
  436. package/esm/src/server/dev-ui/manifest.js +1 -1
  437. package/esm/src/server/handlers/dev/framework-candidates.generated.d.ts.map +1 -1
  438. package/esm/src/server/handlers/dev/framework-candidates.generated.js +1 -0
  439. package/esm/src/server/handlers/request/agent-run-cancel.handler.d.ts.map +1 -1
  440. package/esm/src/server/handlers/request/agent-run-cancel.handler.js +2 -3
  441. package/esm/src/server/handlers/request/agent-run-resume.handler.d.ts.map +1 -1
  442. package/esm/src/server/handlers/request/agent-run-resume.handler.js +4 -5
  443. package/esm/src/server/handlers/request/agent-stream.handler.d.ts.map +1 -1
  444. package/esm/src/server/handlers/request/agent-stream.handler.js +3 -4
  445. package/esm/src/server/handlers/request/internal-agents-list.handler.d.ts.map +1 -1
  446. package/esm/src/server/handlers/request/internal-agents-list.handler.js +2 -4
  447. package/esm/src/server/runtime-handler/environment-resolution.d.ts.map +1 -1
  448. package/esm/src/server/runtime-handler/environment-resolution.js +4 -5
  449. package/esm/src/server/runtime-handler/request-utils.d.ts.map +1 -1
  450. package/esm/src/server/runtime-handler/request-utils.js +1 -2
  451. package/esm/src/server/schemas/action.schema.d.ts +10 -6
  452. package/esm/src/server/schemas/action.schema.d.ts.map +1 -1
  453. package/esm/src/server/schemas/action.schema.js +7 -5
  454. package/esm/src/skill/tools.d.ts.map +1 -1
  455. package/esm/src/skill/tools.js +24 -21
  456. package/esm/src/tool/factory.d.ts +1 -1
  457. package/esm/src/tool/factory.d.ts.map +1 -1
  458. package/esm/src/tool/factory.js +12 -1
  459. package/esm/src/tool/host-tools.d.ts +1 -1
  460. package/esm/src/tool/host-tools.d.ts.map +1 -1
  461. package/esm/src/tool/host-tools.js +17 -3
  462. package/esm/src/tool/index.d.ts +9 -5
  463. package/esm/src/tool/index.d.ts.map +1 -1
  464. package/esm/src/tool/index.js +9 -5
  465. package/esm/src/tool/remote-source-tools.d.ts.map +1 -1
  466. package/esm/src/tool/remote-source-tools.js +9 -2
  467. package/esm/src/tool/schema/json-schema.d.ts +8 -15
  468. package/esm/src/tool/schema/json-schema.d.ts.map +1 -1
  469. package/esm/src/tool/schema/json-schema.js +7 -0
  470. package/esm/src/tool/schema/zod-json-schema.d.ts +33 -4
  471. package/esm/src/tool/schema/zod-json-schema.d.ts.map +1 -1
  472. package/esm/src/tool/schema/zod-json-schema.js +70 -159
  473. package/esm/src/tool/sleep.d.ts +21 -11
  474. package/esm/src/tool/sleep.d.ts.map +1 -1
  475. package/esm/src/tool/sleep.js +42 -4
  476. package/esm/src/tool/types.d.ts +12 -8
  477. package/esm/src/tool/types.d.ts.map +1 -1
  478. package/esm/src/transforms/npm-import-rewrites.d.ts +1 -1
  479. package/esm/src/transforms/npm-import-rewrites.d.ts.map +1 -1
  480. package/esm/src/transforms/npm-import-rewrites.js +1 -3
  481. package/esm/src/utils/version-constant.d.ts +1 -1
  482. package/esm/src/utils/version-constant.js +1 -1
  483. package/esm/src/workflow/api.d.ts +22 -22
  484. package/esm/src/workflow/blob/veryfront-cloud-storage.d.ts.map +1 -1
  485. package/esm/src/workflow/blob/veryfront-cloud-storage.js +37 -33
  486. package/esm/src/workflow/claude-code/tool.d.ts +37 -44
  487. package/esm/src/workflow/claude-code/tool.d.ts.map +1 -1
  488. package/esm/src/workflow/claude-code/tool.js +11 -19
  489. package/esm/src/workflow/dsl/workflow.d.ts +3 -3
  490. package/esm/src/workflow/dsl/workflow.d.ts.map +1 -1
  491. package/esm/src/workflow/schemas/index.d.ts +1 -1
  492. package/esm/src/workflow/schemas/index.d.ts.map +1 -1
  493. package/esm/src/workflow/schemas/index.js +1 -1
  494. package/esm/src/workflow/schemas/workflow.schema.d.ts +194 -177
  495. package/esm/src/workflow/schemas/workflow.schema.d.ts.map +1 -1
  496. package/esm/src/workflow/schemas/workflow.schema.js +101 -83
  497. package/esm/src/workflow/types.d.ts +3 -3
  498. package/esm/src/workflow/types.d.ts.map +1 -1
  499. package/package.json +4 -1
  500. package/src/cli/commands/analyze-chunks/handler.ts +9 -5
  501. package/src/cli/commands/build/handler.ts +20 -15
  502. package/src/cli/commands/clean/command.ts +1 -1
  503. package/src/cli/commands/clean/handler.ts +12 -8
  504. package/src/cli/commands/demo/handler.ts +12 -7
  505. package/src/cli/commands/deploy/command.ts +17 -12
  506. package/src/cli/commands/dev/handler.ts +11 -7
  507. package/src/cli/commands/doctor/handler.ts +8 -4
  508. package/src/cli/commands/files/command.ts +64 -44
  509. package/src/cli/commands/generate/handler.ts +9 -5
  510. package/src/cli/commands/generate/integration-generator-helpers.ts +4 -4
  511. package/src/cli/commands/generate/integration-generator.ts +8 -4
  512. package/src/cli/commands/install/detect.ts +1 -1
  513. package/src/cli/commands/install/handler.ts +10 -6
  514. package/src/cli/commands/install/install.ts +20 -12
  515. package/src/cli/commands/install/types.ts +58 -41
  516. package/src/cli/commands/install/uninstall.ts +6 -2
  517. package/src/cli/commands/knowledge/command.ts +60 -52
  518. package/src/cli/commands/lock/handler.ts +13 -9
  519. package/src/cli/commands/mcp/handler.ts +8 -4
  520. package/src/cli/commands/merge/command.ts +14 -9
  521. package/src/cli/commands/open/command.ts +12 -7
  522. package/src/cli/commands/pull/command.ts +20 -15
  523. package/src/cli/commands/push/command.ts +17 -12
  524. package/src/cli/commands/routes/handler.ts +9 -5
  525. package/src/cli/commands/schema/handler.ts +8 -4
  526. package/src/cli/commands/serve/handler.ts +15 -11
  527. package/src/cli/commands/start/handler.ts +11 -7
  528. package/src/cli/commands/studio/handler.ts +10 -6
  529. package/src/cli/commands/styles/command.ts +22 -17
  530. package/src/cli/commands/styles/handler.ts +12 -7
  531. package/src/cli/commands/task/handler.ts +12 -7
  532. package/src/cli/commands/test/handler.ts +9 -5
  533. package/src/cli/commands/up/command.ts +11 -6
  534. package/src/cli/commands/uploads/command.ts +72 -52
  535. package/src/cli/commands/worker/handler.ts +16 -11
  536. package/src/cli/commands/workflow/handler.ts +13 -8
  537. package/src/cli/mcp/jsonrpc.ts +32 -19
  538. package/src/cli/mcp/remote-file-tools.ts +134 -97
  539. package/src/cli/mcp/server.ts +2 -80
  540. package/src/cli/mcp/tools/bootstrap-tool.ts +11 -7
  541. package/src/cli/mcp/tools/build-tool.ts +32 -28
  542. package/src/cli/mcp/tools/catalog-tools.ts +53 -42
  543. package/src/cli/mcp/tools/context7-tools.ts +29 -25
  544. package/src/cli/mcp/tools/deploy-tool.ts +17 -13
  545. package/src/cli/mcp/tools/dev-tools.ts +90 -66
  546. package/src/cli/mcp/tools/introspection-tools.ts +8 -6
  547. package/src/cli/mcp/tools/project-tools.ts +45 -32
  548. package/src/cli/mcp/tools/run-lint-tool.ts +11 -7
  549. package/src/cli/mcp/tools/run-tests-tool.ts +17 -13
  550. package/src/cli/mcp/tools/scaffold-tools.ts +43 -36
  551. package/src/cli/mcp/tools/skill-tools.ts +17 -12
  552. package/src/cli/mcp/tools.ts +65 -51
  553. package/src/cli/shared/args.ts +12 -9
  554. package/src/cli/shared/config.ts +32 -22
  555. package/src/cli/shared/project-source-context.ts +1 -1
  556. package/src/cli/shared/types.ts +5 -3
  557. package/src/cli/skills/types.ts +29 -24
  558. package/src/cli/templates/manifest.js +211 -211
  559. package/src/deno.js +10 -4
  560. package/src/extensions/ext-zod/src/adapter.ts +238 -0
  561. package/src/extensions/ext-zod/src/index.ts +36 -0
  562. package/src/extensions/ext-zod/src/json-schema.ts +311 -0
  563. package/src/src/agent/ag-ui-detached-start.ts +44 -21
  564. package/src/src/agent/ag-ui-forwarded-context.ts +6 -4
  565. package/src/src/agent/ag-ui-handler.ts +7 -3
  566. package/src/src/agent/ag-ui-host-support.ts +84 -66
  567. package/src/src/agent/ag-ui-request-shared.ts +16 -2
  568. package/src/src/agent/ag-ui-run-control.ts +26 -15
  569. package/src/src/agent/ag-ui-runtime-handler.ts +7 -3
  570. package/src/src/agent/ag-ui-sse-parser.ts +306 -0
  571. package/src/src/agent/ag-ui-tool-shared.ts +5 -2
  572. package/src/src/agent/chat-handler.ts +89 -67
  573. package/src/src/agent/composition/composition.ts +2 -2
  574. package/src/src/agent/conversation-bootstrap.ts +38 -17
  575. package/src/src/agent/conversation-hosted-lifecycle.ts +12 -10
  576. package/src/src/agent/conversation-run-events.ts +13 -5
  577. package/src/src/agent/default-hosted-invoke-agent-tool.ts +19 -8
  578. package/src/src/agent/durable.ts +186 -144
  579. package/src/src/agent/hosted-ag-ui-chat-request.ts +26 -16
  580. package/src/src/agent/hosted-agent-service-routes.ts +4 -3
  581. package/src/src/agent/hosted-chat-request-parser.ts +8 -4
  582. package/src/src/agent/hosted-chat-request.ts +46 -32
  583. package/src/src/agent/hosted-child-fork-step-message-preparation.ts +3 -1
  584. package/src/src/agent/hosted-child-status.ts +8 -1
  585. package/src/src/agent/hosted-child-tool-input.ts +27 -19
  586. package/src/src/agent/hosted-durable-child-fork-execution.ts +3 -3
  587. package/src/src/agent/hosted-form-input-tool.ts +15 -5
  588. package/src/src/agent/human-input.ts +129 -92
  589. package/src/src/agent/index.ts +38 -20
  590. package/src/src/agent/input-request-protocol.ts +193 -124
  591. package/src/src/agent/invoke-agent-child-runs.ts +64 -44
  592. package/src/src/agent/runtime-ag-ui-contract.ts +159 -123
  593. package/src/src/agent/runtime-agent-definition.ts +45 -24
  594. package/src/src/agent/runtime-agent-invocation-contract.ts +241 -174
  595. package/src/src/agent/runtime-client-profile.ts +51 -34
  596. package/src/src/agent/runtime-load-skill-tool.ts +19 -12
  597. package/src/src/agent/runtime-project-files-client.ts +51 -39
  598. package/src/src/agent/runtime-skill-metadata.ts +41 -24
  599. package/src/src/agent/runtime-upload-url-client.ts +24 -24
  600. package/src/src/agent/schemas/agent.schema.ts +179 -142
  601. package/src/src/agent/schemas/index.ts +15 -15
  602. package/src/src/agent/schemas/tool.schema.ts +8 -5
  603. package/src/src/cache/schemas/cache-backend.schema.ts +18 -9
  604. package/src/src/cache/schemas/cache-key.schema.ts +13 -7
  605. package/src/src/channels/control-plane.ts +132 -96
  606. package/src/src/channels/invoke.ts +165 -120
  607. package/src/src/chat/ag-ui.ts +229 -225
  608. package/src/src/chat/conversation.ts +121 -124
  609. package/src/src/chat/types.ts +230 -205
  610. package/src/src/config/schemas/config.schema.ts +653 -610
  611. package/src/src/data/schemas/data.schema.ts +62 -39
  612. package/src/src/extensions/builtin-extensions.ts +9 -0
  613. package/src/src/extensions/schema/index.ts +3 -0
  614. package/src/src/extensions/schema/json-schema.ts +23 -0
  615. package/src/src/extensions/schema/schema-validator.ts +105 -6
  616. package/src/src/html/html-shell-generator.ts +1 -1
  617. package/src/src/html/hydration-script-builder/hydration-data-generator.ts +2 -2
  618. package/src/src/html/schemas/html.schema.ts +81 -65
  619. package/src/src/html/utils.ts +4 -1
  620. package/src/src/integrations/schema.ts +140 -111
  621. package/src/src/internal-agents/ag-ui-sse.ts +85 -83
  622. package/src/src/internal-agents/run-stream.ts +4 -2
  623. package/src/src/internal-agents/schema.ts +120 -89
  624. package/src/src/issues/core.ts +3 -1
  625. package/src/src/issues/mcp.ts +81 -58
  626. package/src/src/issues/schemas/index.ts +11 -0
  627. package/src/src/issues/schemas/issue.schema.ts +99 -73
  628. package/src/src/jobs/jobs-client.ts +4 -4
  629. package/src/src/jobs/schemas.ts +414 -297
  630. package/src/src/mcp/index.ts +6 -2
  631. package/src/src/mcp/schemas/index.ts +3 -0
  632. package/src/src/mcp/schemas/mcp.schema.ts +45 -29
  633. package/src/src/mcp/types.ts +2 -3
  634. package/src/src/oauth/schemas/oauth.schema.ts +96 -70
  635. package/src/src/platform/adapters/fs/github/github-api-client.ts +6 -6
  636. package/src/src/platform/adapters/fs/github/index.ts +5 -5
  637. package/src/src/platform/adapters/fs/github/schemas/github-api.schema.ts +58 -42
  638. package/src/src/platform/adapters/fs/github/schemas/index.ts +5 -5
  639. package/src/src/platform/adapters/fs/veryfront/proxy-manager.ts +9 -5
  640. package/src/src/platform/adapters/fs/veryfront/schemas/index.ts +1 -1
  641. package/src/src/platform/adapters/fs/veryfront/schemas/proxy-manager.schema.ts +14 -11
  642. package/src/src/platform/adapters/fs/veryfront/stat-operations.ts +1 -0
  643. package/src/src/platform/adapters/veryfront-api-client/index.ts +17 -16
  644. package/src/src/platform/adapters/veryfront-api-client/operations.ts +20 -31
  645. package/src/src/platform/adapters/veryfront-api-client/schemas/api.schema.ts +231 -150
  646. package/src/src/platform/adapters/veryfront-api-client/schemas/index.ts +17 -16
  647. package/src/src/prompt/schemas/prompt.schema.ts +13 -10
  648. package/src/src/proxy/handler.ts +0 -1
  649. package/src/src/rendering/orchestrator/html-project-css.ts +1 -1
  650. package/src/src/rendering/renderer.ts +2 -2
  651. package/src/src/repositories/schemas/repository.schema.ts +36 -22
  652. package/src/src/resource/index.ts +6 -2
  653. package/src/src/resource/schemas/index.ts +2 -0
  654. package/src/src/resource/schemas/resource.schema.ts +17 -8
  655. package/src/src/resource/types.ts +3 -3
  656. package/src/src/routing/api/openapi/types.ts +5 -5
  657. package/src/src/sandbox/hosted-tools.ts +17 -13
  658. package/src/src/schemas/common.ts +83 -31
  659. package/src/src/schemas/define.ts +13 -6
  660. package/src/src/schemas/index.ts +29 -17
  661. package/src/src/schemas/json-schema.ts +33 -0
  662. package/src/src/schemas/primitives.ts +71 -35
  663. package/src/src/security/http/config.ts +1 -1
  664. package/src/src/security/input-validation/handler.ts +3 -3
  665. package/src/src/security/input-validation/parsers.ts +40 -45
  666. package/src/src/server/bootstrap.ts +3 -3
  667. package/src/src/server/dev-ui/manifest.js +1 -1
  668. package/src/src/server/handlers/dev/framework-candidates.generated.ts +1 -0
  669. package/src/src/server/handlers/request/agent-run-cancel.handler.ts +2 -6
  670. package/src/src/server/handlers/request/agent-run-resume.handler.ts +4 -9
  671. package/src/src/server/handlers/request/agent-stream.handler.ts +2 -4
  672. package/src/src/server/handlers/request/internal-agents-list.handler.ts +2 -5
  673. package/src/src/server/runtime-handler/environment-resolution.ts +4 -5
  674. package/src/src/server/runtime-handler/request-utils.ts +1 -2
  675. package/src/src/server/schemas/action.schema.ts +12 -6
  676. package/src/src/skill/tools.ts +37 -25
  677. package/src/src/tool/factory.ts +23 -5
  678. package/src/src/tool/host-tools.ts +16 -6
  679. package/src/src/tool/index.ts +9 -5
  680. package/src/src/tool/remote-source-tools.ts +10 -2
  681. package/src/src/tool/schema/json-schema.ts +9 -15
  682. package/src/src/tool/schema/zod-json-schema.ts +75 -209
  683. package/src/src/tool/sleep.ts +55 -7
  684. package/src/src/tool/types.ts +12 -8
  685. package/src/src/transforms/npm-import-rewrites.ts +1 -3
  686. package/src/src/utils/version-constant.ts +1 -1
  687. package/src/src/workflow/blob/veryfront-cloud-storage.ts +53 -39
  688. package/src/src/workflow/claude-code/tool.ts +29 -38
  689. package/src/src/workflow/dsl/workflow.ts +3 -3
  690. package/src/src/workflow/schemas/index.ts +17 -0
  691. package/src/src/workflow/schemas/workflow.schema.ts +183 -123
  692. package/src/src/workflow/types.ts +3 -3
  693. package/esm/src/schemas/zod-adapter.d.ts +0 -25
  694. package/esm/src/schemas/zod-adapter.d.ts.map +0 -1
  695. package/esm/src/schemas/zod-adapter.js +0 -120
  696. package/src/src/schemas/zod-adapter.ts +0 -180
package/esm/deno.d.ts CHANGED
@@ -262,9 +262,13 @@ declare namespace _default {
262
262
  "@babel/parser": string;
263
263
  "gray-matter": string;
264
264
  zod: string;
265
+ mdast: string;
266
+ hast: string;
267
+ unist: string;
265
268
  unified: string;
266
269
  "class-variance-authority": string;
267
270
  "tailwind-merge": string;
271
+ "veryfront/schemas": string;
268
272
  "veryfront/chat/conversation": string;
269
273
  "veryfront/chat/message-prep": string;
270
274
  "veryfront/chat/final-step-fallback": string;
@@ -316,6 +320,7 @@ declare namespace _default {
316
320
  "docs:validate": string;
317
321
  "docs:verify-npm": string;
318
322
  "docs:check-links": string;
323
+ "lint:ban-zod": string;
319
324
  "lint:ban-console": string;
320
325
  "lint:ban-deep-imports": string;
321
326
  "lint:imports": string;
package/esm/deno.js CHANGED
@@ -1,6 +1,6 @@
1
1
  export default {
2
2
  "name": "veryfront",
3
- "version": "0.1.502",
3
+ "version": "0.1.503",
4
4
  "license": "Apache-2.0",
5
5
  "nodeModulesDir": "auto",
6
6
  "workspace": [
@@ -15,7 +15,8 @@ export default {
15
15
  "./extensions/ext-node-compatibility",
16
16
  "./extensions/ext-parser-babel",
17
17
  "./extensions/ext-tracing-opentelemetry",
18
- "./extensions/ext-transform-mdx"
18
+ "./extensions/ext-transform-mdx",
19
+ "./extensions/ext-zod"
19
20
  ],
20
21
  "exclude": [
21
22
  "npm/",
@@ -286,9 +287,13 @@ export default {
286
287
  "@babel/parser": "npm:@babel/parser@7.29.2",
287
288
  "gray-matter": "npm:gray-matter@4.0.3",
288
289
  "zod": "npm:zod@4.3.6",
290
+ "mdast": "npm:@types/mdast@4.0.3",
291
+ "hast": "npm:@types/hast@3.0.3",
292
+ "unist": "npm:@types/unist@3.0.2",
289
293
  "unified": "npm:unified@11.0.5",
290
294
  "class-variance-authority": "npm:class-variance-authority@0.7.1",
291
295
  "tailwind-merge": "npm:tailwind-merge@3.5.0",
296
+ "veryfront/schemas": "./src/schemas/index.ts",
292
297
  "veryfront/chat/conversation": "./src/chat/conversation.ts",
293
298
  "veryfront/chat/message-prep": "./src/chat/message-prep.ts",
294
299
  "veryfront/chat/final-step-fallback": "./src/chat/final-step-fallback.ts",
@@ -341,13 +346,14 @@ export default {
341
346
  "fmt": "deno fmt src/ cli/",
342
347
  "fmt:check": "deno fmt --check src/ cli/",
343
348
  "typecheck": "deno task generate && deno check src/index.ts cli/main.ts src/server/index.ts src/routing/api/index.ts src/rendering/index.ts src/platform/index.ts src/platform/adapters/index.ts src/build/index.ts src/build/production-build/index.ts src/transforms/index.ts src/config/index.ts src/utils/index.ts src/data/index.ts src/security/index.ts src/middleware/index.ts src/server/handlers/dev/index.ts src/server/handlers/request/api/index.ts src/rendering/cache/index.ts src/rendering/cache/stores/index.ts src/rendering/rsc/actions/index.ts src/html/index.ts src/modules/index.ts src/proxy/main.ts src/chat/index.ts src/markdown/index.ts src/mdx/index.ts src/fs/index.ts src/oauth/index.ts src/agent/index.ts src/agent/agent-service-route-export.check.ts src/tool/index.ts src/workflow/index.ts src/prompt/index.ts src/resource/index.ts src/jobs/index.ts src/mcp/index.ts src/provider/index.ts",
344
- "verify": "deno task generate && deno fmt --check src/ cli/ && DENO_NO_PACKAGE_JSON=1 deno lint src/ cli/ && deno task lint:style && deno task lint:cli-boundary && deno task lint:wildcard-exports && deno task lint:barrel-jsdoc && deno task docs:validate && deno task typecheck && deno task test && deno task test:e2e:binary",
345
- "verify:quick": "deno task generate && deno fmt --check src/ cli/ && DENO_NO_PACKAGE_JSON=1 deno lint src/ cli/ && deno task lint:style && deno task lint:cli-boundary && deno task lint:wildcard-exports && deno task lint:barrel-jsdoc && deno task docs:validate && deno task typecheck",
349
+ "verify": "deno task generate && deno fmt --check src/ cli/ && DENO_NO_PACKAGE_JSON=1 deno lint src/ cli/ && deno task lint:style && deno task lint:cli-boundary && deno task lint:wildcard-exports && deno task lint:barrel-jsdoc && deno task lint:ban-zod && deno task docs:validate && deno task typecheck && deno task test && deno task test:e2e:binary",
350
+ "verify:quick": "deno task generate && deno fmt --check src/ cli/ && DENO_NO_PACKAGE_JSON=1 deno lint src/ cli/ && deno task lint:style && deno task lint:cli-boundary && deno task lint:wildcard-exports && deno task lint:barrel-jsdoc && deno task lint:ban-zod && deno task docs:validate && deno task typecheck",
346
351
  "docs": "rm -rf docs/reference && deno run --allow-read --allow-write --allow-run scripts/docs/generate-api-reference.ts",
347
352
  "docs:copy": "rm -rf ../../docs/docs/code/reference && cp -r docs/reference/ ../../docs/docs/code/reference/",
348
353
  "docs:validate": "deno run --allow-read scripts/docs/validate-api-reference.ts",
349
354
  "docs:verify-npm": "node scripts/docs/verify-npm-exports.mjs && node scripts/docs/verify-npm-node.mjs",
350
355
  "docs:check-links": "deno run -A scripts/lint/check-doc-links.ts",
356
+ "lint:ban-zod": "deno run --allow-read scripts/lint/ban-zod-imports.ts",
351
357
  "lint:ban-console": "deno run --allow-read scripts/lint/ban-console.ts",
352
358
  "lint:ban-deep-imports": "deno run --allow-read scripts/lint/ban-deep-imports.ts",
353
359
  "lint:imports": "deno run --allow-read scripts/lint/no-cross-boundary-relative-imports.ts",
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Zod-backed `SchemaValidator` adapter.
3
+ *
4
+ * The default implementation of the `SchemaValidator` contract. It thinly
5
+ * wraps zod so that core modules can declare schemas through the
6
+ * extension-neutral DSL while still getting zod's runtime behavior.
7
+ *
8
+ * The entire zod surface used by the contract is confined to this file.
9
+ *
10
+ * @module extensions/ext-zod/adapter
11
+ */
12
+ import type { SchemaValidator } from "../../../src/extensions/schema/index.js";
13
+ /**
14
+ * Build a zod-backed `SchemaValidator` instance.
15
+ *
16
+ * Stateless — safe to call once at extension setup and pass the returned
17
+ * value to `ctx.provide("SchemaValidator", …)`. Tests that need to register
18
+ * the validator without going through full extension bootstrap can call this
19
+ * factory directly.
20
+ */
21
+ export declare function createZodAdapter(): SchemaValidator;
22
+ //# sourceMappingURL=adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../src/extensions/ext-zod/src/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAKV,eAAe,EAIhB,MAAM,yCAAyC,CAAC;AAiHjD;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,IAAI,eAAe,CA8FlD"}
@@ -0,0 +1,159 @@
1
+ /**
2
+ * Zod-backed `SchemaValidator` adapter.
3
+ *
4
+ * The default implementation of the `SchemaValidator` contract. It thinly
5
+ * wraps zod so that core modules can declare schemas through the
6
+ * extension-neutral DSL while still getting zod's runtime behavior.
7
+ *
8
+ * The entire zod surface used by the contract is confined to this file.
9
+ *
10
+ * @module extensions/ext-zod/adapter
11
+ */
12
+ import { z } from "zod";
13
+ import { isOptionalSchema, zodToJsonSchema } from "./json-schema.js";
14
+ /** Unwrap our opaque Schema<T> back to the underlying zod schema. */
15
+ function toZod(schema) {
16
+ return schema.__zod;
17
+ }
18
+ /** Wrap a zod schema as an opaque Schema<T> with chainables routed through zod. */
19
+ function wrap(zs) {
20
+ // The wrapper fakes the full Schema<T> surface; unsupported chainables on
21
+ // unsuitable kinds (e.g. calling `.email()` on a number) throw at runtime
22
+ // just like zod would.
23
+ // deno-lint-ignore no-explicit-any -- safe within this adapter
24
+ const anyZs = zs;
25
+ const s = {
26
+ _output: undefined,
27
+ optional: () => wrap(zs.optional()),
28
+ nullable: () => wrap(zs.nullable()),
29
+ nullish: () => wrap(zs.nullish()),
30
+ default: (value) => wrap(anyZs.default(value)),
31
+ describe: (description) => wrap(zs.describe(description)),
32
+ refine: (check, message) => wrap(zs.refine(check, message)),
33
+ superRefine: (check) => wrap(
34
+ // zod v4's `RefinementCtx` extends `ParsePayload` (`{ value, issues }`)
35
+ // and exposes `addIssue(string | $ZodSuperRefineIssue)`. We bridge to
36
+ // our path-aware `RefinementCtx` shape: we don't have a stable `path`
37
+ // from the zod side here (path tracking is per-issue, not per-ctx),
38
+ // so we emit `[]` and let callers pass their own `path` through
39
+ // `addIssue({ path })`.
40
+ anyZs.superRefine((value, zodCtx) => {
41
+ const ctx = {
42
+ path: [],
43
+ addIssue: (issue) => zodCtx.addIssue({
44
+ // String literal "custom" replaces the deprecated
45
+ // z.ZodIssueCode.custom enum (zod v4 prefers raw codes).
46
+ code: issue.code ?? "custom",
47
+ message: issue.message,
48
+ path: issue.path,
49
+ }),
50
+ };
51
+ check(value, ctx);
52
+ })),
53
+ transform: (fn) => wrap(zs.transform(fn)),
54
+ strict: () => wrap(anyZs.strict()),
55
+ strip: () => wrap(anyZs.strip()),
56
+ passthrough: () => wrap(anyZs.passthrough()),
57
+ partial: () => wrap(anyZs.partial()),
58
+ extend: (shape) => {
59
+ const zodShape = toZodShape(shape);
60
+ return wrap(anyZs.extend(zodShape));
61
+ },
62
+ merge: (other) => wrap(anyZs.merge(toZod(other))),
63
+ omit: (keys) => wrap(anyZs.omit(keys)),
64
+ pick: (keys) => wrap(anyZs.pick(keys)),
65
+ min: (value, message) => wrap(anyZs.min(value, message)),
66
+ max: (value, message) => wrap(anyZs.max(value, message)),
67
+ int: (message) => wrap(anyZs.int(message)),
68
+ positive: (message) => wrap(anyZs.positive(message)),
69
+ nonnegative: (message) => wrap(anyZs.nonnegative(message)),
70
+ regex: (pattern, message) => wrap(anyZs.regex(pattern, message)),
71
+ email: (message) => wrap(anyZs.email(message)),
72
+ url: (message) => wrap(anyZs.url(message)),
73
+ uuid: (message) => wrap(anyZs.uuid(message)),
74
+ datetime: (message) => wrap(anyZs.datetime(message)),
75
+ pipe: (next) => wrap(zs.pipe(toZod(next))),
76
+ parse: (data) => zs.parse(data),
77
+ safeParse: (data) => {
78
+ const res = zs.safeParse(data);
79
+ if (res.success)
80
+ return { success: true, data: res.data };
81
+ const issues = res.error.issues.map((issue) => ({
82
+ path: issue.path,
83
+ message: issue.message,
84
+ code: issue.code,
85
+ }));
86
+ return { success: false, issues, error: res.error };
87
+ },
88
+ };
89
+ // Attach the underlying zod schema for adapter round-trips without
90
+ // widening the public Schema<T> surface.
91
+ s.__zod = zs;
92
+ return s;
93
+ }
94
+ function toZodShape(shape) {
95
+ const out = {};
96
+ for (const [key, value] of Object.entries(shape)) {
97
+ out[key] = toZod(value);
98
+ }
99
+ return out;
100
+ }
101
+ const coerce = {
102
+ string: () => wrap(z.coerce.string()),
103
+ number: () => wrap(z.coerce.number()),
104
+ boolean: () => wrap(z.coerce.boolean()),
105
+ date: () => wrap(z.coerce.date()),
106
+ };
107
+ /**
108
+ * Build a zod-backed `SchemaValidator` instance.
109
+ *
110
+ * Stateless — safe to call once at extension setup and pass the returned
111
+ * value to `ctx.provide("SchemaValidator", …)`. Tests that need to register
112
+ * the validator without going through full extension bootstrap can call this
113
+ * factory directly.
114
+ */
115
+ export function createZodAdapter() {
116
+ return {
117
+ string: () => wrap(z.string()),
118
+ number: () => wrap(z.number()),
119
+ boolean: () => wrap(z.boolean()),
120
+ date: () => wrap(z.date()),
121
+ null: () => wrap(z.null()),
122
+ unknown: () => wrap(z.unknown()),
123
+ bigint: () => wrap(z.bigint()),
124
+ // deno-lint-ignore no-explicit-any -- contract mirrors zod's `any` constructor
125
+ any: () => wrap(z.any()),
126
+ function: () =>
127
+ // zod 4's z.function() is callable without args/returns and produces a
128
+ // schema accepting any function. We wrap it as Schema<AnyFunction>.
129
+ wrap(z.function()),
130
+ object: (shape) => wrap(z.object(toZodShape(shape))),
131
+ array: (element) => wrap(z.array(toZod(element))),
132
+ tuple: (items) => {
133
+ const zodItems = items.map((s) => toZod(s));
134
+ return wrap(z.tuple(zodItems));
135
+ },
136
+ record: (keys, values) => wrap(z.record(toZod(keys), toZod(values))),
137
+ union: (schemas) => {
138
+ const zodSchemas = schemas.map((s) => toZod(s));
139
+ return wrap(z.union(zodSchemas));
140
+ },
141
+ discriminatedUnion: (discriminator, schemas) => {
142
+ const zodSchemas = schemas.map((s) => toZod(s));
143
+ return wrap(z.discriminatedUnion(discriminator, zodSchemas));
144
+ },
145
+ literal: (value) => wrap(z.literal(value)),
146
+ enum: (values) => wrap(z.enum(values)),
147
+ lazy: (factory) => wrap(z.lazy(() => toZod(factory()))),
148
+ instanceof: (ctor) =>
149
+ // zod 4's z.instanceof expects `typeof Class` (z.core.util.Class). Our
150
+ // contract uses a slimmer `new`-able shape; bridge with a single cast
151
+ // through unknown.
152
+ wrap(z.instanceof(ctor)),
153
+ custom: (check, message) => wrap(z.custom(check, message)),
154
+ coerce,
155
+ validate: (schema, data) => schema.safeParse(data),
156
+ toJsonSchema: (schema) => zodToJsonSchema(toZod(schema)),
157
+ isOptional: (schema) => isOptionalSchema(toZod(schema)),
158
+ };
159
+ }
@@ -0,0 +1,19 @@
1
+ /**
2
+ * ext-zod — SchemaValidator implementation backed by zod.
3
+ *
4
+ * Provides the `SchemaValidator` contract via a zod-backed adapter. Core
5
+ * modules declare schemas through `defineSchema((v) => …)` (in
6
+ * `src/schemas/define.ts`); the lazy factory resolves this contract on first
7
+ * use and the adapter routes calls into zod.
8
+ *
9
+ * Registered automatically by `createBuiltinExtensions()`. Tests that need
10
+ * the adapter without going through full extension bootstrap can import
11
+ * `createZodAdapter` directly from this module's `./adapter.ts`.
12
+ *
13
+ * @module extensions/ext-zod
14
+ */
15
+ import type { ExtensionFactory } from "../../../src/extensions/index.js";
16
+ declare const extZod: ExtensionFactory;
17
+ export default extZod;
18
+ export { createZodAdapter } from "./adapter.js";
19
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/extensions/ext-zod/src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAGzE,QAAA,MAAM,MAAM,EAAE,gBAcb,CAAC;AAEF,eAAe,MAAM,CAAC;AACtB,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * ext-zod — SchemaValidator implementation backed by zod.
3
+ *
4
+ * Provides the `SchemaValidator` contract via a zod-backed adapter. Core
5
+ * modules declare schemas through `defineSchema((v) => …)` (in
6
+ * `src/schemas/define.ts`); the lazy factory resolves this contract on first
7
+ * use and the adapter routes calls into zod.
8
+ *
9
+ * Registered automatically by `createBuiltinExtensions()`. Tests that need
10
+ * the adapter without going through full extension bootstrap can import
11
+ * `createZodAdapter` directly from this module's `./adapter.ts`.
12
+ *
13
+ * @module extensions/ext-zod
14
+ */
15
+ import { createZodAdapter } from "./adapter.js";
16
+ const extZod = () => {
17
+ const impl = createZodAdapter();
18
+ return {
19
+ name: "ext-zod",
20
+ version: "0.1.0",
21
+ capabilities: [{ type: "contract", name: "SchemaValidator" }],
22
+ setup(ctx) {
23
+ ctx.provide("SchemaValidator", impl);
24
+ ctx.logger.info("[ext-zod] SchemaValidator registered");
25
+ },
26
+ teardown() {
27
+ // No resources to release.
28
+ },
29
+ };
30
+ };
31
+ export default extZod;
32
+ export { createZodAdapter } from "./adapter.js";
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Zod-to-JSON-Schema converter used by the `SchemaValidator` adapter.
3
+ *
4
+ * Operates directly on zod's internal `_def` shape (covers both v3 and v4)
5
+ * because zod ships no first-class JSON-Schema export. Confined to
6
+ * `extensions/ext-zod/` so the rest of the codebase never has to import zod
7
+ * to learn what a tool's input schema looks like.
8
+ *
9
+ * @module extensions/ext-zod/json-schema
10
+ */
11
+ import type { z } from "zod";
12
+ import type { JsonSchema } from "../../../src/extensions/schema/index.js";
13
+ export declare function zodToJsonSchema(schema: z.ZodTypeAny): JsonSchema;
14
+ export declare function isOptionalSchema(schema: z.ZodTypeAny): boolean;
15
+ //# sourceMappingURL=json-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-schema.d.ts","sourceRoot":"","sources":["../../../../src/extensions/ext-zod/src/json-schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yCAAyC,CAAC;AAgD1E,wBAAgB,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC,UAAU,GAAG,UAAU,CAEhE;AAgBD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,UAAU,GAAG,OAAO,CAE9D"}
@@ -0,0 +1,247 @@
1
+ /**
2
+ * Zod-to-JSON-Schema converter used by the `SchemaValidator` adapter.
3
+ *
4
+ * Operates directly on zod's internal `_def` shape (covers both v3 and v4)
5
+ * because zod ships no first-class JSON-Schema export. Confined to
6
+ * `extensions/ext-zod/` so the rest of the codebase never has to import zod
7
+ * to learn what a tool's input schema looks like.
8
+ *
9
+ * @module extensions/ext-zod/json-schema
10
+ */
11
+ const LITERAL_TYPE_MAP = {
12
+ string: "string",
13
+ number: "number",
14
+ boolean: "boolean",
15
+ };
16
+ function getLiteralType(value) {
17
+ return LITERAL_TYPE_MAP[typeof value];
18
+ }
19
+ function getDef(schema) {
20
+ return schema._def;
21
+ }
22
+ /** Get the internal type tag from a zod schema (_def.typeName in v3, _def.type in v4). */
23
+ function getTypeTag(schema) {
24
+ const def = getDef(schema);
25
+ return def.typeName ?? def.type;
26
+ }
27
+ export function zodToJsonSchema(schema) {
28
+ return convertSchema(schema, { seen: new WeakSet() });
29
+ }
30
+ function convertSchema(schema, context) {
31
+ // Guard against invalid schemas (can happen with different zod instances in npm bundle)
32
+ if (!schema || typeof schema !== "object" || !("_def" in schema)) {
33
+ throw new Error("Invalid Zod schema: missing _def property");
34
+ }
35
+ const { schema: unwrapped, nullable } = unwrapSchema(schema);
36
+ const json = convert(unwrapped, context);
37
+ const description = getDescription(schema) ?? getDescription(unwrapped);
38
+ if (description && json.description === undefined)
39
+ json.description = description;
40
+ return nullable ? { anyOf: [json, { type: "null" }] } : json;
41
+ }
42
+ export function isOptionalSchema(schema) {
43
+ return unwrapSchema(schema).optional || hasDefaultSchema(schema);
44
+ }
45
+ function convert(schema, context) {
46
+ if (context.seen.has(schema))
47
+ return {};
48
+ context.seen.add(schema);
49
+ try {
50
+ return convertInner(schema, context);
51
+ }
52
+ finally {
53
+ context.seen.delete(schema);
54
+ }
55
+ }
56
+ function convertInner(schema, context) {
57
+ const tag = getTypeTag(schema);
58
+ const def = getDef(schema);
59
+ switch (tag) {
60
+ case "ZodString":
61
+ case "string":
62
+ return { type: "string" };
63
+ case "ZodNumber":
64
+ case "number":
65
+ return { type: "number" };
66
+ case "ZodBoolean":
67
+ case "boolean":
68
+ return { type: "boolean" };
69
+ case "ZodBigInt":
70
+ case "bigint":
71
+ return { type: "integer" };
72
+ case "ZodLiteral":
73
+ case "literal": {
74
+ // v3: _def.value, v4: _def.values (array of accepted values)
75
+ const literal = def.value ?? (Array.isArray(def.values) ? def.values[0] : def.values);
76
+ return { const: literal, type: getLiteralType(literal) };
77
+ }
78
+ case "ZodEnum":
79
+ case "ZodNativeEnum":
80
+ case "enum": {
81
+ // v3: _def.values (array), v4: _def.entries (object {key: value})
82
+ const values = def.values ?? (def.entries ? Object.values(def.entries) : []);
83
+ if (Array.isArray(values)) {
84
+ return { type: "string", enum: values };
85
+ }
86
+ // Native enum: filter out reverse-mapped numeric keys
87
+ return {
88
+ enum: Object.values(values).filter((value) => typeof value !== "number"),
89
+ };
90
+ }
91
+ case "ZodObject":
92
+ case "object": {
93
+ const shape = typeof def.shape === "function" ? def.shape() : def.shape;
94
+ const properties = {};
95
+ const required = [];
96
+ for (const [key, value] of Object.entries(shape ?? {})) {
97
+ const zodSchema = value;
98
+ properties[key] = convertSchema(zodSchema, context);
99
+ if (!isOptionalSchema(zodSchema))
100
+ required.push(key);
101
+ }
102
+ const json = { type: "object", properties };
103
+ if (required.length)
104
+ json.required = required;
105
+ const additionalProperties = getObjectAdditionalProperties(def, context);
106
+ if (additionalProperties !== undefined)
107
+ json.additionalProperties = additionalProperties;
108
+ return json;
109
+ }
110
+ case "ZodArray":
111
+ case "array": {
112
+ // v3: _def.type (item schema), v4: _def.element (item schema)
113
+ const itemType = def.element ?? def.type;
114
+ if (!itemType || typeof itemType === "string")
115
+ return { type: "array" };
116
+ return { type: "array", items: convertSchema(itemType, context) };
117
+ }
118
+ case "ZodTuple":
119
+ case "tuple": {
120
+ const items = def.items ?? [];
121
+ return {
122
+ type: "array",
123
+ prefixItems: items.map((item) => convertSchema(item, context)),
124
+ minItems: items.length,
125
+ maxItems: items.length,
126
+ };
127
+ }
128
+ case "ZodUnion":
129
+ case "ZodDiscriminatedUnion":
130
+ case "union": {
131
+ const options = def.options ?? [];
132
+ const optionArray = options instanceof Map ? Array.from(options.values()) : options;
133
+ return { anyOf: optionArray.map((option) => convertSchema(option, context)) };
134
+ }
135
+ case "ZodRecord":
136
+ case "record": {
137
+ const valueSchema = def.valueType ?? def.element;
138
+ if (!valueSchema)
139
+ return { type: "object" };
140
+ return { type: "object", additionalProperties: convertSchema(valueSchema, context) };
141
+ }
142
+ case "ZodDefault":
143
+ case "default": {
144
+ const innerType = def.innerType ?? def.schema;
145
+ if (!innerType)
146
+ return { type: "object" };
147
+ const inner = convertSchema(innerType, context);
148
+ const defaultValue = typeof def.defaultValue === "function"
149
+ ? def.defaultValue()
150
+ : def.defaultValue;
151
+ if (typeof inner === "object" && !("anyOf" in inner) && defaultValue !== undefined) {
152
+ inner.default = defaultValue;
153
+ }
154
+ return inner;
155
+ }
156
+ case "ZodLazy":
157
+ case "lazy":
158
+ return def.getter ? convert(def.getter(), context) : { type: "object" };
159
+ case "ZodEffects":
160
+ case "pipe": {
161
+ // v3: ZodEffects wraps schema in _def.schema
162
+ // v4: pipe wraps in _def.in (input schema)
163
+ const innerSchema = def.schema ?? def.in;
164
+ return innerSchema ? convert(innerSchema, context) : { type: "object" };
165
+ }
166
+ default:
167
+ return { type: "object" };
168
+ }
169
+ }
170
+ function getObjectAdditionalProperties(def, context) {
171
+ if (def.unknownKeys === "passthrough")
172
+ return true;
173
+ if (def.unknownKeys === "strict")
174
+ return false;
175
+ if (def.unknownKeys === "strip")
176
+ return undefined;
177
+ if (!def.catchall)
178
+ return undefined;
179
+ const catchallTag = getTypeTag(def.catchall);
180
+ if (catchallTag === "unknown" || catchallTag === "ZodUnknown")
181
+ return true;
182
+ if (catchallTag === "never" || catchallTag === "ZodNever")
183
+ return false;
184
+ return convertSchema(def.catchall, context);
185
+ }
186
+ function unwrapSchema(schema) {
187
+ let current = schema;
188
+ let nullable = false;
189
+ let optional = false;
190
+ while (true) {
191
+ const tag = getTypeTag(current);
192
+ const def = getDef(current);
193
+ switch (tag) {
194
+ case "ZodNullable":
195
+ case "nullable":
196
+ nullable = true;
197
+ current = (def.innerType ?? def.schema);
198
+ break;
199
+ case "ZodOptional":
200
+ case "optional":
201
+ optional = true;
202
+ current = (def.innerType ?? def.schema);
203
+ break;
204
+ case "ZodEffects":
205
+ case "pipe":
206
+ current = def.schema ?? def.in ?? current;
207
+ if (current === schema)
208
+ return { schema: current, nullable, optional };
209
+ break;
210
+ default:
211
+ return { schema: current, nullable, optional };
212
+ }
213
+ }
214
+ }
215
+ function hasDefaultSchema(schema) {
216
+ let current = schema;
217
+ while (true) {
218
+ const tag = getTypeTag(current);
219
+ const def = getDef(current);
220
+ switch (tag) {
221
+ case "ZodDefault":
222
+ case "default":
223
+ return true;
224
+ case "ZodNullable":
225
+ case "nullable":
226
+ case "ZodOptional":
227
+ case "optional":
228
+ case "ZodEffects":
229
+ case "pipe": {
230
+ const inner = def.innerType ?? def.schema ?? def.in;
231
+ if (!inner || inner === current)
232
+ return false;
233
+ current = inner;
234
+ break;
235
+ }
236
+ default:
237
+ return false;
238
+ }
239
+ }
240
+ }
241
+ function getDescription(schema) {
242
+ const direct = schema.description;
243
+ if (typeof direct === "string")
244
+ return direct;
245
+ const defDescription = getDef(schema).description;
246
+ return typeof defDescription === "string" ? defDescription : undefined;
247
+ }