@sixb/core 0.1.6 → 0.1.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (535) hide show
  1. package/dist/actions/index.js +37 -33
  2. package/dist/actions/index.js.map +1 -1
  3. package/dist/actions/worker.js +3 -3
  4. package/dist/agents/adapters.d.ts +33 -76
  5. package/dist/agents/adapters.d.ts.map +1 -1
  6. package/dist/agents/authority.d.ts +22 -6
  7. package/dist/agents/authority.d.ts.map +1 -1
  8. package/dist/agents/builders.d.ts +3 -11
  9. package/dist/agents/builders.d.ts.map +1 -1
  10. package/dist/agents/context.js +2 -2
  11. package/dist/agents/dispatch.d.ts +9 -1
  12. package/dist/agents/dispatch.d.ts.map +1 -1
  13. package/dist/agents/errors.d.ts +2 -2
  14. package/dist/agents/errors.d.ts.map +1 -1
  15. package/dist/agents/execution.d.ts +9 -10
  16. package/dist/agents/execution.d.ts.map +1 -1
  17. package/dist/agents/ids.d.ts +4 -0
  18. package/dist/agents/ids.d.ts.map +1 -1
  19. package/dist/agents/index.d.ts +13 -9
  20. package/dist/agents/index.d.ts.map +1 -1
  21. package/dist/agents/index.js +80 -68
  22. package/dist/agents/index.js.map +1 -1
  23. package/dist/agents/message.d.ts +17 -10
  24. package/dist/agents/message.d.ts.map +1 -1
  25. package/dist/agents/model-loop.d.ts +56 -0
  26. package/dist/agents/model-loop.d.ts.map +1 -0
  27. package/dist/agents/reference.d.ts +4 -0
  28. package/dist/agents/reference.d.ts.map +1 -0
  29. package/dist/agents/request.d.ts +10 -8
  30. package/dist/agents/request.d.ts.map +1 -1
  31. package/dist/agents/retired-config.d.ts +4 -0
  32. package/dist/agents/retired-config.d.ts.map +1 -0
  33. package/dist/agents/streams.d.ts +13 -8
  34. package/dist/agents/streams.d.ts.map +1 -1
  35. package/dist/agents/streams.js +7 -5
  36. package/dist/agents/streams.js.map +1 -1
  37. package/dist/agents/tool-catalog.d.ts +9 -0
  38. package/dist/agents/tool-catalog.d.ts.map +1 -0
  39. package/dist/agents/tool-definition.d.ts +1 -0
  40. package/dist/agents/tool-definition.d.ts.map +1 -1
  41. package/dist/agents/types.d.ts +31 -68
  42. package/dist/agents/types.d.ts.map +1 -1
  43. package/dist/agents/validation.d.ts +4 -10
  44. package/dist/agents/validation.d.ts.map +1 -1
  45. package/dist/ai-usage/execution.d.ts +53 -0
  46. package/dist/ai-usage/execution.d.ts.map +1 -0
  47. package/dist/ai-usage/index.d.ts +3 -0
  48. package/dist/ai-usage/index.d.ts.map +1 -0
  49. package/dist/auth/index.js +7 -7
  50. package/dist/authorization/decision.d.ts +5 -2
  51. package/dist/authorization/decision.d.ts.map +1 -1
  52. package/dist/authorization/grant-kinds.d.ts +24 -8
  53. package/dist/authorization/grant-kinds.d.ts.map +1 -1
  54. package/dist/authorization/index.d.ts +1 -1
  55. package/dist/authorization/index.d.ts.map +1 -1
  56. package/dist/authorization/index.js +8 -6
  57. package/dist/authorization/index.js.map +1 -1
  58. package/dist/authorization/resolve.d.ts +3 -3
  59. package/dist/authorization/resolve.d.ts.map +1 -1
  60. package/dist/authorization/types.d.ts +7 -5
  61. package/dist/authorization/types.d.ts.map +1 -1
  62. package/dist/blob-storage/browser.js +2 -2
  63. package/dist/blob-storage/index.js +3 -3
  64. package/dist/bootstrap/discovery.d.ts +1 -7
  65. package/dist/bootstrap/discovery.d.ts.map +1 -1
  66. package/dist/bootstrap/index.js +52 -48
  67. package/dist/bootstrap/index.js.map +1 -1
  68. package/dist/broker/index.js +2 -2
  69. package/dist/{chunk-zqysyfjt.js → chunk-08m3b6w8.js} +1 -1
  70. package/dist/{chunk-1g8negke.js → chunk-08twe8m6.js} +93 -8
  71. package/dist/chunk-08twe8m6.js.map +12 -0
  72. package/dist/{chunk-xkthy56g.js → chunk-1kamz6j0.js} +1 -1
  73. package/dist/{chunk-dy311asx.js → chunk-2b5qtban.js} +12 -12
  74. package/dist/{chunk-dy311asx.js.map → chunk-2b5qtban.js.map} +3 -3
  75. package/dist/{chunk-0172wgm9.js → chunk-2xns679x.js} +10 -2
  76. package/dist/{chunk-0172wgm9.js.map → chunk-2xns679x.js.map} +3 -3
  77. package/dist/{chunk-f83ka50g.js → chunk-37wk412q.js} +86 -28
  78. package/dist/{chunk-f83ka50g.js.map → chunk-37wk412q.js.map} +8 -8
  79. package/dist/{chunk-md8k0r54.js → chunk-3fqt22c4.js} +4 -4
  80. package/dist/{chunk-t9xghkva.js → chunk-3kv70xwp.js} +3 -2
  81. package/dist/{chunk-t9xghkva.js.map → chunk-3kv70xwp.js.map} +3 -3
  82. package/dist/{chunk-z3zp0bj1.js → chunk-407j3msh.js} +1 -1
  83. package/dist/{chunk-rhrbz7d4.js → chunk-4a849fr1.js} +1 -1
  84. package/dist/{chunk-62c7t4jc.js → chunk-4nxeacx7.js} +1 -1
  85. package/dist/{chunk-cy0n5dms.js → chunk-5jcdmjam.js} +1 -1
  86. package/dist/{chunk-819wnjz8.js → chunk-64sr682n.js} +7 -7
  87. package/dist/{chunk-t624af60.js → chunk-6ed5bwnd.js} +646 -67
  88. package/dist/{chunk-t624af60.js.map → chunk-6ed5bwnd.js.map} +10 -9
  89. package/dist/{chunk-x2yw73hy.js → chunk-7ds9620f.js} +1 -1
  90. package/dist/{chunk-dm72y8wt.js → chunk-7y0f6rf1.js} +29 -16
  91. package/dist/chunk-7y0f6rf1.js.map +10 -0
  92. package/dist/{chunk-72q2y8hn.js → chunk-8tsf6dmc.js} +2 -2
  93. package/dist/{chunk-nkbfrt0c.js → chunk-9aehf39w.js} +7 -7
  94. package/dist/{chunk-ezake7g1.js → chunk-agsvg9ar.js} +1 -1
  95. package/dist/{chunk-rdeagz6b.js → chunk-atmkaf60.js} +1 -1
  96. package/dist/{chunk-rdeagz6b.js.map → chunk-atmkaf60.js.map} +2 -2
  97. package/dist/chunk-c15dr03f.js +43 -0
  98. package/dist/chunk-c15dr03f.js.map +10 -0
  99. package/dist/{chunk-0hc5j867.js → chunk-d2ndstdf.js} +8 -6
  100. package/dist/{chunk-0hc5j867.js.map → chunk-d2ndstdf.js.map} +2 -2
  101. package/dist/{chunk-rnshztfq.js → chunk-d63tybny.js} +2 -2
  102. package/dist/{chunk-t0jjkep3.js → chunk-d8qkxt2v.js} +4 -2
  103. package/dist/chunk-d8qkxt2v.js.map +10 -0
  104. package/dist/{chunk-vybf6pkp.js → chunk-dbc80ad7.js} +1 -1
  105. package/dist/{chunk-4gz41why.js → chunk-dqn23610.js} +1 -1
  106. package/dist/{chunk-5sxb1168.js → chunk-e4rvtvpw.js} +13 -11
  107. package/dist/{chunk-5sxb1168.js.map → chunk-e4rvtvpw.js.map} +2 -2
  108. package/dist/{chunk-h9kxd41f.js → chunk-gbrpsx4m.js} +19 -6
  109. package/dist/chunk-gbrpsx4m.js.map +11 -0
  110. package/dist/{chunk-nva1xkjz.js → chunk-h0knpbz5.js} +468 -1236
  111. package/dist/chunk-h0knpbz5.js.map +38 -0
  112. package/dist/{chunk-tg5mee00.js → chunk-ha58tjtt.js} +6 -6
  113. package/dist/{chunk-f6erf2vv.js → chunk-hdz94br2.js} +2 -2
  114. package/dist/chunk-jecn6t54.js +307 -0
  115. package/dist/chunk-jecn6t54.js.map +12 -0
  116. package/dist/{chunk-dsrkgtnh.js → chunk-jq43kdvk.js} +1 -1
  117. package/dist/{chunk-wtmzkcht.js → chunk-k34z5rvh.js} +1 -1
  118. package/dist/{chunk-htq0qh7z.js → chunk-ka3a2ft3.js} +2 -2
  119. package/dist/{chunk-znagycq7.js → chunk-kt81c11h.js} +2 -2
  120. package/dist/chunk-n2arzn6e.js +1745 -0
  121. package/dist/chunk-n2arzn6e.js.map +20 -0
  122. package/dist/{chunk-f2rt4vkh.js → chunk-n2w475r0.js} +3 -3
  123. package/dist/{chunk-t8t39h7v.js → chunk-n6jxh8sw.js} +10 -2
  124. package/dist/chunk-n6jxh8sw.js.map +10 -0
  125. package/dist/{chunk-drjqm1aa.js → chunk-p03r0h5s.js} +310 -28
  126. package/dist/chunk-p03r0h5s.js.map +16 -0
  127. package/dist/chunk-p2vqaxkc.js +528 -0
  128. package/dist/chunk-p2vqaxkc.js.map +15 -0
  129. package/dist/{chunk-n4spznws.js → chunk-qjycjdj6.js} +84 -11
  130. package/dist/chunk-qjycjdj6.js.map +12 -0
  131. package/dist/chunk-qjzp9xyb.js +286 -0
  132. package/dist/chunk-qjzp9xyb.js.map +12 -0
  133. package/dist/{chunk-5gynx4xn.js → chunk-qv38twt8.js} +50 -69
  134. package/dist/{chunk-5gynx4xn.js.map → chunk-qv38twt8.js.map} +8 -8
  135. package/dist/{chunk-bhxaq2nn.js → chunk-qw9gvjv5.js} +1 -1
  136. package/dist/{chunk-8gv5z0zm.js → chunk-rp1mvzb4.js} +6 -6
  137. package/dist/{chunk-1e8m6yn3.js → chunk-rre42skh.js} +182 -18
  138. package/dist/chunk-rre42skh.js.map +39 -0
  139. package/dist/{chunk-ghteq96b.js → chunk-s5y30bc9.js} +2 -2
  140. package/dist/{chunk-a31h57d5.js → chunk-tn7xcs2n.js} +2 -2
  141. package/dist/{chunk-6gjqgd3d.js → chunk-tpnd31c1.js} +2 -1
  142. package/dist/chunk-tpnd31c1.js.map +11 -0
  143. package/dist/chunk-trxxmgnf.js +68 -0
  144. package/dist/chunk-trxxmgnf.js.map +11 -0
  145. package/dist/{chunk-e42bc6m3.js → chunk-vjjv9mrb.js} +2 -2
  146. package/dist/{chunk-8b55ygje.js → chunk-w3e09qqk.js} +1 -1
  147. package/dist/{chunk-ckxfnx7f.js → chunk-wjgm6jjt.js} +2 -2
  148. package/dist/{chunk-3j7573mj.js → chunk-x0qhkqje.js} +2 -2
  149. package/dist/{chunk-dysw7nsm.js → chunk-xdpwpkha.js} +2 -2
  150. package/dist/{chunk-a44d5zgd.js → chunk-y35ma3mj.js} +11 -16
  151. package/dist/{chunk-a44d5zgd.js.map → chunk-y35ma3mj.js.map} +3 -4
  152. package/dist/{chunk-qewtks41.js → chunk-z2sery1b.js} +64 -1
  153. package/dist/{chunk-qewtks41.js.map → chunk-z2sery1b.js.map} +3 -3
  154. package/dist/error-reporting/internal.js +4 -4
  155. package/dist/error-reporting/types.d.ts +7 -2
  156. package/dist/error-reporting/types.d.ts.map +1 -1
  157. package/dist/errors/catalog.d.ts +8 -0
  158. package/dist/errors/catalog.d.ts.map +1 -1
  159. package/dist/errors/internal.js +2 -2
  160. package/dist/events/index.js +4 -4
  161. package/dist/execution/agent.d.ts +18 -9
  162. package/dist/execution/agent.d.ts.map +1 -1
  163. package/dist/execution/agent.js +52 -43
  164. package/dist/execution/agent.js.map +1 -1
  165. package/dist/execution/authorization.d.ts +14 -4
  166. package/dist/execution/authorization.d.ts.map +1 -1
  167. package/dist/execution/primitive.js +45 -43
  168. package/dist/execution/primitive.js.map +2 -2
  169. package/dist/execution/request.d.ts +3 -1
  170. package/dist/execution/request.d.ts.map +1 -1
  171. package/dist/execution/request.js +46 -44
  172. package/dist/execution/request.js.map +3 -3
  173. package/dist/execution/types.d.ts +1 -1
  174. package/dist/execution/types.d.ts.map +1 -1
  175. package/dist/http/api-routes.d.ts.map +1 -1
  176. package/dist/http/index.js +1 -1
  177. package/dist/index.d.ts +9 -6
  178. package/dist/index.d.ts.map +1 -1
  179. package/dist/index.js +82 -77
  180. package/dist/index.js.map +1 -1
  181. package/dist/json.d.ts +2 -0
  182. package/dist/json.d.ts.map +1 -1
  183. package/dist/lake-storage/index.js +5 -5
  184. package/dist/logging/index.js +3 -3
  185. package/dist/logging/types.js +2 -2
  186. package/dist/materialization/index.js +2 -2
  187. package/dist/materializer/index.js +33 -29
  188. package/dist/materializer/index.js.map +1 -1
  189. package/dist/models/catalog.d.ts +40 -0
  190. package/dist/models/catalog.d.ts.map +1 -0
  191. package/dist/models/definitions.d.ts +25 -0
  192. package/dist/models/definitions.d.ts.map +1 -0
  193. package/dist/models/errors.d.ts +52 -0
  194. package/dist/models/errors.d.ts.map +1 -0
  195. package/dist/models/events.d.ts +192 -0
  196. package/dist/models/events.d.ts.map +1 -0
  197. package/dist/models/index.d.ts +17 -39
  198. package/dist/models/index.d.ts.map +1 -1
  199. package/dist/models/index.js +50 -0
  200. package/dist/models/index.js.map +9 -0
  201. package/dist/models/language-model.d.ts +90 -0
  202. package/dist/models/language-model.d.ts.map +1 -0
  203. package/dist/models/messages.d.ts +74 -0
  204. package/dist/models/messages.d.ts.map +1 -0
  205. package/dist/models/pricing.d.ts +69 -0
  206. package/dist/models/pricing.d.ts.map +1 -0
  207. package/dist/models/rate-card.d.ts +24 -0
  208. package/dist/models/rate-card.d.ts.map +1 -0
  209. package/dist/models/tools.d.ts +24 -0
  210. package/dist/models/tools.d.ts.map +1 -0
  211. package/dist/objects/index.js +38 -34
  212. package/dist/objects/index.js.map +1 -1
  213. package/dist/objects/query/index.js +32 -28
  214. package/dist/objects/query/index.js.map +1 -1
  215. package/dist/ontology/index.js +5 -5
  216. package/dist/ontology/internal.js +4 -4
  217. package/dist/pipelines/index.js +37 -35
  218. package/dist/pipelines/index.js.map +1 -1
  219. package/dist/projections/internal.js +35 -31
  220. package/dist/projections/internal.js.map +1 -1
  221. package/dist/queues/in-memory.d.ts +3 -2
  222. package/dist/queues/in-memory.d.ts.map +1 -1
  223. package/dist/queues/index.d.ts +3 -1
  224. package/dist/queues/index.d.ts.map +1 -1
  225. package/dist/queues/index.js +1 -1
  226. package/dist/queues/types.d.ts +15 -3
  227. package/dist/queues/types.d.ts.map +1 -1
  228. package/dist/runtime/create.d.ts +4 -4
  229. package/dist/runtime/create.d.ts.map +1 -1
  230. package/dist/runtime/definitions.d.ts +2 -2
  231. package/dist/runtime/definitions.d.ts.map +1 -1
  232. package/dist/runtime/host.d.ts +3 -2
  233. package/dist/runtime/host.d.ts.map +1 -1
  234. package/dist/runtime/resolve-definitions.d.ts +2 -2
  235. package/dist/runtime/resolve-definitions.d.ts.map +1 -1
  236. package/dist/runtime/sixb.d.ts +4 -2
  237. package/dist/runtime/sixb.d.ts.map +1 -1
  238. package/dist/security/every.d.ts +1 -4
  239. package/dist/security/every.d.ts.map +1 -1
  240. package/dist/security/grants.d.ts +6 -5
  241. package/dist/security/grants.d.ts.map +1 -1
  242. package/dist/security/index.d.ts +1 -1
  243. package/dist/security/index.d.ts.map +1 -1
  244. package/dist/security/registry.d.ts +1 -1
  245. package/dist/security/registry.d.ts.map +1 -1
  246. package/dist/security/types.d.ts +13 -5
  247. package/dist/security/types.d.ts.map +1 -1
  248. package/dist/security/validation.d.ts +4 -2
  249. package/dist/security/validation.d.ts.map +1 -1
  250. package/dist/storage/action-runs/failure.js +3 -3
  251. package/dist/storage/action-runs/provider.js +2 -2
  252. package/dist/storage/agents/errors.d.ts +1 -1
  253. package/dist/storage/agents/errors.d.ts.map +1 -1
  254. package/dist/storage/agents/in-memory.d.ts +3 -2
  255. package/dist/storage/agents/in-memory.d.ts.map +1 -1
  256. package/dist/storage/agents/index.d.ts +1 -1
  257. package/dist/storage/agents/index.d.ts.map +1 -1
  258. package/dist/storage/agents/provider.d.ts +11 -4
  259. package/dist/storage/agents/provider.d.ts.map +1 -1
  260. package/dist/storage/agents/provider.js +18 -15
  261. package/dist/storage/agents/provider.js.map +1 -1
  262. package/dist/storage/agents/types.d.ts +65 -17
  263. package/dist/storage/agents/types.d.ts.map +1 -1
  264. package/dist/storage/ai-cost/analytics.d.ts +2 -1
  265. package/dist/storage/ai-cost/analytics.d.ts.map +1 -1
  266. package/dist/storage/ai-cost/codec.d.ts +3 -2
  267. package/dist/storage/ai-cost/codec.d.ts.map +1 -1
  268. package/dist/storage/ai-cost/groups.d.ts +51 -0
  269. package/dist/storage/ai-cost/groups.d.ts.map +1 -0
  270. package/dist/storage/ai-cost/in-memory.d.ts +11 -1
  271. package/dist/storage/ai-cost/in-memory.d.ts.map +1 -1
  272. package/dist/storage/ai-cost/index.d.ts +1 -1
  273. package/dist/storage/ai-cost/index.d.ts.map +1 -1
  274. package/dist/storage/ai-cost/provider.d.ts +2 -0
  275. package/dist/storage/ai-cost/provider.d.ts.map +1 -1
  276. package/dist/storage/ai-cost/provider.js +29 -13
  277. package/dist/storage/ai-cost/provider.js.map +3 -3
  278. package/dist/storage/ai-cost/types.d.ts +64 -15
  279. package/dist/storage/ai-cost/types.d.ts.map +1 -1
  280. package/dist/storage/ai-cost/validation.d.ts +2 -1
  281. package/dist/storage/ai-cost/validation.d.ts.map +1 -1
  282. package/dist/storage/ai-limits/enforcement.d.ts +14 -0
  283. package/dist/storage/ai-limits/enforcement.d.ts.map +1 -0
  284. package/dist/storage/ai-limits/enforcement.js +21 -0
  285. package/dist/storage/ai-limits/enforcement.js.map +9 -0
  286. package/dist/storage/ai-limits/errors.d.ts +8 -0
  287. package/dist/storage/ai-limits/errors.d.ts.map +1 -0
  288. package/dist/storage/ai-limits/in-memory.d.ts +78 -0
  289. package/dist/storage/ai-limits/in-memory.d.ts.map +1 -0
  290. package/dist/storage/ai-limits/index.d.ts +7 -0
  291. package/dist/storage/ai-limits/index.d.ts.map +1 -0
  292. package/dist/storage/ai-limits/period.d.ts +4 -0
  293. package/dist/storage/ai-limits/period.d.ts.map +1 -0
  294. package/dist/storage/ai-limits/provider.d.ts +85 -0
  295. package/dist/storage/ai-limits/provider.d.ts.map +1 -0
  296. package/dist/storage/ai-limits/provider.js +62 -0
  297. package/dist/storage/ai-limits/provider.js.map +9 -0
  298. package/dist/storage/ai-limits/types.d.ts +175 -0
  299. package/dist/storage/ai-limits/types.d.ts.map +1 -0
  300. package/dist/storage/ai-usage/in-memory.d.ts +4 -0
  301. package/dist/storage/ai-usage/in-memory.d.ts.map +1 -1
  302. package/dist/storage/ai-usage/record.d.ts.map +1 -1
  303. package/dist/storage/ai-usage/types.d.ts +6 -2
  304. package/dist/storage/ai-usage/types.d.ts.map +1 -1
  305. package/dist/storage/auth/errors.d.ts +1 -1
  306. package/dist/storage/auth/errors.d.ts.map +1 -1
  307. package/dist/storage/auth/in-memory/auth-storage.d.ts +4 -1
  308. package/dist/storage/auth/in-memory/auth-storage.d.ts.map +1 -1
  309. package/dist/storage/auth/in-memory/device-authorizations.d.ts +29 -0
  310. package/dist/storage/auth/in-memory/device-authorizations.d.ts.map +1 -0
  311. package/dist/storage/auth/in-memory/shared.d.ts +3 -1
  312. package/dist/storage/auth/in-memory/shared.d.ts.map +1 -1
  313. package/dist/storage/auth/index.d.ts +2 -1
  314. package/dist/storage/auth/index.d.ts.map +1 -1
  315. package/dist/storage/auth/types.d.ts +66 -0
  316. package/dist/storage/auth/types.d.ts.map +1 -1
  317. package/dist/storage/connector-connections/provider.js +2 -2
  318. package/dist/storage/executions/provider.js +1 -1
  319. package/dist/storage/executions/run-link.d.ts +7 -2
  320. package/dist/storage/executions/run-link.d.ts.map +1 -1
  321. package/dist/storage/executions/validation.d.ts.map +1 -1
  322. package/dist/storage/in-memory/index.d.ts +4 -0
  323. package/dist/storage/in-memory/index.d.ts.map +1 -1
  324. package/dist/storage/index.d.ts +7 -4
  325. package/dist/storage/index.d.ts.map +1 -1
  326. package/dist/storage/index.js +51 -38
  327. package/dist/storage/index.js.map +1 -1
  328. package/dist/storage/ontology/provider.js +3 -3
  329. package/dist/storage/pipeline-runs/provider.js +2 -2
  330. package/dist/storage/projection-runs/provider.js +4 -4
  331. package/dist/storage/sync-runs/provider.js +2 -2
  332. package/dist/storage/types.d.ts +5 -1
  333. package/dist/storage/types.d.ts.map +1 -1
  334. package/dist/storage/webhook-runs/provider.js +2 -2
  335. package/dist/storage/workflow-runs/provider.d.ts +1 -1
  336. package/dist/storage/workflow-runs/provider.js +10 -11
  337. package/dist/storage/workflow-runs/provider.js.map +1 -1
  338. package/dist/storage/workflow-runs/types.d.ts +5 -4
  339. package/dist/storage/workflow-runs/types.d.ts.map +1 -1
  340. package/dist/syncs/index.js +37 -35
  341. package/dist/syncs/index.js.map +1 -1
  342. package/dist/testing/agent-execution.d.ts +3 -1
  343. package/dist/testing/agent-execution.d.ts.map +1 -1
  344. package/dist/testing/agent-storage-contract.d.ts.map +1 -1
  345. package/dist/testing/ai-cost-storage-contract.d.ts.map +1 -1
  346. package/dist/testing/ai-limit-storage-contract.d.ts +18 -0
  347. package/dist/testing/ai-limit-storage-contract.d.ts.map +1 -0
  348. package/dist/testing/ai-model-call-groups-contract.d.ts +6 -0
  349. package/dist/testing/ai-model-call-groups-contract.d.ts.map +1 -0
  350. package/dist/testing/ai-usage-storage-contract.d.ts.map +1 -1
  351. package/dist/testing/auth-storage-contract.d.ts.map +1 -1
  352. package/dist/testing/index.d.ts +2 -0
  353. package/dist/testing/index.d.ts.map +1 -1
  354. package/dist/testing/index.js +3637 -1962
  355. package/dist/testing/index.js.map +14 -12
  356. package/dist/testing/queues-contract.d.ts.map +1 -1
  357. package/dist/webhooks/internal.js +32 -28
  358. package/dist/webhooks/internal.js.map +2 -2
  359. package/dist/workers/index.js +2 -2
  360. package/dist/workflows/agent-step-identity.d.ts +3 -0
  361. package/dist/workflows/agent-step-identity.d.ts.map +1 -0
  362. package/dist/workflows/builders.d.ts +2 -3
  363. package/dist/workflows/builders.d.ts.map +1 -1
  364. package/dist/workflows/execution.d.ts +1 -1
  365. package/dist/workflows/execution.d.ts.map +1 -1
  366. package/dist/workflows/failure.d.ts +1 -1
  367. package/dist/workflows/failure.d.ts.map +1 -1
  368. package/dist/workflows/index.d.ts +3 -2
  369. package/dist/workflows/index.d.ts.map +1 -1
  370. package/dist/workflows/index.js +53 -45
  371. package/dist/workflows/index.js.map +1 -1
  372. package/dist/workflows/types.d.ts +26 -11
  373. package/dist/workflows/types.d.ts.map +1 -1
  374. package/dist/workflows/validation.d.ts +7 -1
  375. package/dist/workflows/validation.d.ts.map +1 -1
  376. package/package.json +19 -4
  377. package/src/agents/adapters.ts +109 -115
  378. package/src/agents/authority.ts +214 -32
  379. package/src/agents/builders.ts +3 -50
  380. package/src/agents/context-compaction.ts +4 -0
  381. package/src/agents/dispatch.ts +59 -2
  382. package/src/agents/errors.ts +5 -2
  383. package/src/agents/execution.ts +53 -52
  384. package/src/agents/ids.ts +16 -1
  385. package/src/agents/index.ts +23 -11
  386. package/src/agents/message.ts +18 -9
  387. package/src/agents/model-loop.ts +1023 -0
  388. package/src/agents/reference.ts +7 -0
  389. package/src/agents/request.ts +141 -74
  390. package/src/agents/retired-config.ts +20 -0
  391. package/src/agents/streams.ts +45 -19
  392. package/src/agents/tool-catalog.ts +21 -0
  393. package/src/agents/tool-definition.ts +23 -0
  394. package/src/agents/types.ts +39 -81
  395. package/src/agents/validation.ts +34 -180
  396. package/src/ai-usage/execution.ts +196 -0
  397. package/src/ai-usage/index.ts +15 -0
  398. package/src/authorization/decision.ts +27 -10
  399. package/src/authorization/grant-kinds.ts +62 -15
  400. package/src/authorization/index.ts +1 -0
  401. package/src/authorization/resolve.ts +12 -5
  402. package/src/authorization/types.ts +7 -5
  403. package/src/bootstrap/discovery.ts +0 -3
  404. package/src/error-reporting/types.ts +4 -2
  405. package/src/errors/catalog.ts +8 -0
  406. package/src/execution/agent.ts +129 -22
  407. package/src/execution/authorization.ts +48 -18
  408. package/src/execution/request.ts +4 -1
  409. package/src/execution/types.ts +1 -1
  410. package/src/http/api-routes.ts +63 -0
  411. package/src/index.ts +36 -7
  412. package/src/json.ts +9 -0
  413. package/src/models/catalog.ts +137 -0
  414. package/src/models/definitions.ts +202 -0
  415. package/src/models/errors.ts +83 -0
  416. package/src/models/events.ts +198 -0
  417. package/src/models/index.ts +89 -71
  418. package/src/models/language-model.ts +143 -0
  419. package/src/models/messages.ts +78 -0
  420. package/src/models/pricing.ts +390 -0
  421. package/src/models/rate-card.ts +101 -0
  422. package/src/models/tools.ts +29 -0
  423. package/src/queues/in-memory.ts +5 -0
  424. package/src/queues/index.ts +11 -0
  425. package/src/queues/types.ts +20 -3
  426. package/src/runtime/create.ts +7 -5
  427. package/src/runtime/definitions.ts +2 -2
  428. package/src/runtime/host.ts +3 -2
  429. package/src/runtime/resolve-definitions.ts +13 -36
  430. package/src/runtime/sixb.ts +6 -8
  431. package/src/security/every.ts +0 -4
  432. package/src/security/grants.ts +55 -11
  433. package/src/security/index.ts +2 -0
  434. package/src/security/registry.ts +6 -5
  435. package/src/security/types.ts +15 -4
  436. package/src/security/validation.ts +30 -9
  437. package/src/storage/agents/errors.ts +1 -0
  438. package/src/storage/agents/in-memory.ts +121 -11
  439. package/src/storage/agents/index.ts +7 -0
  440. package/src/storage/agents/provider.ts +150 -6
  441. package/src/storage/agents/types.ts +73 -16
  442. package/src/storage/ai-cost/analytics.ts +63 -6
  443. package/src/storage/ai-cost/codec.ts +37 -12
  444. package/src/storage/ai-cost/groups.ts +248 -0
  445. package/src/storage/ai-cost/in-memory.ts +42 -0
  446. package/src/storage/ai-cost/index.ts +6 -0
  447. package/src/storage/ai-cost/provider.ts +7 -0
  448. package/src/storage/ai-cost/types.ts +76 -14
  449. package/src/storage/ai-cost/validation.ts +147 -17
  450. package/src/storage/ai-limits/enforcement.ts +68 -0
  451. package/src/storage/ai-limits/errors.ts +23 -0
  452. package/src/storage/ai-limits/in-memory.ts +671 -0
  453. package/src/storage/ai-limits/index.ts +31 -0
  454. package/src/storage/ai-limits/period.ts +11 -0
  455. package/src/storage/ai-limits/provider.ts +430 -0
  456. package/src/storage/ai-limits/types.ts +195 -0
  457. package/src/storage/ai-usage/in-memory.ts +13 -0
  458. package/src/storage/ai-usage/record.ts +17 -0
  459. package/src/storage/ai-usage/types.ts +6 -2
  460. package/src/storage/auth/errors.ts +6 -0
  461. package/src/storage/auth/in-memory/auth-storage.ts +69 -0
  462. package/src/storage/auth/in-memory/device-authorizations.ts +145 -0
  463. package/src/storage/auth/in-memory/shared.ts +7 -0
  464. package/src/storage/auth/index.ts +7 -0
  465. package/src/storage/auth/types.ts +73 -0
  466. package/src/storage/executions/run-link.ts +16 -6
  467. package/src/storage/executions/validation.ts +36 -6
  468. package/src/storage/in-memory/index.ts +48 -4
  469. package/src/storage/index.ts +51 -1
  470. package/src/storage/types.ts +37 -0
  471. package/src/storage/workflow-runs/in-memory.ts +3 -3
  472. package/src/storage/workflow-runs/provider.ts +2 -2
  473. package/src/storage/workflow-runs/types.ts +6 -3
  474. package/src/testing/agent-execution.ts +40 -28
  475. package/src/testing/agent-storage-contract.ts +249 -28
  476. package/src/testing/ai-cost-storage-contract.ts +96 -8
  477. package/src/testing/ai-limit-storage-contract.ts +1134 -0
  478. package/src/testing/ai-model-call-groups-contract.ts +353 -0
  479. package/src/testing/ai-usage-storage-contract.ts +31 -0
  480. package/src/testing/auth-storage-contract.ts +85 -0
  481. package/src/testing/execution-storage-contract.ts +2 -2
  482. package/src/testing/index.ts +10 -0
  483. package/src/testing/queues-contract.ts +36 -1
  484. package/src/workflows/agent-step-identity.ts +4 -0
  485. package/src/workflows/builders.ts +95 -9
  486. package/src/workflows/execution.ts +2 -2
  487. package/src/workflows/failure.ts +2 -2
  488. package/src/workflows/index.ts +3 -0
  489. package/src/workflows/types.ts +23 -11
  490. package/src/workflows/validation.ts +100 -7
  491. package/dist/chunk-1e8m6yn3.js.map +0 -37
  492. package/dist/chunk-1g8negke.js.map +0 -11
  493. package/dist/chunk-6gjqgd3d.js.map +0 -11
  494. package/dist/chunk-dm72y8wt.js.map +0 -10
  495. package/dist/chunk-drjqm1aa.js.map +0 -15
  496. package/dist/chunk-fe5ev6mr.js +0 -55
  497. package/dist/chunk-fe5ev6mr.js.map +0 -11
  498. package/dist/chunk-h9kxd41f.js.map +0 -11
  499. package/dist/chunk-hceck7dq.js +0 -137
  500. package/dist/chunk-hceck7dq.js.map +0 -10
  501. package/dist/chunk-n4spznws.js.map +0 -11
  502. package/dist/chunk-nva1xkjz.js.map +0 -46
  503. package/dist/chunk-t0jjkep3.js.map +0 -10
  504. package/dist/chunk-t8t39h7v.js.map +0 -10
  505. /package/dist/{chunk-zqysyfjt.js.map → chunk-08m3b6w8.js.map} +0 -0
  506. /package/dist/{chunk-xkthy56g.js.map → chunk-1kamz6j0.js.map} +0 -0
  507. /package/dist/{chunk-md8k0r54.js.map → chunk-3fqt22c4.js.map} +0 -0
  508. /package/dist/{chunk-z3zp0bj1.js.map → chunk-407j3msh.js.map} +0 -0
  509. /package/dist/{chunk-rhrbz7d4.js.map → chunk-4a849fr1.js.map} +0 -0
  510. /package/dist/{chunk-62c7t4jc.js.map → chunk-4nxeacx7.js.map} +0 -0
  511. /package/dist/{chunk-cy0n5dms.js.map → chunk-5jcdmjam.js.map} +0 -0
  512. /package/dist/{chunk-819wnjz8.js.map → chunk-64sr682n.js.map} +0 -0
  513. /package/dist/{chunk-x2yw73hy.js.map → chunk-7ds9620f.js.map} +0 -0
  514. /package/dist/{chunk-72q2y8hn.js.map → chunk-8tsf6dmc.js.map} +0 -0
  515. /package/dist/{chunk-nkbfrt0c.js.map → chunk-9aehf39w.js.map} +0 -0
  516. /package/dist/{chunk-ezake7g1.js.map → chunk-agsvg9ar.js.map} +0 -0
  517. /package/dist/{chunk-rnshztfq.js.map → chunk-d63tybny.js.map} +0 -0
  518. /package/dist/{chunk-vybf6pkp.js.map → chunk-dbc80ad7.js.map} +0 -0
  519. /package/dist/{chunk-4gz41why.js.map → chunk-dqn23610.js.map} +0 -0
  520. /package/dist/{chunk-tg5mee00.js.map → chunk-ha58tjtt.js.map} +0 -0
  521. /package/dist/{chunk-f6erf2vv.js.map → chunk-hdz94br2.js.map} +0 -0
  522. /package/dist/{chunk-dsrkgtnh.js.map → chunk-jq43kdvk.js.map} +0 -0
  523. /package/dist/{chunk-wtmzkcht.js.map → chunk-k34z5rvh.js.map} +0 -0
  524. /package/dist/{chunk-htq0qh7z.js.map → chunk-ka3a2ft3.js.map} +0 -0
  525. /package/dist/{chunk-znagycq7.js.map → chunk-kt81c11h.js.map} +0 -0
  526. /package/dist/{chunk-f2rt4vkh.js.map → chunk-n2w475r0.js.map} +0 -0
  527. /package/dist/{chunk-bhxaq2nn.js.map → chunk-qw9gvjv5.js.map} +0 -0
  528. /package/dist/{chunk-8gv5z0zm.js.map → chunk-rp1mvzb4.js.map} +0 -0
  529. /package/dist/{chunk-ghteq96b.js.map → chunk-s5y30bc9.js.map} +0 -0
  530. /package/dist/{chunk-a31h57d5.js.map → chunk-tn7xcs2n.js.map} +0 -0
  531. /package/dist/{chunk-e42bc6m3.js.map → chunk-vjjv9mrb.js.map} +0 -0
  532. /package/dist/{chunk-8b55ygje.js.map → chunk-w3e09qqk.js.map} +0 -0
  533. /package/dist/{chunk-ckxfnx7f.js.map → chunk-wjgm6jjt.js.map} +0 -0
  534. /package/dist/{chunk-3j7573mj.js.map → chunk-x0qhkqje.js.map} +0 -0
  535. /package/dist/{chunk-dysw7nsm.js.map → chunk-xdpwpkha.js.map} +0 -0
@@ -1,13 +1,13 @@
1
1
  import { principalsEqual, SYSTEM_PRINCIPAL } from "../auth"
2
2
  import { assertAuthorized, isAllowed } from "../authorization"
3
3
  import type { AuthorizablePrincipal, ExecutionContext } from "../execution"
4
+ import type { ModelCatalog } from "../models"
4
5
  import { resolveExecutionCosts } from "../runtime/ai-cost"
5
6
  import { resolveExecutionUsage } from "../runtime/ai-usage"
6
7
  import type { SixbRuntimeContext } from "../runtime/types"
7
- import type { SecurityDefinitionCatalog } from "../security"
8
8
  import type {
9
- AgentRunRecord,
10
9
  AgentThreadRecord,
10
+ ConversationAgentRunRecord,
11
11
  ListAgentRunsInput,
12
12
  ListAgentRunsResult,
13
13
  ListAgentThreadsInput,
@@ -23,17 +23,17 @@ import {
23
23
  requestAgentRun,
24
24
  retryAgentRun,
25
25
  } from "./request"
26
- import type { AgentDefinition } from "./types"
26
+ import { assertNoAgentSelector } from "./retired-config"
27
+ import type { AgentDescriptor } from "./types"
27
28
 
28
29
  export type ExecutionAgentRequestInput = Omit<RequestAgentRunInput, "principal">
29
30
  export type ListExecutionAgentThreadsInput = Omit<
30
31
  ListAgentThreadsInput,
31
- "projectId" | "agentIds" | "ownerPrincipal"
32
+ "projectId" | "ownerPrincipal"
32
33
  >
33
34
 
34
35
  export interface CreateExecutionAgentThreadInput {
35
36
  readonly id?: string
36
- readonly agentId: string
37
37
  readonly title?: string
38
38
  }
39
39
 
@@ -54,7 +54,7 @@ export interface AgentRunsRuntime {
54
54
  }
55
55
 
56
56
  /** Execution-facing run view with provenance resolved from the immutable execution ledger. */
57
- export interface AgentRunView extends AgentRunRecord {
57
+ export interface AgentRunView extends ConversationAgentRunRecord {
58
58
  readonly requestedBy?: AuthorizablePrincipal
59
59
  /** Derived from the model-call ledger; never persisted on the Agent run row. */
60
60
  readonly usage?: AiModelCallUsage
@@ -70,49 +70,51 @@ export interface ExecutionAgentRunResult extends Omit<RequestAgentRunResult, "ru
70
70
  readonly run: AgentRunView
71
71
  }
72
72
 
73
- export interface AgentsRuntime {
74
- list(): readonly AgentDefinition[]
75
- getById(agentId: string): AgentDefinition | null
73
+ export interface AgentRuntime {
74
+ /** Null when no language models are configured or the caller cannot run the Agent. */
75
+ get(): AgentDescriptor | null
76
76
  readonly threads: AgentThreadsRuntime
77
77
  readonly runs: AgentRunsRuntime
78
78
  }
79
79
 
80
- export function createAgentsRuntime(
80
+ export function createAgentRuntime(
81
81
  runtime: SixbRuntimeContext,
82
82
  execution: ExecutionContext,
83
- source: Pick<AgentsRuntime, "list" | "getById">,
84
- security: SecurityDefinitionCatalog
85
- ): AgentsRuntime {
83
+ models?: ModelCatalog
84
+ ): AgentRuntime {
86
85
  const principal = runtime.authorization?.principal ?? SYSTEM_PRINCIPAL
87
- const allowed = (agentId: string) =>
88
- isAllowed(runtime.authorization, { kind: "agent.run", agentId })
86
+ const allowed = () => isAllowed(runtime.authorization, { kind: "agent.run" })
89
87
 
90
- const getThread = async (threadId: string) => {
88
+ const getVisibleThreadRecord = async (threadId: string): Promise<AgentThreadRecord | null> => {
91
89
  const thread =
92
90
  (await runtime.storage.agents?.threads.getById({
93
91
  projectId: runtime.projectId,
94
92
  id: threadId,
95
93
  })) ?? null
96
- if (!thread || !allowed(thread.agentId)) return null
94
+ if (!thread || !allowed()) return null
97
95
  return runtime.authorization && !principalsEqual(principal, thread.ownerPrincipal)
98
96
  ? null
99
97
  : thread
100
98
  }
101
99
 
102
- const getAgent = (agentId: string) => {
103
- const agent = source.getById(agentId)
104
- return agent && allowed(agentId) ? agent : null
100
+ const getAgent = (): AgentDescriptor | null => {
101
+ const model = models?.language.default
102
+ if (!model || !allowed()) return null
103
+ return {
104
+ name: "Sixb",
105
+ model: { provider: model.provider, modelId: model.modelId },
106
+ }
105
107
  }
106
108
 
107
- const getVisibleRunRecord = async (runId: string): Promise<AgentRunRecord | null> => {
109
+ const getVisibleRunRecord = async (runId: string): Promise<ConversationAgentRunRecord | null> => {
108
110
  const run =
109
111
  (await runtime.storage.agents?.runs.getById({
110
112
  projectId: runtime.projectId,
111
113
  id: runId,
112
114
  })) ?? null
113
- if (!run) return null
114
- const thread = await getThread(run.threadId)
115
- return thread?.agentId === run.agentId ? run : null
115
+ if (!run || run.kind !== "conversation") return null
116
+ const thread = await getVisibleThreadRecord(run.threadId)
117
+ return thread ? run : null
116
118
  }
117
119
 
118
120
  const getRun = async (runId: string): Promise<AgentRunView | null> => {
@@ -121,13 +123,13 @@ export function createAgentsRuntime(
121
123
  }
122
124
 
123
125
  return {
124
- list: () => source.list().filter((agent) => allowed(agent.id)),
125
- getById: getAgent,
126
+ get: getAgent,
126
127
  threads: {
127
128
  create: async (input) => {
128
- const agent = getAgent(input.agentId)
129
+ assertNoAgentSelector(input)
130
+ const agent = getAgent()
129
131
  if (!agent) {
130
- throw new AgentRequestError("agent_not_found", `[Sixb] Unknown agent '${input.agentId}'.`)
132
+ throw new AgentRequestError("agent_not_found", "[Sixb] The project Agent is unavailable.")
131
133
  }
132
134
  const storage = runtime.storage.agents
133
135
  if (!storage) {
@@ -139,39 +141,37 @@ export function createAgentsRuntime(
139
141
  return storage.threads.create({
140
142
  id: input.id ?? createAgentThreadId(),
141
143
  projectId: runtime.projectId,
142
- agentId: agent.id,
143
144
  ownerPrincipal: principal,
144
145
  ...(input.title === undefined ? {} : { title: input.title }),
145
146
  })
146
147
  },
147
- getById: getThread,
148
- list: (input = {}) => {
148
+ getById: getVisibleThreadRecord,
149
+ list: async (input = {}) => {
150
+ assertNoAgentSelector(input)
149
151
  const storage = runtime.storage.agents
150
- if (!storage) return Promise.resolve({ threads: [], hasMore: false, total: 0 })
152
+ if (!storage || !allowed()) return { threads: [], hasMore: false, total: 0 }
151
153
  return storage.threads.list({
152
- projectId: runtime.projectId,
153
154
  ...input,
154
- agentIds: runtime.authorization
155
- ? [...runtime.authorization.grants["run:agent"]]
156
- : undefined,
155
+ projectId: runtime.projectId,
157
156
  ownerPrincipal: runtime.authorization ? principal : undefined,
158
157
  })
159
158
  },
160
159
  },
161
160
  runs: {
162
161
  request: async (input) => {
163
- const agent = source.getById(input.agentId)
162
+ assertNoAgentSelector(input)
163
+ const agent = getAgent()
164
164
  if (!agent) {
165
- throw new AgentRequestError("agent_not_found", `[Sixb] Unknown agent '${input.agentId}'.`)
165
+ throw new AgentRequestError("agent_not_found", "[Sixb] The project Agent is unavailable.")
166
166
  }
167
- assertAuthorized(runtime, { kind: "agent.run", agentId: agent.id })
168
- if (input.threadId && !(await getThread(input.threadId))) {
167
+ assertAuthorized(runtime, { kind: "agent.run" })
168
+ if (input.threadId && !(await getVisibleThreadRecord(input.threadId))) {
169
169
  throw new AgentRequestError(
170
170
  "thread_not_found",
171
171
  `[Sixb] Agent thread '${input.threadId}' not found.`
172
172
  )
173
173
  }
174
- const result = await requestAgentRun(runtime, execution, security, agent, {
174
+ const result = await requestAgentRun(runtime, execution, models?.language, {
175
175
  ...input,
176
176
  principal,
177
177
  })
@@ -182,28 +182,29 @@ export function createAgentsRuntime(
182
182
  if (!failedRun) {
183
183
  throw new AgentRequestError("run_not_found", `[Sixb] Agent run '${runId}' was not found.`)
184
184
  }
185
- const agent = getAgent(failedRun.agentId)
185
+ const agent = getAgent()
186
186
  if (!agent) {
187
- throw new AgentRequestError(
188
- "agent_not_found",
189
- `[Sixb] Unknown agent '${failedRun.agentId}'.`
190
- )
187
+ throw new AgentRequestError("agent_not_found", "[Sixb] The project Agent is unavailable.")
191
188
  }
192
- const result = await retryAgentRun(runtime, execution, security, agent, failedRun)
189
+ const result = await retryAgentRun(runtime, execution, models?.language, failedRun)
193
190
  return { ...result, run: await attachRunView(runtime, result.run) }
194
191
  },
195
192
  getById: getRun,
196
193
  listForThread: async (threadId, input = {}) => {
194
+ assertNoAgentSelector(input)
197
195
  const storage = runtime.storage.agents
198
- if (!storage || !(await getThread(threadId))) return null
196
+ if (!storage || !(await getVisibleThreadRecord(threadId))) return null
199
197
  const result = await storage.runs.list({
200
- projectId: runtime.projectId,
201
198
  ...input,
199
+ projectId: runtime.projectId,
202
200
  threadId,
203
201
  })
204
202
  return {
205
203
  ...result,
206
- runs: await attachRunViews(runtime, result.runs),
204
+ runs: await attachRunViews(
205
+ runtime,
206
+ result.runs.filter((run) => run.kind === "conversation")
207
+ ),
207
208
  }
208
209
  },
209
210
  },
@@ -212,7 +213,7 @@ export function createAgentsRuntime(
212
213
 
213
214
  async function attachRunView(
214
215
  runtime: SixbRuntimeContext,
215
- run: AgentRunRecord
216
+ run: ConversationAgentRunRecord
216
217
  ): Promise<AgentRunView> {
217
218
  const [view] = await attachRunViews(runtime, [run])
218
219
  if (!view) throw new Error(`[Sixb] Could not build Agent run '${run.id}' view.`)
@@ -221,7 +222,7 @@ async function attachRunView(
221
222
 
222
223
  async function attachRunViews(
223
224
  runtime: SixbRuntimeContext,
224
- runs: readonly AgentRunRecord[]
225
+ runs: readonly ConversationAgentRunRecord[]
225
226
  ): Promise<readonly AgentRunView[]> {
226
227
  const executionIds = runs.map((run) => run.executionId)
227
228
  const [executions, usages, costs] = await Promise.all([
package/src/agents/ids.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { randomUUID } from "node:crypto"
1
+ import { createHash, randomUUID } from "node:crypto"
2
2
 
3
3
  /**
4
4
  * Id helpers for agent persistence. Threads, the run id, and the user (trigger) message are minted
@@ -14,6 +14,21 @@ export function createAgentRunId(): string {
14
14
  return `agt_run_${randomUUID()}`
15
15
  }
16
16
 
17
+ /** One stable child identity per parent-selected spawn key. */
18
+ export function createSubagentRunId(parentRunId: string, spawnKey: string): string {
19
+ const digest = createHash("sha256")
20
+ .update(parentRunId)
21
+ .update("\0")
22
+ .update(spawnKey)
23
+ .digest("hex")
24
+ return `agt_run_child_${digest}`
25
+ }
26
+
27
+ /** Stable execution identity paired with a deterministic child run. */
28
+ export function createSubagentExecutionId(runId: string): string {
29
+ return `exec_${runId}`
30
+ }
31
+
17
32
  export function createAgentMessageId(): string {
18
33
  return `agt_msg_${randomUUID()}`
19
34
  }
@@ -18,7 +18,7 @@ export type {
18
18
  ToModelMessagesOptions,
19
19
  } from "./adapters"
20
20
  export {
21
- fromAiSdk,
21
+ fromUiMessage,
22
22
  omitUndefinedObjectProperties,
23
23
  toModelMessages,
24
24
  toUiMessage,
@@ -31,13 +31,14 @@ export {
31
31
  isAllowedAgentApiRequest,
32
32
  isValidAgentApiGatewayCapability,
33
33
  } from "./api-gateway"
34
- export type { AgentExecutionIdentity } from "./authority"
34
+ export type { AgentExecutionAuthorization, AgentExecutionIdentity } from "./authority"
35
35
  export {
36
36
  agentServiceAccountId,
37
- ensureAgentExecutionIdentity,
37
+ ensureManagedAgentExecutionIdentity,
38
38
  resolveAgentExecutionAuthorization,
39
+ resolveInheritedAgentExecutionAuthorization,
39
40
  } from "./authority"
40
- export { defineAgent, defineAgentTool } from "./builders"
41
+ export { defineAgentTool } from "./builders"
41
42
  export type {
42
43
  AgentContextEntryInput,
43
44
  AgentContextInput,
@@ -78,6 +79,8 @@ export type {
78
79
  export {
79
80
  agentRunQueueJobId,
80
81
  dispatchQueuedAgentRuns,
82
+ dispatchQueuedSubagentRuns,
83
+ subagentRunQueueJobId,
81
84
  workflowAgentNodeQueueJobId,
82
85
  } from "./dispatch"
83
86
  export {
@@ -94,6 +97,8 @@ export {
94
97
  createAgentRunExecutionToken,
95
98
  createAgentRunId,
96
99
  createAgentThreadId,
100
+ createSubagentExecutionId,
101
+ createSubagentRunId,
97
102
  } from "./ids"
98
103
  export {
99
104
  AGENT_MESSAGE_CONTENT_VERSION,
@@ -102,12 +107,21 @@ export {
102
107
  type AgentMessagePart,
103
108
  type AgentMessagePartType,
104
109
  type AgentMessageRole,
110
+ type AgentProviderStatePart,
105
111
  type AgentReasoningPart,
106
112
  type AgentStepStartPart,
107
113
  type AgentTextPart,
108
114
  type AgentToolCallPart,
109
115
  type AgentToolCallState,
110
116
  } from "./message"
117
+ export type {
118
+ ModelLoopResult,
119
+ PrepareModelStepInput,
120
+ PrepareModelStepResult,
121
+ RunModelLoopInput,
122
+ } from "./model-loop"
123
+ export { runModelLoop } from "./model-loop"
124
+ export { agent } from "./reference"
111
125
  export {
112
126
  type RequestAgentRunInput,
113
127
  type RequestAgentRunResult,
@@ -143,12 +157,13 @@ export type {
143
157
  ProjectAgentThreadModelContextInput,
144
158
  } from "./thread-context-projection"
145
159
  export { projectAgentThreadModelContext } from "./thread-context-projection"
160
+ export type { AgentToolCatalog } from "./tool-catalog"
146
161
  export { isAgentToolResult } from "./tool-result"
147
162
  export type {
148
- AgentContextConfig,
149
- AgentDefinition,
150
- AgentLoopConfig,
163
+ AgentDescriptor,
164
+ AgentReasoning,
151
165
  AgentReasoningLevel,
166
+ AgentReference,
152
167
  AgentToolArtifact,
153
168
  AgentToolArtifactPutInput,
154
169
  AgentToolArtifacts,
@@ -165,16 +180,13 @@ export type {
165
180
  AgentToolRunContext,
166
181
  AgentToolRunInfo,
167
182
  AgentToolTextContent,
168
- DefineAgentConfig,
183
+ AgentUsageReference,
169
184
  InferAgentToolInput,
170
185
  InferAgentToolInputSchema,
171
186
  } from "./types"
172
187
  export { AGENT_REASONING_LEVELS } from "./types"
173
188
  export {
174
189
  AGENT_RESERVED_TOOL_NAMES,
175
- isAgentDefinition,
176
190
  isAgentToolDefinition,
177
- validateAgentGroupReferences,
178
- validateAgentToolsAtStartup,
179
191
  validateAndNormalizeAgentToolInput,
180
192
  } from "./validation"
@@ -1,5 +1,6 @@
1
1
  import type { FileRef } from "../blob-storage"
2
2
  import type { JsonValue } from "../json"
3
+ import type { ProviderData } from "../models"
3
4
  import type { AgentContextPart } from "./context"
4
5
 
5
6
  /**
@@ -8,12 +9,12 @@ import type { AgentContextPart } from "./context"
8
9
  * self-describing wrapper: the storage row owns the message's identity, and `contentVersion` (a
9
10
  * column) versions the parts shape so it can be migrated.
10
11
  *
11
- * The part union is intentionally focused on what V1 agents actually produce (text, reasoning, step
12
+ * The part union is intentionally focused on what agent runs actually produce (text, reasoning, step
12
13
  * boundaries, tool calls). It is extensible: adding a part kind later is non-breaking. The adapter
13
- * `fromAiSdk` is total — it throws on any part it cannot model rather than dropping it silently,
14
+ * `fromUiMessage` is total — it throws on any part it cannot model rather than dropping it silently,
14
15
  * which both prevents data loss and signals exactly when the union must grow.
15
16
  */
16
- export const AGENT_MESSAGE_CONTENT_VERSION = 1 as const
17
+ export const AGENT_MESSAGE_CONTENT_VERSION = 2 as const
17
18
 
18
19
  export type AgentMessageRole = "system" | "user" | "assistant"
19
20
 
@@ -22,7 +23,7 @@ export interface AgentTextPart {
22
23
  readonly type: "text"
23
24
  readonly text: string
24
25
  /** Provider passthrough (kept because some providers require it on the next turn). */
25
- readonly providerMetadata?: JsonValue
26
+ readonly providerMetadata?: ProviderData
26
27
  }
27
28
 
28
29
  /**
@@ -32,7 +33,7 @@ export interface AgentTextPart {
32
33
  export interface AgentReasoningPart {
33
34
  readonly type: "reasoning"
34
35
  readonly text: string
35
- readonly providerMetadata?: JsonValue
36
+ readonly providerMetadata?: ProviderData
36
37
  }
37
38
 
38
39
  /** A step boundary between assistant loop iterations. */
@@ -45,19 +46,26 @@ export interface AgentFilePart {
45
46
  readonly type: "file"
46
47
  readonly fileRef: FileRef
47
48
  /** Provider passthrough for future model-specific file handling. */
48
- readonly providerMetadata?: JsonValue
49
+ readonly providerMetadata?: ProviderData
49
50
  }
50
51
 
51
52
  interface AgentToolCallBase {
52
53
  readonly type: "tool-call"
53
54
  readonly toolCallId: string
54
55
  readonly toolName: string
55
- /** `true` when reconstructed from an SDK `dynamic-tool` part (vs a static `tool-${name}` part). */
56
+ /** `true` when reconstructed from a dynamic tool part (vs a static `tool-${name}` part). */
56
57
  readonly dynamic?: boolean
57
- /** `true` when the provider executed the tool inline (steers model projection). V1 = `false`. */
58
+ /** `true` when the provider executed the tool inline (steers model projection). */
58
59
  readonly providerExecuted?: boolean
59
60
  readonly input: JsonValue
60
- readonly providerMetadata?: JsonValue
61
+ readonly providerMetadata?: ProviderData
62
+ }
63
+
64
+ /** Ordered, hidden provider state required to replay a model response losslessly. */
65
+ export interface AgentProviderStatePart {
66
+ readonly type: "provider-state"
67
+ readonly providerId: string
68
+ readonly data: JsonValue
61
69
  }
62
70
 
63
71
  /**
@@ -78,6 +86,7 @@ export type AgentMessagePart =
78
86
  | AgentFilePart
79
87
  | AgentContextPart
80
88
  | AgentToolCallPart
89
+ | AgentProviderStatePart
81
90
 
82
91
  export type AgentMessagePartType = AgentMessagePart["type"]
83
92
  export type AgentToolCallState = AgentToolCallPart["state"]