@vellumai/assistant 0.4.54 → 0.4.56

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 (1483) hide show
  1. package/ARCHITECTURE.md +157 -163
  2. package/Dockerfile +6 -9
  3. package/README.md +1 -1
  4. package/bun.lock +145 -112
  5. package/docs/architecture/integrations.md +22 -22
  6. package/docs/architecture/memory.md +50 -50
  7. package/docs/architecture/security.md +2 -2
  8. package/docs/credential-execution-service.md +411 -0
  9. package/knip.json +5 -1
  10. package/node_modules/@vellumai/ces-contracts/bun.lock +29 -0
  11. package/node_modules/@vellumai/ces-contracts/package.json +24 -0
  12. package/node_modules/@vellumai/ces-contracts/src/__tests__/contracts.test.ts +293 -0
  13. package/node_modules/@vellumai/ces-contracts/src/__tests__/grants.test.ts +686 -0
  14. package/node_modules/@vellumai/ces-contracts/src/error.ts +25 -0
  15. package/node_modules/@vellumai/ces-contracts/src/grants.ts +184 -0
  16. package/node_modules/@vellumai/ces-contracts/src/handles.ts +213 -0
  17. package/node_modules/@vellumai/ces-contracts/src/index.ts +147 -0
  18. package/node_modules/@vellumai/ces-contracts/src/rendering.ts +135 -0
  19. package/node_modules/@vellumai/ces-contracts/src/rpc.ts +511 -0
  20. package/node_modules/@vellumai/ces-contracts/tsconfig.json +20 -0
  21. package/node_modules/@vellumai/credential-storage/bun.lock +24 -0
  22. package/node_modules/@vellumai/credential-storage/package.json +17 -0
  23. package/node_modules/@vellumai/credential-storage/src/__tests__/package-boundary.test.ts +151 -0
  24. package/node_modules/@vellumai/credential-storage/src/index.ts +213 -0
  25. package/node_modules/@vellumai/credential-storage/src/oauth-runtime.ts +340 -0
  26. package/node_modules/@vellumai/credential-storage/src/static-credentials.ts +365 -0
  27. package/node_modules/@vellumai/credential-storage/tsconfig.json +20 -0
  28. package/node_modules/@vellumai/egress-proxy/bun.lock +24 -0
  29. package/node_modules/@vellumai/egress-proxy/package.json +17 -0
  30. package/node_modules/@vellumai/egress-proxy/src/__tests__/package-boundary.test.ts +131 -0
  31. package/node_modules/@vellumai/egress-proxy/src/index.ts +54 -0
  32. package/node_modules/@vellumai/egress-proxy/src/session-core.ts +466 -0
  33. package/node_modules/@vellumai/egress-proxy/src/types.ts +227 -0
  34. package/node_modules/@vellumai/egress-proxy/tsconfig.json +20 -0
  35. package/node_modules/zod/LICENSE +21 -0
  36. package/node_modules/zod/README.md +208 -0
  37. package/node_modules/zod/index.cjs +33 -0
  38. package/node_modules/zod/index.d.cts +4 -0
  39. package/node_modules/zod/index.d.ts +4 -0
  40. package/node_modules/zod/index.js +4 -0
  41. package/node_modules/zod/locales/index.cjs +17 -0
  42. package/node_modules/zod/locales/index.d.cts +1 -0
  43. package/node_modules/zod/locales/index.d.ts +1 -0
  44. package/node_modules/zod/locales/index.js +1 -0
  45. package/node_modules/zod/locales/package.json +6 -0
  46. package/node_modules/zod/mini/index.cjs +32 -0
  47. package/node_modules/zod/mini/index.d.cts +3 -0
  48. package/node_modules/zod/mini/index.d.ts +3 -0
  49. package/node_modules/zod/mini/index.js +3 -0
  50. package/node_modules/zod/mini/package.json +6 -0
  51. package/node_modules/zod/package.json +135 -0
  52. package/node_modules/zod/src/index.ts +4 -0
  53. package/node_modules/zod/src/locales/index.ts +1 -0
  54. package/node_modules/zod/src/mini/index.ts +3 -0
  55. package/node_modules/zod/src/v3/ZodError.ts +330 -0
  56. package/node_modules/zod/src/v3/benchmarks/datetime.ts +58 -0
  57. package/node_modules/zod/src/v3/benchmarks/discriminatedUnion.ts +80 -0
  58. package/node_modules/zod/src/v3/benchmarks/index.ts +59 -0
  59. package/node_modules/zod/src/v3/benchmarks/ipv4.ts +57 -0
  60. package/node_modules/zod/src/v3/benchmarks/object.ts +69 -0
  61. package/node_modules/zod/src/v3/benchmarks/primitives.ts +162 -0
  62. package/node_modules/zod/src/v3/benchmarks/realworld.ts +63 -0
  63. package/node_modules/zod/src/v3/benchmarks/string.ts +55 -0
  64. package/node_modules/zod/src/v3/benchmarks/union.ts +80 -0
  65. package/node_modules/zod/src/v3/errors.ts +13 -0
  66. package/node_modules/zod/src/v3/external.ts +6 -0
  67. package/node_modules/zod/src/v3/helpers/enumUtil.ts +17 -0
  68. package/node_modules/zod/src/v3/helpers/errorUtil.ts +8 -0
  69. package/node_modules/zod/src/v3/helpers/parseUtil.ts +176 -0
  70. package/node_modules/zod/src/v3/helpers/partialUtil.ts +34 -0
  71. package/node_modules/zod/src/v3/helpers/typeAliases.ts +2 -0
  72. package/node_modules/zod/src/v3/helpers/util.ts +224 -0
  73. package/node_modules/zod/src/v3/index.ts +4 -0
  74. package/node_modules/zod/src/v3/locales/en.ts +124 -0
  75. package/node_modules/zod/src/v3/standard-schema.ts +113 -0
  76. package/node_modules/zod/src/v3/tests/Mocker.ts +54 -0
  77. package/node_modules/zod/src/v3/tests/all-errors.test.ts +157 -0
  78. package/node_modules/zod/src/v3/tests/anyunknown.test.ts +28 -0
  79. package/node_modules/zod/src/v3/tests/array.test.ts +71 -0
  80. package/node_modules/zod/src/v3/tests/async-parsing.test.ts +388 -0
  81. package/node_modules/zod/src/v3/tests/async-refinements.test.ts +46 -0
  82. package/node_modules/zod/src/v3/tests/base.test.ts +29 -0
  83. package/node_modules/zod/src/v3/tests/bigint.test.ts +55 -0
  84. package/node_modules/zod/src/v3/tests/branded.test.ts +53 -0
  85. package/node_modules/zod/src/v3/tests/catch.test.ts +220 -0
  86. package/node_modules/zod/src/v3/tests/coerce.test.ts +133 -0
  87. package/node_modules/zod/src/v3/tests/complex.test.ts +70 -0
  88. package/node_modules/zod/src/v3/tests/custom.test.ts +31 -0
  89. package/node_modules/zod/src/v3/tests/date.test.ts +32 -0
  90. package/node_modules/zod/src/v3/tests/deepmasking.test.ts +186 -0
  91. package/node_modules/zod/src/v3/tests/default.test.ts +112 -0
  92. package/node_modules/zod/src/v3/tests/description.test.ts +33 -0
  93. package/node_modules/zod/src/v3/tests/discriminated-unions.test.ts +315 -0
  94. package/node_modules/zod/src/v3/tests/enum.test.ts +80 -0
  95. package/node_modules/zod/src/v3/tests/error.test.ts +551 -0
  96. package/node_modules/zod/src/v3/tests/firstparty.test.ts +87 -0
  97. package/node_modules/zod/src/v3/tests/firstpartyschematypes.test.ts +21 -0
  98. package/node_modules/zod/src/v3/tests/function.test.ts +261 -0
  99. package/node_modules/zod/src/v3/tests/generics.test.ts +48 -0
  100. package/node_modules/zod/src/v3/tests/instanceof.test.ts +37 -0
  101. package/node_modules/zod/src/v3/tests/intersection.test.ts +110 -0
  102. package/node_modules/zod/src/v3/tests/language-server.source.ts +76 -0
  103. package/node_modules/zod/src/v3/tests/language-server.test.ts +207 -0
  104. package/node_modules/zod/src/v3/tests/literal.test.ts +36 -0
  105. package/node_modules/zod/src/v3/tests/map.test.ts +110 -0
  106. package/node_modules/zod/src/v3/tests/masking.test.ts +4 -0
  107. package/node_modules/zod/src/v3/tests/mocker.test.ts +19 -0
  108. package/node_modules/zod/src/v3/tests/nan.test.ts +24 -0
  109. package/node_modules/zod/src/v3/tests/nativeEnum.test.ts +87 -0
  110. package/node_modules/zod/src/v3/tests/nullable.test.ts +42 -0
  111. package/node_modules/zod/src/v3/tests/number.test.ts +176 -0
  112. package/node_modules/zod/src/v3/tests/object-augmentation.test.ts +29 -0
  113. package/node_modules/zod/src/v3/tests/object-in-es5-env.test.ts +29 -0
  114. package/node_modules/zod/src/v3/tests/object.test.ts +434 -0
  115. package/node_modules/zod/src/v3/tests/optional.test.ts +42 -0
  116. package/node_modules/zod/src/v3/tests/parseUtil.test.ts +23 -0
  117. package/node_modules/zod/src/v3/tests/parser.test.ts +41 -0
  118. package/node_modules/zod/src/v3/tests/partials.test.ts +243 -0
  119. package/node_modules/zod/src/v3/tests/pickomit.test.ts +111 -0
  120. package/node_modules/zod/src/v3/tests/pipeline.test.ts +29 -0
  121. package/node_modules/zod/src/v3/tests/preprocess.test.ts +186 -0
  122. package/node_modules/zod/src/v3/tests/primitive.test.ts +440 -0
  123. package/node_modules/zod/src/v3/tests/promise.test.ts +90 -0
  124. package/node_modules/zod/src/v3/tests/readonly.test.ts +194 -0
  125. package/node_modules/zod/src/v3/tests/record.test.ts +171 -0
  126. package/node_modules/zod/src/v3/tests/recursive.test.ts +197 -0
  127. package/node_modules/zod/src/v3/tests/refine.test.ts +313 -0
  128. package/node_modules/zod/src/v3/tests/safeparse.test.ts +27 -0
  129. package/node_modules/zod/src/v3/tests/set.test.ts +142 -0
  130. package/node_modules/zod/src/v3/tests/standard-schema.test.ts +83 -0
  131. package/node_modules/zod/src/v3/tests/string.test.ts +916 -0
  132. package/node_modules/zod/src/v3/tests/transformer.test.ts +233 -0
  133. package/node_modules/zod/src/v3/tests/tuple.test.ts +90 -0
  134. package/node_modules/zod/src/v3/tests/unions.test.ts +57 -0
  135. package/node_modules/zod/src/v3/tests/validations.test.ts +133 -0
  136. package/node_modules/zod/src/v3/tests/void.test.ts +15 -0
  137. package/node_modules/zod/src/v3/types.ts +5138 -0
  138. package/node_modules/zod/src/v4/classic/checks.ts +32 -0
  139. package/node_modules/zod/src/v4/classic/coerce.ts +27 -0
  140. package/node_modules/zod/src/v4/classic/compat.ts +70 -0
  141. package/node_modules/zod/src/v4/classic/errors.ts +82 -0
  142. package/node_modules/zod/src/v4/classic/external.ts +51 -0
  143. package/node_modules/zod/src/v4/classic/from-json-schema.ts +643 -0
  144. package/node_modules/zod/src/v4/classic/index.ts +5 -0
  145. package/node_modules/zod/src/v4/classic/iso.ts +90 -0
  146. package/node_modules/zod/src/v4/classic/parse.ts +82 -0
  147. package/node_modules/zod/src/v4/classic/schemas.ts +2409 -0
  148. package/node_modules/zod/src/v4/classic/tests/anyunknown.test.ts +26 -0
  149. package/node_modules/zod/src/v4/classic/tests/apply.test.ts +59 -0
  150. package/node_modules/zod/src/v4/classic/tests/array.test.ts +264 -0
  151. package/node_modules/zod/src/v4/classic/tests/assignability.test.ts +210 -0
  152. package/node_modules/zod/src/v4/classic/tests/async-parsing.test.ts +381 -0
  153. package/node_modules/zod/src/v4/classic/tests/async-refinements.test.ts +68 -0
  154. package/node_modules/zod/src/v4/classic/tests/base.test.ts +7 -0
  155. package/node_modules/zod/src/v4/classic/tests/bigint.test.ts +54 -0
  156. package/node_modules/zod/src/v4/classic/tests/brand.test.ts +106 -0
  157. package/node_modules/zod/src/v4/classic/tests/catch.test.ts +276 -0
  158. package/node_modules/zod/src/v4/classic/tests/coalesce.test.ts +20 -0
  159. package/node_modules/zod/src/v4/classic/tests/codec-examples.test.ts +573 -0
  160. package/node_modules/zod/src/v4/classic/tests/codec.test.ts +562 -0
  161. package/node_modules/zod/src/v4/classic/tests/coerce.test.ts +160 -0
  162. package/node_modules/zod/src/v4/classic/tests/continuability.test.ts +374 -0
  163. package/node_modules/zod/src/v4/classic/tests/custom.test.ts +40 -0
  164. package/node_modules/zod/src/v4/classic/tests/date.test.ts +62 -0
  165. package/node_modules/zod/src/v4/classic/tests/datetime.test.ts +302 -0
  166. package/node_modules/zod/src/v4/classic/tests/default.test.ts +365 -0
  167. package/node_modules/zod/src/v4/classic/tests/describe-meta-checks.test.ts +27 -0
  168. package/node_modules/zod/src/v4/classic/tests/description.test.ts +32 -0
  169. package/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +661 -0
  170. package/node_modules/zod/src/v4/classic/tests/enum.test.ts +285 -0
  171. package/node_modules/zod/src/v4/classic/tests/error-utils.test.ts +595 -0
  172. package/node_modules/zod/src/v4/classic/tests/error.test.ts +711 -0
  173. package/node_modules/zod/src/v4/classic/tests/file.test.ts +96 -0
  174. package/node_modules/zod/src/v4/classic/tests/firstparty.test.ts +179 -0
  175. package/node_modules/zod/src/v4/classic/tests/fix-json-issue.test.ts +26 -0
  176. package/node_modules/zod/src/v4/classic/tests/from-json-schema.test.ts +734 -0
  177. package/node_modules/zod/src/v4/classic/tests/function.test.ts +360 -0
  178. package/node_modules/zod/src/v4/classic/tests/generics.test.ts +72 -0
  179. package/node_modules/zod/src/v4/classic/tests/hash.test.ts +68 -0
  180. package/node_modules/zod/src/v4/classic/tests/index.test.ts +939 -0
  181. package/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +60 -0
  182. package/node_modules/zod/src/v4/classic/tests/intersection.test.ts +198 -0
  183. package/node_modules/zod/src/v4/classic/tests/json.test.ts +109 -0
  184. package/node_modules/zod/src/v4/classic/tests/lazy.test.ts +227 -0
  185. package/node_modules/zod/src/v4/classic/tests/literal.test.ts +117 -0
  186. package/node_modules/zod/src/v4/classic/tests/map.test.ts +330 -0
  187. package/node_modules/zod/src/v4/classic/tests/nan.test.ts +21 -0
  188. package/node_modules/zod/src/v4/classic/tests/nested-refine.test.ts +168 -0
  189. package/node_modules/zod/src/v4/classic/tests/nonoptional.test.ts +101 -0
  190. package/node_modules/zod/src/v4/classic/tests/nullable.test.ts +22 -0
  191. package/node_modules/zod/src/v4/classic/tests/number.test.ts +270 -0
  192. package/node_modules/zod/src/v4/classic/tests/object.test.ts +640 -0
  193. package/node_modules/zod/src/v4/classic/tests/optional.test.ts +223 -0
  194. package/node_modules/zod/src/v4/classic/tests/partial.test.ts +427 -0
  195. package/node_modules/zod/src/v4/classic/tests/pickomit.test.ts +211 -0
  196. package/node_modules/zod/src/v4/classic/tests/pipe.test.ts +101 -0
  197. package/node_modules/zod/src/v4/classic/tests/prefault.test.ts +74 -0
  198. package/node_modules/zod/src/v4/classic/tests/preprocess.test.ts +282 -0
  199. package/node_modules/zod/src/v4/classic/tests/primitive.test.ts +175 -0
  200. package/node_modules/zod/src/v4/classic/tests/promise.test.ts +81 -0
  201. package/node_modules/zod/src/v4/classic/tests/prototypes.test.ts +23 -0
  202. package/node_modules/zod/src/v4/classic/tests/readonly.test.ts +252 -0
  203. package/node_modules/zod/src/v4/classic/tests/record.test.ts +632 -0
  204. package/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +582 -0
  205. package/node_modules/zod/src/v4/classic/tests/refine.test.ts +570 -0
  206. package/node_modules/zod/src/v4/classic/tests/registries.test.ts +243 -0
  207. package/node_modules/zod/src/v4/classic/tests/set.test.ts +181 -0
  208. package/node_modules/zod/src/v4/classic/tests/standard-schema.test.ts +134 -0
  209. package/node_modules/zod/src/v4/classic/tests/string-formats.test.ts +125 -0
  210. package/node_modules/zod/src/v4/classic/tests/string.test.ts +1175 -0
  211. package/node_modules/zod/src/v4/classic/tests/stringbool.test.ts +106 -0
  212. package/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +771 -0
  213. package/node_modules/zod/src/v4/classic/tests/to-json-schema-methods.test.ts +438 -0
  214. package/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +2990 -0
  215. package/node_modules/zod/src/v4/classic/tests/transform.test.ts +361 -0
  216. package/node_modules/zod/src/v4/classic/tests/tuple.test.ts +183 -0
  217. package/node_modules/zod/src/v4/classic/tests/union.test.ts +219 -0
  218. package/node_modules/zod/src/v4/classic/tests/url.test.ts +13 -0
  219. package/node_modules/zod/src/v4/classic/tests/validations.test.ts +283 -0
  220. package/node_modules/zod/src/v4/classic/tests/void.test.ts +12 -0
  221. package/node_modules/zod/src/v4/core/api.ts +1798 -0
  222. package/node_modules/zod/src/v4/core/checks.ts +1293 -0
  223. package/node_modules/zod/src/v4/core/config.ts +15 -0
  224. package/node_modules/zod/src/v4/core/core.ts +138 -0
  225. package/node_modules/zod/src/v4/core/doc.ts +44 -0
  226. package/node_modules/zod/src/v4/core/errors.ts +448 -0
  227. package/node_modules/zod/src/v4/core/index.ts +16 -0
  228. package/node_modules/zod/src/v4/core/json-schema-generator.ts +126 -0
  229. package/node_modules/zod/src/v4/core/json-schema-processors.ts +667 -0
  230. package/node_modules/zod/src/v4/core/json-schema.ts +147 -0
  231. package/node_modules/zod/src/v4/core/parse.ts +195 -0
  232. package/node_modules/zod/src/v4/core/regexes.ts +183 -0
  233. package/node_modules/zod/src/v4/core/registries.ts +105 -0
  234. package/node_modules/zod/src/v4/core/schemas.ts +4538 -0
  235. package/node_modules/zod/src/v4/core/standard-schema.ts +159 -0
  236. package/node_modules/zod/src/v4/core/tests/extend.test.ts +59 -0
  237. package/node_modules/zod/src/v4/core/tests/index.test.ts +46 -0
  238. package/node_modules/zod/src/v4/core/tests/locales/be.test.ts +124 -0
  239. package/node_modules/zod/src/v4/core/tests/locales/en.test.ts +22 -0
  240. package/node_modules/zod/src/v4/core/tests/locales/es.test.ts +181 -0
  241. package/node_modules/zod/src/v4/core/tests/locales/he.test.ts +379 -0
  242. package/node_modules/zod/src/v4/core/tests/locales/nl.test.ts +46 -0
  243. package/node_modules/zod/src/v4/core/tests/locales/ru.test.ts +128 -0
  244. package/node_modules/zod/src/v4/core/tests/locales/tr.test.ts +69 -0
  245. package/node_modules/zod/src/v4/core/tests/locales/uz.test.ts +83 -0
  246. package/node_modules/zod/src/v4/core/tests/record-constructor.test.ts +67 -0
  247. package/node_modules/zod/src/v4/core/tests/recursive-tuples.test.ts +45 -0
  248. package/node_modules/zod/src/v4/core/to-json-schema.ts +613 -0
  249. package/node_modules/zod/src/v4/core/util.ts +966 -0
  250. package/node_modules/zod/src/v4/core/versions.ts +5 -0
  251. package/node_modules/zod/src/v4/core/zsf.ts +323 -0
  252. package/node_modules/zod/src/v4/index.ts +4 -0
  253. package/node_modules/zod/src/v4/locales/ar.ts +115 -0
  254. package/node_modules/zod/src/v4/locales/az.ts +111 -0
  255. package/node_modules/zod/src/v4/locales/be.ts +176 -0
  256. package/node_modules/zod/src/v4/locales/bg.ts +128 -0
  257. package/node_modules/zod/src/v4/locales/ca.ts +116 -0
  258. package/node_modules/zod/src/v4/locales/cs.ts +118 -0
  259. package/node_modules/zod/src/v4/locales/da.ts +123 -0
  260. package/node_modules/zod/src/v4/locales/de.ts +116 -0
  261. package/node_modules/zod/src/v4/locales/en.ts +119 -0
  262. package/node_modules/zod/src/v4/locales/eo.ts +118 -0
  263. package/node_modules/zod/src/v4/locales/es.ts +141 -0
  264. package/node_modules/zod/src/v4/locales/fa.ts +126 -0
  265. package/node_modules/zod/src/v4/locales/fi.ts +121 -0
  266. package/node_modules/zod/src/v4/locales/fr-CA.ts +116 -0
  267. package/node_modules/zod/src/v4/locales/fr.ts +116 -0
  268. package/node_modules/zod/src/v4/locales/he.ts +246 -0
  269. package/node_modules/zod/src/v4/locales/hu.ts +117 -0
  270. package/node_modules/zod/src/v4/locales/hy.ts +164 -0
  271. package/node_modules/zod/src/v4/locales/id.ts +115 -0
  272. package/node_modules/zod/src/v4/locales/index.ts +49 -0
  273. package/node_modules/zod/src/v4/locales/is.ts +119 -0
  274. package/node_modules/zod/src/v4/locales/it.ts +116 -0
  275. package/node_modules/zod/src/v4/locales/ja.ts +114 -0
  276. package/node_modules/zod/src/v4/locales/ka.ts +123 -0
  277. package/node_modules/zod/src/v4/locales/kh.ts +7 -0
  278. package/node_modules/zod/src/v4/locales/km.ts +119 -0
  279. package/node_modules/zod/src/v4/locales/ko.ts +121 -0
  280. package/node_modules/zod/src/v4/locales/lt.ts +239 -0
  281. package/node_modules/zod/src/v4/locales/mk.ts +118 -0
  282. package/node_modules/zod/src/v4/locales/ms.ts +115 -0
  283. package/node_modules/zod/src/v4/locales/nl.ts +121 -0
  284. package/node_modules/zod/src/v4/locales/no.ts +116 -0
  285. package/node_modules/zod/src/v4/locales/ota.ts +117 -0
  286. package/node_modules/zod/src/v4/locales/pl.ts +118 -0
  287. package/node_modules/zod/src/v4/locales/ps.ts +126 -0
  288. package/node_modules/zod/src/v4/locales/pt.ts +116 -0
  289. package/node_modules/zod/src/v4/locales/ru.ts +176 -0
  290. package/node_modules/zod/src/v4/locales/sl.ts +118 -0
  291. package/node_modules/zod/src/v4/locales/sv.ts +119 -0
  292. package/node_modules/zod/src/v4/locales/ta.ts +118 -0
  293. package/node_modules/zod/src/v4/locales/th.ts +119 -0
  294. package/node_modules/zod/src/v4/locales/tr.ts +111 -0
  295. package/node_modules/zod/src/v4/locales/ua.ts +7 -0
  296. package/node_modules/zod/src/v4/locales/uk.ts +117 -0
  297. package/node_modules/zod/src/v4/locales/ur.ts +119 -0
  298. package/node_modules/zod/src/v4/locales/uz.ts +116 -0
  299. package/node_modules/zod/src/v4/locales/vi.ts +117 -0
  300. package/node_modules/zod/src/v4/locales/yo.ts +124 -0
  301. package/node_modules/zod/src/v4/locales/zh-CN.ts +116 -0
  302. package/node_modules/zod/src/v4/locales/zh-TW.ts +115 -0
  303. package/node_modules/zod/src/v4/mini/checks.ts +32 -0
  304. package/node_modules/zod/src/v4/mini/coerce.ts +27 -0
  305. package/node_modules/zod/src/v4/mini/external.ts +40 -0
  306. package/node_modules/zod/src/v4/mini/index.ts +3 -0
  307. package/node_modules/zod/src/v4/mini/iso.ts +66 -0
  308. package/node_modules/zod/src/v4/mini/parse.ts +14 -0
  309. package/node_modules/zod/src/v4/mini/schemas.ts +1916 -0
  310. package/node_modules/zod/src/v4/mini/tests/apply.test.ts +24 -0
  311. package/node_modules/zod/src/v4/mini/tests/assignability.test.ts +129 -0
  312. package/node_modules/zod/src/v4/mini/tests/brand.test.ts +94 -0
  313. package/node_modules/zod/src/v4/mini/tests/checks.test.ts +144 -0
  314. package/node_modules/zod/src/v4/mini/tests/codec.test.ts +529 -0
  315. package/node_modules/zod/src/v4/mini/tests/computed.test.ts +36 -0
  316. package/node_modules/zod/src/v4/mini/tests/error.test.ts +22 -0
  317. package/node_modules/zod/src/v4/mini/tests/functions.test.ts +5 -0
  318. package/node_modules/zod/src/v4/mini/tests/index.test.ts +963 -0
  319. package/node_modules/zod/src/v4/mini/tests/number.test.ts +95 -0
  320. package/node_modules/zod/src/v4/mini/tests/object.test.ts +227 -0
  321. package/node_modules/zod/src/v4/mini/tests/prototypes.test.ts +43 -0
  322. package/node_modules/zod/src/v4/mini/tests/recursive-types.test.ts +275 -0
  323. package/node_modules/zod/src/v4/mini/tests/standard-schema.test.ts +50 -0
  324. package/node_modules/zod/src/v4/mini/tests/string.test.ts +347 -0
  325. package/node_modules/zod/src/v4-mini/index.ts +3 -0
  326. package/node_modules/zod/v3/ZodError.cjs +138 -0
  327. package/node_modules/zod/v3/ZodError.d.cts +164 -0
  328. package/node_modules/zod/v3/ZodError.d.ts +164 -0
  329. package/node_modules/zod/v3/ZodError.js +133 -0
  330. package/node_modules/zod/v3/errors.cjs +17 -0
  331. package/node_modules/zod/v3/errors.d.cts +5 -0
  332. package/node_modules/zod/v3/errors.d.ts +5 -0
  333. package/node_modules/zod/v3/errors.js +9 -0
  334. package/node_modules/zod/v3/external.cjs +22 -0
  335. package/node_modules/zod/v3/external.d.cts +6 -0
  336. package/node_modules/zod/v3/external.d.ts +6 -0
  337. package/node_modules/zod/v3/external.js +6 -0
  338. package/node_modules/zod/v3/helpers/enumUtil.cjs +2 -0
  339. package/node_modules/zod/v3/helpers/enumUtil.d.cts +8 -0
  340. package/node_modules/zod/v3/helpers/enumUtil.d.ts +8 -0
  341. package/node_modules/zod/v3/helpers/enumUtil.js +1 -0
  342. package/node_modules/zod/v3/helpers/errorUtil.cjs +9 -0
  343. package/node_modules/zod/v3/helpers/errorUtil.d.cts +9 -0
  344. package/node_modules/zod/v3/helpers/errorUtil.d.ts +9 -0
  345. package/node_modules/zod/v3/helpers/errorUtil.js +6 -0
  346. package/node_modules/zod/v3/helpers/parseUtil.cjs +124 -0
  347. package/node_modules/zod/v3/helpers/parseUtil.d.cts +78 -0
  348. package/node_modules/zod/v3/helpers/parseUtil.d.ts +78 -0
  349. package/node_modules/zod/v3/helpers/parseUtil.js +109 -0
  350. package/node_modules/zod/v3/helpers/partialUtil.cjs +2 -0
  351. package/node_modules/zod/v3/helpers/partialUtil.d.cts +8 -0
  352. package/node_modules/zod/v3/helpers/partialUtil.d.ts +8 -0
  353. package/node_modules/zod/v3/helpers/partialUtil.js +1 -0
  354. package/node_modules/zod/v3/helpers/typeAliases.cjs +2 -0
  355. package/node_modules/zod/v3/helpers/typeAliases.d.cts +2 -0
  356. package/node_modules/zod/v3/helpers/typeAliases.d.ts +2 -0
  357. package/node_modules/zod/v3/helpers/typeAliases.js +1 -0
  358. package/node_modules/zod/v3/helpers/util.cjs +137 -0
  359. package/node_modules/zod/v3/helpers/util.d.cts +85 -0
  360. package/node_modules/zod/v3/helpers/util.d.ts +85 -0
  361. package/node_modules/zod/v3/helpers/util.js +133 -0
  362. package/node_modules/zod/v3/index.cjs +33 -0
  363. package/node_modules/zod/v3/index.d.cts +4 -0
  364. package/node_modules/zod/v3/index.d.ts +4 -0
  365. package/node_modules/zod/v3/index.js +4 -0
  366. package/node_modules/zod/v3/locales/en.cjs +112 -0
  367. package/node_modules/zod/v3/locales/en.d.cts +3 -0
  368. package/node_modules/zod/v3/locales/en.d.ts +3 -0
  369. package/node_modules/zod/v3/locales/en.js +109 -0
  370. package/node_modules/zod/v3/package.json +6 -0
  371. package/node_modules/zod/v3/standard-schema.cjs +2 -0
  372. package/node_modules/zod/v3/standard-schema.d.cts +102 -0
  373. package/node_modules/zod/v3/standard-schema.d.ts +102 -0
  374. package/node_modules/zod/v3/standard-schema.js +1 -0
  375. package/node_modules/zod/v3/types.cjs +3777 -0
  376. package/node_modules/zod/v3/types.d.cts +1034 -0
  377. package/node_modules/zod/v3/types.d.ts +1034 -0
  378. package/node_modules/zod/v3/types.js +3695 -0
  379. package/node_modules/zod/v4/classic/checks.cjs +33 -0
  380. package/node_modules/zod/v4/classic/checks.d.cts +1 -0
  381. package/node_modules/zod/v4/classic/checks.d.ts +1 -0
  382. package/node_modules/zod/v4/classic/checks.js +1 -0
  383. package/node_modules/zod/v4/classic/coerce.cjs +47 -0
  384. package/node_modules/zod/v4/classic/coerce.d.cts +17 -0
  385. package/node_modules/zod/v4/classic/coerce.d.ts +17 -0
  386. package/node_modules/zod/v4/classic/coerce.js +17 -0
  387. package/node_modules/zod/v4/classic/compat.cjs +61 -0
  388. package/node_modules/zod/v4/classic/compat.d.cts +50 -0
  389. package/node_modules/zod/v4/classic/compat.d.ts +50 -0
  390. package/node_modules/zod/v4/classic/compat.js +31 -0
  391. package/node_modules/zod/v4/classic/errors.cjs +74 -0
  392. package/node_modules/zod/v4/classic/errors.d.cts +30 -0
  393. package/node_modules/zod/v4/classic/errors.d.ts +30 -0
  394. package/node_modules/zod/v4/classic/errors.js +48 -0
  395. package/node_modules/zod/v4/classic/external.cjs +73 -0
  396. package/node_modules/zod/v4/classic/external.d.cts +15 -0
  397. package/node_modules/zod/v4/classic/external.d.ts +15 -0
  398. package/node_modules/zod/v4/classic/external.js +20 -0
  399. package/node_modules/zod/v4/classic/from-json-schema.cjs +610 -0
  400. package/node_modules/zod/v4/classic/from-json-schema.d.cts +12 -0
  401. package/node_modules/zod/v4/classic/from-json-schema.d.ts +12 -0
  402. package/node_modules/zod/v4/classic/from-json-schema.js +584 -0
  403. package/node_modules/zod/v4/classic/index.cjs +33 -0
  404. package/node_modules/zod/v4/classic/index.d.cts +4 -0
  405. package/node_modules/zod/v4/classic/index.d.ts +4 -0
  406. package/node_modules/zod/v4/classic/index.js +4 -0
  407. package/node_modules/zod/v4/classic/iso.cjs +60 -0
  408. package/node_modules/zod/v4/classic/iso.d.cts +22 -0
  409. package/node_modules/zod/v4/classic/iso.d.ts +22 -0
  410. package/node_modules/zod/v4/classic/iso.js +30 -0
  411. package/node_modules/zod/v4/classic/package.json +6 -0
  412. package/node_modules/zod/v4/classic/parse.cjs +41 -0
  413. package/node_modules/zod/v4/classic/parse.d.cts +31 -0
  414. package/node_modules/zod/v4/classic/parse.d.ts +31 -0
  415. package/node_modules/zod/v4/classic/parse.js +15 -0
  416. package/node_modules/zod/v4/classic/schemas.cjs +1272 -0
  417. package/node_modules/zod/v4/classic/schemas.d.cts +739 -0
  418. package/node_modules/zod/v4/classic/schemas.d.ts +739 -0
  419. package/node_modules/zod/v4/classic/schemas.js +1157 -0
  420. package/node_modules/zod/v4/core/api.cjs +1222 -0
  421. package/node_modules/zod/v4/core/api.d.cts +304 -0
  422. package/node_modules/zod/v4/core/api.d.ts +304 -0
  423. package/node_modules/zod/v4/core/api.js +1082 -0
  424. package/node_modules/zod/v4/core/checks.cjs +601 -0
  425. package/node_modules/zod/v4/core/checks.d.cts +278 -0
  426. package/node_modules/zod/v4/core/checks.d.ts +278 -0
  427. package/node_modules/zod/v4/core/checks.js +575 -0
  428. package/node_modules/zod/v4/core/core.cjs +83 -0
  429. package/node_modules/zod/v4/core/core.d.cts +70 -0
  430. package/node_modules/zod/v4/core/core.d.ts +70 -0
  431. package/node_modules/zod/v4/core/core.js +76 -0
  432. package/node_modules/zod/v4/core/doc.cjs +39 -0
  433. package/node_modules/zod/v4/core/doc.d.cts +14 -0
  434. package/node_modules/zod/v4/core/doc.d.ts +14 -0
  435. package/node_modules/zod/v4/core/doc.js +35 -0
  436. package/node_modules/zod/v4/core/errors.cjs +213 -0
  437. package/node_modules/zod/v4/core/errors.d.cts +220 -0
  438. package/node_modules/zod/v4/core/errors.d.ts +220 -0
  439. package/node_modules/zod/v4/core/errors.js +182 -0
  440. package/node_modules/zod/v4/core/index.cjs +47 -0
  441. package/node_modules/zod/v4/core/index.d.cts +16 -0
  442. package/node_modules/zod/v4/core/index.d.ts +16 -0
  443. package/node_modules/zod/v4/core/index.js +16 -0
  444. package/node_modules/zod/v4/core/json-schema-generator.cjs +99 -0
  445. package/node_modules/zod/v4/core/json-schema-generator.d.cts +65 -0
  446. package/node_modules/zod/v4/core/json-schema-generator.d.ts +65 -0
  447. package/node_modules/zod/v4/core/json-schema-generator.js +95 -0
  448. package/node_modules/zod/v4/core/json-schema-processors.cjs +648 -0
  449. package/node_modules/zod/v4/core/json-schema-processors.d.cts +49 -0
  450. package/node_modules/zod/v4/core/json-schema-processors.d.ts +49 -0
  451. package/node_modules/zod/v4/core/json-schema-processors.js +605 -0
  452. package/node_modules/zod/v4/core/json-schema.cjs +2 -0
  453. package/node_modules/zod/v4/core/json-schema.d.cts +88 -0
  454. package/node_modules/zod/v4/core/json-schema.d.ts +88 -0
  455. package/node_modules/zod/v4/core/json-schema.js +1 -0
  456. package/node_modules/zod/v4/core/package.json +6 -0
  457. package/node_modules/zod/v4/core/parse.cjs +131 -0
  458. package/node_modules/zod/v4/core/parse.d.cts +49 -0
  459. package/node_modules/zod/v4/core/parse.d.ts +49 -0
  460. package/node_modules/zod/v4/core/parse.js +93 -0
  461. package/node_modules/zod/v4/core/regexes.cjs +166 -0
  462. package/node_modules/zod/v4/core/regexes.d.cts +79 -0
  463. package/node_modules/zod/v4/core/regexes.d.ts +79 -0
  464. package/node_modules/zod/v4/core/regexes.js +133 -0
  465. package/node_modules/zod/v4/core/registries.cjs +56 -0
  466. package/node_modules/zod/v4/core/registries.d.cts +35 -0
  467. package/node_modules/zod/v4/core/registries.d.ts +35 -0
  468. package/node_modules/zod/v4/core/registries.js +51 -0
  469. package/node_modules/zod/v4/core/schemas.cjs +2124 -0
  470. package/node_modules/zod/v4/core/schemas.d.cts +1146 -0
  471. package/node_modules/zod/v4/core/schemas.d.ts +1146 -0
  472. package/node_modules/zod/v4/core/schemas.js +2093 -0
  473. package/node_modules/zod/v4/core/standard-schema.cjs +2 -0
  474. package/node_modules/zod/v4/core/standard-schema.d.cts +126 -0
  475. package/node_modules/zod/v4/core/standard-schema.d.ts +126 -0
  476. package/node_modules/zod/v4/core/standard-schema.js +1 -0
  477. package/node_modules/zod/v4/core/to-json-schema.cjs +446 -0
  478. package/node_modules/zod/v4/core/to-json-schema.d.cts +114 -0
  479. package/node_modules/zod/v4/core/to-json-schema.d.ts +114 -0
  480. package/node_modules/zod/v4/core/to-json-schema.js +437 -0
  481. package/node_modules/zod/v4/core/util.cjs +710 -0
  482. package/node_modules/zod/v4/core/util.d.cts +199 -0
  483. package/node_modules/zod/v4/core/util.d.ts +199 -0
  484. package/node_modules/zod/v4/core/util.js +651 -0
  485. package/node_modules/zod/v4/core/versions.cjs +8 -0
  486. package/node_modules/zod/v4/core/versions.d.cts +5 -0
  487. package/node_modules/zod/v4/core/versions.d.ts +5 -0
  488. package/node_modules/zod/v4/core/versions.js +5 -0
  489. package/node_modules/zod/v4/index.cjs +22 -0
  490. package/node_modules/zod/v4/index.d.cts +3 -0
  491. package/node_modules/zod/v4/index.d.ts +3 -0
  492. package/node_modules/zod/v4/index.js +3 -0
  493. package/node_modules/zod/v4/locales/ar.cjs +133 -0
  494. package/node_modules/zod/v4/locales/ar.d.cts +5 -0
  495. package/node_modules/zod/v4/locales/ar.d.ts +4 -0
  496. package/node_modules/zod/v4/locales/ar.js +106 -0
  497. package/node_modules/zod/v4/locales/az.cjs +132 -0
  498. package/node_modules/zod/v4/locales/az.d.cts +5 -0
  499. package/node_modules/zod/v4/locales/az.d.ts +4 -0
  500. package/node_modules/zod/v4/locales/az.js +105 -0
  501. package/node_modules/zod/v4/locales/be.cjs +183 -0
  502. package/node_modules/zod/v4/locales/be.d.cts +5 -0
  503. package/node_modules/zod/v4/locales/be.d.ts +4 -0
  504. package/node_modules/zod/v4/locales/be.js +156 -0
  505. package/node_modules/zod/v4/locales/bg.cjs +147 -0
  506. package/node_modules/zod/v4/locales/bg.d.cts +5 -0
  507. package/node_modules/zod/v4/locales/bg.d.ts +4 -0
  508. package/node_modules/zod/v4/locales/bg.js +120 -0
  509. package/node_modules/zod/v4/locales/ca.cjs +134 -0
  510. package/node_modules/zod/v4/locales/ca.d.cts +5 -0
  511. package/node_modules/zod/v4/locales/ca.d.ts +4 -0
  512. package/node_modules/zod/v4/locales/ca.js +107 -0
  513. package/node_modules/zod/v4/locales/cs.cjs +138 -0
  514. package/node_modules/zod/v4/locales/cs.d.cts +5 -0
  515. package/node_modules/zod/v4/locales/cs.d.ts +4 -0
  516. package/node_modules/zod/v4/locales/cs.js +111 -0
  517. package/node_modules/zod/v4/locales/da.cjs +142 -0
  518. package/node_modules/zod/v4/locales/da.d.cts +5 -0
  519. package/node_modules/zod/v4/locales/da.d.ts +4 -0
  520. package/node_modules/zod/v4/locales/da.js +115 -0
  521. package/node_modules/zod/v4/locales/de.cjs +135 -0
  522. package/node_modules/zod/v4/locales/de.d.cts +5 -0
  523. package/node_modules/zod/v4/locales/de.d.ts +4 -0
  524. package/node_modules/zod/v4/locales/de.js +108 -0
  525. package/node_modules/zod/v4/locales/en.cjs +136 -0
  526. package/node_modules/zod/v4/locales/en.d.cts +5 -0
  527. package/node_modules/zod/v4/locales/en.d.ts +4 -0
  528. package/node_modules/zod/v4/locales/en.js +109 -0
  529. package/node_modules/zod/v4/locales/eo.cjs +136 -0
  530. package/node_modules/zod/v4/locales/eo.d.cts +5 -0
  531. package/node_modules/zod/v4/locales/eo.d.ts +4 -0
  532. package/node_modules/zod/v4/locales/eo.js +109 -0
  533. package/node_modules/zod/v4/locales/es.cjs +159 -0
  534. package/node_modules/zod/v4/locales/es.d.cts +5 -0
  535. package/node_modules/zod/v4/locales/es.d.ts +4 -0
  536. package/node_modules/zod/v4/locales/es.js +132 -0
  537. package/node_modules/zod/v4/locales/fa.cjs +141 -0
  538. package/node_modules/zod/v4/locales/fa.d.cts +5 -0
  539. package/node_modules/zod/v4/locales/fa.d.ts +4 -0
  540. package/node_modules/zod/v4/locales/fa.js +114 -0
  541. package/node_modules/zod/v4/locales/fi.cjs +139 -0
  542. package/node_modules/zod/v4/locales/fi.d.cts +5 -0
  543. package/node_modules/zod/v4/locales/fi.d.ts +4 -0
  544. package/node_modules/zod/v4/locales/fi.js +112 -0
  545. package/node_modules/zod/v4/locales/fr-CA.cjs +134 -0
  546. package/node_modules/zod/v4/locales/fr-CA.d.cts +5 -0
  547. package/node_modules/zod/v4/locales/fr-CA.d.ts +4 -0
  548. package/node_modules/zod/v4/locales/fr-CA.js +107 -0
  549. package/node_modules/zod/v4/locales/fr.cjs +135 -0
  550. package/node_modules/zod/v4/locales/fr.d.cts +5 -0
  551. package/node_modules/zod/v4/locales/fr.d.ts +4 -0
  552. package/node_modules/zod/v4/locales/fr.js +108 -0
  553. package/node_modules/zod/v4/locales/he.cjs +241 -0
  554. package/node_modules/zod/v4/locales/he.d.cts +5 -0
  555. package/node_modules/zod/v4/locales/he.d.ts +4 -0
  556. package/node_modules/zod/v4/locales/he.js +214 -0
  557. package/node_modules/zod/v4/locales/hu.cjs +135 -0
  558. package/node_modules/zod/v4/locales/hu.d.cts +5 -0
  559. package/node_modules/zod/v4/locales/hu.d.ts +4 -0
  560. package/node_modules/zod/v4/locales/hu.js +108 -0
  561. package/node_modules/zod/v4/locales/hy.cjs +174 -0
  562. package/node_modules/zod/v4/locales/hy.d.cts +5 -0
  563. package/node_modules/zod/v4/locales/hy.d.ts +4 -0
  564. package/node_modules/zod/v4/locales/hy.js +147 -0
  565. package/node_modules/zod/v4/locales/id.cjs +133 -0
  566. package/node_modules/zod/v4/locales/id.d.cts +5 -0
  567. package/node_modules/zod/v4/locales/id.d.ts +4 -0
  568. package/node_modules/zod/v4/locales/id.js +106 -0
  569. package/node_modules/zod/v4/locales/index.cjs +104 -0
  570. package/node_modules/zod/v4/locales/index.d.cts +49 -0
  571. package/node_modules/zod/v4/locales/index.d.ts +49 -0
  572. package/node_modules/zod/v4/locales/index.js +49 -0
  573. package/node_modules/zod/v4/locales/is.cjs +136 -0
  574. package/node_modules/zod/v4/locales/is.d.cts +5 -0
  575. package/node_modules/zod/v4/locales/is.d.ts +4 -0
  576. package/node_modules/zod/v4/locales/is.js +109 -0
  577. package/node_modules/zod/v4/locales/it.cjs +135 -0
  578. package/node_modules/zod/v4/locales/it.d.cts +5 -0
  579. package/node_modules/zod/v4/locales/it.d.ts +4 -0
  580. package/node_modules/zod/v4/locales/it.js +108 -0
  581. package/node_modules/zod/v4/locales/ja.cjs +134 -0
  582. package/node_modules/zod/v4/locales/ja.d.cts +5 -0
  583. package/node_modules/zod/v4/locales/ja.d.ts +4 -0
  584. package/node_modules/zod/v4/locales/ja.js +107 -0
  585. package/node_modules/zod/v4/locales/ka.cjs +139 -0
  586. package/node_modules/zod/v4/locales/ka.d.cts +5 -0
  587. package/node_modules/zod/v4/locales/ka.d.ts +4 -0
  588. package/node_modules/zod/v4/locales/ka.js +112 -0
  589. package/node_modules/zod/v4/locales/kh.cjs +12 -0
  590. package/node_modules/zod/v4/locales/kh.d.cts +5 -0
  591. package/node_modules/zod/v4/locales/kh.d.ts +5 -0
  592. package/node_modules/zod/v4/locales/kh.js +5 -0
  593. package/node_modules/zod/v4/locales/km.cjs +137 -0
  594. package/node_modules/zod/v4/locales/km.d.cts +5 -0
  595. package/node_modules/zod/v4/locales/km.d.ts +4 -0
  596. package/node_modules/zod/v4/locales/km.js +110 -0
  597. package/node_modules/zod/v4/locales/ko.cjs +138 -0
  598. package/node_modules/zod/v4/locales/ko.d.cts +5 -0
  599. package/node_modules/zod/v4/locales/ko.d.ts +4 -0
  600. package/node_modules/zod/v4/locales/ko.js +111 -0
  601. package/node_modules/zod/v4/locales/lt.cjs +230 -0
  602. package/node_modules/zod/v4/locales/lt.d.cts +5 -0
  603. package/node_modules/zod/v4/locales/lt.d.ts +4 -0
  604. package/node_modules/zod/v4/locales/lt.js +203 -0
  605. package/node_modules/zod/v4/locales/mk.cjs +136 -0
  606. package/node_modules/zod/v4/locales/mk.d.cts +5 -0
  607. package/node_modules/zod/v4/locales/mk.d.ts +4 -0
  608. package/node_modules/zod/v4/locales/mk.js +109 -0
  609. package/node_modules/zod/v4/locales/ms.cjs +134 -0
  610. package/node_modules/zod/v4/locales/ms.d.cts +5 -0
  611. package/node_modules/zod/v4/locales/ms.d.ts +4 -0
  612. package/node_modules/zod/v4/locales/ms.js +107 -0
  613. package/node_modules/zod/v4/locales/nl.cjs +137 -0
  614. package/node_modules/zod/v4/locales/nl.d.cts +5 -0
  615. package/node_modules/zod/v4/locales/nl.d.ts +4 -0
  616. package/node_modules/zod/v4/locales/nl.js +110 -0
  617. package/node_modules/zod/v4/locales/no.cjs +135 -0
  618. package/node_modules/zod/v4/locales/no.d.cts +5 -0
  619. package/node_modules/zod/v4/locales/no.d.ts +4 -0
  620. package/node_modules/zod/v4/locales/no.js +108 -0
  621. package/node_modules/zod/v4/locales/ota.cjs +136 -0
  622. package/node_modules/zod/v4/locales/ota.d.cts +5 -0
  623. package/node_modules/zod/v4/locales/ota.d.ts +4 -0
  624. package/node_modules/zod/v4/locales/ota.js +109 -0
  625. package/node_modules/zod/v4/locales/package.json +6 -0
  626. package/node_modules/zod/v4/locales/pl.cjs +136 -0
  627. package/node_modules/zod/v4/locales/pl.d.cts +5 -0
  628. package/node_modules/zod/v4/locales/pl.d.ts +4 -0
  629. package/node_modules/zod/v4/locales/pl.js +109 -0
  630. package/node_modules/zod/v4/locales/ps.cjs +141 -0
  631. package/node_modules/zod/v4/locales/ps.d.cts +5 -0
  632. package/node_modules/zod/v4/locales/ps.d.ts +4 -0
  633. package/node_modules/zod/v4/locales/ps.js +114 -0
  634. package/node_modules/zod/v4/locales/pt.cjs +135 -0
  635. package/node_modules/zod/v4/locales/pt.d.cts +5 -0
  636. package/node_modules/zod/v4/locales/pt.d.ts +4 -0
  637. package/node_modules/zod/v4/locales/pt.js +108 -0
  638. package/node_modules/zod/v4/locales/ru.cjs +183 -0
  639. package/node_modules/zod/v4/locales/ru.d.cts +5 -0
  640. package/node_modules/zod/v4/locales/ru.d.ts +4 -0
  641. package/node_modules/zod/v4/locales/ru.js +156 -0
  642. package/node_modules/zod/v4/locales/sl.cjs +136 -0
  643. package/node_modules/zod/v4/locales/sl.d.cts +5 -0
  644. package/node_modules/zod/v4/locales/sl.d.ts +4 -0
  645. package/node_modules/zod/v4/locales/sl.js +109 -0
  646. package/node_modules/zod/v4/locales/sv.cjs +137 -0
  647. package/node_modules/zod/v4/locales/sv.d.cts +5 -0
  648. package/node_modules/zod/v4/locales/sv.d.ts +4 -0
  649. package/node_modules/zod/v4/locales/sv.js +110 -0
  650. package/node_modules/zod/v4/locales/ta.cjs +137 -0
  651. package/node_modules/zod/v4/locales/ta.d.cts +5 -0
  652. package/node_modules/zod/v4/locales/ta.d.ts +4 -0
  653. package/node_modules/zod/v4/locales/ta.js +110 -0
  654. package/node_modules/zod/v4/locales/th.cjs +137 -0
  655. package/node_modules/zod/v4/locales/th.d.cts +5 -0
  656. package/node_modules/zod/v4/locales/th.d.ts +4 -0
  657. package/node_modules/zod/v4/locales/th.js +110 -0
  658. package/node_modules/zod/v4/locales/tr.cjs +132 -0
  659. package/node_modules/zod/v4/locales/tr.d.cts +5 -0
  660. package/node_modules/zod/v4/locales/tr.d.ts +4 -0
  661. package/node_modules/zod/v4/locales/tr.js +105 -0
  662. package/node_modules/zod/v4/locales/ua.cjs +12 -0
  663. package/node_modules/zod/v4/locales/ua.d.cts +5 -0
  664. package/node_modules/zod/v4/locales/ua.d.ts +5 -0
  665. package/node_modules/zod/v4/locales/ua.js +5 -0
  666. package/node_modules/zod/v4/locales/uk.cjs +135 -0
  667. package/node_modules/zod/v4/locales/uk.d.cts +5 -0
  668. package/node_modules/zod/v4/locales/uk.d.ts +4 -0
  669. package/node_modules/zod/v4/locales/uk.js +108 -0
  670. package/node_modules/zod/v4/locales/ur.cjs +137 -0
  671. package/node_modules/zod/v4/locales/ur.d.cts +5 -0
  672. package/node_modules/zod/v4/locales/ur.d.ts +4 -0
  673. package/node_modules/zod/v4/locales/ur.js +110 -0
  674. package/node_modules/zod/v4/locales/uz.cjs +136 -0
  675. package/node_modules/zod/v4/locales/uz.d.cts +5 -0
  676. package/node_modules/zod/v4/locales/uz.d.ts +4 -0
  677. package/node_modules/zod/v4/locales/uz.js +109 -0
  678. package/node_modules/zod/v4/locales/vi.cjs +135 -0
  679. package/node_modules/zod/v4/locales/vi.d.cts +5 -0
  680. package/node_modules/zod/v4/locales/vi.d.ts +4 -0
  681. package/node_modules/zod/v4/locales/vi.js +108 -0
  682. package/node_modules/zod/v4/locales/yo.cjs +134 -0
  683. package/node_modules/zod/v4/locales/yo.d.cts +5 -0
  684. package/node_modules/zod/v4/locales/yo.d.ts +4 -0
  685. package/node_modules/zod/v4/locales/yo.js +107 -0
  686. package/node_modules/zod/v4/locales/zh-CN.cjs +136 -0
  687. package/node_modules/zod/v4/locales/zh-CN.d.cts +5 -0
  688. package/node_modules/zod/v4/locales/zh-CN.d.ts +4 -0
  689. package/node_modules/zod/v4/locales/zh-CN.js +109 -0
  690. package/node_modules/zod/v4/locales/zh-TW.cjs +134 -0
  691. package/node_modules/zod/v4/locales/zh-TW.d.cts +5 -0
  692. package/node_modules/zod/v4/locales/zh-TW.d.ts +4 -0
  693. package/node_modules/zod/v4/locales/zh-TW.js +107 -0
  694. package/node_modules/zod/v4/mini/checks.cjs +34 -0
  695. package/node_modules/zod/v4/mini/checks.d.cts +1 -0
  696. package/node_modules/zod/v4/mini/checks.d.ts +1 -0
  697. package/node_modules/zod/v4/mini/checks.js +1 -0
  698. package/node_modules/zod/v4/mini/coerce.cjs +52 -0
  699. package/node_modules/zod/v4/mini/coerce.d.cts +7 -0
  700. package/node_modules/zod/v4/mini/coerce.d.ts +7 -0
  701. package/node_modules/zod/v4/mini/coerce.js +22 -0
  702. package/node_modules/zod/v4/mini/external.cjs +63 -0
  703. package/node_modules/zod/v4/mini/external.d.cts +12 -0
  704. package/node_modules/zod/v4/mini/external.d.ts +12 -0
  705. package/node_modules/zod/v4/mini/external.js +14 -0
  706. package/node_modules/zod/v4/mini/index.cjs +32 -0
  707. package/node_modules/zod/v4/mini/index.d.cts +3 -0
  708. package/node_modules/zod/v4/mini/index.d.ts +3 -0
  709. package/node_modules/zod/v4/mini/index.js +3 -0
  710. package/node_modules/zod/v4/mini/iso.cjs +64 -0
  711. package/node_modules/zod/v4/mini/iso.d.cts +22 -0
  712. package/node_modules/zod/v4/mini/iso.d.ts +22 -0
  713. package/node_modules/zod/v4/mini/iso.js +34 -0
  714. package/node_modules/zod/v4/mini/package.json +6 -0
  715. package/node_modules/zod/v4/mini/parse.cjs +16 -0
  716. package/node_modules/zod/v4/mini/parse.d.cts +1 -0
  717. package/node_modules/zod/v4/mini/parse.d.ts +1 -0
  718. package/node_modules/zod/v4/mini/parse.js +1 -0
  719. package/node_modules/zod/v4/mini/schemas.cjs +1046 -0
  720. package/node_modules/zod/v4/mini/schemas.d.cts +427 -0
  721. package/node_modules/zod/v4/mini/schemas.d.ts +427 -0
  722. package/node_modules/zod/v4/mini/schemas.js +925 -0
  723. package/node_modules/zod/v4/package.json +6 -0
  724. package/node_modules/zod/v4-mini/index.cjs +32 -0
  725. package/node_modules/zod/v4-mini/index.d.cts +3 -0
  726. package/node_modules/zod/v4-mini/index.d.ts +3 -0
  727. package/node_modules/zod/v4-mini/index.js +3 -0
  728. package/node_modules/zod/v4-mini/package.json +6 -0
  729. package/package.json +13 -2
  730. package/src/__tests__/acp-session.test.ts +292 -0
  731. package/src/__tests__/actor-token-service.test.ts +3 -3
  732. package/src/__tests__/always-loaded-tools-guard.test.ts +1 -1
  733. package/src/__tests__/anthropic-provider.test.ts +168 -46
  734. package/src/__tests__/app-builder-tool-scripts.test.ts +0 -1
  735. package/src/__tests__/approval-cascade.test.ts +121 -95
  736. package/src/__tests__/approval-primitive.test.ts +2 -2
  737. package/src/__tests__/approval-routes-http.test.ts +41 -26
  738. package/src/__tests__/asset-materialize-tool.test.ts +9 -16
  739. package/src/__tests__/asset-search-tool.test.ts +5 -12
  740. package/src/__tests__/assistant-attachments.test.ts +27 -0
  741. package/src/__tests__/assistant-event-hub.test.ts +14 -10
  742. package/src/__tests__/assistant-event.test.ts +9 -9
  743. package/src/__tests__/assistant-feature-flag-guardrails.test.ts +6 -1
  744. package/src/__tests__/assistant-feature-flags-integration.test.ts +139 -22
  745. package/src/__tests__/attachments-store.test.ts +1 -1
  746. package/src/__tests__/avatar-e2e.test.ts +16 -6
  747. package/src/__tests__/avatar-generator.test.ts +4 -7
  748. package/src/__tests__/browser-fill-credential.test.ts +17 -18
  749. package/src/__tests__/browser-skill-endstate.test.ts +1 -1
  750. package/src/__tests__/btw-routes.test.ts +21 -9
  751. package/src/__tests__/call-controller.test.ts +229 -202
  752. package/src/__tests__/call-pointer-messages.test.ts +12 -10
  753. package/src/__tests__/call-routes-http.test.ts +2 -2
  754. package/src/__tests__/call-start-guardian-guard.test.ts +0 -1
  755. package/src/__tests__/canonical-guardian-store.test.ts +8 -10
  756. package/src/__tests__/channel-approval-routes.test.ts +5 -5
  757. package/src/__tests__/channel-approval.test.ts +1 -1
  758. package/src/__tests__/channel-approvals.test.ts +13 -13
  759. package/src/__tests__/channel-guardian.test.ts +3 -3
  760. package/src/__tests__/channel-invite-transport.test.ts +5 -1
  761. package/src/__tests__/channel-readiness-routes.test.ts +4 -0
  762. package/src/__tests__/channel-reply-delivery.test.ts +1 -1
  763. package/src/__tests__/checker.test.ts +1 -1
  764. package/src/__tests__/claude-code-skill-regression.test.ts +67 -1
  765. package/src/__tests__/claude-code-tool-profiles.test.ts +1 -1
  766. package/src/__tests__/clipboard.test.ts +6 -6
  767. package/src/__tests__/commit-guarantee.test.ts +9 -9
  768. package/src/__tests__/commit-message-enrichment-service.test.ts +37 -6
  769. package/src/__tests__/computer-use-tools.test.ts +0 -1
  770. package/src/__tests__/config-loader-backfill.test.ts +6 -4
  771. package/src/__tests__/config-schema-cmd.test.ts +258 -0
  772. package/src/__tests__/config-schema.test.ts +38 -30
  773. package/src/__tests__/config-watcher.test.ts +25 -24
  774. package/src/__tests__/confirmation-request-guardian-bridge.test.ts +16 -14
  775. package/src/__tests__/contacts-tools.test.ts +0 -1
  776. package/src/__tests__/context-overflow-approval.test.ts +2 -2
  777. package/src/__tests__/{session-abort-tool-results.test.ts → conversation-abort-tool-results.test.ts} +24 -11
  778. package/src/__tests__/{session-agent-loop-overflow.test.ts → conversation-agent-loop-overflow.test.ts} +234 -59
  779. package/src/__tests__/{session-agent-loop.test.ts → conversation-agent-loop.test.ts} +77 -61
  780. package/src/__tests__/{session-approval-overrides.test.ts → conversation-approval-overrides.test.ts} +23 -23
  781. package/src/__tests__/conversation-attachments.test.ts +227 -0
  782. package/src/__tests__/conversation-attention-telegram.test.ts +2 -2
  783. package/src/__tests__/{session-confirmation-signals.test.ts → conversation-confirmation-signals.test.ts} +62 -52
  784. package/src/__tests__/{session-error.test.ts → conversation-error.test.ts} +65 -57
  785. package/src/__tests__/{session-evictor.test.ts → conversation-evictor.test.ts} +21 -17
  786. package/src/__tests__/{session-history-web-search.test.ts → conversation-history-web-search.test.ts} +34 -10
  787. package/src/__tests__/{session-init.benchmark.test.ts → conversation-init.benchmark.test.ts} +23 -23
  788. package/src/__tests__/{session-load-history-repair.test.ts → conversation-load-history-repair.test.ts} +38 -38
  789. package/src/__tests__/{session-media-retry.test.ts → conversation-media-retry.test.ts} +1 -1
  790. package/src/__tests__/{session-messaging-secret-redirect.test.ts → conversation-messaging-secret-redirect.test.ts} +1 -1
  791. package/src/__tests__/conversation-pairing.test.ts +46 -46
  792. package/src/__tests__/{session-pre-run-repair.test.ts → conversation-pre-run-repair.test.ts} +24 -11
  793. package/src/__tests__/{session-provider-retry-repair.test.ts → conversation-provider-retry-repair.test.ts} +59 -46
  794. package/src/__tests__/{session-queue.test.ts → conversation-queue.test.ts} +241 -220
  795. package/src/__tests__/conversation-routes-guardian-reply.test.ts +26 -26
  796. package/src/__tests__/conversation-routes-slash-commands.test.ts +33 -56
  797. package/src/__tests__/{session-runtime-assembly.test.ts → conversation-runtime-assembly.test.ts} +2 -2
  798. package/src/__tests__/{session-runtime-workspace.test.ts → conversation-runtime-workspace.test.ts} +1 -1
  799. package/src/__tests__/{thread-seed-composer.test.ts → conversation-seed-composer.test.ts} +50 -48
  800. package/src/__tests__/{session-skill-tools.test.ts → conversation-skill-tools.test.ts} +11 -13
  801. package/src/__tests__/{session-slash-queue.test.ts → conversation-slash-queue.test.ts} +55 -46
  802. package/src/__tests__/{session-slash-unknown.test.ts → conversation-slash-unknown.test.ts} +31 -75
  803. package/src/__tests__/conversation-store.test.ts +61 -55
  804. package/src/__tests__/{session-surfaces-deselection.test.ts → conversation-surfaces-deselection.test.ts} +5 -5
  805. package/src/__tests__/{session-surfaces-task-progress.test.ts → conversation-surfaces-task-progress.test.ts} +7 -7
  806. package/src/__tests__/{session-tool-setup-app-refresh.test.ts → conversation-tool-setup-app-refresh.test.ts} +5 -5
  807. package/src/__tests__/{session-tool-setup-memory-scope.test.ts → conversation-tool-setup-memory-scope.test.ts} +4 -4
  808. package/src/__tests__/{session-tool-setup-side-effect-flag.test.ts → conversation-tool-setup-side-effect-flag.test.ts} +4 -4
  809. package/src/__tests__/{session-tool-setup-tools-disabled.test.ts → conversation-tool-setup-tools-disabled.test.ts} +3 -3
  810. package/src/__tests__/{session-undo.test.ts → conversation-undo.test.ts} +1 -1
  811. package/src/__tests__/conversation-unread-route.test.ts +4 -0
  812. package/src/__tests__/{session-usage.test.ts → conversation-usage.test.ts} +1 -1
  813. package/src/__tests__/{session-workspace-cache-state.test.ts → conversation-workspace-cache-state.test.ts} +29 -36
  814. package/src/__tests__/{session-workspace-injection.test.ts → conversation-workspace-injection.test.ts} +58 -51
  815. package/src/__tests__/{session-workspace-tool-tracking.test.ts → conversation-workspace-tool-tracking.test.ts} +54 -47
  816. package/src/__tests__/credential-execution-admin-cli.test.ts +504 -0
  817. package/src/__tests__/credential-execution-api-key-propagation.test.ts +309 -0
  818. package/src/__tests__/credential-execution-approval-bridge.test.ts +535 -0
  819. package/src/__tests__/credential-execution-client.test.ts +380 -0
  820. package/src/__tests__/credential-execution-feature-gates.test.ts +169 -0
  821. package/src/__tests__/credential-execution-managed-contract.test.ts +526 -0
  822. package/src/__tests__/credential-execution-shell-lockdown.test.ts +149 -0
  823. package/src/__tests__/credential-execution-tools.test.ts +279 -0
  824. package/src/__tests__/credential-security-e2e.test.ts +0 -1
  825. package/src/__tests__/credential-security-invariants.test.ts +4 -8
  826. package/src/__tests__/credential-storage-oauth-compat.test.ts +606 -0
  827. package/src/__tests__/credential-storage-static-compat.test.ts +396 -0
  828. package/src/__tests__/credential-vault-unit.test.ts +0 -1
  829. package/src/__tests__/credential-vault.test.ts +0 -1
  830. package/src/__tests__/credentials-cli.test.ts +10 -22
  831. package/src/__tests__/cu-unified-flow.test.ts +8 -6
  832. package/src/__tests__/daemon-assistant-events.test.ts +15 -12
  833. package/src/__tests__/delete-managed-skill-tool.test.ts +0 -1
  834. package/src/__tests__/diagnostics-export.test.ts +30 -0
  835. package/src/__tests__/dynamic-page-surface.test.ts +2 -2
  836. package/src/__tests__/dynamic-skill-workflow-prompt.test.ts +19 -5
  837. package/src/__tests__/emit-signal-routing-intent.test.ts +1 -1
  838. package/src/__tests__/event-bus.test.ts +2 -6
  839. package/src/__tests__/file-edit-tool.test.ts +0 -1
  840. package/src/__tests__/file-read-tool.test.ts +0 -1
  841. package/src/__tests__/file-write-tool.test.ts +0 -1
  842. package/src/__tests__/fixtures/mock-signup-server.ts +2 -2
  843. package/src/__tests__/followup-tools.test.ts +25 -26
  844. package/src/__tests__/frontmatter.test.ts +12 -10
  845. package/src/__tests__/guardian-action-late-reply.test.ts +1 -1
  846. package/src/__tests__/guardian-action-no-hardcoded-copy.test.ts +1 -1
  847. package/src/__tests__/guardian-decision-primitive-canonical.test.ts +15 -15
  848. package/src/__tests__/guardian-dispatch.test.ts +9 -9
  849. package/src/__tests__/guardian-grant-minting.test.ts +5 -5
  850. package/src/__tests__/guardian-question-copy.test.ts +10 -8
  851. package/src/__tests__/guardian-routing-invariants.test.ts +61 -61
  852. package/src/__tests__/guardian-routing-state.test.ts +1 -1
  853. package/src/__tests__/guardian-verification-voice-binding.test.ts +1 -1
  854. package/src/__tests__/handlers-user-message-approval-consumption.test.ts +20 -16
  855. package/src/__tests__/headless-browser-interactions.test.ts +18 -17
  856. package/src/__tests__/headless-browser-navigate.test.ts +0 -1
  857. package/src/__tests__/headless-browser-read-tools.test.ts +5 -6
  858. package/src/__tests__/headless-browser-snapshot.test.ts +12 -9
  859. package/src/__tests__/heartbeat-service.test.ts +5 -4
  860. package/src/__tests__/hooks-ts-runner.test.ts +10 -4
  861. package/src/__tests__/host-bash-proxy.test.ts +50 -1
  862. package/src/__tests__/host-cu-proxy.test.ts +1 -1
  863. package/src/__tests__/host-file-edit-tool.test.ts +0 -1
  864. package/src/__tests__/host-file-proxy.test.ts +1 -1
  865. package/src/__tests__/host-file-read-tool.test.ts +0 -1
  866. package/src/__tests__/host-file-write-tool.test.ts +0 -1
  867. package/src/__tests__/host-shell-tool.test.ts +64 -5
  868. package/src/__tests__/http-user-message-parity.test.ts +32 -19
  869. package/src/__tests__/intent-routing.test.ts +71 -84
  870. package/src/__tests__/invite-redemption-service.test.ts +35 -0
  871. package/src/__tests__/keychain-broker-client.test.ts +150 -0
  872. package/src/__tests__/list-messages-attachments.test.ts +4 -4
  873. package/src/__tests__/log-export-workspace.test.ts +133 -60
  874. package/src/__tests__/managed-credential-catalog-cli.test.ts +349 -0
  875. package/src/__tests__/managed-skill-lifecycle.test.ts +14 -2
  876. package/src/__tests__/managed-store.test.ts +0 -38
  877. package/src/__tests__/media-generate-image.test.ts +19 -2
  878. package/src/__tests__/media-reuse-story.e2e.test.ts +82 -70
  879. package/src/__tests__/media-visibility-policy.test.ts +10 -10
  880. package/src/__tests__/memory-query-builder.test.ts +2 -2
  881. package/src/__tests__/memory-regressions.test.ts +67 -30
  882. package/src/__tests__/messaging-send-tool.test.ts +0 -2
  883. package/src/__tests__/no-domain-routing-in-prompt-guard.test.ts +51 -0
  884. package/src/__tests__/notification-broadcaster.test.ts +42 -40
  885. package/src/__tests__/{notification-thread-candidate-validation.test.ts → notification-conversation-candidate-validation.test.ts} +26 -24
  886. package/src/__tests__/{notification-thread-candidates.test.ts → notification-conversation-candidates.test.ts} +15 -15
  887. package/src/__tests__/notification-decision-fallback.test.ts +6 -6
  888. package/src/__tests__/notification-decision-identity.test.ts +209 -0
  889. package/src/__tests__/notification-decision-strategy.test.ts +40 -38
  890. package/src/__tests__/notification-deep-link.test.ts +18 -18
  891. package/src/__tests__/notification-guardian-path.test.ts +13 -10
  892. package/src/__tests__/notification-telegram-adapter.test.ts +5 -5
  893. package/src/__tests__/oauth-store.test.ts +1 -5
  894. package/src/__tests__/permission-types.test.ts +1 -1
  895. package/src/__tests__/playbook-execution.test.ts +0 -1
  896. package/src/__tests__/playbook-tools.test.ts +0 -1
  897. package/src/__tests__/provider-commit-message-generator.test.ts +7 -6
  898. package/src/__tests__/provider-fail-open-selection.test.ts +22 -28
  899. package/src/__tests__/provider-managed-proxy-integration.test.ts +35 -56
  900. package/src/__tests__/provider-registry-ollama.test.ts +13 -2
  901. package/src/__tests__/proxy-approval-callback.test.ts +2 -2
  902. package/src/__tests__/recording-handler.test.ts +20 -20
  903. package/src/__tests__/relay-server.test.ts +8 -5
  904. package/src/__tests__/require-fresh-approval.test.ts +532 -0
  905. package/src/__tests__/resolve-trust-class.test.ts +2 -2
  906. package/src/__tests__/runtime-events-sse-parity.test.ts +21 -21
  907. package/src/__tests__/runtime-events-sse.test.ts +15 -7
  908. package/src/__tests__/scaffold-managed-skill-tool.test.ts +1 -4
  909. package/src/__tests__/schedule-tools.test.ts +0 -1
  910. package/src/__tests__/scoped-approval-grants.test.ts +6 -6
  911. package/src/__tests__/scoped-grant-security-matrix.test.ts +1 -1
  912. package/src/__tests__/{script-proxy-session-manager.test.ts → script-proxy-conversation-manager.test.ts} +4 -1
  913. package/src/__tests__/secret-onetime-send.test.ts +0 -4
  914. package/src/__tests__/secret-response-routing.test.ts +1 -1
  915. package/src/__tests__/secret-routes-managed-proxy.test.ts +79 -2
  916. package/src/__tests__/secret-scanner-executor.test.ts +0 -2
  917. package/src/__tests__/send-endpoint-busy.test.ts +73 -60
  918. package/src/__tests__/send-notification-tool.test.ts +1 -3
  919. package/src/__tests__/sequence-store.test.ts +5 -5
  920. package/src/__tests__/shell-credential-ref.test.ts +1 -2
  921. package/src/__tests__/shell-tool-proxy-mode.test.ts +2 -3
  922. package/src/__tests__/skill-feature-flags-integration.test.ts +1 -2
  923. package/src/__tests__/skill-feature-flags.test.ts +7 -8
  924. package/src/__tests__/skill-include-graph.test.ts +1 -2
  925. package/src/__tests__/skill-load-feature-flag.test.ts +10 -11
  926. package/src/__tests__/skill-load-tool.test.ts +19 -15
  927. package/src/__tests__/skill-projection-feature-flag.test.ts +4 -6
  928. package/src/__tests__/skill-projection.benchmark.test.ts +3 -5
  929. package/src/__tests__/skill-script-runner-host.test.ts +3 -4
  930. package/src/__tests__/skill-script-runner-sandbox.test.ts +3 -4
  931. package/src/__tests__/skill-script-runner.test.ts +0 -1
  932. package/src/__tests__/skill-tool-factory.test.ts +0 -1
  933. package/src/__tests__/skills.test.ts +0 -37
  934. package/src/__tests__/slack-skill.test.ts +0 -4
  935. package/src/__tests__/starter-task-flow.test.ts +3 -3
  936. package/src/__tests__/subagent-manager-notify.test.ts +45 -40
  937. package/src/__tests__/subagent-tools.test.ts +78 -69
  938. package/src/__tests__/subagent-types.test.ts +3 -3
  939. package/src/__tests__/surface-mutex-cleanup.test.ts +1 -1
  940. package/src/__tests__/{swarm-session-integration.test.ts → swarm-conversation-integration.test.ts} +13 -1
  941. package/src/__tests__/swarm-recursion.test.ts +21 -9
  942. package/src/__tests__/swarm-tool.test.ts +14 -1
  943. package/src/__tests__/system-prompt.test.ts +34 -16
  944. package/src/__tests__/task-compiler.test.ts +1 -1
  945. package/src/__tests__/task-management-tools.test.ts +1 -2
  946. package/src/__tests__/terminal-sandbox.test.ts +6 -0
  947. package/src/__tests__/terminal-tools.test.ts +1 -1
  948. package/src/__tests__/token-estimator-accuracy.benchmark.test.ts +2 -2
  949. package/src/__tests__/tool-approval-handler.test.ts +2 -3
  950. package/src/__tests__/tool-audit-listener.test.ts +0 -6
  951. package/src/__tests__/tool-domain-event-publisher.test.ts +0 -11
  952. package/src/__tests__/tool-execution-abort-cleanup.test.ts +67 -14
  953. package/src/__tests__/tool-execution-pipeline.benchmark.test.ts +0 -1
  954. package/src/__tests__/tool-executor-lifecycle-events.test.ts +3 -6
  955. package/src/__tests__/tool-executor-shell-integration.test.ts +0 -1
  956. package/src/__tests__/tool-executor.test.ts +20 -20
  957. package/src/__tests__/tool-grant-request-escalation.test.ts +8 -9
  958. package/src/__tests__/tool-metrics-listener.test.ts +0 -9
  959. package/src/__tests__/tool-notification-listener.test.ts +0 -2
  960. package/src/__tests__/tool-preview-lifecycle.test.ts +6 -6
  961. package/src/__tests__/tool-profiling-listener.test.ts +0 -7
  962. package/src/__tests__/tool-trace-listener.test.ts +0 -11
  963. package/src/__tests__/trace-emitter.test.ts +1 -1
  964. package/src/__tests__/trust-context-guards.test.ts +1 -1
  965. package/src/__tests__/trusted-contact-approval-notifier.test.ts +1 -1
  966. package/src/__tests__/trusted-contact-inline-approval-integration.test.ts +9 -10
  967. package/src/__tests__/turn-commit.test.ts +3 -3
  968. package/src/__tests__/ui-file-upload-surface.test.ts +2 -2
  969. package/src/__tests__/verification-control-plane-policy.test.ts +0 -1
  970. package/src/__tests__/voice-scoped-grant-consumer.test.ts +4 -4
  971. package/src/__tests__/voice-session-bridge.test.ts +31 -31
  972. package/src/__tests__/workspace-git-service.test.ts +49 -2
  973. package/src/__tests__/workspace-lifecycle.test.ts +6 -6
  974. package/src/__tests__/workspace-migration-add-send-diagnostics.test.ts +59 -0
  975. package/src/__tests__/workspace-migration-avatar-rename.test.ts +128 -0
  976. package/src/__tests__/workspace-migration-extract-collect-usage-data.test.ts +179 -0
  977. package/src/__tests__/workspace-migration-seed-device-id.test.ts +328 -0
  978. package/src/__tests__/workspace-migrations-runner.test.ts +293 -0
  979. package/src/acp/agent-process.ts +201 -0
  980. package/src/acp/client-handler.ts +361 -0
  981. package/src/acp/index.ts +44 -0
  982. package/src/acp/session-manager.ts +348 -0
  983. package/src/acp/types.ts +79 -0
  984. package/src/approvals/AGENTS.md +2 -2
  985. package/src/approvals/approval-primitive.ts +4 -4
  986. package/src/approvals/guardian-decision-primitive.ts +7 -7
  987. package/src/approvals/guardian-request-resolvers.ts +1 -1
  988. package/src/avatar/ascii-renderer.ts +63 -0
  989. package/src/avatar/character-components.ts +454 -0
  990. package/src/avatar/png-renderer.ts +17 -0
  991. package/src/avatar/svg-compositor.ts +90 -0
  992. package/src/avatar/traits-png-sync.ts +133 -0
  993. package/src/calls/call-controller.ts +8 -8
  994. package/src/calls/call-conversation-messages.ts +1 -1
  995. package/src/calls/call-domain.ts +4 -4
  996. package/src/calls/call-pointer-message-composer.ts +2 -2
  997. package/src/calls/call-pointer-messages.ts +10 -10
  998. package/src/calls/guardian-action-sweep.ts +3 -3
  999. package/src/calls/guardian-dispatch.ts +7 -7
  1000. package/src/calls/guardian-question-copy.ts +7 -7
  1001. package/src/calls/relay-server.ts +4 -4
  1002. package/src/calls/twilio-routes.ts +1 -1
  1003. package/src/calls/voice-session-bridge.ts +59 -56
  1004. package/src/cli/AGENTS.md +2 -2
  1005. package/src/cli/commands/avatar.ts +281 -0
  1006. package/src/cli/commands/bash.ts +6 -3
  1007. package/src/cli/commands/channel-verification-sessions.ts +7 -4
  1008. package/src/cli/commands/completions.ts +4 -4
  1009. package/src/cli/commands/config.ts +52 -7
  1010. package/src/cli/commands/{sessions.ts → conversations.ts} +43 -40
  1011. package/src/cli/commands/credential-execution.ts +345 -0
  1012. package/src/cli/commands/credentials.ts +106 -6
  1013. package/src/cli/commands/doctor.ts +9 -3
  1014. package/src/cli/commands/keys.ts +30 -0
  1015. package/src/cli/commands/mcp.ts +2 -2
  1016. package/src/cli/commands/memory.ts +8 -8
  1017. package/src/cli/commands/notifications.ts +2 -2
  1018. package/src/cli/commands/oauth/connections.ts +98 -17
  1019. package/src/cli/commands/oauth/providers.ts +45 -8
  1020. package/src/cli/commands/shotgun.ts +250 -0
  1021. package/src/cli/main-screen.tsx +3 -29
  1022. package/src/cli/program.ts +13 -3
  1023. package/src/cli/reference.ts +4 -2
  1024. package/src/cli.ts +159 -235
  1025. package/src/config/acp-schema.ts +47 -0
  1026. package/src/config/bundled-skills/_shared/CLI_RETRIEVAL_PATTERN.md +14 -12
  1027. package/src/config/bundled-skills/acp/SKILL.md +58 -0
  1028. package/src/config/bundled-skills/acp/TOOLS.json +79 -0
  1029. package/src/config/bundled-skills/{settings/tools/set-avatar.ts → acp/tools/acp-abort.ts} +2 -2
  1030. package/src/config/bundled-skills/acp/tools/acp-spawn.ts +12 -0
  1031. package/src/config/bundled-skills/acp/tools/acp-status.ts +12 -0
  1032. package/src/config/bundled-skills/app-builder/SKILL.md +22 -6
  1033. package/src/config/bundled-skills/browser/SKILL.md +2 -1
  1034. package/src/config/bundled-skills/browser/TOOLS.json +2 -2
  1035. package/src/config/bundled-skills/browser/tools/browser-wait-for-download.ts +1 -1
  1036. package/src/config/bundled-skills/chatgpt-import/SKILL.md +0 -1
  1037. package/src/config/bundled-skills/claude-code/SKILL.md +1 -2
  1038. package/src/config/bundled-skills/claude-code/TOOLS.json +1 -1
  1039. package/src/config/bundled-skills/computer-use/SKILL.md +1 -3
  1040. package/src/config/bundled-skills/contacts/SKILL.md +0 -1
  1041. package/src/config/bundled-skills/contacts/TOOLS.json +4 -0
  1042. package/src/config/bundled-skills/contacts/tools/google-contacts.ts +5 -1
  1043. package/src/config/bundled-skills/followups/SKILL.md +1 -1
  1044. package/src/config/bundled-skills/followups/TOOLS.json +7 -7
  1045. package/src/config/bundled-skills/gmail/SKILL.md +0 -1
  1046. package/src/config/bundled-skills/google-calendar/SKILL.md +0 -1
  1047. package/src/config/bundled-skills/google-calendar/tools/calendar-check-availability.ts +1 -1
  1048. package/src/config/bundled-skills/google-calendar/tools/calendar-create-event.ts +1 -1
  1049. package/src/config/bundled-skills/google-calendar/tools/calendar-get-event.ts +1 -1
  1050. package/src/config/bundled-skills/google-calendar/tools/calendar-list-events.ts +1 -1
  1051. package/src/config/bundled-skills/google-calendar/tools/calendar-rsvp.ts +1 -1
  1052. package/src/config/bundled-skills/google-calendar/tools/shared.ts +1 -5
  1053. package/src/config/bundled-skills/image-studio/SKILL.md +0 -1
  1054. package/src/config/bundled-skills/image-studio/tools/media-generate-image.ts +30 -13
  1055. package/src/config/bundled-skills/media-processing/services/preprocess.ts +5 -1
  1056. package/src/config/bundled-skills/media-processing/tools/analyze-keyframes.ts +3 -3
  1057. package/src/config/bundled-skills/messaging/SKILL.md +11 -13
  1058. package/src/config/bundled-skills/messaging/TOOLS.json +0 -4
  1059. package/src/config/bundled-skills/notifications/SKILL.md +4 -5
  1060. package/src/config/bundled-skills/notifications/TOOLS.json +1 -1
  1061. package/src/config/bundled-skills/notifications/tools/send-notification.ts +2 -2
  1062. package/src/config/bundled-skills/orchestration/SKILL.md +4 -1
  1063. package/src/config/bundled-skills/phone-calls/SKILL.md +20 -8
  1064. package/src/config/bundled-skills/schedule/SKILL.md +1 -1
  1065. package/src/config/bundled-skills/screen-watch/SKILL.md +0 -1
  1066. package/src/config/bundled-skills/sequences/SKILL.md +0 -1
  1067. package/src/config/bundled-skills/sequences/TOOLS.json +4 -4
  1068. package/src/config/bundled-skills/sequences/tools/sequence-create.ts +2 -1
  1069. package/src/config/bundled-skills/sequences/tools/sequence-update.ts +2 -1
  1070. package/src/config/bundled-skills/settings/SKILL.md +2 -3
  1071. package/src/config/bundled-skills/settings/TOOLS.json +0 -22
  1072. package/src/config/bundled-skills/skill-management/SKILL.md +0 -1
  1073. package/src/config/bundled-skills/skill-management/TOOLS.json +0 -8
  1074. package/src/config/bundled-skills/slack/SKILL.md +0 -1
  1075. package/src/config/bundled-skills/subagent/SKILL.md +2 -2
  1076. package/src/config/bundled-skills/subagent/TOOLS.json +2 -2
  1077. package/src/config/bundled-skills/transcribe/tools/transcribe-media.ts +35 -5
  1078. package/src/config/bundled-tool-registry.ts +9 -2
  1079. package/src/config/env.ts +44 -2
  1080. package/src/config/feature-flag-registry.json +161 -25
  1081. package/src/config/loader.ts +3 -0
  1082. package/src/config/raw-config-utils.ts +30 -0
  1083. package/src/config/schema-utils.ts +27 -0
  1084. package/src/config/schema.ts +54 -39
  1085. package/src/config/schemas/calls.ts +219 -152
  1086. package/src/config/schemas/channels.ts +118 -71
  1087. package/src/config/schemas/elevenlabs.ts +39 -24
  1088. package/src/config/schemas/heartbeat.ts +13 -4
  1089. package/src/config/schemas/inference.ts +155 -99
  1090. package/src/config/schemas/ingress.ts +100 -64
  1091. package/src/config/schemas/logging.ts +24 -15
  1092. package/src/config/schemas/mcp.ts +95 -44
  1093. package/src/config/schemas/memory-lifecycle.ts +70 -50
  1094. package/src/config/schemas/memory-processing.ts +46 -25
  1095. package/src/config/schemas/memory-retrieval.ts +206 -139
  1096. package/src/config/schemas/memory-storage.ts +113 -79
  1097. package/src/config/schemas/memory.ts +33 -28
  1098. package/src/config/schemas/notifications.ts +12 -7
  1099. package/src/config/schemas/platform.ts +62 -39
  1100. package/src/config/schemas/sandbox.ts +10 -5
  1101. package/src/config/schemas/security.ts +72 -41
  1102. package/src/config/schemas/services.ts +54 -0
  1103. package/src/config/schemas/skills.ts +131 -81
  1104. package/src/config/schemas/swarm.ts +78 -46
  1105. package/src/config/schemas/timeouts.ts +64 -41
  1106. package/src/config/schemas/workspace-git.ts +219 -162
  1107. package/src/config/skill-state.ts +6 -47
  1108. package/src/config/skills.ts +66 -271
  1109. package/src/config/types.ts +5 -0
  1110. package/src/contacts/contact-store.ts +19 -7
  1111. package/src/contacts/contacts-write.ts +13 -2
  1112. package/src/context/window-manager.ts +1 -1
  1113. package/src/credential-execution/approval-bridge.ts +350 -0
  1114. package/src/credential-execution/client.ts +414 -0
  1115. package/src/credential-execution/executable-discovery.ts +169 -0
  1116. package/src/credential-execution/feature-gates.ts +75 -0
  1117. package/src/credential-execution/managed-catalog.ts +155 -0
  1118. package/src/credential-execution/process-manager.ts +451 -0
  1119. package/src/daemon/approval-generators.ts +13 -7
  1120. package/src/daemon/assistant-attachments.ts +3 -3
  1121. package/src/daemon/config-watcher.ts +21 -13
  1122. package/src/daemon/context-overflow-policy.ts +5 -5
  1123. package/src/daemon/context-overflow-reducer.ts +2 -2
  1124. package/src/daemon/{session-agent-loop-handlers.ts → conversation-agent-loop-handlers.ts} +21 -21
  1125. package/src/daemon/{session-agent-loop.ts → conversation-agent-loop.ts} +93 -72
  1126. package/src/daemon/{session-attachments.ts → conversation-attachments.ts} +35 -9
  1127. package/src/daemon/{session-error.ts → conversation-error.ts} +34 -24
  1128. package/src/daemon/conversation-evictor.ts +204 -0
  1129. package/src/daemon/{session-history.ts → conversation-history.ts} +37 -33
  1130. package/src/daemon/{session-lifecycle.ts → conversation-lifecycle.ts} +16 -16
  1131. package/src/daemon/{session-memory.ts → conversation-memory.ts} +1 -1
  1132. package/src/daemon/{session-messaging.ts → conversation-messaging.ts} +9 -9
  1133. package/src/daemon/{session-notifiers.ts → conversation-notifiers.ts} +25 -25
  1134. package/src/daemon/{session-process.ts → conversation-process.ts} +128 -131
  1135. package/src/daemon/{session-queue-manager.ts → conversation-queue-manager.ts} +11 -8
  1136. package/src/daemon/{session-runtime-assembly.ts → conversation-runtime-assembly.ts} +17 -11
  1137. package/src/daemon/{session-skill-tools.ts → conversation-skill-tools.ts} +18 -18
  1138. package/src/daemon/{session-slash.ts → conversation-slash.ts} +35 -62
  1139. package/src/daemon/{session-surfaces.ts → conversation-surfaces.ts} +34 -34
  1140. package/src/daemon/{session-tool-setup.ts → conversation-tool-setup.ts} +41 -36
  1141. package/src/daemon/{session-usage.ts → conversation-usage.ts} +1 -1
  1142. package/src/daemon/{session-workspace.ts → conversation-workspace.ts} +3 -3
  1143. package/src/daemon/{session.ts → conversation.ts} +96 -73
  1144. package/src/daemon/doordash-steps.ts +9 -8
  1145. package/src/daemon/guardian-action-generators.ts +8 -2
  1146. package/src/daemon/handlers/config-channels.ts +7 -4
  1147. package/src/daemon/handlers/config-model.ts +33 -32
  1148. package/src/daemon/handlers/config-slack-channel.ts +28 -6
  1149. package/src/daemon/handlers/config-voice.ts +1 -2
  1150. package/src/daemon/handlers/{session-history.ts → conversation-history.ts} +4 -4
  1151. package/src/daemon/handlers/{sessions.ts → conversations.ts} +163 -183
  1152. package/src/daemon/handlers/recording.ts +20 -20
  1153. package/src/daemon/handlers/shared.ts +17 -17
  1154. package/src/daemon/handlers/skills.ts +164 -21
  1155. package/src/daemon/history-repair.ts +1 -1
  1156. package/src/daemon/host-bash-proxy.ts +11 -3
  1157. package/src/daemon/host-cu-proxy.ts +2 -2
  1158. package/src/daemon/host-file-proxy.ts +3 -3
  1159. package/src/daemon/lifecycle.ts +103 -78
  1160. package/src/daemon/main.ts +4 -0
  1161. package/src/daemon/media-visibility-policy.ts +10 -10
  1162. package/src/daemon/message-protocol.ts +11 -8
  1163. package/src/daemon/message-types/acp.ts +66 -0
  1164. package/src/daemon/message-types/computer-use.ts +4 -4
  1165. package/src/daemon/message-types/{sessions.ts → conversations.ts} +74 -80
  1166. package/src/daemon/message-types/documents.ts +2 -2
  1167. package/src/daemon/message-types/host-bash.ts +3 -1
  1168. package/src/daemon/message-types/host-cu.ts +1 -1
  1169. package/src/daemon/message-types/host-file.ts +3 -3
  1170. package/src/daemon/message-types/integrations.ts +2 -2
  1171. package/src/daemon/message-types/messages.ts +23 -23
  1172. package/src/daemon/message-types/notifications.ts +5 -5
  1173. package/src/daemon/message-types/settings.ts +1 -1
  1174. package/src/daemon/message-types/shared.ts +5 -3
  1175. package/src/daemon/message-types/skills.ts +1 -10
  1176. package/src/daemon/message-types/subagents.ts +2 -2
  1177. package/src/daemon/message-types/surfaces.ts +7 -7
  1178. package/src/daemon/message-types/work-items.ts +4 -4
  1179. package/src/daemon/parse-actual-tokens-from-error.test.ts +3 -7
  1180. package/src/daemon/providers-setup.ts +79 -0
  1181. package/src/daemon/seed-files.ts +7 -26
  1182. package/src/daemon/server.ts +452 -209
  1183. package/src/daemon/startup-error.ts +126 -0
  1184. package/src/daemon/tool-side-effects.ts +2 -18
  1185. package/src/daemon/trace-emitter.ts +3 -3
  1186. package/src/daemon/verification-session-intent.ts +1 -1
  1187. package/src/daemon/watch-handler.ts +23 -21
  1188. package/src/email/feature-gate.ts +23 -0
  1189. package/src/events/domain-events.ts +2 -8
  1190. package/src/events/tool-domain-event-publisher.ts +0 -8
  1191. package/src/events/tool-metrics-listener.ts +0 -7
  1192. package/src/export/formatter.ts +1 -1
  1193. package/src/followups/followup-store.ts +8 -5
  1194. package/src/followups/types.ts +2 -2
  1195. package/src/heartbeat/heartbeat-service.ts +1 -1
  1196. package/src/hooks/discovery.ts +3 -0
  1197. package/src/hooks/manager.ts +27 -2
  1198. package/src/hooks/types.ts +4 -1
  1199. package/src/inbound/platform-callback-registration.ts +24 -2
  1200. package/src/instrument.ts +37 -19
  1201. package/src/media/app-icon-generator.ts +3 -3
  1202. package/src/media/avatar-router.ts +3 -3
  1203. package/src/memory/app-git-service.ts +3 -3
  1204. package/src/memory/attachments-store.ts +92 -27
  1205. package/src/memory/canonical-guardian-store.ts +37 -27
  1206. package/src/memory/channel-verification-sessions.ts +6 -6
  1207. package/src/memory/checkpoints.ts +5 -0
  1208. package/src/memory/conversation-bootstrap.ts +2 -2
  1209. package/src/memory/conversation-crud.ts +147 -22
  1210. package/src/memory/conversation-key-store.ts +40 -4
  1211. package/src/memory/conversation-queries.ts +8 -6
  1212. package/src/memory/db-init.ts +46 -2
  1213. package/src/memory/embedding-backend.ts +71 -11
  1214. package/src/memory/external-conversation-store.ts +1 -1
  1215. package/src/memory/guardian-action-store.ts +3 -3
  1216. package/src/memory/indexer.ts +20 -9
  1217. package/src/memory/invite-store.ts +4 -4
  1218. package/src/memory/items-extractor.ts +48 -4
  1219. package/src/memory/job-handlers/backfill.ts +15 -8
  1220. package/src/memory/job-handlers/capability-cards.ts +420 -0
  1221. package/src/memory/job-handlers/cleanup.ts +1 -1
  1222. package/src/memory/job-handlers/thread-starters.ts +348 -0
  1223. package/src/memory/jobs-store.ts +4 -7
  1224. package/src/memory/jobs-worker.ts +8 -0
  1225. package/src/memory/migrations/033-scoped-approval-grants.ts +4 -4
  1226. package/src/memory/migrations/102-alter-table-columns.ts +5 -0
  1227. package/src/memory/migrations/105-contacts-and-triage.ts +3 -3
  1228. package/src/memory/migrations/111-media-assets.ts +1 -106
  1229. package/src/memory/migrations/121-canonical-guardian-requests.ts +5 -5
  1230. package/src/memory/migrations/159-drop-contact-interaction-columns.ts +5 -0
  1231. package/src/memory/migrations/161-drop-orphaned-media-tables.ts +18 -0
  1232. package/src/memory/migrations/162-guardian-timestamps-epoch-ms.ts +283 -0
  1233. package/src/memory/migrations/163-rename-notification-thread-columns.ts +35 -0
  1234. package/src/memory/migrations/164-rename-conversation-type-column.ts +19 -0
  1235. package/src/memory/migrations/165-rename-inbox-thread-state-table.ts +15 -0
  1236. package/src/memory/migrations/166-rename-followups-thread-id.ts +20 -0
  1237. package/src/memory/migrations/167-rename-sequence-enrollments-thread-id.ts +20 -0
  1238. package/src/memory/migrations/168-rename-sequence-steps-reply-key.ts +17 -0
  1239. package/src/memory/migrations/169-rename-gmail-provider-key-to-google.ts +64 -0
  1240. package/src/memory/migrations/170-thread-starters-table.ts +32 -0
  1241. package/src/memory/migrations/171-capability-card-columns.ts +43 -0
  1242. package/src/memory/migrations/index.ts +11 -0
  1243. package/src/memory/migrations/registry.ts +19 -0
  1244. package/src/memory/schema/calls.ts +1 -68
  1245. package/src/memory/schema/contacts.ts +3 -3
  1246. package/src/memory/schema/conversations.ts +2 -2
  1247. package/src/memory/schema/guardian.ts +9 -9
  1248. package/src/memory/schema/memory-core.ts +37 -0
  1249. package/src/memory/schema/notifications.ts +4 -4
  1250. package/src/memory/schema/tasks.ts +1 -1
  1251. package/src/memory/scoped-approval-grants.ts +14 -14
  1252. package/src/memory/search/types.ts +3 -3
  1253. package/src/memory/thread-starters-cadence.ts +107 -0
  1254. package/src/memory/turn-events-store.ts +48 -0
  1255. package/src/messaging/providers/telegram-bot/adapter.ts +1 -1
  1256. package/src/notifications/AGENTS.md +1 -1
  1257. package/src/notifications/README.md +103 -103
  1258. package/src/notifications/adapters/slack.ts +3 -3
  1259. package/src/notifications/adapters/telegram.ts +3 -3
  1260. package/src/notifications/broadcaster.ts +40 -40
  1261. package/src/notifications/{thread-candidates.ts → conversation-candidates.ts} +18 -18
  1262. package/src/notifications/conversation-pairing.ts +35 -31
  1263. package/src/notifications/{thread-seed-composer.ts → conversation-seed-composer.ts} +9 -9
  1264. package/src/notifications/decision-engine.ts +105 -82
  1265. package/src/notifications/deliveries-store.ts +14 -14
  1266. package/src/notifications/emit-signal.ts +13 -13
  1267. package/src/notifications/signal.ts +2 -2
  1268. package/src/notifications/types.ts +16 -12
  1269. package/src/oauth/byo-connection.test.ts +1 -1
  1270. package/src/oauth/oauth-store.ts +37 -15
  1271. package/src/oauth/platform-connection.test.ts +2 -2
  1272. package/src/oauth/provider-behaviors.ts +2 -1
  1273. package/src/oauth/seed-providers.ts +3 -11
  1274. package/src/oauth/token-persistence.ts +41 -25
  1275. package/src/outbound-proxy/index.ts +27 -3
  1276. package/src/permissions/checker.ts +15 -2
  1277. package/src/permissions/prompter.ts +3 -3
  1278. package/src/permissions/secret-prompter.ts +2 -2
  1279. package/src/permissions/types.ts +2 -2
  1280. package/src/prompts/__tests__/build-cli-reference-section.test.ts +60 -9
  1281. package/src/prompts/system-prompt.ts +177 -236
  1282. package/src/prompts/templates/SOUL.md +1 -1
  1283. package/src/prompts/templates/UPDATES.md +0 -12
  1284. package/src/prompts/update-bulletin-format.ts +16 -0
  1285. package/src/prompts/update-bulletin.ts +18 -6
  1286. package/src/providers/anthropic/client.ts +135 -11
  1287. package/src/providers/managed-proxy/context.ts +26 -0
  1288. package/src/providers/provider-availability.ts +39 -0
  1289. package/src/providers/provider-send-message.ts +20 -6
  1290. package/src/providers/registry.ts +121 -82
  1291. package/src/runtime/AGENTS.md +5 -5
  1292. package/src/runtime/access-request-helper.ts +2 -2
  1293. package/src/runtime/actor-trust-resolver.ts +2 -2
  1294. package/src/runtime/approval-conversation-turn.ts +2 -2
  1295. package/src/runtime/assistant-event-hub.ts +9 -9
  1296. package/src/runtime/assistant-event.ts +5 -5
  1297. package/src/runtime/auth/__tests__/context.test.ts +2 -2
  1298. package/src/runtime/auth/__tests__/external-assistant-id.test.ts +88 -0
  1299. package/src/runtime/auth/__tests__/guard-tests.test.ts +60 -0
  1300. package/src/runtime/auth/__tests__/local-auth-context.test.ts +4 -4
  1301. package/src/runtime/auth/__tests__/middleware.test.ts +2 -2
  1302. package/src/runtime/auth/__tests__/subject.test.ts +6 -6
  1303. package/src/runtime/auth/context.ts +1 -1
  1304. package/src/runtime/auth/credential-service.ts +1 -1
  1305. package/src/runtime/auth/external-assistant-id.ts +36 -17
  1306. package/src/runtime/auth/route-policy.ts +17 -0
  1307. package/src/runtime/auth/subject.ts +7 -7
  1308. package/src/runtime/auth/types.ts +1 -1
  1309. package/src/runtime/channel-approval-types.ts +1 -1
  1310. package/src/runtime/channel-approvals.ts +9 -6
  1311. package/src/runtime/channel-invite-transport.ts +10 -7
  1312. package/src/runtime/channel-readiness-service.ts +5 -2
  1313. package/src/runtime/channel-retry-sweep.ts +1 -1
  1314. package/src/runtime/channel-verification-service.ts +2 -2
  1315. package/src/runtime/confirmation-request-guardian-bridge.ts +3 -3
  1316. package/src/runtime/{session-approval-overrides.ts → conversation-approval-overrides.ts} +6 -6
  1317. package/src/runtime/guardian-action-grant-minter.ts +2 -4
  1318. package/src/runtime/guardian-action-service.ts +2 -2
  1319. package/src/runtime/guardian-decision-types.ts +13 -8
  1320. package/src/runtime/guardian-reply-router.ts +4 -4
  1321. package/src/runtime/http-server.ts +70 -33
  1322. package/src/runtime/http-types.ts +19 -15
  1323. package/src/runtime/invite-redemption-service.ts +8 -3
  1324. package/src/runtime/local-actor-identity.ts +9 -7
  1325. package/src/runtime/pending-interactions.ts +8 -8
  1326. package/src/runtime/routes/acp-routes.ts +170 -0
  1327. package/src/runtime/routes/approval-routes.ts +3 -3
  1328. package/src/runtime/routes/approval-strategies/guardian-callback-strategy.ts +1 -1
  1329. package/src/runtime/routes/attachment-routes.ts +2 -2
  1330. package/src/runtime/routes/avatar-routes.ts +83 -0
  1331. package/src/runtime/routes/btw-routes.ts +27 -13
  1332. package/src/runtime/routes/canonical-guardian-expiry-sweep.ts +1 -1
  1333. package/src/runtime/routes/channel-route-shared.ts +5 -3
  1334. package/src/runtime/routes/channel-verification-routes.ts +3 -3
  1335. package/src/runtime/routes/{session-management-routes.ts → conversation-management-routes.ts} +103 -22
  1336. package/src/runtime/routes/{session-query-routes.ts → conversation-query-routes.ts} +22 -19
  1337. package/src/runtime/routes/conversation-routes.ts +147 -164
  1338. package/src/runtime/routes/debug-routes.ts +8 -2
  1339. package/src/runtime/routes/diagnostics-routes.ts +16 -17
  1340. package/src/runtime/routes/events-routes.ts +1 -1
  1341. package/src/runtime/routes/guardian-action-routes.ts +4 -4
  1342. package/src/runtime/routes/guardian-approval-interception.ts +1 -1
  1343. package/src/runtime/routes/host-bash-routes.ts +1 -1
  1344. package/src/runtime/routes/host-cu-routes.ts +1 -1
  1345. package/src/runtime/routes/host-file-routes.ts +1 -1
  1346. package/src/runtime/routes/inbound-message-handler.ts +1 -1
  1347. package/src/runtime/routes/inbound-stages/background-dispatch.ts +1 -1
  1348. package/src/runtime/routes/inbound-stages/escalation-intercept.ts +1 -1
  1349. package/src/runtime/routes/inbound-stages/secret-ingress-check.ts +1 -1
  1350. package/src/runtime/routes/log-export-routes.ts +360 -40
  1351. package/src/runtime/routes/recording-routes.ts +5 -5
  1352. package/src/runtime/routes/schedule-routes.ts +13 -7
  1353. package/src/runtime/routes/secret-routes.ts +178 -18
  1354. package/src/runtime/routes/settings-routes.ts +23 -10
  1355. package/src/runtime/routes/skills-routes.ts +38 -0
  1356. package/src/runtime/routes/subagents-routes.ts +10 -10
  1357. package/src/runtime/routes/surface-action-routes.ts +45 -45
  1358. package/src/runtime/routes/surface-content-routes.ts +18 -18
  1359. package/src/runtime/routes/thread-starter-routes.ts +294 -0
  1360. package/src/runtime/routes/watch-routes.ts +6 -6
  1361. package/src/runtime/routes/work-items-routes.test.ts +109 -0
  1362. package/src/runtime/routes/work-items-routes.ts +47 -46
  1363. package/src/runtime/tool-grant-request-helper.ts +3 -3
  1364. package/src/runtime/trust-context-resolver.ts +1 -1
  1365. package/src/schedule/scheduler.ts +14 -12
  1366. package/src/security/credential-backend.ts +29 -5
  1367. package/src/security/encrypted-store.ts +64 -5
  1368. package/src/security/keychain-broker-client.ts +45 -12
  1369. package/src/security/secure-keys.ts +46 -0
  1370. package/src/security/token-manager.ts +67 -167
  1371. package/src/sequence/engine.ts +12 -11
  1372. package/src/sequence/reply-matcher.ts +16 -13
  1373. package/src/sequence/store.ts +10 -7
  1374. package/src/sequence/types.ts +2 -2
  1375. package/src/signals/bash.ts +36 -3
  1376. package/src/signals/cancel.ts +14 -17
  1377. package/src/signals/confirm.ts +4 -7
  1378. package/src/signals/conversation-undo.ts +16 -20
  1379. package/src/signals/event-stream.ts +187 -0
  1380. package/src/signals/shotgun.ts +200 -0
  1381. package/src/signals/trust-rule.ts +3 -6
  1382. package/src/signals/user-message.ts +146 -0
  1383. package/src/skills/catalog-install.ts +1 -1
  1384. package/src/skills/managed-store.ts +0 -13
  1385. package/src/subagent/manager.ts +89 -71
  1386. package/src/subagent/types.ts +5 -5
  1387. package/src/swarm/backend-claude-code.ts +1 -1
  1388. package/src/tasks/SPEC.md +5 -5
  1389. package/src/tasks/task-runner.ts +1 -1
  1390. package/src/telemetry/types.ts +26 -0
  1391. package/src/telemetry/usage-telemetry-reporter.test.ts +145 -24
  1392. package/src/telemetry/usage-telemetry-reporter.ts +79 -42
  1393. package/src/tools/AGENTS.md +26 -0
  1394. package/src/tools/acp/abort.ts +32 -0
  1395. package/src/tools/acp/spawn.ts +70 -0
  1396. package/src/tools/acp/status.ts +31 -0
  1397. package/src/tools/assets/materialize.ts +34 -19
  1398. package/src/tools/assets/search.ts +13 -13
  1399. package/src/tools/browser/browser-execution.ts +63 -33
  1400. package/src/tools/browser/browser-handoff.ts +12 -9
  1401. package/src/tools/browser/browser-manager.ts +88 -78
  1402. package/src/tools/browser/browser-screencast.ts +30 -28
  1403. package/src/tools/calls/call-start.ts +1 -1
  1404. package/src/tools/calls/call-status.ts +1 -1
  1405. package/src/tools/claude-code/claude-code.ts +9 -9
  1406. package/src/tools/credential-execution/make-authenticated-request.ts +198 -0
  1407. package/src/tools/credential-execution/manage-secure-command-tool.ts +372 -0
  1408. package/src/tools/credential-execution/run-authenticated-command.ts +261 -0
  1409. package/src/tools/credentials/broker.ts +1 -1
  1410. package/src/tools/credentials/metadata-store.ts +46 -227
  1411. package/src/tools/credentials/resolve.ts +2 -1
  1412. package/src/tools/document/document-tool.ts +3 -3
  1413. package/src/tools/executor.ts +144 -9
  1414. package/src/tools/followups/followup_create.ts +8 -7
  1415. package/src/tools/followups/followup_list.ts +3 -1
  1416. package/src/tools/followups/followup_resolve.ts +8 -7
  1417. package/src/tools/host-filesystem/edit.ts +1 -1
  1418. package/src/tools/host-filesystem/read.ts +1 -1
  1419. package/src/tools/host-filesystem/write.ts +1 -1
  1420. package/src/tools/host-terminal/host-shell.ts +54 -7
  1421. package/src/tools/memory/definitions.ts +1 -1
  1422. package/src/tools/memory/handlers.ts +1 -1
  1423. package/src/tools/network/script-proxy/session-manager.ts +290 -515
  1424. package/src/tools/network/web-fetch.ts +1 -1
  1425. package/src/tools/network/web-search.ts +4 -4
  1426. package/src/tools/permission-checker.ts +38 -23
  1427. package/src/tools/registry.ts +14 -2
  1428. package/src/tools/secret-detection-handler.ts +3 -8
  1429. package/src/tools/side-effects.ts +2 -1
  1430. package/src/tools/skills/load.ts +15 -1
  1431. package/src/tools/skills/sandbox-runner.ts +0 -1
  1432. package/src/tools/skills/scaffold-managed.ts +0 -8
  1433. package/src/tools/subagent/abort.ts +1 -1
  1434. package/src/tools/subagent/message.ts +2 -2
  1435. package/src/tools/subagent/read.ts +2 -2
  1436. package/src/tools/subagent/spawn.ts +1 -1
  1437. package/src/tools/subagent/status.ts +10 -4
  1438. package/src/tools/swarm/delegate.ts +12 -12
  1439. package/src/tools/system/avatar-generator.ts +52 -79
  1440. package/src/tools/terminal/backends/native.ts +48 -8
  1441. package/src/tools/terminal/backends/types.ts +7 -0
  1442. package/src/tools/terminal/safe-env.ts +4 -1
  1443. package/src/tools/terminal/shell.ts +106 -2
  1444. package/src/tools/tool-approval-handler.ts +2 -17
  1445. package/src/tools/tool-manifest.ts +43 -0
  1446. package/src/tools/types.ts +28 -5
  1447. package/src/tools/watch/screen-watch.ts +6 -6
  1448. package/src/tools/watch/watch-state.ts +33 -26
  1449. package/src/util/clipboard.ts +1 -1
  1450. package/src/util/device-id.ts +101 -0
  1451. package/src/util/platform.ts +10 -0
  1452. package/src/util/silently.ts +7 -8
  1453. package/src/watcher/engine.ts +1 -1
  1454. package/src/work-items/resolve-required-tools.test.ts +37 -0
  1455. package/src/work-items/resolve-required-tools.ts +26 -0
  1456. package/src/work-items/work-item-runner.ts +29 -27
  1457. package/src/workspace/commit-message-enrichment-service.ts +1 -1
  1458. package/src/workspace/commit-message-provider.ts +2 -2
  1459. package/src/workspace/git-service.ts +27 -14
  1460. package/src/workspace/migrations/001-avatar-rename.ts +25 -0
  1461. package/src/workspace/migrations/002-backfill-installation-id.ts +75 -0
  1462. package/src/workspace/migrations/003-seed-device-id.ts +101 -0
  1463. package/src/workspace/migrations/004-extract-collect-usage-data.ts +50 -0
  1464. package/src/workspace/migrations/005-add-send-diagnostics.ts +12 -0
  1465. package/src/workspace/migrations/006-services-config.ts +132 -0
  1466. package/src/workspace/migrations/registry.ts +20 -0
  1467. package/src/workspace/migrations/runner.ts +117 -0
  1468. package/src/workspace/migrations/types.ts +11 -0
  1469. package/src/workspace/provider-commit-message-generator.ts +7 -4
  1470. package/src/workspace/turn-commit.ts +13 -13
  1471. package/tsconfig.json +0 -1
  1472. package/src/__tests__/handlers-task-submit-slash.test.ts +0 -39
  1473. package/src/__tests__/session-slash-known.test.ts +0 -477
  1474. package/src/__tests__/slash-commands-catalog.test.ts +0 -94
  1475. package/src/__tests__/slash-commands-parser.test.ts +0 -127
  1476. package/src/__tests__/slash-commands-resolver.test.ts +0 -231
  1477. package/src/__tests__/slash-commands-rewrite.test.ts +0 -40
  1478. package/src/cli/http-client.ts +0 -76
  1479. package/src/daemon/install-cli-launchers.ts +0 -170
  1480. package/src/daemon/session-evictor.ts +0 -203
  1481. package/src/skills/slash-commands.ts +0 -203
  1482. /package/src/__tests__/{script-proxy-session-runtime.test.ts → script-proxy-conversation-runtime.test.ts} +0 -0
  1483. /package/src/daemon/{session-media-retry.ts → conversation-media-retry.ts} +0 -0
@@ -1,8 +1,8 @@
1
1
  /**
2
- * Bridge between voice relay and the daemon session pipeline.
2
+ * Bridge between voice relay and the daemon conversation pipeline.
3
3
  *
4
4
  * Provides a `startVoiceTurn()` function that manages a voice turn
5
- * directly through the session, translating agent-loop events into
5
+ * directly through the conversation, translating agent-loop events into
6
6
  * simple callbacks suitable for real-time TTS streaming.
7
7
  *
8
8
  * Dependency injection follows the same module-level setter pattern used by
@@ -13,10 +13,10 @@
13
13
  import { consumeGrantForInvocation } from "../approvals/approval-primitive.js";
14
14
  import type { ChannelId } from "../channels/types.js";
15
15
  import { getConfig } from "../config/loader.js";
16
+ import type { Conversation } from "../daemon/conversation.js";
17
+ import type { TrustContext } from "../daemon/conversation-runtime-assembly.js";
18
+ import { resolveChannelCapabilities } from "../daemon/conversation-runtime-assembly.js";
16
19
  import type { ServerMessage } from "../daemon/message-protocol.js";
17
- import type { Session } from "../daemon/session.js";
18
- import type { TrustContext } from "../daemon/session-runtime-assembly.js";
19
- import { resolveChannelCapabilities } from "../daemon/session-runtime-assembly.js";
20
20
  import { buildAssistantEvent } from "../runtime/assistant-event.js";
21
21
  import { assistantEventHub } from "../runtime/assistant-event-hub.js";
22
22
  import { DAEMON_INTERNAL_ASSISTANT_ID } from "../runtime/assistant-scope.js";
@@ -36,14 +36,14 @@ const log = getLogger("voice-session-bridge");
36
36
  // ---------------------------------------------------------------------------
37
37
 
38
38
  export interface VoiceBridgeDeps {
39
- getOrCreateSession: (
39
+ getOrCreateConversation: (
40
40
  conversationId: string,
41
41
  transport?: {
42
42
  channelId: ChannelId;
43
43
  hints?: string[];
44
44
  uxBrief?: string;
45
45
  },
46
- ) => Promise<Session>;
46
+ ) => Promise<Conversation>;
47
47
  resolveAttachments: (attachmentIds: string[]) => Array<{
48
48
  id: string;
49
49
  filename: string;
@@ -220,9 +220,9 @@ function buildVoiceCallControlPrompt(opts: {
220
220
  // ---------------------------------------------------------------------------
221
221
 
222
222
  /**
223
- * Execute a single voice turn through the daemon session pipeline.
223
+ * Execute a single voice turn through the daemon conversation pipeline.
224
224
  *
225
- * Manages the session directly with voice-specific defaults:
225
+ * Manages the conversation directly with voice-specific defaults:
226
226
  * - sourceChannel: 'phone'
227
227
  * - event sink wired to the provided callbacks
228
228
  * - abort propagated from the returned handle
@@ -267,7 +267,7 @@ export async function startVoiceTurn(
267
267
  const forceStrictSideEffects = isGuardian ? undefined : true;
268
268
 
269
269
  // Replace the [CALL_OPENING] marker with a neutral instruction before
270
- // persisting. The marker must not appear as a user message in session
270
+ // persisting. The marker must not appear as a user message in conversation
271
271
  // history — after a barge-in interruption the next turn would replay
272
272
  // the stale marker and potentially retrigger opener behavior.
273
273
  const persistedContent =
@@ -287,57 +287,60 @@ export async function startVoiceTurn(
287
287
  isCallerGuardian,
288
288
  });
289
289
 
290
- // Get or create the session
290
+ // Get or create the conversation
291
291
  const transport = {
292
292
  channelId: "phone" as ChannelId,
293
293
  };
294
- const session = await deps.getOrCreateSession(opts.conversationId, transport);
294
+ const conversation = await deps.getOrCreateConversation(
295
+ opts.conversationId,
296
+ transport,
297
+ );
295
298
 
296
- if (session.isProcessing()) {
299
+ if (conversation.isProcessing()) {
297
300
  // Voice barge-in can race with turn teardown. Wait briefly for the
298
301
  // previous turn to finish aborting before giving up.
299
302
  const maxWaitMs = 3000;
300
303
  const pollIntervalMs = 50;
301
304
  let waited = 0;
302
- while (session.isProcessing() && waited < maxWaitMs) {
305
+ while (conversation.isProcessing() && waited < maxWaitMs) {
303
306
  if (opts.signal?.aborted) {
304
- throw new Error("Turn aborted while waiting for session");
307
+ throw new Error("Turn aborted while waiting for conversation");
305
308
  }
306
309
  await new Promise((resolve) => setTimeout(resolve, pollIntervalMs));
307
310
  waited += pollIntervalMs;
308
311
  }
309
312
  if (opts.signal?.aborted) {
310
- throw new Error("Turn aborted while waiting for session");
313
+ throw new Error("Turn aborted while waiting for conversation");
311
314
  }
312
- if (session.isProcessing()) {
313
- throw new Error("Session is already processing a message");
315
+ if (conversation.isProcessing()) {
316
+ throw new Error("Conversation is already processing a message");
314
317
  }
315
318
  }
316
319
 
317
- // Configure session for this voice turn
320
+ // Configure conversation for this voice turn
318
321
  const strictSideEffects =
319
322
  forceStrictSideEffects ??
320
323
  deps.deriveDefaultStrictSideEffects(opts.conversationId);
321
- session.memoryPolicy = {
322
- ...session.memoryPolicy,
324
+ conversation.memoryPolicy = {
325
+ ...conversation.memoryPolicy,
323
326
  strictSideEffects,
324
327
  };
325
- session.setAssistantId(opts.assistantId ?? DAEMON_INTERNAL_ASSISTANT_ID);
326
- session.callSessionId = opts.callSessionId;
327
- session.setTrustContext(opts.trustContext ?? null);
328
- session.setCommandIntent(null);
329
- session.setTurnChannelContext({
328
+ conversation.setAssistantId(opts.assistantId ?? DAEMON_INTERNAL_ASSISTANT_ID);
329
+ conversation.callSessionId = opts.callSessionId;
330
+ conversation.setTrustContext(opts.trustContext ?? null);
331
+ conversation.setCommandIntent(null);
332
+ conversation.setTurnChannelContext({
330
333
  userMessageChannel: "phone",
331
334
  assistantMessageChannel: "phone",
332
335
  });
333
- session.setChannelCapabilities(
336
+ conversation.setChannelCapabilities(
334
337
  resolveChannelCapabilities("phone", undefined),
335
338
  );
336
- session.setVoiceCallControlPrompt(voiceCallControlPrompt);
339
+ conversation.setVoiceCallControlPrompt(voiceCallControlPrompt);
337
340
 
338
341
  const requestId = crypto.randomUUID();
339
342
  const turnId = crypto.randomUUID();
340
- const messageId = await session.persistUserMessage(
343
+ const messageId = await conversation.persistUserMessage(
341
344
  persistedContent,
342
345
  [],
343
346
  requestId,
@@ -346,17 +349,17 @@ export async function startVoiceTurn(
346
349
  // Serialized publish chain so hub subscribers observe events in order.
347
350
  let hubChain: Promise<void> = Promise.resolve();
348
351
  const publishToHub = (msg: ServerMessage): void => {
349
- // ServerMessage is a large union; sessionId exists on most but not all variants.
350
- const msgSessionId =
351
- "sessionId" in msg &&
352
- typeof (msg as { sessionId?: unknown }).sessionId === "string"
353
- ? (msg as { sessionId: string }).sessionId
352
+ // ServerMessage is a large union; conversationId exists on most but not all variants.
353
+ const msgConversationId =
354
+ "conversationId" in msg &&
355
+ typeof (msg as { conversationId?: unknown }).conversationId === "string"
356
+ ? (msg as { conversationId: string }).conversationId
354
357
  : undefined;
355
- const resolvedSessionId = msgSessionId ?? opts.conversationId;
358
+ const resolvedConversationId = msgConversationId ?? opts.conversationId;
356
359
  const event = buildAssistantEvent(
357
360
  DAEMON_INTERNAL_ASSISTANT_ID,
358
361
  msg,
359
- resolvedSessionId,
362
+ resolvedConversationId,
360
363
  );
361
364
  hubChain = (async () => {
362
365
  await hubChain;
@@ -371,12 +374,12 @@ export async function startVoiceTurn(
371
374
  })();
372
375
  };
373
376
 
374
- // Hook into session to intercept confirmation_request and secret_request events.
377
+ // Hook into conversation to intercept confirmation_request and secret_request events.
375
378
  // Voice auto-denies/auto-allows/auto-resolves these since there's no interactive UI.
376
379
  const autoDeny = !isGuardian;
377
380
  const autoAllow = isGuardian;
378
381
  let lastError: string | null = null;
379
- session.updateClient(async (msg: ServerMessage) => {
382
+ conversation.updateClient(async (msg: ServerMessage) => {
380
383
  if (msg.type === "confirmation_request") {
381
384
  if (autoDeny) {
382
385
  // Non-guardian voice callers have no interactive approval UI.
@@ -416,7 +419,7 @@ export async function startVoiceTurn(
416
419
  },
417
420
  "Consumed scoped grant — allowing non-guardian voice confirmation",
418
421
  );
419
- session.handleConfirmationResponse(
422
+ conversation.handleConfirmationResponse(
420
423
  msg.requestId,
421
424
  "allow",
422
425
  undefined,
@@ -437,7 +440,7 @@ export async function startVoiceTurn(
437
440
  { turnId, toolName: msg.toolName },
438
441
  "Auto-denying confirmation request for non-guardian voice turn (no matching scoped grant)",
439
442
  );
440
- session.handleConfirmationResponse(
443
+ conversation.handleConfirmationResponse(
441
444
  msg.requestId,
442
445
  "deny",
443
446
  undefined,
@@ -452,7 +455,7 @@ export async function startVoiceTurn(
452
455
  { turnId, toolName: msg.toolName },
453
456
  "Auto-approving confirmation request for guardian voice turn",
454
457
  );
455
- session.handleConfirmationResponse(
458
+ conversation.handleConfirmationResponse(
456
459
  msg.requestId,
457
460
  "allow",
458
461
  undefined,
@@ -468,7 +471,7 @@ export async function startVoiceTurn(
468
471
  { turnId, service: msg.service, field: msg.field },
469
472
  "Auto-resolving secret request for voice turn (no secret-entry UI)",
470
473
  );
471
- session.handleSecretResponse(msg.requestId, undefined, "store");
474
+ conversation.handleSecretResponse(msg.requestId, undefined, "store");
472
475
  publishToHub(msg);
473
476
  return;
474
477
  }
@@ -479,26 +482,26 @@ export async function startVoiceTurn(
479
482
  const cleanup = () => {
480
483
  // Reset channel capabilities so a subsequent desktop session on the
481
484
  // same conversation is not incorrectly treated as a voice client.
482
- session.setChannelCapabilities(null);
483
- session.setTrustContext(null);
484
- session.setCommandIntent(null);
485
- session.setAssistantId("self");
486
- session.setVoiceCallControlPrompt(null);
487
- session.callSessionId = undefined;
488
- // Reset the session's client callback to a no-op so the stale
489
- // closure doesn't intercept events from future turns on the same session.
490
- session.updateClient(() => {}, true);
485
+ conversation.setChannelCapabilities(null);
486
+ conversation.setTrustContext(null);
487
+ conversation.setCommandIntent(null);
488
+ conversation.setAssistantId("self");
489
+ conversation.setVoiceCallControlPrompt(null);
490
+ conversation.callSessionId = undefined;
491
+ // Reset the conversation's client callback to a no-op so the stale
492
+ // closure doesn't intercept events from future turns on the same conversation.
493
+ conversation.updateClient(() => {}, true);
491
494
  };
492
495
 
493
496
  void (async () => {
494
497
  try {
495
- await session.runAgentLoop(
498
+ await conversation.runAgentLoop(
496
499
  persistedContent,
497
500
  messageId,
498
501
  (msg: ServerMessage) => {
499
502
  if (msg.type === "error") {
500
503
  lastError = msg.message;
501
- } else if (msg.type === "session_error") {
504
+ } else if (msg.type === "conversation_error") {
502
505
  lastError = msg.userMessage;
503
506
  }
504
507
  publishToHub(msg);
@@ -514,7 +517,7 @@ export async function startVoiceTurn(
514
517
  eventSink.onMessageComplete();
515
518
  } else if (msg.type === "error") {
516
519
  eventSink.onError(msg.message);
517
- } else if (msg.type === "session_error") {
520
+ } else if (msg.type === "conversation_error") {
518
521
  eventSink.onError(msg.userMessage);
519
522
  } else if (msg.type === "tool_use_start") {
520
523
  eventSink.onToolUse(msg.toolName, msg.input);
@@ -539,8 +542,8 @@ export async function startVoiceTurn(
539
542
  })();
540
543
 
541
544
  const abortFn = () => {
542
- if (session.currentRequestId === requestId) {
543
- session.abort();
545
+ if (conversation.currentRequestId === requestId) {
546
+ conversation.abort();
544
547
  }
545
548
  };
546
549
 
package/src/cli/AGENTS.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  ## Purpose
4
4
 
5
- Commands in `assistant/src/cli/` are scoped to a **single running assistant instance**. They operate on the assistant's local state — config, memory, contacts, trust rules, sessions, autonomy, etc. — and run within the context of the assistant's workspace.
5
+ Commands in `assistant/src/cli/` are scoped to a **single running assistant instance**. They operate on the assistant's local state — config, memory, contacts, trust rules, conversations, autonomy, etc. — and run within the context of the assistant's workspace.
6
6
 
7
7
  This contrasts with `cli/`, which manages the **lifecycle of assistant instances** (create, start, stop, delete) and operates across instances. See `cli/AGENTS.md`.
8
8
 
@@ -15,7 +15,7 @@ This contrasts with `cli/`, which manages the **lifecycle of assistant instances
15
15
  | Implicitly scoped to the running assistant | Requires specifying which assistant to target |
16
16
  | May require or start the daemon | Works without an assistant process running |
17
17
 
18
- Examples: `config`, `contacts`, `memory`, `autonomy`, `sessions`, `doctor` belong here. `hatch`, `wake`, `sleep`, `retire`, `ps`, `ssh` belong in `cli/`.
18
+ Examples: `config`, `contacts`, `memory`, `autonomy`, `conversations`, `doctor` belong here. `hatch`, `wake`, `sleep`, `retire`, `ps`, `ssh` belong in `cli/`.
19
19
 
20
20
  ## Conventions
21
21
 
@@ -0,0 +1,281 @@
1
+ import { existsSync, readFileSync } from "node:fs";
2
+ import { join } from "node:path";
3
+
4
+ import type { Command } from "commander";
5
+
6
+ import { renderCharacterAscii } from "../../avatar/ascii-renderer.js";
7
+ import { getCharacterComponents } from "../../avatar/character-components.js";
8
+ import {
9
+ type CharacterTraits,
10
+ writeTraitsAndRenderAvatar,
11
+ } from "../../avatar/traits-png-sync.js";
12
+ import { getWorkspaceDir } from "../../util/platform.js";
13
+ import { log } from "../logger.js";
14
+ import { writeOutput } from "../output.js";
15
+
16
+ export function registerAvatarCommand(program: Command): void {
17
+ const avatar = program
18
+ .command("avatar")
19
+ .description("Manage the assistant's avatar");
20
+
21
+ avatar.addHelpText(
22
+ "after",
23
+ `
24
+ The avatar system supports two modes:
25
+
26
+ 1. Native character — a procedurally generated character with configurable
27
+ body shape, eye style, and color. The character is rendered as both a
28
+ PNG image and ASCII art. Use the "character" subcommand group to manage
29
+ native character avatars.
30
+
31
+ 2. Custom image — an externally provided image file placed directly in the
32
+ avatar directory. Custom images are not managed through this CLI.
33
+
34
+ Files are stored in ~/.vellum/workspace/data/avatar/:
35
+ character-traits.json Current trait selection (bodyShape, eyeStyle, color)
36
+ avatar-image.png Rendered PNG of the character
37
+ character-ascii.txt ASCII art representation of the character
38
+
39
+ Examples:
40
+ $ assistant avatar character update --body-shape blob --eye-style curious --color green
41
+ $ assistant avatar character components
42
+ $ assistant avatar character ascii`,
43
+ );
44
+
45
+ const character = avatar
46
+ .command("character")
47
+ .description("Manage the native character avatar");
48
+
49
+ character.addHelpText(
50
+ "after",
51
+ `
52
+ A native character avatar is composed of three traits:
53
+ - body shape: the silhouette of the character (e.g. blob, cloud, star)
54
+ - eye style: the expression of the character's eyes (e.g. curious, gentle)
55
+ - color: the body fill color (e.g. green, purple, teal)
56
+
57
+ Use "character components" to list all available values for each trait.
58
+ Use "character update" to set traits and regenerate the avatar files.
59
+ Use "character ascii" to preview the current character in the terminal.
60
+
61
+ Examples:
62
+ $ assistant avatar character update --body-shape blob --eye-style curious --color green
63
+ $ assistant avatar character components --json
64
+ $ assistant avatar character ascii --width 40`,
65
+ );
66
+
67
+ character
68
+ .command("update")
69
+ .description("Set character traits and regenerate avatar")
70
+ .requiredOption(
71
+ "--body-shape <shape>",
72
+ "Body shape (e.g. blob, cloud, star)",
73
+ )
74
+ .requiredOption(
75
+ "--eye-style <style>",
76
+ "Eye style (e.g. curious, gentle, goofy)",
77
+ )
78
+ .requiredOption("--color <color>", "Body color (e.g. green, purple, teal)")
79
+ .addHelpText(
80
+ "after",
81
+ `
82
+ Sets the three character traits and regenerates all avatar files (PNG image,
83
+ ASCII art, and traits JSON). Each trait value must be a valid ID from the
84
+ component set — use "assistant avatar character components" to list valid IDs.
85
+
86
+ The --body-shape flag sets the character silhouette. Valid values:
87
+ blob, cloud, sprout, star, ghost, urchin, stack, flower, burst, ninja
88
+
89
+ The --eye-style flag sets the eye expression. Valid values:
90
+ grumpy, angry, curious, goofy, surprised, bashful, gentle, quirky, dazed
91
+
92
+ The --color flag sets the body fill color. Valid values:
93
+ green, orange, pink, purple, teal, yellow
94
+
95
+ On success, writes three files to ~/.vellum/workspace/data/avatar/:
96
+ character-traits.json, avatar-image.png, character-ascii.txt
97
+
98
+ Examples:
99
+ $ assistant avatar character update --body-shape blob --eye-style curious --color green
100
+ $ assistant avatar character update --body-shape star --eye-style goofy --color purple
101
+ $ assistant avatar character update --body-shape ghost --eye-style gentle --color teal`,
102
+ )
103
+ .action(
104
+ async (opts: { bodyShape: string; eyeStyle: string; color: string }) => {
105
+ const components = getCharacterComponents();
106
+
107
+ const validBodyShapes = components.bodyShapes.map((b) => b.id);
108
+ if (!validBodyShapes.includes(opts.bodyShape)) {
109
+ log.error(
110
+ `Invalid body shape: "${opts.bodyShape}". Valid options: ${validBodyShapes.join(", ")}`,
111
+ );
112
+ process.exitCode = 1;
113
+ return;
114
+ }
115
+
116
+ const validEyeStyles = components.eyeStyles.map((e) => e.id);
117
+ if (!validEyeStyles.includes(opts.eyeStyle)) {
118
+ log.error(
119
+ `Invalid eye style: "${opts.eyeStyle}". Valid options: ${validEyeStyles.join(", ")}`,
120
+ );
121
+ process.exitCode = 1;
122
+ return;
123
+ }
124
+
125
+ const validColors = components.colors.map((c) => c.id);
126
+ if (!validColors.includes(opts.color)) {
127
+ log.error(
128
+ `Invalid color: "${opts.color}". Valid options: ${validColors.join(", ")}`,
129
+ );
130
+ process.exitCode = 1;
131
+ return;
132
+ }
133
+
134
+ const result = writeTraitsAndRenderAvatar({
135
+ bodyShape: opts.bodyShape,
136
+ eyeStyle: opts.eyeStyle,
137
+ color: opts.color,
138
+ });
139
+
140
+ if (!result.ok) {
141
+ log.error(
142
+ `Failed to write traits and render avatar: ${result.message}`,
143
+ );
144
+ process.exitCode = 1;
145
+ return;
146
+ }
147
+
148
+ const avatarDir = join(getWorkspaceDir(), "data", "avatar");
149
+ log.info(
150
+ `Avatar updated: ${opts.bodyShape} body, ${opts.eyeStyle} eyes, ${opts.color} color`,
151
+ );
152
+ log.info(`Files written to: ${avatarDir}`);
153
+ log.info(` character-traits.json`);
154
+ log.info(` avatar-image.png`);
155
+ if (result.asciiWritten) {
156
+ log.info(` character-ascii.txt`);
157
+ }
158
+ },
159
+ );
160
+
161
+ character
162
+ .command("components")
163
+ .description("List available character traits")
164
+ .option("--json", "Machine-readable JSON output")
165
+ .addHelpText(
166
+ "after",
167
+ `
168
+ Lists all available values for each character trait: body shapes, eye styles,
169
+ and colors. Each value is shown with its ID (the string you pass to
170
+ "character update").
171
+
172
+ With --json, outputs the full components object including SVG path data,
173
+ viewBox dimensions, and face-center coordinates — useful for programmatic
174
+ consumption.
175
+
176
+ Without --json, prints a human-readable summary of IDs only.
177
+
178
+ Examples:
179
+ $ assistant avatar character components
180
+ $ assistant avatar character components --json`,
181
+ )
182
+ .action((opts: { json?: boolean }, cmd: Command) => {
183
+ const components = getCharacterComponents();
184
+
185
+ if (opts.json) {
186
+ writeOutput(cmd, components);
187
+ return;
188
+ }
189
+
190
+ log.info("Body shapes:");
191
+ for (const shape of components.bodyShapes) {
192
+ log.info(` ${shape.id}`);
193
+ }
194
+
195
+ log.info("");
196
+ log.info("Eye styles:");
197
+ for (const style of components.eyeStyles) {
198
+ log.info(` ${style.id}`);
199
+ }
200
+
201
+ log.info("");
202
+ log.info("Colors:");
203
+ for (const color of components.colors) {
204
+ log.info(` ${color.id} (${color.hex})`);
205
+ }
206
+ });
207
+
208
+ character
209
+ .command("ascii")
210
+ .description("Print the current character as ASCII art")
211
+ .option("--width <n>", "Output width in characters", "60")
212
+ .addHelpText(
213
+ "after",
214
+ `
215
+ Reads the current character traits from character-traits.json and renders
216
+ the character as ASCII art to stdout. The output uses a brightness ramp
217
+ optimized for dark terminal backgrounds.
218
+
219
+ The --width flag controls the number of characters per line (default: 60).
220
+ Terminal cells are roughly twice as tall as they are wide, so the renderer
221
+ compensates automatically — a 60-character-wide output will look correctly
222
+ proportioned in most terminals.
223
+
224
+ If no character has been set yet, prints an error and suggests using
225
+ "assistant avatar character update" first.
226
+
227
+ Examples:
228
+ $ assistant avatar character ascii
229
+ $ assistant avatar character ascii --width 40
230
+ $ assistant avatar character ascii --width 80`,
231
+ )
232
+ .action(async (opts: { width: string }) => {
233
+ const avatarDir = join(getWorkspaceDir(), "data", "avatar");
234
+ const traitsPath = join(avatarDir, "character-traits.json");
235
+
236
+ if (!existsSync(traitsPath)) {
237
+ log.error(
238
+ "No native character set. Use `assistant avatar character update` first.",
239
+ );
240
+ process.exitCode = 1;
241
+ return;
242
+ }
243
+
244
+ let traits: CharacterTraits;
245
+ try {
246
+ const raw = readFileSync(traitsPath, "utf-8");
247
+ traits = JSON.parse(raw) as CharacterTraits;
248
+ } catch (err) {
249
+ const message = err instanceof Error ? err.message : String(err);
250
+ log.error(`Failed to read character traits: ${message}`);
251
+ process.exitCode = 1;
252
+ return;
253
+ }
254
+
255
+ if (!/^\d+$/.test(opts.width)) {
256
+ log.error(
257
+ `Invalid width: "${opts.width}". Must be a positive integer.`,
258
+ );
259
+ process.exitCode = 1;
260
+ return;
261
+ }
262
+
263
+ const width = parseInt(opts.width, 10);
264
+ if (width < 1) {
265
+ log.error(
266
+ `Invalid width: "${opts.width}". Must be a positive integer.`,
267
+ );
268
+ process.exitCode = 1;
269
+ return;
270
+ }
271
+
272
+ const asciiArt = renderCharacterAscii(
273
+ traits.bodyShape,
274
+ traits.eyeStyle,
275
+ traits.color,
276
+ width,
277
+ );
278
+
279
+ process.stdout.write(asciiArt + "\n");
280
+ });
281
+ }
@@ -10,7 +10,7 @@ import { join } from "node:path";
10
10
 
11
11
  import type { Command } from "commander";
12
12
 
13
- import { getWorkspaceDir } from "../../util/platform.js";
13
+ import { getSignalsDir } from "../../util/platform.js";
14
14
  import { log } from "../logger.js";
15
15
 
16
16
  const DEFAULT_TIMEOUT_MS = 30_000;
@@ -47,6 +47,9 @@ This is a developer debugging tool for inspecting how the assistant invokes and
47
47
  observes shell commands. The command runs with the assistant's environment, working
48
48
  directory, and process context — not the caller's shell.
49
49
 
50
+ Requires the assistant to be running with VELLUM_DEBUG=1. When debug mode is off
51
+ (the default), the assistant ignores bash signal files and returns an error.
52
+
50
53
  The CLI writes the command to signals/bash.<requestId> and polls
51
54
  signals/bash.<requestId>.result for the output. The assistant must be running
52
55
  for this to work.
@@ -70,7 +73,7 @@ Examples:
70
73
  }
71
74
 
72
75
  const requestId = randomUUID();
73
- const signalsDir = join(getWorkspaceDir(), "signals");
76
+ const signalsDir = getSignalsDir();
74
77
 
75
78
  try {
76
79
  mkdirSync(signalsDir, { recursive: true });
@@ -130,7 +133,7 @@ Examples:
130
133
  cleanupSignalFiles();
131
134
 
132
135
  if (result.error) {
133
- log.error(`Spawn error: ${result.error}`);
136
+ log.error(result.error);
134
137
  process.exitCode = 1;
135
138
  return;
136
139
  }
@@ -112,7 +112,10 @@ Examples:
112
112
  "Destination address for outbound verification (handle, phone number, or user ID)",
113
113
  )
114
114
  .option("--rebind", "Replace existing guardian binding")
115
- .option("--session-id <sessionId>", "Session ID for inbound challenges")
115
+ .option(
116
+ "--conversation-id <conversationId>",
117
+ "Conversation ID for inbound challenges",
118
+ )
116
119
  .option(
117
120
  "--origin-conversation-id <id>",
118
121
  "Origin conversation ID for routing",
@@ -147,7 +150,7 @@ Examples:
147
150
  $ assistant channel-verification-sessions create --purpose trusted_contact --contact-channel-id abc-123
148
151
  $ assistant channel-verification-sessions create --channel telegram --destination "@guardian_handle"
149
152
  $ assistant channel-verification-sessions create --channel phone --destination "+15551234567" --rebind
150
- $ assistant channel-verification-sessions create --channel telegram --session-id sess-123`,
153
+ $ assistant channel-verification-sessions create --channel telegram --conversation-id conv-123`,
151
154
  )
152
155
  .action(
153
156
  async (
@@ -155,7 +158,7 @@ Examples:
155
158
  channel?: string;
156
159
  destination?: string;
157
160
  rebind?: boolean;
158
- sessionId?: string;
161
+ conversationId?: string;
159
162
  originConversationId?: string;
160
163
  purpose?: string;
161
164
  contactChannelId?: string;
@@ -249,7 +252,7 @@ Examples:
249
252
  const result = createInboundChallenge(
250
253
  channel,
251
254
  opts.rebind,
252
- opts.sessionId,
255
+ opts.conversationId,
253
256
  );
254
257
  writeOutput(cmd, result);
255
258
  if (!result.success) {
@@ -35,7 +35,7 @@ Examples:
35
35
  )
36
36
  .action((shell: string) => {
37
37
  const subcommands: Record<string, string[]> = {
38
- sessions: ["list", "new", "export", "clear"],
38
+ conversations: ["list", "new", "export", "clear"],
39
39
  config: ["set", "get", "list", "validate-allowlist"],
40
40
  keys: ["list", "set", "delete"],
41
41
  trust: ["list", "remove", "clear"],
@@ -45,7 +45,7 @@ Examples:
45
45
  autonomy: ["get", "set"],
46
46
  };
47
47
  const topLevel = [
48
- "sessions",
48
+ "conversations",
49
49
  "config",
50
50
  "keys",
51
51
  "trust",
@@ -128,7 +128,7 @@ function generateZshCompletion(
128
128
  _assistant() {
129
129
  local -a commands
130
130
  commands=(
131
- 'sessions:Manage sessions'
131
+ 'conversations:Manage conversations'
132
132
  'config:Manage configuration'
133
133
  'keys:Manage API keys in secure storage'
134
134
  'trust:Manage trust rules'
@@ -169,7 +169,7 @@ function generateFishCompletion(
169
169
  script += `complete -c assistant -f\n`;
170
170
 
171
171
  const descriptions: Record<string, string> = {
172
- sessions: "Manage sessions",
172
+ conversations: "Manage conversations",
173
173
  config: "Manage configuration",
174
174
  keys: "Manage API keys in secure storage",
175
175
  trust: "Manage trust rules",