@dimivelev/chimera 0.78.0 → 0.78.2

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 (995) hide show
  1. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  2. package/dist/modes/interactive/interactive-mode.js +6 -10
  3. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  4. package/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
  5. package/examples/extensions/custom-provider-anthropic/package.json +1 -1
  6. package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
  7. package/examples/extensions/sandbox/package-lock.json +2 -2
  8. package/examples/extensions/sandbox/package.json +1 -1
  9. package/examples/extensions/with-deps/package-lock.json +2 -2
  10. package/examples/extensions/with-deps/package.json +1 -1
  11. package/npm-shrinkwrap.json +12 -12
  12. package/package.json +4 -9
  13. package/node_modules/@anthropic-ai/sdk/CHANGELOG.md +0 -1677
  14. package/node_modules/@anthropic-ai/sdk/LICENSE +0 -8
  15. package/node_modules/@anthropic-ai/sdk/README.md +0 -674
  16. package/node_modules/@anthropic-ai/sdk/_vendor/partial-json-parser/parser.d.mts +0 -3
  17. package/node_modules/@anthropic-ai/sdk/_vendor/partial-json-parser/parser.d.mts.map +0 -1
  18. package/node_modules/@anthropic-ai/sdk/_vendor/partial-json-parser/parser.d.ts +0 -3
  19. package/node_modules/@anthropic-ai/sdk/_vendor/partial-json-parser/parser.d.ts.map +0 -1
  20. package/node_modules/@anthropic-ai/sdk/_vendor/partial-json-parser/parser.js +0 -226
  21. package/node_modules/@anthropic-ai/sdk/_vendor/partial-json-parser/parser.js.map +0 -1
  22. package/node_modules/@anthropic-ai/sdk/_vendor/partial-json-parser/parser.mjs +0 -223
  23. package/node_modules/@anthropic-ai/sdk/_vendor/partial-json-parser/parser.mjs.map +0 -1
  24. package/node_modules/@anthropic-ai/sdk/api-promise.d.mts +0 -2
  25. package/node_modules/@anthropic-ai/sdk/api-promise.d.mts.map +0 -1
  26. package/node_modules/@anthropic-ai/sdk/api-promise.d.ts +0 -2
  27. package/node_modules/@anthropic-ai/sdk/api-promise.d.ts.map +0 -1
  28. package/node_modules/@anthropic-ai/sdk/api-promise.js +0 -6
  29. package/node_modules/@anthropic-ai/sdk/api-promise.js.map +0 -1
  30. package/node_modules/@anthropic-ai/sdk/api-promise.mjs +0 -2
  31. package/node_modules/@anthropic-ai/sdk/api-promise.mjs.map +0 -1
  32. package/node_modules/@anthropic-ai/sdk/bin/cli +0 -53
  33. package/node_modules/@anthropic-ai/sdk/bin/migration-config.json +0 -7
  34. package/node_modules/@anthropic-ai/sdk/client.d.mts +0 -225
  35. package/node_modules/@anthropic-ai/sdk/client.d.mts.map +0 -1
  36. package/node_modules/@anthropic-ai/sdk/client.d.ts +0 -225
  37. package/node_modules/@anthropic-ai/sdk/client.d.ts.map +0 -1
  38. package/node_modules/@anthropic-ai/sdk/client.js +0 -536
  39. package/node_modules/@anthropic-ai/sdk/client.js.map +0 -1
  40. package/node_modules/@anthropic-ai/sdk/client.mjs +0 -531
  41. package/node_modules/@anthropic-ai/sdk/client.mjs.map +0 -1
  42. package/node_modules/@anthropic-ai/sdk/core/api-promise.d.mts +0 -49
  43. package/node_modules/@anthropic-ai/sdk/core/api-promise.d.mts.map +0 -1
  44. package/node_modules/@anthropic-ai/sdk/core/api-promise.d.ts +0 -49
  45. package/node_modules/@anthropic-ai/sdk/core/api-promise.d.ts.map +0 -1
  46. package/node_modules/@anthropic-ai/sdk/core/api-promise.js +0 -76
  47. package/node_modules/@anthropic-ai/sdk/core/api-promise.js.map +0 -1
  48. package/node_modules/@anthropic-ai/sdk/core/api-promise.mjs +0 -72
  49. package/node_modules/@anthropic-ai/sdk/core/api-promise.mjs.map +0 -1
  50. package/node_modules/@anthropic-ai/sdk/core/error.d.mts +0 -47
  51. package/node_modules/@anthropic-ai/sdk/core/error.d.mts.map +0 -1
  52. package/node_modules/@anthropic-ai/sdk/core/error.d.ts +0 -47
  53. package/node_modules/@anthropic-ai/sdk/core/error.d.ts.map +0 -1
  54. package/node_modules/@anthropic-ai/sdk/core/error.js +0 -114
  55. package/node_modules/@anthropic-ai/sdk/core/error.js.map +0 -1
  56. package/node_modules/@anthropic-ai/sdk/core/error.mjs +0 -98
  57. package/node_modules/@anthropic-ai/sdk/core/error.mjs.map +0 -1
  58. package/node_modules/@anthropic-ai/sdk/core/pagination.d.mts +0 -63
  59. package/node_modules/@anthropic-ai/sdk/core/pagination.d.mts.map +0 -1
  60. package/node_modules/@anthropic-ai/sdk/core/pagination.d.ts +0 -63
  61. package/node_modules/@anthropic-ai/sdk/core/pagination.d.ts.map +0 -1
  62. package/node_modules/@anthropic-ai/sdk/core/pagination.js +0 -123
  63. package/node_modules/@anthropic-ai/sdk/core/pagination.js.map +0 -1
  64. package/node_modules/@anthropic-ai/sdk/core/pagination.mjs +0 -117
  65. package/node_modules/@anthropic-ai/sdk/core/pagination.mjs.map +0 -1
  66. package/node_modules/@anthropic-ai/sdk/core/resource.d.mts +0 -6
  67. package/node_modules/@anthropic-ai/sdk/core/resource.d.mts.map +0 -1
  68. package/node_modules/@anthropic-ai/sdk/core/resource.d.ts +0 -6
  69. package/node_modules/@anthropic-ai/sdk/core/resource.d.ts.map +0 -1
  70. package/node_modules/@anthropic-ai/sdk/core/resource.js +0 -11
  71. package/node_modules/@anthropic-ai/sdk/core/resource.js.map +0 -1
  72. package/node_modules/@anthropic-ai/sdk/core/resource.mjs +0 -7
  73. package/node_modules/@anthropic-ai/sdk/core/resource.mjs.map +0 -1
  74. package/node_modules/@anthropic-ai/sdk/core/streaming.d.mts +0 -31
  75. package/node_modules/@anthropic-ai/sdk/core/streaming.d.mts.map +0 -1
  76. package/node_modules/@anthropic-ai/sdk/core/streaming.d.ts +0 -31
  77. package/node_modules/@anthropic-ai/sdk/core/streaming.d.ts.map +0 -1
  78. package/node_modules/@anthropic-ai/sdk/core/streaming.js +0 -282
  79. package/node_modules/@anthropic-ai/sdk/core/streaming.js.map +0 -1
  80. package/node_modules/@anthropic-ai/sdk/core/streaming.mjs +0 -277
  81. package/node_modules/@anthropic-ai/sdk/core/streaming.mjs.map +0 -1
  82. package/node_modules/@anthropic-ai/sdk/core/uploads.d.mts +0 -3
  83. package/node_modules/@anthropic-ai/sdk/core/uploads.d.mts.map +0 -1
  84. package/node_modules/@anthropic-ai/sdk/core/uploads.d.ts +0 -3
  85. package/node_modules/@anthropic-ai/sdk/core/uploads.d.ts.map +0 -1
  86. package/node_modules/@anthropic-ai/sdk/core/uploads.js +0 -6
  87. package/node_modules/@anthropic-ai/sdk/core/uploads.js.map +0 -1
  88. package/node_modules/@anthropic-ai/sdk/core/uploads.mjs +0 -2
  89. package/node_modules/@anthropic-ai/sdk/core/uploads.mjs.map +0 -1
  90. package/node_modules/@anthropic-ai/sdk/error.d.mts +0 -2
  91. package/node_modules/@anthropic-ai/sdk/error.d.mts.map +0 -1
  92. package/node_modules/@anthropic-ai/sdk/error.d.ts +0 -2
  93. package/node_modules/@anthropic-ai/sdk/error.d.ts.map +0 -1
  94. package/node_modules/@anthropic-ai/sdk/error.js +0 -6
  95. package/node_modules/@anthropic-ai/sdk/error.js.map +0 -1
  96. package/node_modules/@anthropic-ai/sdk/error.mjs +0 -2
  97. package/node_modules/@anthropic-ai/sdk/error.mjs.map +0 -1
  98. package/node_modules/@anthropic-ai/sdk/index.d.mts +0 -7
  99. package/node_modules/@anthropic-ai/sdk/index.d.mts.map +0 -1
  100. package/node_modules/@anthropic-ai/sdk/index.d.ts +0 -7
  101. package/node_modules/@anthropic-ai/sdk/index.d.ts.map +0 -1
  102. package/node_modules/@anthropic-ai/sdk/index.js +0 -35
  103. package/node_modules/@anthropic-ai/sdk/index.js.map +0 -1
  104. package/node_modules/@anthropic-ai/sdk/index.mjs +0 -8
  105. package/node_modules/@anthropic-ai/sdk/index.mjs.map +0 -1
  106. package/node_modules/@anthropic-ai/sdk/internal/builtin-types.d.mts +0 -73
  107. package/node_modules/@anthropic-ai/sdk/internal/builtin-types.d.mts.map +0 -1
  108. package/node_modules/@anthropic-ai/sdk/internal/builtin-types.d.ts +0 -73
  109. package/node_modules/@anthropic-ai/sdk/internal/builtin-types.d.ts.map +0 -1
  110. package/node_modules/@anthropic-ai/sdk/internal/builtin-types.js +0 -4
  111. package/node_modules/@anthropic-ai/sdk/internal/builtin-types.js.map +0 -1
  112. package/node_modules/@anthropic-ai/sdk/internal/builtin-types.mjs +0 -3
  113. package/node_modules/@anthropic-ai/sdk/internal/builtin-types.mjs.map +0 -1
  114. package/node_modules/@anthropic-ai/sdk/internal/constants.d.mts +0 -5
  115. package/node_modules/@anthropic-ai/sdk/internal/constants.d.mts.map +0 -1
  116. package/node_modules/@anthropic-ai/sdk/internal/constants.d.ts +0 -5
  117. package/node_modules/@anthropic-ai/sdk/internal/constants.d.ts.map +0 -1
  118. package/node_modules/@anthropic-ai/sdk/internal/constants.js +0 -15
  119. package/node_modules/@anthropic-ai/sdk/internal/constants.js.map +0 -1
  120. package/node_modules/@anthropic-ai/sdk/internal/constants.mjs +0 -12
  121. package/node_modules/@anthropic-ai/sdk/internal/constants.mjs.map +0 -1
  122. package/node_modules/@anthropic-ai/sdk/internal/decoders/jsonl.d.mts +0 -10
  123. package/node_modules/@anthropic-ai/sdk/internal/decoders/jsonl.d.mts.map +0 -1
  124. package/node_modules/@anthropic-ai/sdk/internal/decoders/jsonl.d.ts +0 -10
  125. package/node_modules/@anthropic-ai/sdk/internal/decoders/jsonl.d.ts.map +0 -1
  126. package/node_modules/@anthropic-ai/sdk/internal/decoders/jsonl.js +0 -39
  127. package/node_modules/@anthropic-ai/sdk/internal/decoders/jsonl.js.map +0 -1
  128. package/node_modules/@anthropic-ai/sdk/internal/decoders/jsonl.mjs +0 -35
  129. package/node_modules/@anthropic-ai/sdk/internal/decoders/jsonl.mjs.map +0 -1
  130. package/node_modules/@anthropic-ai/sdk/internal/decoders/line.d.mts +0 -17
  131. package/node_modules/@anthropic-ai/sdk/internal/decoders/line.d.mts.map +0 -1
  132. package/node_modules/@anthropic-ai/sdk/internal/decoders/line.d.ts +0 -17
  133. package/node_modules/@anthropic-ai/sdk/internal/decoders/line.d.ts.map +0 -1
  134. package/node_modules/@anthropic-ai/sdk/internal/decoders/line.js +0 -113
  135. package/node_modules/@anthropic-ai/sdk/internal/decoders/line.js.map +0 -1
  136. package/node_modules/@anthropic-ai/sdk/internal/decoders/line.mjs +0 -108
  137. package/node_modules/@anthropic-ai/sdk/internal/decoders/line.mjs.map +0 -1
  138. package/node_modules/@anthropic-ai/sdk/internal/detect-platform.d.mts +0 -15
  139. package/node_modules/@anthropic-ai/sdk/internal/detect-platform.d.mts.map +0 -1
  140. package/node_modules/@anthropic-ai/sdk/internal/detect-platform.d.ts +0 -15
  141. package/node_modules/@anthropic-ai/sdk/internal/detect-platform.d.ts.map +0 -1
  142. package/node_modules/@anthropic-ai/sdk/internal/detect-platform.js +0 -162
  143. package/node_modules/@anthropic-ai/sdk/internal/detect-platform.js.map +0 -1
  144. package/node_modules/@anthropic-ai/sdk/internal/detect-platform.mjs +0 -157
  145. package/node_modules/@anthropic-ai/sdk/internal/detect-platform.mjs.map +0 -1
  146. package/node_modules/@anthropic-ai/sdk/internal/errors.d.mts +0 -3
  147. package/node_modules/@anthropic-ai/sdk/internal/errors.d.mts.map +0 -1
  148. package/node_modules/@anthropic-ai/sdk/internal/errors.d.ts +0 -3
  149. package/node_modules/@anthropic-ai/sdk/internal/errors.d.ts.map +0 -1
  150. package/node_modules/@anthropic-ai/sdk/internal/errors.js +0 -41
  151. package/node_modules/@anthropic-ai/sdk/internal/errors.js.map +0 -1
  152. package/node_modules/@anthropic-ai/sdk/internal/errors.mjs +0 -36
  153. package/node_modules/@anthropic-ai/sdk/internal/errors.mjs.map +0 -1
  154. package/node_modules/@anthropic-ai/sdk/internal/headers.d.mts +0 -22
  155. package/node_modules/@anthropic-ai/sdk/internal/headers.d.mts.map +0 -1
  156. package/node_modules/@anthropic-ai/sdk/internal/headers.d.ts +0 -22
  157. package/node_modules/@anthropic-ai/sdk/internal/headers.d.ts.map +0 -1
  158. package/node_modules/@anthropic-ai/sdk/internal/headers.js +0 -79
  159. package/node_modules/@anthropic-ai/sdk/internal/headers.js.map +0 -1
  160. package/node_modules/@anthropic-ai/sdk/internal/headers.mjs +0 -74
  161. package/node_modules/@anthropic-ai/sdk/internal/headers.mjs.map +0 -1
  162. package/node_modules/@anthropic-ai/sdk/internal/parse.d.mts +0 -17
  163. package/node_modules/@anthropic-ai/sdk/internal/parse.d.mts.map +0 -1
  164. package/node_modules/@anthropic-ai/sdk/internal/parse.d.ts +0 -17
  165. package/node_modules/@anthropic-ai/sdk/internal/parse.d.ts.map +0 -1
  166. package/node_modules/@anthropic-ai/sdk/internal/parse.js +0 -55
  167. package/node_modules/@anthropic-ai/sdk/internal/parse.js.map +0 -1
  168. package/node_modules/@anthropic-ai/sdk/internal/parse.mjs +0 -51
  169. package/node_modules/@anthropic-ai/sdk/internal/parse.mjs.map +0 -1
  170. package/node_modules/@anthropic-ai/sdk/internal/request-options.d.mts +0 -34
  171. package/node_modules/@anthropic-ai/sdk/internal/request-options.d.mts.map +0 -1
  172. package/node_modules/@anthropic-ai/sdk/internal/request-options.d.ts +0 -34
  173. package/node_modules/@anthropic-ai/sdk/internal/request-options.d.ts.map +0 -1
  174. package/node_modules/@anthropic-ai/sdk/internal/request-options.js +0 -14
  175. package/node_modules/@anthropic-ai/sdk/internal/request-options.js.map +0 -1
  176. package/node_modules/@anthropic-ai/sdk/internal/request-options.mjs +0 -10
  177. package/node_modules/@anthropic-ai/sdk/internal/request-options.mjs.map +0 -1
  178. package/node_modules/@anthropic-ai/sdk/internal/shim-types.d.mts +0 -28
  179. package/node_modules/@anthropic-ai/sdk/internal/shim-types.d.ts +0 -28
  180. package/node_modules/@anthropic-ai/sdk/internal/shims.d.mts +0 -20
  181. package/node_modules/@anthropic-ai/sdk/internal/shims.d.mts.map +0 -1
  182. package/node_modules/@anthropic-ai/sdk/internal/shims.d.ts +0 -20
  183. package/node_modules/@anthropic-ai/sdk/internal/shims.d.ts.map +0 -1
  184. package/node_modules/@anthropic-ai/sdk/internal/shims.js +0 -92
  185. package/node_modules/@anthropic-ai/sdk/internal/shims.js.map +0 -1
  186. package/node_modules/@anthropic-ai/sdk/internal/shims.mjs +0 -85
  187. package/node_modules/@anthropic-ai/sdk/internal/shims.mjs.map +0 -1
  188. package/node_modules/@anthropic-ai/sdk/internal/stream-utils.d.mts +0 -8
  189. package/node_modules/@anthropic-ai/sdk/internal/stream-utils.d.mts.map +0 -1
  190. package/node_modules/@anthropic-ai/sdk/internal/stream-utils.d.ts +0 -8
  191. package/node_modules/@anthropic-ai/sdk/internal/stream-utils.d.ts.map +0 -1
  192. package/node_modules/@anthropic-ai/sdk/internal/stream-utils.js +0 -38
  193. package/node_modules/@anthropic-ai/sdk/internal/stream-utils.js.map +0 -1
  194. package/node_modules/@anthropic-ai/sdk/internal/stream-utils.mjs +0 -35
  195. package/node_modules/@anthropic-ai/sdk/internal/stream-utils.mjs.map +0 -1
  196. package/node_modules/@anthropic-ai/sdk/internal/to-file.d.mts +0 -45
  197. package/node_modules/@anthropic-ai/sdk/internal/to-file.d.mts.map +0 -1
  198. package/node_modules/@anthropic-ai/sdk/internal/to-file.d.ts +0 -45
  199. package/node_modules/@anthropic-ai/sdk/internal/to-file.d.ts.map +0 -1
  200. package/node_modules/@anthropic-ai/sdk/internal/to-file.js +0 -96
  201. package/node_modules/@anthropic-ai/sdk/internal/to-file.js.map +0 -1
  202. package/node_modules/@anthropic-ai/sdk/internal/to-file.mjs +0 -93
  203. package/node_modules/@anthropic-ai/sdk/internal/to-file.mjs.map +0 -1
  204. package/node_modules/@anthropic-ai/sdk/internal/tslib.js +0 -81
  205. package/node_modules/@anthropic-ai/sdk/internal/tslib.mjs +0 -17
  206. package/node_modules/@anthropic-ai/sdk/internal/types.d.mts +0 -67
  207. package/node_modules/@anthropic-ai/sdk/internal/types.d.mts.map +0 -1
  208. package/node_modules/@anthropic-ai/sdk/internal/types.d.ts +0 -67
  209. package/node_modules/@anthropic-ai/sdk/internal/types.d.ts.map +0 -1
  210. package/node_modules/@anthropic-ai/sdk/internal/types.js +0 -4
  211. package/node_modules/@anthropic-ai/sdk/internal/types.js.map +0 -1
  212. package/node_modules/@anthropic-ai/sdk/internal/types.mjs +0 -3
  213. package/node_modules/@anthropic-ai/sdk/internal/types.mjs.map +0 -1
  214. package/node_modules/@anthropic-ai/sdk/internal/uploads.d.mts +0 -42
  215. package/node_modules/@anthropic-ai/sdk/internal/uploads.d.mts.map +0 -1
  216. package/node_modules/@anthropic-ai/sdk/internal/uploads.d.ts +0 -42
  217. package/node_modules/@anthropic-ai/sdk/internal/uploads.d.ts.map +0 -1
  218. package/node_modules/@anthropic-ai/sdk/internal/uploads.js +0 -146
  219. package/node_modules/@anthropic-ai/sdk/internal/uploads.js.map +0 -1
  220. package/node_modules/@anthropic-ai/sdk/internal/uploads.mjs +0 -136
  221. package/node_modules/@anthropic-ai/sdk/internal/uploads.mjs.map +0 -1
  222. package/node_modules/@anthropic-ai/sdk/internal/utils/base64.d.mts +0 -3
  223. package/node_modules/@anthropic-ai/sdk/internal/utils/base64.d.mts.map +0 -1
  224. package/node_modules/@anthropic-ai/sdk/internal/utils/base64.d.ts +0 -3
  225. package/node_modules/@anthropic-ai/sdk/internal/utils/base64.d.ts.map +0 -1
  226. package/node_modules/@anthropic-ai/sdk/internal/utils/base64.js +0 -38
  227. package/node_modules/@anthropic-ai/sdk/internal/utils/base64.js.map +0 -1
  228. package/node_modules/@anthropic-ai/sdk/internal/utils/base64.mjs +0 -33
  229. package/node_modules/@anthropic-ai/sdk/internal/utils/base64.mjs.map +0 -1
  230. package/node_modules/@anthropic-ai/sdk/internal/utils/bytes.d.mts +0 -4
  231. package/node_modules/@anthropic-ai/sdk/internal/utils/bytes.d.mts.map +0 -1
  232. package/node_modules/@anthropic-ai/sdk/internal/utils/bytes.d.ts +0 -4
  233. package/node_modules/@anthropic-ai/sdk/internal/utils/bytes.d.ts.map +0 -1
  234. package/node_modules/@anthropic-ai/sdk/internal/utils/bytes.js +0 -31
  235. package/node_modules/@anthropic-ai/sdk/internal/utils/bytes.js.map +0 -1
  236. package/node_modules/@anthropic-ai/sdk/internal/utils/bytes.mjs +0 -26
  237. package/node_modules/@anthropic-ai/sdk/internal/utils/bytes.mjs.map +0 -1
  238. package/node_modules/@anthropic-ai/sdk/internal/utils/env.d.mts +0 -9
  239. package/node_modules/@anthropic-ai/sdk/internal/utils/env.d.mts.map +0 -1
  240. package/node_modules/@anthropic-ai/sdk/internal/utils/env.d.ts +0 -9
  241. package/node_modules/@anthropic-ai/sdk/internal/utils/env.d.ts.map +0 -1
  242. package/node_modules/@anthropic-ai/sdk/internal/utils/env.js +0 -22
  243. package/node_modules/@anthropic-ai/sdk/internal/utils/env.js.map +0 -1
  244. package/node_modules/@anthropic-ai/sdk/internal/utils/env.mjs +0 -18
  245. package/node_modules/@anthropic-ai/sdk/internal/utils/env.mjs.map +0 -1
  246. package/node_modules/@anthropic-ai/sdk/internal/utils/log.d.mts +0 -37
  247. package/node_modules/@anthropic-ai/sdk/internal/utils/log.d.mts.map +0 -1
  248. package/node_modules/@anthropic-ai/sdk/internal/utils/log.d.ts +0 -37
  249. package/node_modules/@anthropic-ai/sdk/internal/utils/log.d.ts.map +0 -1
  250. package/node_modules/@anthropic-ai/sdk/internal/utils/log.js +0 -86
  251. package/node_modules/@anthropic-ai/sdk/internal/utils/log.js.map +0 -1
  252. package/node_modules/@anthropic-ai/sdk/internal/utils/log.mjs +0 -80
  253. package/node_modules/@anthropic-ai/sdk/internal/utils/log.mjs.map +0 -1
  254. package/node_modules/@anthropic-ai/sdk/internal/utils/path.d.mts +0 -15
  255. package/node_modules/@anthropic-ai/sdk/internal/utils/path.d.mts.map +0 -1
  256. package/node_modules/@anthropic-ai/sdk/internal/utils/path.d.ts +0 -15
  257. package/node_modules/@anthropic-ai/sdk/internal/utils/path.d.ts.map +0 -1
  258. package/node_modules/@anthropic-ai/sdk/internal/utils/path.js +0 -58
  259. package/node_modules/@anthropic-ai/sdk/internal/utils/path.js.map +0 -1
  260. package/node_modules/@anthropic-ai/sdk/internal/utils/path.mjs +0 -53
  261. package/node_modules/@anthropic-ai/sdk/internal/utils/path.mjs.map +0 -1
  262. package/node_modules/@anthropic-ai/sdk/internal/utils/sleep.d.mts +0 -2
  263. package/node_modules/@anthropic-ai/sdk/internal/utils/sleep.d.mts.map +0 -1
  264. package/node_modules/@anthropic-ai/sdk/internal/utils/sleep.d.ts +0 -2
  265. package/node_modules/@anthropic-ai/sdk/internal/utils/sleep.d.ts.map +0 -1
  266. package/node_modules/@anthropic-ai/sdk/internal/utils/sleep.js +0 -7
  267. package/node_modules/@anthropic-ai/sdk/internal/utils/sleep.js.map +0 -1
  268. package/node_modules/@anthropic-ai/sdk/internal/utils/sleep.mjs +0 -3
  269. package/node_modules/@anthropic-ai/sdk/internal/utils/sleep.mjs.map +0 -1
  270. package/node_modules/@anthropic-ai/sdk/internal/utils/uuid.d.mts +0 -5
  271. package/node_modules/@anthropic-ai/sdk/internal/utils/uuid.d.mts.map +0 -1
  272. package/node_modules/@anthropic-ai/sdk/internal/utils/uuid.d.ts +0 -5
  273. package/node_modules/@anthropic-ai/sdk/internal/utils/uuid.d.ts.map +0 -1
  274. package/node_modules/@anthropic-ai/sdk/internal/utils/uuid.js +0 -19
  275. package/node_modules/@anthropic-ai/sdk/internal/utils/uuid.js.map +0 -1
  276. package/node_modules/@anthropic-ai/sdk/internal/utils/uuid.mjs +0 -15
  277. package/node_modules/@anthropic-ai/sdk/internal/utils/uuid.mjs.map +0 -1
  278. package/node_modules/@anthropic-ai/sdk/internal/utils/values.d.mts +0 -16
  279. package/node_modules/@anthropic-ai/sdk/internal/utils/values.d.mts.map +0 -1
  280. package/node_modules/@anthropic-ai/sdk/internal/utils/values.d.ts +0 -16
  281. package/node_modules/@anthropic-ai/sdk/internal/utils/values.d.ts.map +0 -1
  282. package/node_modules/@anthropic-ai/sdk/internal/utils/values.js +0 -109
  283. package/node_modules/@anthropic-ai/sdk/internal/utils/values.js.map +0 -1
  284. package/node_modules/@anthropic-ai/sdk/internal/utils/values.mjs +0 -92
  285. package/node_modules/@anthropic-ai/sdk/internal/utils/values.mjs.map +0 -1
  286. package/node_modules/@anthropic-ai/sdk/internal/utils.d.mts +0 -7
  287. package/node_modules/@anthropic-ai/sdk/internal/utils.d.mts.map +0 -1
  288. package/node_modules/@anthropic-ai/sdk/internal/utils.d.ts +0 -7
  289. package/node_modules/@anthropic-ai/sdk/internal/utils.d.ts.map +0 -1
  290. package/node_modules/@anthropic-ai/sdk/internal/utils.js +0 -11
  291. package/node_modules/@anthropic-ai/sdk/internal/utils.js.map +0 -1
  292. package/node_modules/@anthropic-ai/sdk/internal/utils.mjs +0 -8
  293. package/node_modules/@anthropic-ai/sdk/internal/utils.mjs.map +0 -1
  294. package/node_modules/@anthropic-ai/sdk/lib/BetaMessageStream.d.mts +0 -114
  295. package/node_modules/@anthropic-ai/sdk/lib/BetaMessageStream.d.mts.map +0 -1
  296. package/node_modules/@anthropic-ai/sdk/lib/BetaMessageStream.d.ts +0 -114
  297. package/node_modules/@anthropic-ai/sdk/lib/BetaMessageStream.d.ts.map +0 -1
  298. package/node_modules/@anthropic-ai/sdk/lib/BetaMessageStream.js +0 -553
  299. package/node_modules/@anthropic-ai/sdk/lib/BetaMessageStream.js.map +0 -1
  300. package/node_modules/@anthropic-ai/sdk/lib/BetaMessageStream.mjs +0 -549
  301. package/node_modules/@anthropic-ai/sdk/lib/BetaMessageStream.mjs.map +0 -1
  302. package/node_modules/@anthropic-ai/sdk/lib/MessageStream.d.mts +0 -114
  303. package/node_modules/@anthropic-ai/sdk/lib/MessageStream.d.mts.map +0 -1
  304. package/node_modules/@anthropic-ai/sdk/lib/MessageStream.d.ts +0 -114
  305. package/node_modules/@anthropic-ai/sdk/lib/MessageStream.d.ts.map +0 -1
  306. package/node_modules/@anthropic-ai/sdk/lib/MessageStream.js +0 -553
  307. package/node_modules/@anthropic-ai/sdk/lib/MessageStream.js.map +0 -1
  308. package/node_modules/@anthropic-ai/sdk/lib/MessageStream.mjs +0 -549
  309. package/node_modules/@anthropic-ai/sdk/lib/MessageStream.mjs.map +0 -1
  310. package/node_modules/@anthropic-ai/sdk/package.json +0 -185
  311. package/node_modules/@anthropic-ai/sdk/pagination.d.mts +0 -2
  312. package/node_modules/@anthropic-ai/sdk/pagination.d.mts.map +0 -1
  313. package/node_modules/@anthropic-ai/sdk/pagination.d.ts +0 -2
  314. package/node_modules/@anthropic-ai/sdk/pagination.d.ts.map +0 -1
  315. package/node_modules/@anthropic-ai/sdk/pagination.js +0 -6
  316. package/node_modules/@anthropic-ai/sdk/pagination.js.map +0 -1
  317. package/node_modules/@anthropic-ai/sdk/pagination.mjs +0 -2
  318. package/node_modules/@anthropic-ai/sdk/pagination.mjs.map +0 -1
  319. package/node_modules/@anthropic-ai/sdk/resource.d.mts +0 -2
  320. package/node_modules/@anthropic-ai/sdk/resource.d.mts.map +0 -1
  321. package/node_modules/@anthropic-ai/sdk/resource.d.ts +0 -2
  322. package/node_modules/@anthropic-ai/sdk/resource.d.ts.map +0 -1
  323. package/node_modules/@anthropic-ai/sdk/resource.js +0 -6
  324. package/node_modules/@anthropic-ai/sdk/resource.js.map +0 -1
  325. package/node_modules/@anthropic-ai/sdk/resource.mjs +0 -2
  326. package/node_modules/@anthropic-ai/sdk/resource.mjs.map +0 -1
  327. package/node_modules/@anthropic-ai/sdk/resources/beta/beta.d.mts +0 -61
  328. package/node_modules/@anthropic-ai/sdk/resources/beta/beta.d.mts.map +0 -1
  329. package/node_modules/@anthropic-ai/sdk/resources/beta/beta.d.ts +0 -61
  330. package/node_modules/@anthropic-ai/sdk/resources/beta/beta.d.ts.map +0 -1
  331. package/node_modules/@anthropic-ai/sdk/resources/beta/beta.js +0 -25
  332. package/node_modules/@anthropic-ai/sdk/resources/beta/beta.js.map +0 -1
  333. package/node_modules/@anthropic-ai/sdk/resources/beta/beta.mjs +0 -20
  334. package/node_modules/@anthropic-ai/sdk/resources/beta/beta.mjs.map +0 -1
  335. package/node_modules/@anthropic-ai/sdk/resources/beta/files.d.mts +0 -151
  336. package/node_modules/@anthropic-ai/sdk/resources/beta/files.d.mts.map +0 -1
  337. package/node_modules/@anthropic-ai/sdk/resources/beta/files.d.ts +0 -151
  338. package/node_modules/@anthropic-ai/sdk/resources/beta/files.d.ts.map +0 -1
  339. package/node_modules/@anthropic-ai/sdk/resources/beta/files.js +0 -122
  340. package/node_modules/@anthropic-ai/sdk/resources/beta/files.js.map +0 -1
  341. package/node_modules/@anthropic-ai/sdk/resources/beta/files.mjs +0 -118
  342. package/node_modules/@anthropic-ai/sdk/resources/beta/files.mjs.map +0 -1
  343. package/node_modules/@anthropic-ai/sdk/resources/beta/index.d.mts +0 -5
  344. package/node_modules/@anthropic-ai/sdk/resources/beta/index.d.mts.map +0 -1
  345. package/node_modules/@anthropic-ai/sdk/resources/beta/index.d.ts +0 -5
  346. package/node_modules/@anthropic-ai/sdk/resources/beta/index.d.ts.map +0 -1
  347. package/node_modules/@anthropic-ai/sdk/resources/beta/index.js +0 -13
  348. package/node_modules/@anthropic-ai/sdk/resources/beta/index.js.map +0 -1
  349. package/node_modules/@anthropic-ai/sdk/resources/beta/index.mjs +0 -6
  350. package/node_modules/@anthropic-ai/sdk/resources/beta/index.mjs.map +0 -1
  351. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/batches.d.mts +0 -343
  352. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/batches.d.mts.map +0 -1
  353. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/batches.d.ts +0 -343
  354. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/batches.d.ts.map +0 -1
  355. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/batches.js +0 -204
  356. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/batches.js.map +0 -1
  357. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/batches.mjs +0 -200
  358. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/batches.mjs.map +0 -1
  359. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/index.d.mts +0 -3
  360. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/index.d.mts.map +0 -1
  361. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/index.d.ts +0 -3
  362. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/index.d.ts.map +0 -1
  363. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/index.js +0 -9
  364. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/index.js.map +0 -1
  365. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/index.mjs +0 -4
  366. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/index.mjs.map +0 -1
  367. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/messages.d.mts +0 -1561
  368. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/messages.d.mts.map +0 -1
  369. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/messages.d.ts +0 -1561
  370. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/messages.d.ts.map +0 -1
  371. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/messages.js +0 -86
  372. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/messages.js.map +0 -1
  373. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/messages.mjs +0 -81
  374. package/node_modules/@anthropic-ai/sdk/resources/beta/messages/messages.mjs.map +0 -1
  375. package/node_modules/@anthropic-ai/sdk/resources/beta/messages.d.mts +0 -2
  376. package/node_modules/@anthropic-ai/sdk/resources/beta/messages.d.mts.map +0 -1
  377. package/node_modules/@anthropic-ai/sdk/resources/beta/messages.d.ts +0 -2
  378. package/node_modules/@anthropic-ai/sdk/resources/beta/messages.d.ts.map +0 -1
  379. package/node_modules/@anthropic-ai/sdk/resources/beta/messages.js +0 -6
  380. package/node_modules/@anthropic-ai/sdk/resources/beta/messages.js.map +0 -1
  381. package/node_modules/@anthropic-ai/sdk/resources/beta/messages.mjs +0 -3
  382. package/node_modules/@anthropic-ai/sdk/resources/beta/messages.mjs.map +0 -1
  383. package/node_modules/@anthropic-ai/sdk/resources/beta/models.d.mts +0 -74
  384. package/node_modules/@anthropic-ai/sdk/resources/beta/models.d.mts.map +0 -1
  385. package/node_modules/@anthropic-ai/sdk/resources/beta/models.d.ts +0 -74
  386. package/node_modules/@anthropic-ai/sdk/resources/beta/models.d.ts.map +0 -1
  387. package/node_modules/@anthropic-ai/sdk/resources/beta/models.js +0 -60
  388. package/node_modules/@anthropic-ai/sdk/resources/beta/models.js.map +0 -1
  389. package/node_modules/@anthropic-ai/sdk/resources/beta/models.mjs +0 -56
  390. package/node_modules/@anthropic-ai/sdk/resources/beta/models.mjs.map +0 -1
  391. package/node_modules/@anthropic-ai/sdk/resources/beta.d.mts +0 -2
  392. package/node_modules/@anthropic-ai/sdk/resources/beta.d.mts.map +0 -1
  393. package/node_modules/@anthropic-ai/sdk/resources/beta.d.ts +0 -2
  394. package/node_modules/@anthropic-ai/sdk/resources/beta.d.ts.map +0 -1
  395. package/node_modules/@anthropic-ai/sdk/resources/beta.js +0 -6
  396. package/node_modules/@anthropic-ai/sdk/resources/beta.js.map +0 -1
  397. package/node_modules/@anthropic-ai/sdk/resources/beta.mjs +0 -3
  398. package/node_modules/@anthropic-ai/sdk/resources/beta.mjs.map +0 -1
  399. package/node_modules/@anthropic-ai/sdk/resources/completions.d.mts +0 -183
  400. package/node_modules/@anthropic-ai/sdk/resources/completions.d.mts.map +0 -1
  401. package/node_modules/@anthropic-ai/sdk/resources/completions.d.ts +0 -183
  402. package/node_modules/@anthropic-ai/sdk/resources/completions.d.ts.map +0 -1
  403. package/node_modules/@anthropic-ai/sdk/resources/completions.js +0 -23
  404. package/node_modules/@anthropic-ai/sdk/resources/completions.js.map +0 -1
  405. package/node_modules/@anthropic-ai/sdk/resources/completions.mjs +0 -19
  406. package/node_modules/@anthropic-ai/sdk/resources/completions.mjs.map +0 -1
  407. package/node_modules/@anthropic-ai/sdk/resources/index.d.mts +0 -6
  408. package/node_modules/@anthropic-ai/sdk/resources/index.d.mts.map +0 -1
  409. package/node_modules/@anthropic-ai/sdk/resources/index.d.ts +0 -6
  410. package/node_modules/@anthropic-ai/sdk/resources/index.d.ts.map +0 -1
  411. package/node_modules/@anthropic-ai/sdk/resources/index.js +0 -15
  412. package/node_modules/@anthropic-ai/sdk/resources/index.js.map +0 -1
  413. package/node_modules/@anthropic-ai/sdk/resources/index.mjs +0 -7
  414. package/node_modules/@anthropic-ai/sdk/resources/index.mjs.map +0 -1
  415. package/node_modules/@anthropic-ai/sdk/resources/messages/batches.d.mts +0 -304
  416. package/node_modules/@anthropic-ai/sdk/resources/messages/batches.d.mts.map +0 -1
  417. package/node_modules/@anthropic-ai/sdk/resources/messages/batches.d.ts +0 -304
  418. package/node_modules/@anthropic-ai/sdk/resources/messages/batches.d.ts.map +0 -1
  419. package/node_modules/@anthropic-ai/sdk/resources/messages/batches.js +0 -153
  420. package/node_modules/@anthropic-ai/sdk/resources/messages/batches.js.map +0 -1
  421. package/node_modules/@anthropic-ai/sdk/resources/messages/batches.mjs +0 -149
  422. package/node_modules/@anthropic-ai/sdk/resources/messages/batches.mjs.map +0 -1
  423. package/node_modules/@anthropic-ai/sdk/resources/messages/index.d.mts +0 -3
  424. package/node_modules/@anthropic-ai/sdk/resources/messages/index.d.mts.map +0 -1
  425. package/node_modules/@anthropic-ai/sdk/resources/messages/index.d.ts +0 -3
  426. package/node_modules/@anthropic-ai/sdk/resources/messages/index.d.ts.map +0 -1
  427. package/node_modules/@anthropic-ai/sdk/resources/messages/index.js +0 -9
  428. package/node_modules/@anthropic-ai/sdk/resources/messages/index.js.map +0 -1
  429. package/node_modules/@anthropic-ai/sdk/resources/messages/index.mjs +0 -4
  430. package/node_modules/@anthropic-ai/sdk/resources/messages/index.mjs.map +0 -1
  431. package/node_modules/@anthropic-ai/sdk/resources/messages/messages.d.mts +0 -1264
  432. package/node_modules/@anthropic-ai/sdk/resources/messages/messages.d.mts.map +0 -1
  433. package/node_modules/@anthropic-ai/sdk/resources/messages/messages.d.ts +0 -1264
  434. package/node_modules/@anthropic-ai/sdk/resources/messages/messages.d.ts.map +0 -1
  435. package/node_modules/@anthropic-ai/sdk/resources/messages/messages.js +0 -72
  436. package/node_modules/@anthropic-ai/sdk/resources/messages/messages.js.map +0 -1
  437. package/node_modules/@anthropic-ai/sdk/resources/messages/messages.mjs +0 -67
  438. package/node_modules/@anthropic-ai/sdk/resources/messages/messages.mjs.map +0 -1
  439. package/node_modules/@anthropic-ai/sdk/resources/messages.d.mts +0 -2
  440. package/node_modules/@anthropic-ai/sdk/resources/messages.d.mts.map +0 -1
  441. package/node_modules/@anthropic-ai/sdk/resources/messages.d.ts +0 -2
  442. package/node_modules/@anthropic-ai/sdk/resources/messages.d.ts.map +0 -1
  443. package/node_modules/@anthropic-ai/sdk/resources/messages.js +0 -6
  444. package/node_modules/@anthropic-ai/sdk/resources/messages.js.map +0 -1
  445. package/node_modules/@anthropic-ai/sdk/resources/messages.mjs +0 -3
  446. package/node_modules/@anthropic-ai/sdk/resources/messages.mjs.map +0 -1
  447. package/node_modules/@anthropic-ai/sdk/resources/models.d.mts +0 -59
  448. package/node_modules/@anthropic-ai/sdk/resources/models.d.mts.map +0 -1
  449. package/node_modules/@anthropic-ai/sdk/resources/models.d.ts +0 -59
  450. package/node_modules/@anthropic-ai/sdk/resources/models.d.ts.map +0 -1
  451. package/node_modules/@anthropic-ai/sdk/resources/models.js +0 -45
  452. package/node_modules/@anthropic-ai/sdk/resources/models.js.map +0 -1
  453. package/node_modules/@anthropic-ai/sdk/resources/models.mjs +0 -41
  454. package/node_modules/@anthropic-ai/sdk/resources/models.mjs.map +0 -1
  455. package/node_modules/@anthropic-ai/sdk/resources/shared.d.mts +0 -42
  456. package/node_modules/@anthropic-ai/sdk/resources/shared.d.mts.map +0 -1
  457. package/node_modules/@anthropic-ai/sdk/resources/shared.d.ts +0 -42
  458. package/node_modules/@anthropic-ai/sdk/resources/shared.d.ts.map +0 -1
  459. package/node_modules/@anthropic-ai/sdk/resources/shared.js +0 -4
  460. package/node_modules/@anthropic-ai/sdk/resources/shared.js.map +0 -1
  461. package/node_modules/@anthropic-ai/sdk/resources/shared.mjs +0 -3
  462. package/node_modules/@anthropic-ai/sdk/resources/shared.mjs.map +0 -1
  463. package/node_modules/@anthropic-ai/sdk/resources/top-level.d.mts +0 -2
  464. package/node_modules/@anthropic-ai/sdk/resources/top-level.d.mts.map +0 -1
  465. package/node_modules/@anthropic-ai/sdk/resources/top-level.d.ts +0 -2
  466. package/node_modules/@anthropic-ai/sdk/resources/top-level.d.ts.map +0 -1
  467. package/node_modules/@anthropic-ai/sdk/resources/top-level.js +0 -4
  468. package/node_modules/@anthropic-ai/sdk/resources/top-level.js.map +0 -1
  469. package/node_modules/@anthropic-ai/sdk/resources/top-level.mjs +0 -3
  470. package/node_modules/@anthropic-ai/sdk/resources/top-level.mjs.map +0 -1
  471. package/node_modules/@anthropic-ai/sdk/resources.d.mts +0 -2
  472. package/node_modules/@anthropic-ai/sdk/resources.d.mts.map +0 -1
  473. package/node_modules/@anthropic-ai/sdk/resources.d.ts +0 -2
  474. package/node_modules/@anthropic-ai/sdk/resources.d.ts.map +0 -1
  475. package/node_modules/@anthropic-ai/sdk/resources.js +0 -5
  476. package/node_modules/@anthropic-ai/sdk/resources.js.map +0 -1
  477. package/node_modules/@anthropic-ai/sdk/resources.mjs +0 -2
  478. package/node_modules/@anthropic-ai/sdk/resources.mjs.map +0 -1
  479. package/node_modules/@anthropic-ai/sdk/src/_vendor/partial-json-parser/README.md +0 -3
  480. package/node_modules/@anthropic-ai/sdk/src/_vendor/partial-json-parser/parser.ts +0 -264
  481. package/node_modules/@anthropic-ai/sdk/src/api-promise.ts +0 -2
  482. package/node_modules/@anthropic-ai/sdk/src/client.ts +0 -1070
  483. package/node_modules/@anthropic-ai/sdk/src/core/README.md +0 -3
  484. package/node_modules/@anthropic-ai/sdk/src/core/api-promise.ts +0 -101
  485. package/node_modules/@anthropic-ai/sdk/src/core/error.ts +0 -133
  486. package/node_modules/@anthropic-ai/sdk/src/core/pagination.ts +0 -201
  487. package/node_modules/@anthropic-ai/sdk/src/core/resource.ts +0 -11
  488. package/node_modules/@anthropic-ai/sdk/src/core/streaming.ts +0 -331
  489. package/node_modules/@anthropic-ai/sdk/src/core/uploads.ts +0 -2
  490. package/node_modules/@anthropic-ai/sdk/src/error.ts +0 -2
  491. package/node_modules/@anthropic-ai/sdk/src/index.ts +0 -23
  492. package/node_modules/@anthropic-ai/sdk/src/internal/README.md +0 -3
  493. package/node_modules/@anthropic-ai/sdk/src/internal/builtin-types.ts +0 -93
  494. package/node_modules/@anthropic-ai/sdk/src/internal/constants.ts +0 -12
  495. package/node_modules/@anthropic-ai/sdk/src/internal/decoders/jsonl.ts +0 -48
  496. package/node_modules/@anthropic-ai/sdk/src/internal/decoders/line.ts +0 -135
  497. package/node_modules/@anthropic-ai/sdk/src/internal/detect-platform.ts +0 -196
  498. package/node_modules/@anthropic-ai/sdk/src/internal/errors.ts +0 -33
  499. package/node_modules/@anthropic-ai/sdk/src/internal/headers.ts +0 -99
  500. package/node_modules/@anthropic-ai/sdk/src/internal/parse.ts +0 -84
  501. package/node_modules/@anthropic-ai/sdk/src/internal/request-options.ts +0 -39
  502. package/node_modules/@anthropic-ai/sdk/src/internal/shim-types.d.ts +0 -28
  503. package/node_modules/@anthropic-ai/sdk/src/internal/shims.ts +0 -107
  504. package/node_modules/@anthropic-ai/sdk/src/internal/stream-utils.ts +0 -32
  505. package/node_modules/@anthropic-ai/sdk/src/internal/to-file.ts +0 -159
  506. package/node_modules/@anthropic-ai/sdk/src/internal/types.ts +0 -92
  507. package/node_modules/@anthropic-ai/sdk/src/internal/uploads.ts +0 -193
  508. package/node_modules/@anthropic-ai/sdk/src/internal/utils/base64.ts +0 -40
  509. package/node_modules/@anthropic-ai/sdk/src/internal/utils/bytes.ts +0 -32
  510. package/node_modules/@anthropic-ai/sdk/src/internal/utils/env.ts +0 -18
  511. package/node_modules/@anthropic-ai/sdk/src/internal/utils/log.ts +0 -127
  512. package/node_modules/@anthropic-ai/sdk/src/internal/utils/path.ts +0 -65
  513. package/node_modules/@anthropic-ai/sdk/src/internal/utils/sleep.ts +0 -3
  514. package/node_modules/@anthropic-ai/sdk/src/internal/utils/uuid.ts +0 -17
  515. package/node_modules/@anthropic-ai/sdk/src/internal/utils/values.ts +0 -102
  516. package/node_modules/@anthropic-ai/sdk/src/internal/utils.ts +0 -8
  517. package/node_modules/@anthropic-ai/sdk/src/lib/.keep +0 -4
  518. package/node_modules/@anthropic-ai/sdk/src/lib/BetaMessageStream.ts +0 -683
  519. package/node_modules/@anthropic-ai/sdk/src/lib/MessageStream.ts +0 -684
  520. package/node_modules/@anthropic-ai/sdk/src/pagination.ts +0 -2
  521. package/node_modules/@anthropic-ai/sdk/src/resource.ts +0 -2
  522. package/node_modules/@anthropic-ai/sdk/src/resources/beta/beta.ts +0 -380
  523. package/node_modules/@anthropic-ai/sdk/src/resources/beta/files.ts +0 -258
  524. package/node_modules/@anthropic-ai/sdk/src/resources/beta/index.ts +0 -148
  525. package/node_modules/@anthropic-ai/sdk/src/resources/beta/messages/batches.ts +0 -502
  526. package/node_modules/@anthropic-ai/sdk/src/resources/beta/messages/index.ts +0 -135
  527. package/node_modules/@anthropic-ai/sdk/src/resources/beta/messages/messages.ts +0 -2249
  528. package/node_modules/@anthropic-ai/sdk/src/resources/beta/messages.ts +0 -3
  529. package/node_modules/@anthropic-ai/sdk/src/resources/beta/models.ts +0 -118
  530. package/node_modules/@anthropic-ai/sdk/src/resources/beta.ts +0 -3
  531. package/node_modules/@anthropic-ai/sdk/src/resources/completions.ts +0 -231
  532. package/node_modules/@anthropic-ai/sdk/src/resources/index.ts +0 -121
  533. package/node_modules/@anthropic-ai/sdk/src/resources/messages/batches.ts +0 -396
  534. package/node_modules/@anthropic-ai/sdk/src/resources/messages/index.ts +0 -110
  535. package/node_modules/@anthropic-ai/sdk/src/resources/messages/messages.ts +0 -1783
  536. package/node_modules/@anthropic-ai/sdk/src/resources/messages.ts +0 -3
  537. package/node_modules/@anthropic-ai/sdk/src/resources/models.ts +0 -103
  538. package/node_modules/@anthropic-ai/sdk/src/resources/shared.ts +0 -72
  539. package/node_modules/@anthropic-ai/sdk/src/resources/top-level.ts +0 -3
  540. package/node_modules/@anthropic-ai/sdk/src/resources.ts +0 -1
  541. package/node_modules/@anthropic-ai/sdk/src/streaming.ts +0 -2
  542. package/node_modules/@anthropic-ai/sdk/src/tsconfig.json +0 -11
  543. package/node_modules/@anthropic-ai/sdk/src/uploads.ts +0 -2
  544. package/node_modules/@anthropic-ai/sdk/src/version.ts +0 -1
  545. package/node_modules/@anthropic-ai/sdk/streaming.d.mts +0 -2
  546. package/node_modules/@anthropic-ai/sdk/streaming.d.mts.map +0 -1
  547. package/node_modules/@anthropic-ai/sdk/streaming.d.ts +0 -2
  548. package/node_modules/@anthropic-ai/sdk/streaming.d.ts.map +0 -1
  549. package/node_modules/@anthropic-ai/sdk/streaming.js +0 -6
  550. package/node_modules/@anthropic-ai/sdk/streaming.js.map +0 -1
  551. package/node_modules/@anthropic-ai/sdk/streaming.mjs +0 -2
  552. package/node_modules/@anthropic-ai/sdk/streaming.mjs.map +0 -1
  553. package/node_modules/@anthropic-ai/sdk/uploads.d.mts +0 -2
  554. package/node_modules/@anthropic-ai/sdk/uploads.d.mts.map +0 -1
  555. package/node_modules/@anthropic-ai/sdk/uploads.d.ts +0 -2
  556. package/node_modules/@anthropic-ai/sdk/uploads.d.ts.map +0 -1
  557. package/node_modules/@anthropic-ai/sdk/uploads.js +0 -6
  558. package/node_modules/@anthropic-ai/sdk/uploads.js.map +0 -1
  559. package/node_modules/@anthropic-ai/sdk/uploads.mjs +0 -2
  560. package/node_modules/@anthropic-ai/sdk/uploads.mjs.map +0 -1
  561. package/node_modules/@anthropic-ai/sdk/version.d.mts +0 -2
  562. package/node_modules/@anthropic-ai/sdk/version.d.mts.map +0 -1
  563. package/node_modules/@anthropic-ai/sdk/version.d.ts +0 -2
  564. package/node_modules/@anthropic-ai/sdk/version.d.ts.map +0 -1
  565. package/node_modules/@anthropic-ai/sdk/version.js +0 -5
  566. package/node_modules/@anthropic-ai/sdk/version.js.map +0 -1
  567. package/node_modules/@anthropic-ai/sdk/version.mjs +0 -2
  568. package/node_modules/@anthropic-ai/sdk/version.mjs.map +0 -1
  569. package/node_modules/@dimivelev/chimera-agent-core/dist/agent-loop.d.ts +0 -24
  570. package/node_modules/@dimivelev/chimera-agent-core/dist/agent-loop.d.ts.map +0 -1
  571. package/node_modules/@dimivelev/chimera-agent-core/dist/agent-loop.js +0 -502
  572. package/node_modules/@dimivelev/chimera-agent-core/dist/agent-loop.js.map +0 -1
  573. package/node_modules/@dimivelev/chimera-agent-core/dist/agent.d.ts +0 -118
  574. package/node_modules/@dimivelev/chimera-agent-core/dist/agent.d.ts.map +0 -1
  575. package/node_modules/@dimivelev/chimera-agent-core/dist/agent.js +0 -402
  576. package/node_modules/@dimivelev/chimera-agent-core/dist/agent.js.map +0 -1
  577. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/agent-harness.d.ts +0 -95
  578. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/agent-harness.d.ts.map +0 -1
  579. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/agent-harness.js +0 -963
  580. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/agent-harness.js.map +0 -1
  581. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/compaction/branch-summarization.d.ts +0 -53
  582. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/compaction/branch-summarization.d.ts.map +0 -1
  583. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/compaction/branch-summarization.js +0 -175
  584. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/compaction/branch-summarization.js.map +0 -1
  585. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/compaction/compaction.d.ts +0 -95
  586. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/compaction/compaction.d.ts.map +0 -1
  587. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/compaction/compaction.js +0 -528
  588. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/compaction/compaction.js.map +0 -1
  589. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/compaction/utils.d.ts +0 -25
  590. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/compaction/utils.d.ts.map +0 -1
  591. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/compaction/utils.js +0 -131
  592. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/compaction/utils.js.map +0 -1
  593. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/env/nodejs.d.ts +0 -51
  594. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/env/nodejs.d.ts.map +0 -1
  595. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/env/nodejs.js +0 -486
  596. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/env/nodejs.js.map +0 -1
  597. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/messages.d.ts +0 -51
  598. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/messages.d.ts.map +0 -1
  599. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/messages.js +0 -102
  600. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/messages.js.map +0 -1
  601. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/prompt-templates.d.ts +0 -48
  602. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/prompt-templates.d.ts.map +0 -1
  603. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/prompt-templates.js +0 -230
  604. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/prompt-templates.js.map +0 -1
  605. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/jsonl-repo.d.ts +0 -26
  606. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/jsonl-repo.d.ts.map +0 -1
  607. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/jsonl-repo.js +0 -101
  608. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/jsonl-repo.js.map +0 -1
  609. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/jsonl-storage.d.ts +0 -33
  610. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/jsonl-storage.d.ts.map +0 -1
  611. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/jsonl-storage.js +0 -231
  612. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/jsonl-storage.js.map +0 -1
  613. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/memory-repo.d.ts +0 -18
  614. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/memory-repo.d.ts.map +0 -1
  615. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/memory-repo.js +0 -42
  616. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/memory-repo.js.map +0 -1
  617. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/memory-storage.d.ts +0 -25
  618. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/memory-storage.d.ts.map +0 -1
  619. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/memory-storage.js +0 -114
  620. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/memory-storage.js.map +0 -1
  621. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/repo-utils.d.ts +0 -11
  622. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/repo-utils.d.ts.map +0 -1
  623. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/repo-utils.js +0 -39
  624. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/repo-utils.js.map +0 -1
  625. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/session.d.ts +0 -33
  626. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/session.d.ts.map +0 -1
  627. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/session.js +0 -210
  628. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/session.js.map +0 -1
  629. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/uuid.d.ts +0 -2
  630. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/uuid.d.ts.map +0 -1
  631. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/uuid.js +0 -50
  632. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/session/uuid.js.map +0 -1
  633. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/skills.d.ts +0 -44
  634. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/skills.d.ts.map +0 -1
  635. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/skills.js +0 -311
  636. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/skills.js.map +0 -1
  637. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/system-prompt.d.ts +0 -3
  638. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/system-prompt.d.ts.map +0 -1
  639. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/system-prompt.js +0 -30
  640. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/system-prompt.js.map +0 -1
  641. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/types.d.ts +0 -615
  642. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/types.d.ts.map +0 -1
  643. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/types.js +0 -94
  644. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/types.js.map +0 -1
  645. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/utils/shell-output.d.ts +0 -14
  646. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/utils/shell-output.d.ts.map +0 -1
  647. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/utils/shell-output.js +0 -126
  648. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/utils/shell-output.js.map +0 -1
  649. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/utils/truncate.d.ts +0 -70
  650. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/utils/truncate.d.ts.map +0 -1
  651. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/utils/truncate.js +0 -290
  652. package/node_modules/@dimivelev/chimera-agent-core/dist/harness/utils/truncate.js.map +0 -1
  653. package/node_modules/@dimivelev/chimera-agent-core/dist/index.d.ts +0 -20
  654. package/node_modules/@dimivelev/chimera-agent-core/dist/index.d.ts.map +0 -1
  655. package/node_modules/@dimivelev/chimera-agent-core/dist/index.js +0 -25
  656. package/node_modules/@dimivelev/chimera-agent-core/dist/index.js.map +0 -1
  657. package/node_modules/@dimivelev/chimera-agent-core/dist/node.d.ts +0 -3
  658. package/node_modules/@dimivelev/chimera-agent-core/dist/node.d.ts.map +0 -1
  659. package/node_modules/@dimivelev/chimera-agent-core/dist/node.js +0 -3
  660. package/node_modules/@dimivelev/chimera-agent-core/dist/node.js.map +0 -1
  661. package/node_modules/@dimivelev/chimera-agent-core/dist/proxy.d.ts +0 -69
  662. package/node_modules/@dimivelev/chimera-agent-core/dist/proxy.d.ts.map +0 -1
  663. package/node_modules/@dimivelev/chimera-agent-core/dist/proxy.js +0 -278
  664. package/node_modules/@dimivelev/chimera-agent-core/dist/proxy.js.map +0 -1
  665. package/node_modules/@dimivelev/chimera-agent-core/dist/types.d.ts +0 -393
  666. package/node_modules/@dimivelev/chimera-agent-core/dist/types.d.ts.map +0 -1
  667. package/node_modules/@dimivelev/chimera-agent-core/dist/types.js +0 -2
  668. package/node_modules/@dimivelev/chimera-agent-core/dist/types.js.map +0 -1
  669. package/node_modules/@dimivelev/chimera-agent-core/package.json +0 -60
  670. package/node_modules/@dimivelev/chimera-ai/dist/api-registry.d.ts +0 -20
  671. package/node_modules/@dimivelev/chimera-ai/dist/api-registry.d.ts.map +0 -1
  672. package/node_modules/@dimivelev/chimera-ai/dist/api-registry.js +0 -44
  673. package/node_modules/@dimivelev/chimera-ai/dist/api-registry.js.map +0 -1
  674. package/node_modules/@dimivelev/chimera-ai/dist/bedrock-provider.d.ts +0 -5
  675. package/node_modules/@dimivelev/chimera-ai/dist/bedrock-provider.d.ts.map +0 -1
  676. package/node_modules/@dimivelev/chimera-ai/dist/bedrock-provider.js +0 -6
  677. package/node_modules/@dimivelev/chimera-ai/dist/bedrock-provider.js.map +0 -1
  678. package/node_modules/@dimivelev/chimera-ai/dist/cli.d.ts +0 -3
  679. package/node_modules/@dimivelev/chimera-ai/dist/cli.d.ts.map +0 -1
  680. package/node_modules/@dimivelev/chimera-ai/dist/cli.js +0 -130
  681. package/node_modules/@dimivelev/chimera-ai/dist/cli.js.map +0 -1
  682. package/node_modules/@dimivelev/chimera-ai/dist/env-api-keys.d.ts +0 -18
  683. package/node_modules/@dimivelev/chimera-ai/dist/env-api-keys.d.ts.map +0 -1
  684. package/node_modules/@dimivelev/chimera-ai/dist/env-api-keys.js +0 -178
  685. package/node_modules/@dimivelev/chimera-ai/dist/env-api-keys.js.map +0 -1
  686. package/node_modules/@dimivelev/chimera-ai/dist/image-models.d.ts +0 -10
  687. package/node_modules/@dimivelev/chimera-ai/dist/image-models.d.ts.map +0 -1
  688. package/node_modules/@dimivelev/chimera-ai/dist/image-models.generated.d.ts +0 -4
  689. package/node_modules/@dimivelev/chimera-ai/dist/image-models.generated.d.ts.map +0 -1
  690. package/node_modules/@dimivelev/chimera-ai/dist/image-models.generated.js +0 -6
  691. package/node_modules/@dimivelev/chimera-ai/dist/image-models.generated.js.map +0 -1
  692. package/node_modules/@dimivelev/chimera-ai/dist/image-models.js +0 -23
  693. package/node_modules/@dimivelev/chimera-ai/dist/image-models.js.map +0 -1
  694. package/node_modules/@dimivelev/chimera-ai/dist/images-api-registry.d.ts +0 -14
  695. package/node_modules/@dimivelev/chimera-ai/dist/images-api-registry.d.ts.map +0 -1
  696. package/node_modules/@dimivelev/chimera-ai/dist/images-api-registry.js +0 -22
  697. package/node_modules/@dimivelev/chimera-ai/dist/images-api-registry.js.map +0 -1
  698. package/node_modules/@dimivelev/chimera-ai/dist/images.d.ts +0 -4
  699. package/node_modules/@dimivelev/chimera-ai/dist/images.d.ts.map +0 -1
  700. package/node_modules/@dimivelev/chimera-ai/dist/images.js +0 -14
  701. package/node_modules/@dimivelev/chimera-ai/dist/images.js.map +0 -1
  702. package/node_modules/@dimivelev/chimera-ai/dist/index.d.ts +0 -32
  703. package/node_modules/@dimivelev/chimera-ai/dist/index.d.ts.map +0 -1
  704. package/node_modules/@dimivelev/chimera-ai/dist/index.js +0 -20
  705. package/node_modules/@dimivelev/chimera-ai/dist/index.js.map +0 -1
  706. package/node_modules/@dimivelev/chimera-ai/dist/models.d.ts +0 -18
  707. package/node_modules/@dimivelev/chimera-ai/dist/models.d.ts.map +0 -1
  708. package/node_modules/@dimivelev/chimera-ai/dist/models.generated.d.ts +0 -14714
  709. package/node_modules/@dimivelev/chimera-ai/dist/models.generated.d.ts.map +0 -1
  710. package/node_modules/@dimivelev/chimera-ai/dist/models.generated.js +0 -13379
  711. package/node_modules/@dimivelev/chimera-ai/dist/models.generated.js.map +0 -1
  712. package/node_modules/@dimivelev/chimera-ai/dist/models.js +0 -71
  713. package/node_modules/@dimivelev/chimera-ai/dist/models.js.map +0 -1
  714. package/node_modules/@dimivelev/chimera-ai/dist/oauth.d.ts +0 -2
  715. package/node_modules/@dimivelev/chimera-ai/dist/oauth.d.ts.map +0 -1
  716. package/node_modules/@dimivelev/chimera-ai/dist/oauth.js +0 -2
  717. package/node_modules/@dimivelev/chimera-ai/dist/oauth.js.map +0 -1
  718. package/node_modules/@dimivelev/chimera-ai/dist/providers/amazon-bedrock.d.ts +0 -38
  719. package/node_modules/@dimivelev/chimera-ai/dist/providers/amazon-bedrock.d.ts.map +0 -1
  720. package/node_modules/@dimivelev/chimera-ai/dist/providers/amazon-bedrock.js +0 -826
  721. package/node_modules/@dimivelev/chimera-ai/dist/providers/amazon-bedrock.js.map +0 -1
  722. package/node_modules/@dimivelev/chimera-ai/dist/providers/anthropic.d.ts +0 -71
  723. package/node_modules/@dimivelev/chimera-ai/dist/providers/anthropic.d.ts.map +0 -1
  724. package/node_modules/@dimivelev/chimera-ai/dist/providers/anthropic.js +0 -959
  725. package/node_modules/@dimivelev/chimera-ai/dist/providers/anthropic.js.map +0 -1
  726. package/node_modules/@dimivelev/chimera-ai/dist/providers/azure-openai-responses.d.ts +0 -15
  727. package/node_modules/@dimivelev/chimera-ai/dist/providers/azure-openai-responses.d.ts.map +0 -1
  728. package/node_modules/@dimivelev/chimera-ai/dist/providers/azure-openai-responses.js +0 -221
  729. package/node_modules/@dimivelev/chimera-ai/dist/providers/azure-openai-responses.js.map +0 -1
  730. package/node_modules/@dimivelev/chimera-ai/dist/providers/cloudflare.d.ts +0 -13
  731. package/node_modules/@dimivelev/chimera-ai/dist/providers/cloudflare.d.ts.map +0 -1
  732. package/node_modules/@dimivelev/chimera-ai/dist/providers/cloudflare.js +0 -26
  733. package/node_modules/@dimivelev/chimera-ai/dist/providers/cloudflare.js.map +0 -1
  734. package/node_modules/@dimivelev/chimera-ai/dist/providers/faux.d.ts +0 -56
  735. package/node_modules/@dimivelev/chimera-ai/dist/providers/faux.d.ts.map +0 -1
  736. package/node_modules/@dimivelev/chimera-ai/dist/providers/faux.js +0 -368
  737. package/node_modules/@dimivelev/chimera-ai/dist/providers/faux.js.map +0 -1
  738. package/node_modules/@dimivelev/chimera-ai/dist/providers/github-copilot-headers.d.ts +0 -8
  739. package/node_modules/@dimivelev/chimera-ai/dist/providers/github-copilot-headers.d.ts.map +0 -1
  740. package/node_modules/@dimivelev/chimera-ai/dist/providers/github-copilot-headers.js +0 -29
  741. package/node_modules/@dimivelev/chimera-ai/dist/providers/github-copilot-headers.js.map +0 -1
  742. package/node_modules/@dimivelev/chimera-ai/dist/providers/google-shared.d.ts +0 -70
  743. package/node_modules/@dimivelev/chimera-ai/dist/providers/google-shared.d.ts.map +0 -1
  744. package/node_modules/@dimivelev/chimera-ai/dist/providers/google-shared.js +0 -329
  745. package/node_modules/@dimivelev/chimera-ai/dist/providers/google-shared.js.map +0 -1
  746. package/node_modules/@dimivelev/chimera-ai/dist/providers/google-vertex.d.ts +0 -15
  747. package/node_modules/@dimivelev/chimera-ai/dist/providers/google-vertex.d.ts.map +0 -1
  748. package/node_modules/@dimivelev/chimera-ai/dist/providers/google-vertex.js +0 -442
  749. package/node_modules/@dimivelev/chimera-ai/dist/providers/google-vertex.js.map +0 -1
  750. package/node_modules/@dimivelev/chimera-ai/dist/providers/google.d.ts +0 -13
  751. package/node_modules/@dimivelev/chimera-ai/dist/providers/google.d.ts.map +0 -1
  752. package/node_modules/@dimivelev/chimera-ai/dist/providers/google.js +0 -402
  753. package/node_modules/@dimivelev/chimera-ai/dist/providers/google.js.map +0 -1
  754. package/node_modules/@dimivelev/chimera-ai/dist/providers/images/openrouter.d.ts +0 -3
  755. package/node_modules/@dimivelev/chimera-ai/dist/providers/images/openrouter.d.ts.map +0 -1
  756. package/node_modules/@dimivelev/chimera-ai/dist/providers/images/openrouter.js +0 -128
  757. package/node_modules/@dimivelev/chimera-ai/dist/providers/images/openrouter.js.map +0 -1
  758. package/node_modules/@dimivelev/chimera-ai/dist/providers/images/register-builtins.d.ts +0 -4
  759. package/node_modules/@dimivelev/chimera-ai/dist/providers/images/register-builtins.d.ts.map +0 -1
  760. package/node_modules/@dimivelev/chimera-ai/dist/providers/images/register-builtins.js +0 -34
  761. package/node_modules/@dimivelev/chimera-ai/dist/providers/images/register-builtins.js.map +0 -1
  762. package/node_modules/@dimivelev/chimera-ai/dist/providers/mistral.d.ts +0 -25
  763. package/node_modules/@dimivelev/chimera-ai/dist/providers/mistral.d.ts.map +0 -1
  764. package/node_modules/@dimivelev/chimera-ai/dist/providers/mistral.js +0 -534
  765. package/node_modules/@dimivelev/chimera-ai/dist/providers/mistral.js.map +0 -1
  766. package/node_modules/@dimivelev/chimera-ai/dist/providers/openai-codex-responses.d.ts +0 -30
  767. package/node_modules/@dimivelev/chimera-ai/dist/providers/openai-codex-responses.d.ts.map +0 -1
  768. package/node_modules/@dimivelev/chimera-ai/dist/providers/openai-codex-responses.js +0 -1171
  769. package/node_modules/@dimivelev/chimera-ai/dist/providers/openai-codex-responses.js.map +0 -1
  770. package/node_modules/@dimivelev/chimera-ai/dist/providers/openai-completions.d.ts +0 -19
  771. package/node_modules/@dimivelev/chimera-ai/dist/providers/openai-completions.d.ts.map +0 -1
  772. package/node_modules/@dimivelev/chimera-ai/dist/providers/openai-completions.js +0 -956
  773. package/node_modules/@dimivelev/chimera-ai/dist/providers/openai-completions.js.map +0 -1
  774. package/node_modules/@dimivelev/chimera-ai/dist/providers/openai-prompt-cache.d.ts +0 -3
  775. package/node_modules/@dimivelev/chimera-ai/dist/providers/openai-prompt-cache.d.ts.map +0 -1
  776. package/node_modules/@dimivelev/chimera-ai/dist/providers/openai-prompt-cache.js +0 -10
  777. package/node_modules/@dimivelev/chimera-ai/dist/providers/openai-prompt-cache.js.map +0 -1
  778. package/node_modules/@dimivelev/chimera-ai/dist/providers/openai-responses-shared.d.ts +0 -18
  779. package/node_modules/@dimivelev/chimera-ai/dist/providers/openai-responses-shared.d.ts.map +0 -1
  780. package/node_modules/@dimivelev/chimera-ai/dist/providers/openai-responses-shared.js +0 -495
  781. package/node_modules/@dimivelev/chimera-ai/dist/providers/openai-responses-shared.js.map +0 -1
  782. package/node_modules/@dimivelev/chimera-ai/dist/providers/openai-responses.d.ts +0 -13
  783. package/node_modules/@dimivelev/chimera-ai/dist/providers/openai-responses.d.ts.map +0 -1
  784. package/node_modules/@dimivelev/chimera-ai/dist/providers/openai-responses.js +0 -233
  785. package/node_modules/@dimivelev/chimera-ai/dist/providers/openai-responses.js.map +0 -1
  786. package/node_modules/@dimivelev/chimera-ai/dist/providers/register-builtins.d.ts +0 -35
  787. package/node_modules/@dimivelev/chimera-ai/dist/providers/register-builtins.d.ts.map +0 -1
  788. package/node_modules/@dimivelev/chimera-ai/dist/providers/register-builtins.js +0 -254
  789. package/node_modules/@dimivelev/chimera-ai/dist/providers/register-builtins.js.map +0 -1
  790. package/node_modules/@dimivelev/chimera-ai/dist/providers/simple-options.d.ts +0 -8
  791. package/node_modules/@dimivelev/chimera-ai/dist/providers/simple-options.d.ts.map +0 -1
  792. package/node_modules/@dimivelev/chimera-ai/dist/providers/simple-options.js +0 -42
  793. package/node_modules/@dimivelev/chimera-ai/dist/providers/simple-options.js.map +0 -1
  794. package/node_modules/@dimivelev/chimera-ai/dist/providers/transform-messages.d.ts +0 -8
  795. package/node_modules/@dimivelev/chimera-ai/dist/providers/transform-messages.d.ts.map +0 -1
  796. package/node_modules/@dimivelev/chimera-ai/dist/providers/transform-messages.js +0 -184
  797. package/node_modules/@dimivelev/chimera-ai/dist/providers/transform-messages.js.map +0 -1
  798. package/node_modules/@dimivelev/chimera-ai/dist/session-resources.d.ts +0 -4
  799. package/node_modules/@dimivelev/chimera-ai/dist/session-resources.d.ts.map +0 -1
  800. package/node_modules/@dimivelev/chimera-ai/dist/session-resources.js +0 -22
  801. package/node_modules/@dimivelev/chimera-ai/dist/session-resources.js.map +0 -1
  802. package/node_modules/@dimivelev/chimera-ai/dist/stream.d.ts +0 -8
  803. package/node_modules/@dimivelev/chimera-ai/dist/stream.d.ts.map +0 -1
  804. package/node_modules/@dimivelev/chimera-ai/dist/stream.js +0 -39
  805. package/node_modules/@dimivelev/chimera-ai/dist/stream.js.map +0 -1
  806. package/node_modules/@dimivelev/chimera-ai/dist/types.d.ts +0 -514
  807. package/node_modules/@dimivelev/chimera-ai/dist/types.d.ts.map +0 -1
  808. package/node_modules/@dimivelev/chimera-ai/dist/types.js +0 -2
  809. package/node_modules/@dimivelev/chimera-ai/dist/types.js.map +0 -1
  810. package/node_modules/@dimivelev/chimera-ai/dist/utils/abort-signals.d.ts +0 -6
  811. package/node_modules/@dimivelev/chimera-ai/dist/utils/abort-signals.d.ts.map +0 -1
  812. package/node_modules/@dimivelev/chimera-ai/dist/utils/abort-signals.js +0 -34
  813. package/node_modules/@dimivelev/chimera-ai/dist/utils/abort-signals.js.map +0 -1
  814. package/node_modules/@dimivelev/chimera-ai/dist/utils/diagnostics.d.ts +0 -19
  815. package/node_modules/@dimivelev/chimera-ai/dist/utils/diagnostics.d.ts.map +0 -1
  816. package/node_modules/@dimivelev/chimera-ai/dist/utils/diagnostics.js +0 -25
  817. package/node_modules/@dimivelev/chimera-ai/dist/utils/diagnostics.js.map +0 -1
  818. package/node_modules/@dimivelev/chimera-ai/dist/utils/event-stream.d.ts +0 -21
  819. package/node_modules/@dimivelev/chimera-ai/dist/utils/event-stream.d.ts.map +0 -1
  820. package/node_modules/@dimivelev/chimera-ai/dist/utils/event-stream.js +0 -81
  821. package/node_modules/@dimivelev/chimera-ai/dist/utils/event-stream.js.map +0 -1
  822. package/node_modules/@dimivelev/chimera-ai/dist/utils/hash.d.ts +0 -3
  823. package/node_modules/@dimivelev/chimera-ai/dist/utils/hash.d.ts.map +0 -1
  824. package/node_modules/@dimivelev/chimera-ai/dist/utils/hash.js +0 -14
  825. package/node_modules/@dimivelev/chimera-ai/dist/utils/hash.js.map +0 -1
  826. package/node_modules/@dimivelev/chimera-ai/dist/utils/headers.d.ts +0 -2
  827. package/node_modules/@dimivelev/chimera-ai/dist/utils/headers.d.ts.map +0 -1
  828. package/node_modules/@dimivelev/chimera-ai/dist/utils/headers.js +0 -8
  829. package/node_modules/@dimivelev/chimera-ai/dist/utils/headers.js.map +0 -1
  830. package/node_modules/@dimivelev/chimera-ai/dist/utils/json-parse.d.ts +0 -16
  831. package/node_modules/@dimivelev/chimera-ai/dist/utils/json-parse.d.ts.map +0 -1
  832. package/node_modules/@dimivelev/chimera-ai/dist/utils/json-parse.js +0 -113
  833. package/node_modules/@dimivelev/chimera-ai/dist/utils/json-parse.js.map +0 -1
  834. package/node_modules/@dimivelev/chimera-ai/dist/utils/node-http-proxy.d.ts +0 -10
  835. package/node_modules/@dimivelev/chimera-ai/dist/utils/node-http-proxy.d.ts.map +0 -1
  836. package/node_modules/@dimivelev/chimera-ai/dist/utils/node-http-proxy.js +0 -97
  837. package/node_modules/@dimivelev/chimera-ai/dist/utils/node-http-proxy.js.map +0 -1
  838. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/anthropic.d.ts +0 -25
  839. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/anthropic.d.ts.map +0 -1
  840. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/anthropic.js +0 -335
  841. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/anthropic.js.map +0 -1
  842. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/device-code.d.ts +0 -21
  843. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/device-code.d.ts.map +0 -1
  844. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/device-code.js +0 -56
  845. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/device-code.js.map +0 -1
  846. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/github-copilot.d.ts +0 -30
  847. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/github-copilot.d.ts.map +0 -1
  848. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/github-copilot.js +0 -268
  849. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/github-copilot.js.map +0 -1
  850. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/index.d.ts +0 -58
  851. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/index.d.ts.map +0 -1
  852. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/index.js +0 -122
  853. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/index.js.map +0 -1
  854. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/oauth-page.d.ts +0 -3
  855. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/oauth-page.d.ts.map +0 -1
  856. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/oauth-page.js +0 -105
  857. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/oauth-page.js.map +0 -1
  858. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/openai-codex.d.ts +0 -43
  859. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/openai-codex.d.ts.map +0 -1
  860. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/openai-codex.js +0 -485
  861. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/openai-codex.js.map +0 -1
  862. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/pkce.d.ts +0 -13
  863. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/pkce.d.ts.map +0 -1
  864. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/pkce.js +0 -31
  865. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/pkce.js.map +0 -1
  866. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/types.d.ts +0 -64
  867. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/types.d.ts.map +0 -1
  868. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/types.js +0 -2
  869. package/node_modules/@dimivelev/chimera-ai/dist/utils/oauth/types.js.map +0 -1
  870. package/node_modules/@dimivelev/chimera-ai/dist/utils/overflow.d.ts +0 -57
  871. package/node_modules/@dimivelev/chimera-ai/dist/utils/overflow.d.ts.map +0 -1
  872. package/node_modules/@dimivelev/chimera-ai/dist/utils/overflow.js +0 -154
  873. package/node_modules/@dimivelev/chimera-ai/dist/utils/overflow.js.map +0 -1
  874. package/node_modules/@dimivelev/chimera-ai/dist/utils/sanitize-unicode.d.ts +0 -22
  875. package/node_modules/@dimivelev/chimera-ai/dist/utils/sanitize-unicode.d.ts.map +0 -1
  876. package/node_modules/@dimivelev/chimera-ai/dist/utils/sanitize-unicode.js +0 -26
  877. package/node_modules/@dimivelev/chimera-ai/dist/utils/sanitize-unicode.js.map +0 -1
  878. package/node_modules/@dimivelev/chimera-ai/dist/utils/typebox-helpers.d.ts +0 -17
  879. package/node_modules/@dimivelev/chimera-ai/dist/utils/typebox-helpers.d.ts.map +0 -1
  880. package/node_modules/@dimivelev/chimera-ai/dist/utils/typebox-helpers.js +0 -21
  881. package/node_modules/@dimivelev/chimera-ai/dist/utils/typebox-helpers.js.map +0 -1
  882. package/node_modules/@dimivelev/chimera-ai/dist/utils/validation.d.ts +0 -18
  883. package/node_modules/@dimivelev/chimera-ai/dist/utils/validation.d.ts.map +0 -1
  884. package/node_modules/@dimivelev/chimera-ai/dist/utils/validation.js +0 -281
  885. package/node_modules/@dimivelev/chimera-ai/dist/utils/validation.js.map +0 -1
  886. package/node_modules/@dimivelev/chimera-ai/package.json +0 -106
  887. package/node_modules/@dimivelev/chimera-tui/dist/autocomplete.d.ts +0 -54
  888. package/node_modules/@dimivelev/chimera-tui/dist/autocomplete.d.ts.map +0 -1
  889. package/node_modules/@dimivelev/chimera-tui/dist/autocomplete.js +0 -632
  890. package/node_modules/@dimivelev/chimera-tui/dist/autocomplete.js.map +0 -1
  891. package/node_modules/@dimivelev/chimera-tui/dist/components/box.d.ts +0 -22
  892. package/node_modules/@dimivelev/chimera-tui/dist/components/box.d.ts.map +0 -1
  893. package/node_modules/@dimivelev/chimera-tui/dist/components/box.js +0 -104
  894. package/node_modules/@dimivelev/chimera-tui/dist/components/box.js.map +0 -1
  895. package/node_modules/@dimivelev/chimera-tui/dist/components/cancellable-loader.d.ts +0 -22
  896. package/node_modules/@dimivelev/chimera-tui/dist/components/cancellable-loader.d.ts.map +0 -1
  897. package/node_modules/@dimivelev/chimera-tui/dist/components/cancellable-loader.js +0 -35
  898. package/node_modules/@dimivelev/chimera-tui/dist/components/cancellable-loader.js.map +0 -1
  899. package/node_modules/@dimivelev/chimera-tui/dist/components/editor.d.ts +0 -249
  900. package/node_modules/@dimivelev/chimera-tui/dist/components/editor.d.ts.map +0 -1
  901. package/node_modules/@dimivelev/chimera-tui/dist/components/editor.js +0 -1857
  902. package/node_modules/@dimivelev/chimera-tui/dist/components/editor.js.map +0 -1
  903. package/node_modules/@dimivelev/chimera-tui/dist/components/image.d.ts +0 -28
  904. package/node_modules/@dimivelev/chimera-tui/dist/components/image.d.ts.map +0 -1
  905. package/node_modules/@dimivelev/chimera-tui/dist/components/image.js +0 -89
  906. package/node_modules/@dimivelev/chimera-tui/dist/components/image.js.map +0 -1
  907. package/node_modules/@dimivelev/chimera-tui/dist/components/input.d.ts +0 -37
  908. package/node_modules/@dimivelev/chimera-tui/dist/components/input.d.ts.map +0 -1
  909. package/node_modules/@dimivelev/chimera-tui/dist/components/input.js +0 -378
  910. package/node_modules/@dimivelev/chimera-tui/dist/components/input.js.map +0 -1
  911. package/node_modules/@dimivelev/chimera-tui/dist/components/loader.d.ts +0 -31
  912. package/node_modules/@dimivelev/chimera-tui/dist/components/loader.d.ts.map +0 -1
  913. package/node_modules/@dimivelev/chimera-tui/dist/components/loader.js +0 -69
  914. package/node_modules/@dimivelev/chimera-tui/dist/components/loader.js.map +0 -1
  915. package/node_modules/@dimivelev/chimera-tui/dist/components/markdown.d.ts +0 -96
  916. package/node_modules/@dimivelev/chimera-tui/dist/components/markdown.d.ts.map +0 -1
  917. package/node_modules/@dimivelev/chimera-tui/dist/components/markdown.js +0 -644
  918. package/node_modules/@dimivelev/chimera-tui/dist/components/markdown.js.map +0 -1
  919. package/node_modules/@dimivelev/chimera-tui/dist/components/select-list.d.ts +0 -50
  920. package/node_modules/@dimivelev/chimera-tui/dist/components/select-list.d.ts.map +0 -1
  921. package/node_modules/@dimivelev/chimera-tui/dist/components/select-list.js +0 -159
  922. package/node_modules/@dimivelev/chimera-tui/dist/components/select-list.js.map +0 -1
  923. package/node_modules/@dimivelev/chimera-tui/dist/components/settings-list.d.ts +0 -50
  924. package/node_modules/@dimivelev/chimera-tui/dist/components/settings-list.d.ts.map +0 -1
  925. package/node_modules/@dimivelev/chimera-tui/dist/components/settings-list.js +0 -185
  926. package/node_modules/@dimivelev/chimera-tui/dist/components/settings-list.js.map +0 -1
  927. package/node_modules/@dimivelev/chimera-tui/dist/components/spacer.d.ts +0 -12
  928. package/node_modules/@dimivelev/chimera-tui/dist/components/spacer.d.ts.map +0 -1
  929. package/node_modules/@dimivelev/chimera-tui/dist/components/spacer.js +0 -23
  930. package/node_modules/@dimivelev/chimera-tui/dist/components/spacer.js.map +0 -1
  931. package/node_modules/@dimivelev/chimera-tui/dist/components/text.d.ts +0 -19
  932. package/node_modules/@dimivelev/chimera-tui/dist/components/text.d.ts.map +0 -1
  933. package/node_modules/@dimivelev/chimera-tui/dist/components/text.js +0 -89
  934. package/node_modules/@dimivelev/chimera-tui/dist/components/text.js.map +0 -1
  935. package/node_modules/@dimivelev/chimera-tui/dist/components/truncated-text.d.ts +0 -13
  936. package/node_modules/@dimivelev/chimera-tui/dist/components/truncated-text.d.ts.map +0 -1
  937. package/node_modules/@dimivelev/chimera-tui/dist/components/truncated-text.js +0 -51
  938. package/node_modules/@dimivelev/chimera-tui/dist/components/truncated-text.js.map +0 -1
  939. package/node_modules/@dimivelev/chimera-tui/dist/editor-component.d.ts +0 -39
  940. package/node_modules/@dimivelev/chimera-tui/dist/editor-component.d.ts.map +0 -1
  941. package/node_modules/@dimivelev/chimera-tui/dist/editor-component.js +0 -2
  942. package/node_modules/@dimivelev/chimera-tui/dist/editor-component.js.map +0 -1
  943. package/node_modules/@dimivelev/chimera-tui/dist/fuzzy.d.ts +0 -16
  944. package/node_modules/@dimivelev/chimera-tui/dist/fuzzy.d.ts.map +0 -1
  945. package/node_modules/@dimivelev/chimera-tui/dist/fuzzy.js +0 -110
  946. package/node_modules/@dimivelev/chimera-tui/dist/fuzzy.js.map +0 -1
  947. package/node_modules/@dimivelev/chimera-tui/dist/index.d.ts +0 -23
  948. package/node_modules/@dimivelev/chimera-tui/dist/index.d.ts.map +0 -1
  949. package/node_modules/@dimivelev/chimera-tui/dist/index.js +0 -32
  950. package/node_modules/@dimivelev/chimera-tui/dist/index.js.map +0 -1
  951. package/node_modules/@dimivelev/chimera-tui/dist/keybindings.d.ts +0 -193
  952. package/node_modules/@dimivelev/chimera-tui/dist/keybindings.d.ts.map +0 -1
  953. package/node_modules/@dimivelev/chimera-tui/dist/keybindings.js +0 -174
  954. package/node_modules/@dimivelev/chimera-tui/dist/keybindings.js.map +0 -1
  955. package/node_modules/@dimivelev/chimera-tui/dist/keys.d.ts +0 -184
  956. package/node_modules/@dimivelev/chimera-tui/dist/keys.d.ts.map +0 -1
  957. package/node_modules/@dimivelev/chimera-tui/dist/keys.js +0 -1173
  958. package/node_modules/@dimivelev/chimera-tui/dist/keys.js.map +0 -1
  959. package/node_modules/@dimivelev/chimera-tui/dist/kill-ring.d.ts +0 -28
  960. package/node_modules/@dimivelev/chimera-tui/dist/kill-ring.d.ts.map +0 -1
  961. package/node_modules/@dimivelev/chimera-tui/dist/kill-ring.js +0 -44
  962. package/node_modules/@dimivelev/chimera-tui/dist/kill-ring.js.map +0 -1
  963. package/node_modules/@dimivelev/chimera-tui/dist/native-modifiers.d.ts +0 -3
  964. package/node_modules/@dimivelev/chimera-tui/dist/native-modifiers.d.ts.map +0 -1
  965. package/node_modules/@dimivelev/chimera-tui/dist/native-modifiers.js +0 -53
  966. package/node_modules/@dimivelev/chimera-tui/dist/native-modifiers.js.map +0 -1
  967. package/node_modules/@dimivelev/chimera-tui/dist/stdin-buffer.d.ts +0 -50
  968. package/node_modules/@dimivelev/chimera-tui/dist/stdin-buffer.d.ts.map +0 -1
  969. package/node_modules/@dimivelev/chimera-tui/dist/stdin-buffer.js +0 -361
  970. package/node_modules/@dimivelev/chimera-tui/dist/stdin-buffer.js.map +0 -1
  971. package/node_modules/@dimivelev/chimera-tui/dist/terminal-image.d.ts +0 -90
  972. package/node_modules/@dimivelev/chimera-tui/dist/terminal-image.d.ts.map +0 -1
  973. package/node_modules/@dimivelev/chimera-tui/dist/terminal-image.js +0 -366
  974. package/node_modules/@dimivelev/chimera-tui/dist/terminal-image.js.map +0 -1
  975. package/node_modules/@dimivelev/chimera-tui/dist/terminal.d.ts +0 -113
  976. package/node_modules/@dimivelev/chimera-tui/dist/terminal.d.ts.map +0 -1
  977. package/node_modules/@dimivelev/chimera-tui/dist/terminal.js +0 -472
  978. package/node_modules/@dimivelev/chimera-tui/dist/terminal.js.map +0 -1
  979. package/node_modules/@dimivelev/chimera-tui/dist/tui.d.ts +0 -242
  980. package/node_modules/@dimivelev/chimera-tui/dist/tui.d.ts.map +0 -1
  981. package/node_modules/@dimivelev/chimera-tui/dist/tui.js +0 -1221
  982. package/node_modules/@dimivelev/chimera-tui/dist/tui.js.map +0 -1
  983. package/node_modules/@dimivelev/chimera-tui/dist/undo-stack.d.ts +0 -17
  984. package/node_modules/@dimivelev/chimera-tui/dist/undo-stack.d.ts.map +0 -1
  985. package/node_modules/@dimivelev/chimera-tui/dist/undo-stack.js +0 -25
  986. package/node_modules/@dimivelev/chimera-tui/dist/undo-stack.js.map +0 -1
  987. package/node_modules/@dimivelev/chimera-tui/dist/utils.d.ts +0 -84
  988. package/node_modules/@dimivelev/chimera-tui/dist/utils.d.ts.map +0 -1
  989. package/node_modules/@dimivelev/chimera-tui/dist/utils.js +0 -1029
  990. package/node_modules/@dimivelev/chimera-tui/dist/utils.js.map +0 -1
  991. package/node_modules/@dimivelev/chimera-tui/dist/word-navigation.d.ts +0 -25
  992. package/node_modules/@dimivelev/chimera-tui/dist/word-navigation.d.ts.map +0 -1
  993. package/node_modules/@dimivelev/chimera-tui/dist/word-navigation.js +0 -96
  994. package/node_modules/@dimivelev/chimera-tui/dist/word-navigation.js.map +0 -1
  995. package/node_modules/@dimivelev/chimera-tui/package.json +0 -47
@@ -1,39 +0,0 @@
1
- import { SessionError, } from "../types.js";
2
- import { Session } from "./session.js";
3
- import { uuidv7 } from "./uuid.js";
4
- export function createSessionId() {
5
- return uuidv7();
6
- }
7
- export function createTimestamp() {
8
- return new Date().toISOString();
9
- }
10
- export function toSession(storage) {
11
- return new Session(storage);
12
- }
13
- export function getFileSystemResultOrThrow(result, message) {
14
- if (!result.ok) {
15
- const code = result.error.code === "not_found" ? "not_found" : "storage";
16
- throw new SessionError(code, `${message}: ${result.error.message}`, result.error);
17
- }
18
- return result.value;
19
- }
20
- export async function getEntriesToFork(storage, options) {
21
- if (!options.entryId)
22
- return storage.getEntries();
23
- const target = await storage.getEntry(options.entryId);
24
- if (!target) {
25
- throw new SessionError("invalid_fork_target", `Entry ${options.entryId} not found`);
26
- }
27
- let effectiveLeafId;
28
- if ((options.position ?? "before") === "at") {
29
- effectiveLeafId = target.id;
30
- }
31
- else {
32
- if (target.type !== "message" || target.message.role !== "user") {
33
- throw new SessionError("invalid_fork_target", `Entry ${options.entryId} is not a user message`);
34
- }
35
- effectiveLeafId = target.parentId;
36
- }
37
- return storage.getPathToRoot(effectiveLeafId);
38
- }
39
- //# sourceMappingURL=repo-utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"repo-utils.js","sourceRoot":"","sources":["../../../src/harness/session/repo-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAGN,YAAY,GAIZ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,MAAM,UAAU,eAAe,GAAW;IACzC,OAAO,MAAM,EAAE,CAAC;AAAA,CAChB;AAED,MAAM,UAAU,eAAe,GAAW;IACzC,OAAO,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAAA,CAChC;AAED,MAAM,UAAU,SAAS,CAAoC,OAAkC,EAAsB;IACpH,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;AAAA,CAC5B;AAED,MAAM,UAAU,0BAA0B,CAAS,MAAiC,EAAE,OAAe,EAAU;IAC9G,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;QAChB,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;QACzE,MAAM,IAAI,YAAY,CAAC,IAAI,EAAE,GAAG,OAAO,KAAK,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IACnF,CAAC;IACD,OAAO,MAAM,CAAC,KAAK,CAAC;AAAA,CACpB;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACrC,OAAuB,EACvB,OAAyD,EAC3B;IAC9B,IAAI,CAAC,OAAO,CAAC,OAAO;QAAE,OAAO,OAAO,CAAC,UAAU,EAAE,CAAC;IAClD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACvD,IAAI,CAAC,MAAM,EAAE,CAAC;QACb,MAAM,IAAI,YAAY,CAAC,qBAAqB,EAAE,SAAS,OAAO,CAAC,OAAO,YAAY,CAAC,CAAC;IACrF,CAAC;IACD,IAAI,eAA8B,CAAC;IACnC,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC;QAC7C,eAAe,GAAG,MAAM,CAAC,EAAE,CAAC;IAC7B,CAAC;SAAM,CAAC;QACP,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACjE,MAAM,IAAI,YAAY,CAAC,qBAAqB,EAAE,SAAS,OAAO,CAAC,OAAO,wBAAwB,CAAC,CAAC;QACjG,CAAC;QACD,eAAe,GAAG,MAAM,CAAC,QAAQ,CAAC;IACnC,CAAC;IACD,OAAO,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;AAAA,CAC9C","sourcesContent":["import {\n\ttype FileError,\n\ttype Result,\n\tSessionError,\n\ttype SessionMetadata,\n\ttype SessionStorage,\n\ttype SessionTreeEntry,\n} from \"../types.ts\";\nimport { Session } from \"./session.ts\";\nimport { uuidv7 } from \"./uuid.ts\";\n\nexport function createSessionId(): string {\n\treturn uuidv7();\n}\n\nexport function createTimestamp(): string {\n\treturn new Date().toISOString();\n}\n\nexport function toSession<TMetadata extends SessionMetadata>(storage: SessionStorage<TMetadata>): Session<TMetadata> {\n\treturn new Session(storage);\n}\n\nexport function getFileSystemResultOrThrow<TValue>(result: Result<TValue, FileError>, message: string): TValue {\n\tif (!result.ok) {\n\t\tconst code = result.error.code === \"not_found\" ? \"not_found\" : \"storage\";\n\t\tthrow new SessionError(code, `${message}: ${result.error.message}`, result.error);\n\t}\n\treturn result.value;\n}\n\nexport async function getEntriesToFork(\n\tstorage: SessionStorage,\n\toptions: { entryId?: string; position?: \"before\" | \"at\" },\n): Promise<SessionTreeEntry[]> {\n\tif (!options.entryId) return storage.getEntries();\n\tconst target = await storage.getEntry(options.entryId);\n\tif (!target) {\n\t\tthrow new SessionError(\"invalid_fork_target\", `Entry ${options.entryId} not found`);\n\t}\n\tlet effectiveLeafId: string | null;\n\tif ((options.position ?? \"before\") === \"at\") {\n\t\teffectiveLeafId = target.id;\n\t} else {\n\t\tif (target.type !== \"message\" || target.message.role !== \"user\") {\n\t\t\tthrow new SessionError(\"invalid_fork_target\", `Entry ${options.entryId} is not a user message`);\n\t\t}\n\t\teffectiveLeafId = target.parentId;\n\t}\n\treturn storage.getPathToRoot(effectiveLeafId);\n}\n"]}
@@ -1,33 +0,0 @@
1
- import type { ImageContent, TextContent } from "@dimivelev/chimera-ai";
2
- import type { AgentMessage } from "../../types.ts";
3
- import type { SessionContext, SessionMetadata, SessionStorage, SessionTreeEntry } from "../types.ts";
4
- export declare function buildSessionContext(pathEntries: SessionTreeEntry[]): SessionContext;
5
- export declare class Session<TMetadata extends SessionMetadata = SessionMetadata> {
6
- private storage;
7
- constructor(storage: SessionStorage<TMetadata>);
8
- getMetadata(): Promise<TMetadata>;
9
- getStorage(): SessionStorage<TMetadata>;
10
- getLeafId(): Promise<string | null>;
11
- getEntry(id: string): Promise<SessionTreeEntry | undefined>;
12
- getEntries(): Promise<SessionTreeEntry[]>;
13
- getBranch(fromId?: string): Promise<SessionTreeEntry[]>;
14
- buildContext(): Promise<SessionContext>;
15
- getLabel(id: string): Promise<string | undefined>;
16
- getSessionName(): Promise<string | undefined>;
17
- private appendTypedEntry;
18
- appendMessage(message: AgentMessage): Promise<string>;
19
- appendThinkingLevelChange(thinkingLevel: string): Promise<string>;
20
- appendModelChange(provider: string, modelId: string): Promise<string>;
21
- appendActiveToolsChange(activeToolNames: string[]): Promise<string>;
22
- appendCompaction<T = unknown>(summary: string, firstKeptEntryId: string, tokensBefore: number, details?: T, fromHook?: boolean): Promise<string>;
23
- appendCustomEntry(customType: string, data?: unknown): Promise<string>;
24
- appendCustomMessageEntry<T = unknown>(customType: string, content: string | (TextContent | ImageContent)[], display: boolean, details?: T): Promise<string>;
25
- appendLabel(targetId: string, label: string | undefined): Promise<string>;
26
- appendSessionName(name: string): Promise<string>;
27
- moveTo(entryId: string | null, summary?: {
28
- summary: string;
29
- details?: unknown;
30
- fromHook?: boolean;
31
- }): Promise<string | undefined>;
32
- }
33
- //# sourceMappingURL=session.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/harness/session/session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEnD,OAAO,KAAK,EASX,cAAc,EAEd,eAAe,EACf,cAAc,EACd,gBAAgB,EAEhB,MAAM,aAAa,CAAC;AAGrB,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,gBAAgB,EAAE,GAAG,cAAc,CA0DnF;AAED,qBAAa,OAAO,CAAC,SAAS,SAAS,eAAe,GAAG,eAAe;IACvE,OAAO,CAAC,OAAO,CAA4B;IAE3C,YAAY,OAAO,EAAE,cAAc,CAAC,SAAS,CAAC,EAE7C;IAED,WAAW,IAAI,OAAO,CAAC,SAAS,CAAC,CAEhC;IAED,UAAU,IAAI,cAAc,CAAC,SAAS,CAAC,CAEtC;IAED,SAAS,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAElC;IAED,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAE1D;IAED,UAAU,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAExC;IAEK,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAG5D;IAEK,YAAY,IAAI,OAAO,CAAC,cAAc,CAAC,CAE5C;IAED,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAEhD;IAEK,cAAc,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAGlD;YAEa,gBAAgB;IAKxB,aAAa,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAQ1D;IAEK,yBAAyB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAQtE;IAEK,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAS1E;IAEK,uBAAuB,CAAC,eAAe,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAQxE;IAEK,gBAAgB,CAAC,CAAC,GAAG,OAAO,EACjC,OAAO,EAAE,MAAM,EACf,gBAAgB,EAAE,MAAM,EACxB,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE,CAAC,EACX,QAAQ,CAAC,EAAE,OAAO,GAChB,OAAO,CAAC,MAAM,CAAC,CAYjB;IAEK,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAS3E;IAEK,wBAAwB,CAAC,CAAC,GAAG,OAAO,EACzC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,GAAG,CAAC,WAAW,GAAG,YAAY,CAAC,EAAE,EAChD,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,CAAC,GACT,OAAO,CAAC,MAAM,CAAC,CAWjB;IAEK,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAY9E;IAEK,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAQrD;IAEK,MAAM,CACX,OAAO,EAAE,MAAM,GAAG,IAAI,EACtB,OAAO,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,GAClE,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAgB7B;CACD","sourcesContent":["import type { ImageContent, TextContent } from \"@dimivelev/chimera-ai\";\nimport type { AgentMessage } from \"../../types.ts\";\nimport { createBranchSummaryMessage, createCompactionSummaryMessage, createCustomMessage } from \"../messages.ts\";\nimport type {\n\tActiveToolsChangeEntry,\n\tBranchSummaryEntry,\n\tCompactionEntry,\n\tCustomEntry,\n\tCustomMessageEntry,\n\tLabelEntry,\n\tMessageEntry,\n\tModelChangeEntry,\n\tSessionContext,\n\tSessionInfoEntry,\n\tSessionMetadata,\n\tSessionStorage,\n\tSessionTreeEntry,\n\tThinkingLevelChangeEntry,\n} from \"../types.ts\";\nimport { SessionError } from \"../types.ts\";\n\nexport function buildSessionContext(pathEntries: SessionTreeEntry[]): SessionContext {\n\tlet thinkingLevel = \"off\";\n\tlet model: { provider: string; modelId: string } | null = null;\n\tlet activeToolNames: string[] | null = null;\n\tlet compaction: CompactionEntry | null = null;\n\n\tfor (const entry of pathEntries) {\n\t\tif (entry.type === \"thinking_level_change\") {\n\t\t\tthinkingLevel = entry.thinkingLevel;\n\t\t} else if (entry.type === \"model_change\") {\n\t\t\tmodel = { provider: entry.provider, modelId: entry.modelId };\n\t\t} else if (entry.type === \"message\" && entry.message.role === \"assistant\") {\n\t\t\tmodel = { provider: entry.message.provider, modelId: entry.message.model };\n\t\t} else if (entry.type === \"active_tools_change\") {\n\t\t\tactiveToolNames = [...entry.activeToolNames];\n\t\t} else if (entry.type === \"compaction\") {\n\t\t\tcompaction = entry;\n\t\t}\n\t}\n\n\tconst messages: AgentMessage[] = [];\n\tconst appendMessage = (entry: SessionTreeEntry) => {\n\t\tif (entry.type === \"message\") {\n\t\t\tmessages.push(entry.message as AgentMessage);\n\t\t} else if (entry.type === \"custom_message\") {\n\t\t\tmessages.push(\n\t\t\t\tcreateCustomMessage(\n\t\t\t\t\tentry.customType,\n\t\t\t\t\tentry.content as string | (TextContent | ImageContent)[],\n\t\t\t\t\tentry.display,\n\t\t\t\t\tentry.details,\n\t\t\t\t\tentry.timestamp,\n\t\t\t\t),\n\t\t\t);\n\t\t} else if (entry.type === \"branch_summary\" && entry.summary) {\n\t\t\tmessages.push(createBranchSummaryMessage(entry.summary, entry.fromId, entry.timestamp));\n\t\t}\n\t};\n\n\tif (compaction) {\n\t\tmessages.push(createCompactionSummaryMessage(compaction.summary, compaction.tokensBefore, compaction.timestamp));\n\t\tconst compactionIdx = pathEntries.findIndex((e) => e.type === \"compaction\" && e.id === compaction.id);\n\t\tlet foundFirstKept = false;\n\t\tfor (let i = 0; i < compactionIdx; i++) {\n\t\t\tconst entry = pathEntries[i]!;\n\t\t\tif (entry.id === compaction.firstKeptEntryId) foundFirstKept = true;\n\t\t\tif (foundFirstKept) appendMessage(entry);\n\t\t}\n\t\tfor (let i = compactionIdx + 1; i < pathEntries.length; i++) {\n\t\t\tappendMessage(pathEntries[i]!);\n\t\t}\n\t} else {\n\t\tfor (const entry of pathEntries) {\n\t\t\tappendMessage(entry);\n\t\t}\n\t}\n\n\treturn { messages, thinkingLevel, model, activeToolNames };\n}\n\nexport class Session<TMetadata extends SessionMetadata = SessionMetadata> {\n\tprivate storage: SessionStorage<TMetadata>;\n\n\tconstructor(storage: SessionStorage<TMetadata>) {\n\t\tthis.storage = storage;\n\t}\n\n\tgetMetadata(): Promise<TMetadata> {\n\t\treturn this.storage.getMetadata();\n\t}\n\n\tgetStorage(): SessionStorage<TMetadata> {\n\t\treturn this.storage;\n\t}\n\n\tgetLeafId(): Promise<string | null> {\n\t\treturn this.storage.getLeafId();\n\t}\n\n\tgetEntry(id: string): Promise<SessionTreeEntry | undefined> {\n\t\treturn this.storage.getEntry(id);\n\t}\n\n\tgetEntries(): Promise<SessionTreeEntry[]> {\n\t\treturn this.storage.getEntries();\n\t}\n\n\tasync getBranch(fromId?: string): Promise<SessionTreeEntry[]> {\n\t\tconst leafId = fromId ?? (await this.storage.getLeafId());\n\t\treturn this.storage.getPathToRoot(leafId);\n\t}\n\n\tasync buildContext(): Promise<SessionContext> {\n\t\treturn buildSessionContext(await this.getBranch());\n\t}\n\n\tgetLabel(id: string): Promise<string | undefined> {\n\t\treturn this.storage.getLabel(id);\n\t}\n\n\tasync getSessionName(): Promise<string | undefined> {\n\t\tconst entries = await this.storage.findEntries(\"session_info\");\n\t\treturn entries[entries.length - 1]?.name?.trim() || undefined;\n\t}\n\n\tprivate async appendTypedEntry<TEntry extends SessionTreeEntry>(entry: TEntry): Promise<string> {\n\t\tawait this.storage.appendEntry(entry);\n\t\treturn entry.id;\n\t}\n\n\tasync appendMessage(message: AgentMessage): Promise<string> {\n\t\treturn this.appendTypedEntry({\n\t\t\ttype: \"message\",\n\t\t\tid: await this.storage.createEntryId(),\n\t\t\tparentId: await this.storage.getLeafId(),\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tmessage,\n\t\t} satisfies MessageEntry);\n\t}\n\n\tasync appendThinkingLevelChange(thinkingLevel: string): Promise<string> {\n\t\treturn this.appendTypedEntry({\n\t\t\ttype: \"thinking_level_change\",\n\t\t\tid: await this.storage.createEntryId(),\n\t\t\tparentId: await this.storage.getLeafId(),\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tthinkingLevel,\n\t\t} satisfies ThinkingLevelChangeEntry);\n\t}\n\n\tasync appendModelChange(provider: string, modelId: string): Promise<string> {\n\t\treturn this.appendTypedEntry({\n\t\t\ttype: \"model_change\",\n\t\t\tid: await this.storage.createEntryId(),\n\t\t\tparentId: await this.storage.getLeafId(),\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tprovider,\n\t\t\tmodelId,\n\t\t} satisfies ModelChangeEntry);\n\t}\n\n\tasync appendActiveToolsChange(activeToolNames: string[]): Promise<string> {\n\t\treturn this.appendTypedEntry({\n\t\t\ttype: \"active_tools_change\",\n\t\t\tid: await this.storage.createEntryId(),\n\t\t\tparentId: await this.storage.getLeafId(),\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tactiveToolNames: [...activeToolNames],\n\t\t} satisfies ActiveToolsChangeEntry);\n\t}\n\n\tasync appendCompaction<T = unknown>(\n\t\tsummary: string,\n\t\tfirstKeptEntryId: string,\n\t\ttokensBefore: number,\n\t\tdetails?: T,\n\t\tfromHook?: boolean,\n\t): Promise<string> {\n\t\treturn this.appendTypedEntry({\n\t\t\ttype: \"compaction\",\n\t\t\tid: await this.storage.createEntryId(),\n\t\t\tparentId: await this.storage.getLeafId(),\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tsummary,\n\t\t\tfirstKeptEntryId,\n\t\t\ttokensBefore,\n\t\t\tdetails,\n\t\t\tfromHook,\n\t\t} satisfies CompactionEntry<T>);\n\t}\n\n\tasync appendCustomEntry(customType: string, data?: unknown): Promise<string> {\n\t\treturn this.appendTypedEntry({\n\t\t\ttype: \"custom\",\n\t\t\tid: await this.storage.createEntryId(),\n\t\t\tparentId: await this.storage.getLeafId(),\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tcustomType,\n\t\t\tdata,\n\t\t} satisfies CustomEntry);\n\t}\n\n\tasync appendCustomMessageEntry<T = unknown>(\n\t\tcustomType: string,\n\t\tcontent: string | (TextContent | ImageContent)[],\n\t\tdisplay: boolean,\n\t\tdetails?: T,\n\t): Promise<string> {\n\t\treturn this.appendTypedEntry({\n\t\t\ttype: \"custom_message\",\n\t\t\tid: await this.storage.createEntryId(),\n\t\t\tparentId: await this.storage.getLeafId(),\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tcustomType,\n\t\t\tcontent,\n\t\t\tdisplay,\n\t\t\tdetails,\n\t\t} satisfies CustomMessageEntry<T>);\n\t}\n\n\tasync appendLabel(targetId: string, label: string | undefined): Promise<string> {\n\t\tif (!(await this.storage.getEntry(targetId))) {\n\t\t\tthrow new SessionError(\"not_found\", `Entry ${targetId} not found`);\n\t\t}\n\t\treturn this.appendTypedEntry({\n\t\t\ttype: \"label\",\n\t\t\tid: await this.storage.createEntryId(),\n\t\t\tparentId: await this.storage.getLeafId(),\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\ttargetId,\n\t\t\tlabel,\n\t\t} satisfies LabelEntry);\n\t}\n\n\tasync appendSessionName(name: string): Promise<string> {\n\t\treturn this.appendTypedEntry({\n\t\t\ttype: \"session_info\",\n\t\t\tid: await this.storage.createEntryId(),\n\t\t\tparentId: await this.storage.getLeafId(),\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tname: name.trim(),\n\t\t} satisfies SessionInfoEntry);\n\t}\n\n\tasync moveTo(\n\t\tentryId: string | null,\n\t\tsummary?: { summary: string; details?: unknown; fromHook?: boolean },\n\t): Promise<string | undefined> {\n\t\tif (entryId !== null && !(await this.storage.getEntry(entryId))) {\n\t\t\tthrow new SessionError(\"not_found\", `Entry ${entryId} not found`);\n\t\t}\n\t\tawait this.storage.setLeafId(entryId);\n\t\tif (!summary) return undefined;\n\t\treturn this.appendTypedEntry({\n\t\t\ttype: \"branch_summary\",\n\t\t\tid: await this.storage.createEntryId(),\n\t\t\tparentId: entryId,\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tfromId: entryId ?? \"root\",\n\t\t\tsummary: summary.summary,\n\t\t\tdetails: summary.details,\n\t\t\tfromHook: summary.fromHook,\n\t\t} satisfies BranchSummaryEntry);\n\t}\n}\n"]}
@@ -1,210 +0,0 @@
1
- import { createBranchSummaryMessage, createCompactionSummaryMessage, createCustomMessage } from "../messages.js";
2
- import { SessionError } from "../types.js";
3
- export function buildSessionContext(pathEntries) {
4
- let thinkingLevel = "off";
5
- let model = null;
6
- let activeToolNames = null;
7
- let compaction = null;
8
- for (const entry of pathEntries) {
9
- if (entry.type === "thinking_level_change") {
10
- thinkingLevel = entry.thinkingLevel;
11
- }
12
- else if (entry.type === "model_change") {
13
- model = { provider: entry.provider, modelId: entry.modelId };
14
- }
15
- else if (entry.type === "message" && entry.message.role === "assistant") {
16
- model = { provider: entry.message.provider, modelId: entry.message.model };
17
- }
18
- else if (entry.type === "active_tools_change") {
19
- activeToolNames = [...entry.activeToolNames];
20
- }
21
- else if (entry.type === "compaction") {
22
- compaction = entry;
23
- }
24
- }
25
- const messages = [];
26
- const appendMessage = (entry) => {
27
- if (entry.type === "message") {
28
- messages.push(entry.message);
29
- }
30
- else if (entry.type === "custom_message") {
31
- messages.push(createCustomMessage(entry.customType, entry.content, entry.display, entry.details, entry.timestamp));
32
- }
33
- else if (entry.type === "branch_summary" && entry.summary) {
34
- messages.push(createBranchSummaryMessage(entry.summary, entry.fromId, entry.timestamp));
35
- }
36
- };
37
- if (compaction) {
38
- messages.push(createCompactionSummaryMessage(compaction.summary, compaction.tokensBefore, compaction.timestamp));
39
- const compactionIdx = pathEntries.findIndex((e) => e.type === "compaction" && e.id === compaction.id);
40
- let foundFirstKept = false;
41
- for (let i = 0; i < compactionIdx; i++) {
42
- const entry = pathEntries[i];
43
- if (entry.id === compaction.firstKeptEntryId)
44
- foundFirstKept = true;
45
- if (foundFirstKept)
46
- appendMessage(entry);
47
- }
48
- for (let i = compactionIdx + 1; i < pathEntries.length; i++) {
49
- appendMessage(pathEntries[i]);
50
- }
51
- }
52
- else {
53
- for (const entry of pathEntries) {
54
- appendMessage(entry);
55
- }
56
- }
57
- return { messages, thinkingLevel, model, activeToolNames };
58
- }
59
- export class Session {
60
- storage;
61
- constructor(storage) {
62
- this.storage = storage;
63
- }
64
- getMetadata() {
65
- return this.storage.getMetadata();
66
- }
67
- getStorage() {
68
- return this.storage;
69
- }
70
- getLeafId() {
71
- return this.storage.getLeafId();
72
- }
73
- getEntry(id) {
74
- return this.storage.getEntry(id);
75
- }
76
- getEntries() {
77
- return this.storage.getEntries();
78
- }
79
- async getBranch(fromId) {
80
- const leafId = fromId ?? (await this.storage.getLeafId());
81
- return this.storage.getPathToRoot(leafId);
82
- }
83
- async buildContext() {
84
- return buildSessionContext(await this.getBranch());
85
- }
86
- getLabel(id) {
87
- return this.storage.getLabel(id);
88
- }
89
- async getSessionName() {
90
- const entries = await this.storage.findEntries("session_info");
91
- return entries[entries.length - 1]?.name?.trim() || undefined;
92
- }
93
- async appendTypedEntry(entry) {
94
- await this.storage.appendEntry(entry);
95
- return entry.id;
96
- }
97
- async appendMessage(message) {
98
- return this.appendTypedEntry({
99
- type: "message",
100
- id: await this.storage.createEntryId(),
101
- parentId: await this.storage.getLeafId(),
102
- timestamp: new Date().toISOString(),
103
- message,
104
- });
105
- }
106
- async appendThinkingLevelChange(thinkingLevel) {
107
- return this.appendTypedEntry({
108
- type: "thinking_level_change",
109
- id: await this.storage.createEntryId(),
110
- parentId: await this.storage.getLeafId(),
111
- timestamp: new Date().toISOString(),
112
- thinkingLevel,
113
- });
114
- }
115
- async appendModelChange(provider, modelId) {
116
- return this.appendTypedEntry({
117
- type: "model_change",
118
- id: await this.storage.createEntryId(),
119
- parentId: await this.storage.getLeafId(),
120
- timestamp: new Date().toISOString(),
121
- provider,
122
- modelId,
123
- });
124
- }
125
- async appendActiveToolsChange(activeToolNames) {
126
- return this.appendTypedEntry({
127
- type: "active_tools_change",
128
- id: await this.storage.createEntryId(),
129
- parentId: await this.storage.getLeafId(),
130
- timestamp: new Date().toISOString(),
131
- activeToolNames: [...activeToolNames],
132
- });
133
- }
134
- async appendCompaction(summary, firstKeptEntryId, tokensBefore, details, fromHook) {
135
- return this.appendTypedEntry({
136
- type: "compaction",
137
- id: await this.storage.createEntryId(),
138
- parentId: await this.storage.getLeafId(),
139
- timestamp: new Date().toISOString(),
140
- summary,
141
- firstKeptEntryId,
142
- tokensBefore,
143
- details,
144
- fromHook,
145
- });
146
- }
147
- async appendCustomEntry(customType, data) {
148
- return this.appendTypedEntry({
149
- type: "custom",
150
- id: await this.storage.createEntryId(),
151
- parentId: await this.storage.getLeafId(),
152
- timestamp: new Date().toISOString(),
153
- customType,
154
- data,
155
- });
156
- }
157
- async appendCustomMessageEntry(customType, content, display, details) {
158
- return this.appendTypedEntry({
159
- type: "custom_message",
160
- id: await this.storage.createEntryId(),
161
- parentId: await this.storage.getLeafId(),
162
- timestamp: new Date().toISOString(),
163
- customType,
164
- content,
165
- display,
166
- details,
167
- });
168
- }
169
- async appendLabel(targetId, label) {
170
- if (!(await this.storage.getEntry(targetId))) {
171
- throw new SessionError("not_found", `Entry ${targetId} not found`);
172
- }
173
- return this.appendTypedEntry({
174
- type: "label",
175
- id: await this.storage.createEntryId(),
176
- parentId: await this.storage.getLeafId(),
177
- timestamp: new Date().toISOString(),
178
- targetId,
179
- label,
180
- });
181
- }
182
- async appendSessionName(name) {
183
- return this.appendTypedEntry({
184
- type: "session_info",
185
- id: await this.storage.createEntryId(),
186
- parentId: await this.storage.getLeafId(),
187
- timestamp: new Date().toISOString(),
188
- name: name.trim(),
189
- });
190
- }
191
- async moveTo(entryId, summary) {
192
- if (entryId !== null && !(await this.storage.getEntry(entryId))) {
193
- throw new SessionError("not_found", `Entry ${entryId} not found`);
194
- }
195
- await this.storage.setLeafId(entryId);
196
- if (!summary)
197
- return undefined;
198
- return this.appendTypedEntry({
199
- type: "branch_summary",
200
- id: await this.storage.createEntryId(),
201
- parentId: entryId,
202
- timestamp: new Date().toISOString(),
203
- fromId: entryId ?? "root",
204
- summary: summary.summary,
205
- details: summary.details,
206
- fromHook: summary.fromHook,
207
- });
208
- }
209
- }
210
- //# sourceMappingURL=session.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/harness/session/session.ts"],"names":[],"mappings":"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","sourcesContent":["import type { ImageContent, TextContent } from \"@dimivelev/chimera-ai\";\nimport type { AgentMessage } from \"../../types.ts\";\nimport { createBranchSummaryMessage, createCompactionSummaryMessage, createCustomMessage } from \"../messages.ts\";\nimport type {\n\tActiveToolsChangeEntry,\n\tBranchSummaryEntry,\n\tCompactionEntry,\n\tCustomEntry,\n\tCustomMessageEntry,\n\tLabelEntry,\n\tMessageEntry,\n\tModelChangeEntry,\n\tSessionContext,\n\tSessionInfoEntry,\n\tSessionMetadata,\n\tSessionStorage,\n\tSessionTreeEntry,\n\tThinkingLevelChangeEntry,\n} from \"../types.ts\";\nimport { SessionError } from \"../types.ts\";\n\nexport function buildSessionContext(pathEntries: SessionTreeEntry[]): SessionContext {\n\tlet thinkingLevel = \"off\";\n\tlet model: { provider: string; modelId: string } | null = null;\n\tlet activeToolNames: string[] | null = null;\n\tlet compaction: CompactionEntry | null = null;\n\n\tfor (const entry of pathEntries) {\n\t\tif (entry.type === \"thinking_level_change\") {\n\t\t\tthinkingLevel = entry.thinkingLevel;\n\t\t} else if (entry.type === \"model_change\") {\n\t\t\tmodel = { provider: entry.provider, modelId: entry.modelId };\n\t\t} else if (entry.type === \"message\" && entry.message.role === \"assistant\") {\n\t\t\tmodel = { provider: entry.message.provider, modelId: entry.message.model };\n\t\t} else if (entry.type === \"active_tools_change\") {\n\t\t\tactiveToolNames = [...entry.activeToolNames];\n\t\t} else if (entry.type === \"compaction\") {\n\t\t\tcompaction = entry;\n\t\t}\n\t}\n\n\tconst messages: AgentMessage[] = [];\n\tconst appendMessage = (entry: SessionTreeEntry) => {\n\t\tif (entry.type === \"message\") {\n\t\t\tmessages.push(entry.message as AgentMessage);\n\t\t} else if (entry.type === \"custom_message\") {\n\t\t\tmessages.push(\n\t\t\t\tcreateCustomMessage(\n\t\t\t\t\tentry.customType,\n\t\t\t\t\tentry.content as string | (TextContent | ImageContent)[],\n\t\t\t\t\tentry.display,\n\t\t\t\t\tentry.details,\n\t\t\t\t\tentry.timestamp,\n\t\t\t\t),\n\t\t\t);\n\t\t} else if (entry.type === \"branch_summary\" && entry.summary) {\n\t\t\tmessages.push(createBranchSummaryMessage(entry.summary, entry.fromId, entry.timestamp));\n\t\t}\n\t};\n\n\tif (compaction) {\n\t\tmessages.push(createCompactionSummaryMessage(compaction.summary, compaction.tokensBefore, compaction.timestamp));\n\t\tconst compactionIdx = pathEntries.findIndex((e) => e.type === \"compaction\" && e.id === compaction.id);\n\t\tlet foundFirstKept = false;\n\t\tfor (let i = 0; i < compactionIdx; i++) {\n\t\t\tconst entry = pathEntries[i]!;\n\t\t\tif (entry.id === compaction.firstKeptEntryId) foundFirstKept = true;\n\t\t\tif (foundFirstKept) appendMessage(entry);\n\t\t}\n\t\tfor (let i = compactionIdx + 1; i < pathEntries.length; i++) {\n\t\t\tappendMessage(pathEntries[i]!);\n\t\t}\n\t} else {\n\t\tfor (const entry of pathEntries) {\n\t\t\tappendMessage(entry);\n\t\t}\n\t}\n\n\treturn { messages, thinkingLevel, model, activeToolNames };\n}\n\nexport class Session<TMetadata extends SessionMetadata = SessionMetadata> {\n\tprivate storage: SessionStorage<TMetadata>;\n\n\tconstructor(storage: SessionStorage<TMetadata>) {\n\t\tthis.storage = storage;\n\t}\n\n\tgetMetadata(): Promise<TMetadata> {\n\t\treturn this.storage.getMetadata();\n\t}\n\n\tgetStorage(): SessionStorage<TMetadata> {\n\t\treturn this.storage;\n\t}\n\n\tgetLeafId(): Promise<string | null> {\n\t\treturn this.storage.getLeafId();\n\t}\n\n\tgetEntry(id: string): Promise<SessionTreeEntry | undefined> {\n\t\treturn this.storage.getEntry(id);\n\t}\n\n\tgetEntries(): Promise<SessionTreeEntry[]> {\n\t\treturn this.storage.getEntries();\n\t}\n\n\tasync getBranch(fromId?: string): Promise<SessionTreeEntry[]> {\n\t\tconst leafId = fromId ?? (await this.storage.getLeafId());\n\t\treturn this.storage.getPathToRoot(leafId);\n\t}\n\n\tasync buildContext(): Promise<SessionContext> {\n\t\treturn buildSessionContext(await this.getBranch());\n\t}\n\n\tgetLabel(id: string): Promise<string | undefined> {\n\t\treturn this.storage.getLabel(id);\n\t}\n\n\tasync getSessionName(): Promise<string | undefined> {\n\t\tconst entries = await this.storage.findEntries(\"session_info\");\n\t\treturn entries[entries.length - 1]?.name?.trim() || undefined;\n\t}\n\n\tprivate async appendTypedEntry<TEntry extends SessionTreeEntry>(entry: TEntry): Promise<string> {\n\t\tawait this.storage.appendEntry(entry);\n\t\treturn entry.id;\n\t}\n\n\tasync appendMessage(message: AgentMessage): Promise<string> {\n\t\treturn this.appendTypedEntry({\n\t\t\ttype: \"message\",\n\t\t\tid: await this.storage.createEntryId(),\n\t\t\tparentId: await this.storage.getLeafId(),\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tmessage,\n\t\t} satisfies MessageEntry);\n\t}\n\n\tasync appendThinkingLevelChange(thinkingLevel: string): Promise<string> {\n\t\treturn this.appendTypedEntry({\n\t\t\ttype: \"thinking_level_change\",\n\t\t\tid: await this.storage.createEntryId(),\n\t\t\tparentId: await this.storage.getLeafId(),\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tthinkingLevel,\n\t\t} satisfies ThinkingLevelChangeEntry);\n\t}\n\n\tasync appendModelChange(provider: string, modelId: string): Promise<string> {\n\t\treturn this.appendTypedEntry({\n\t\t\ttype: \"model_change\",\n\t\t\tid: await this.storage.createEntryId(),\n\t\t\tparentId: await this.storage.getLeafId(),\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tprovider,\n\t\t\tmodelId,\n\t\t} satisfies ModelChangeEntry);\n\t}\n\n\tasync appendActiveToolsChange(activeToolNames: string[]): Promise<string> {\n\t\treturn this.appendTypedEntry({\n\t\t\ttype: \"active_tools_change\",\n\t\t\tid: await this.storage.createEntryId(),\n\t\t\tparentId: await this.storage.getLeafId(),\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tactiveToolNames: [...activeToolNames],\n\t\t} satisfies ActiveToolsChangeEntry);\n\t}\n\n\tasync appendCompaction<T = unknown>(\n\t\tsummary: string,\n\t\tfirstKeptEntryId: string,\n\t\ttokensBefore: number,\n\t\tdetails?: T,\n\t\tfromHook?: boolean,\n\t): Promise<string> {\n\t\treturn this.appendTypedEntry({\n\t\t\ttype: \"compaction\",\n\t\t\tid: await this.storage.createEntryId(),\n\t\t\tparentId: await this.storage.getLeafId(),\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tsummary,\n\t\t\tfirstKeptEntryId,\n\t\t\ttokensBefore,\n\t\t\tdetails,\n\t\t\tfromHook,\n\t\t} satisfies CompactionEntry<T>);\n\t}\n\n\tasync appendCustomEntry(customType: string, data?: unknown): Promise<string> {\n\t\treturn this.appendTypedEntry({\n\t\t\ttype: \"custom\",\n\t\t\tid: await this.storage.createEntryId(),\n\t\t\tparentId: await this.storage.getLeafId(),\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tcustomType,\n\t\t\tdata,\n\t\t} satisfies CustomEntry);\n\t}\n\n\tasync appendCustomMessageEntry<T = unknown>(\n\t\tcustomType: string,\n\t\tcontent: string | (TextContent | ImageContent)[],\n\t\tdisplay: boolean,\n\t\tdetails?: T,\n\t): Promise<string> {\n\t\treturn this.appendTypedEntry({\n\t\t\ttype: \"custom_message\",\n\t\t\tid: await this.storage.createEntryId(),\n\t\t\tparentId: await this.storage.getLeafId(),\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tcustomType,\n\t\t\tcontent,\n\t\t\tdisplay,\n\t\t\tdetails,\n\t\t} satisfies CustomMessageEntry<T>);\n\t}\n\n\tasync appendLabel(targetId: string, label: string | undefined): Promise<string> {\n\t\tif (!(await this.storage.getEntry(targetId))) {\n\t\t\tthrow new SessionError(\"not_found\", `Entry ${targetId} not found`);\n\t\t}\n\t\treturn this.appendTypedEntry({\n\t\t\ttype: \"label\",\n\t\t\tid: await this.storage.createEntryId(),\n\t\t\tparentId: await this.storage.getLeafId(),\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\ttargetId,\n\t\t\tlabel,\n\t\t} satisfies LabelEntry);\n\t}\n\n\tasync appendSessionName(name: string): Promise<string> {\n\t\treturn this.appendTypedEntry({\n\t\t\ttype: \"session_info\",\n\t\t\tid: await this.storage.createEntryId(),\n\t\t\tparentId: await this.storage.getLeafId(),\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tname: name.trim(),\n\t\t} satisfies SessionInfoEntry);\n\t}\n\n\tasync moveTo(\n\t\tentryId: string | null,\n\t\tsummary?: { summary: string; details?: unknown; fromHook?: boolean },\n\t): Promise<string | undefined> {\n\t\tif (entryId !== null && !(await this.storage.getEntry(entryId))) {\n\t\t\tthrow new SessionError(\"not_found\", `Entry ${entryId} not found`);\n\t\t}\n\t\tawait this.storage.setLeafId(entryId);\n\t\tif (!summary) return undefined;\n\t\treturn this.appendTypedEntry({\n\t\t\ttype: \"branch_summary\",\n\t\t\tid: await this.storage.createEntryId(),\n\t\t\tparentId: entryId,\n\t\t\ttimestamp: new Date().toISOString(),\n\t\t\tfromId: entryId ?? \"root\",\n\t\t\tsummary: summary.summary,\n\t\t\tdetails: summary.details,\n\t\t\tfromHook: summary.fromHook,\n\t\t} satisfies BranchSummaryEntry);\n\t}\n}\n"]}
@@ -1,2 +0,0 @@
1
- export declare function uuidv7(): string;
2
- //# sourceMappingURL=uuid.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"uuid.d.ts","sourceRoot":"","sources":["../../../src/harness/session/uuid.ts"],"names":[],"mappings":"AAcA,wBAAgB,MAAM,IAAI,MAAM,CAkC/B","sourcesContent":["let lastTimestamp = -Infinity;\nlet sequence = 0;\n\nfunction fillRandomBytes(bytes: Uint8Array): void {\n\tconst crypto = globalThis.crypto;\n\tif (crypto?.getRandomValues) {\n\t\tcrypto.getRandomValues(bytes);\n\t\treturn;\n\t}\n\tfor (let i = 0; i < bytes.length; i++) {\n\t\tbytes[i] = Math.floor(Math.random() * 256);\n\t}\n}\n\nexport function uuidv7(): string {\n\tconst random = new Uint8Array(16);\n\tfillRandomBytes(random);\n\tconst timestamp = Date.now();\n\n\tif (timestamp > lastTimestamp) {\n\t\tsequence = random[6] * 0x1000000 + random[7] * 0x10000 + random[8] * 0x100 + random[9];\n\t\tlastTimestamp = timestamp;\n\t} else {\n\t\tsequence = (sequence + 1) >>> 0;\n\t\tif (sequence === 0) {\n\t\t\tlastTimestamp++;\n\t\t}\n\t}\n\n\tconst bytes = new Uint8Array(16);\n\tbytes[0] = (lastTimestamp / 0x10000000000) & 0xff;\n\tbytes[1] = (lastTimestamp / 0x100000000) & 0xff;\n\tbytes[2] = (lastTimestamp / 0x1000000) & 0xff;\n\tbytes[3] = (lastTimestamp / 0x10000) & 0xff;\n\tbytes[4] = (lastTimestamp / 0x100) & 0xff;\n\tbytes[5] = lastTimestamp & 0xff;\n\tbytes[6] = 0x70 | ((sequence >>> 28) & 0x0f);\n\tbytes[7] = (sequence >>> 20) & 0xff;\n\tbytes[8] = 0x80 | ((sequence >>> 14) & 0x3f);\n\tbytes[9] = (sequence >>> 6) & 0xff;\n\tbytes[10] = ((sequence & 0x3f) << 2) | (random[10] & 0x03);\n\tbytes[11] = random[11];\n\tbytes[12] = random[12];\n\tbytes[13] = random[13];\n\tbytes[14] = random[14];\n\tbytes[15] = random[15];\n\n\treturn formatUuid(bytes);\n}\n\nfunction formatUuid(bytes: Uint8Array): string {\n\tconst hex = Array.from(bytes, (byte) => byte.toString(16).padStart(2, \"0\"));\n\treturn `${hex.slice(0, 4).join(\"\")}-${hex.slice(4, 6).join(\"\")}-${hex.slice(6, 8).join(\"\")}-${hex.slice(8, 10).join(\"\")}-${hex.slice(10, 16).join(\"\")}`;\n}\n"]}
@@ -1,50 +0,0 @@
1
- let lastTimestamp = -Infinity;
2
- let sequence = 0;
3
- function fillRandomBytes(bytes) {
4
- const crypto = globalThis.crypto;
5
- if (crypto?.getRandomValues) {
6
- crypto.getRandomValues(bytes);
7
- return;
8
- }
9
- for (let i = 0; i < bytes.length; i++) {
10
- bytes[i] = Math.floor(Math.random() * 256);
11
- }
12
- }
13
- export function uuidv7() {
14
- const random = new Uint8Array(16);
15
- fillRandomBytes(random);
16
- const timestamp = Date.now();
17
- if (timestamp > lastTimestamp) {
18
- sequence = random[6] * 0x1000000 + random[7] * 0x10000 + random[8] * 0x100 + random[9];
19
- lastTimestamp = timestamp;
20
- }
21
- else {
22
- sequence = (sequence + 1) >>> 0;
23
- if (sequence === 0) {
24
- lastTimestamp++;
25
- }
26
- }
27
- const bytes = new Uint8Array(16);
28
- bytes[0] = (lastTimestamp / 0x10000000000) & 0xff;
29
- bytes[1] = (lastTimestamp / 0x100000000) & 0xff;
30
- bytes[2] = (lastTimestamp / 0x1000000) & 0xff;
31
- bytes[3] = (lastTimestamp / 0x10000) & 0xff;
32
- bytes[4] = (lastTimestamp / 0x100) & 0xff;
33
- bytes[5] = lastTimestamp & 0xff;
34
- bytes[6] = 0x70 | ((sequence >>> 28) & 0x0f);
35
- bytes[7] = (sequence >>> 20) & 0xff;
36
- bytes[8] = 0x80 | ((sequence >>> 14) & 0x3f);
37
- bytes[9] = (sequence >>> 6) & 0xff;
38
- bytes[10] = ((sequence & 0x3f) << 2) | (random[10] & 0x03);
39
- bytes[11] = random[11];
40
- bytes[12] = random[12];
41
- bytes[13] = random[13];
42
- bytes[14] = random[14];
43
- bytes[15] = random[15];
44
- return formatUuid(bytes);
45
- }
46
- function formatUuid(bytes) {
47
- const hex = Array.from(bytes, (byte) => byte.toString(16).padStart(2, "0"));
48
- return `${hex.slice(0, 4).join("")}-${hex.slice(4, 6).join("")}-${hex.slice(6, 8).join("")}-${hex.slice(8, 10).join("")}-${hex.slice(10, 16).join("")}`;
49
- }
50
- //# sourceMappingURL=uuid.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"uuid.js","sourceRoot":"","sources":["../../../src/harness/session/uuid.ts"],"names":[],"mappings":"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","sourcesContent":["let lastTimestamp = -Infinity;\nlet sequence = 0;\n\nfunction fillRandomBytes(bytes: Uint8Array): void {\n\tconst crypto = globalThis.crypto;\n\tif (crypto?.getRandomValues) {\n\t\tcrypto.getRandomValues(bytes);\n\t\treturn;\n\t}\n\tfor (let i = 0; i < bytes.length; i++) {\n\t\tbytes[i] = Math.floor(Math.random() * 256);\n\t}\n}\n\nexport function uuidv7(): string {\n\tconst random = new Uint8Array(16);\n\tfillRandomBytes(random);\n\tconst timestamp = Date.now();\n\n\tif (timestamp > lastTimestamp) {\n\t\tsequence = random[6] * 0x1000000 + random[7] * 0x10000 + random[8] * 0x100 + random[9];\n\t\tlastTimestamp = timestamp;\n\t} else {\n\t\tsequence = (sequence + 1) >>> 0;\n\t\tif (sequence === 0) {\n\t\t\tlastTimestamp++;\n\t\t}\n\t}\n\n\tconst bytes = new Uint8Array(16);\n\tbytes[0] = (lastTimestamp / 0x10000000000) & 0xff;\n\tbytes[1] = (lastTimestamp / 0x100000000) & 0xff;\n\tbytes[2] = (lastTimestamp / 0x1000000) & 0xff;\n\tbytes[3] = (lastTimestamp / 0x10000) & 0xff;\n\tbytes[4] = (lastTimestamp / 0x100) & 0xff;\n\tbytes[5] = lastTimestamp & 0xff;\n\tbytes[6] = 0x70 | ((sequence >>> 28) & 0x0f);\n\tbytes[7] = (sequence >>> 20) & 0xff;\n\tbytes[8] = 0x80 | ((sequence >>> 14) & 0x3f);\n\tbytes[9] = (sequence >>> 6) & 0xff;\n\tbytes[10] = ((sequence & 0x3f) << 2) | (random[10] & 0x03);\n\tbytes[11] = random[11];\n\tbytes[12] = random[12];\n\tbytes[13] = random[13];\n\tbytes[14] = random[14];\n\tbytes[15] = random[15];\n\n\treturn formatUuid(bytes);\n}\n\nfunction formatUuid(bytes: Uint8Array): string {\n\tconst hex = Array.from(bytes, (byte) => byte.toString(16).padStart(2, \"0\"));\n\treturn `${hex.slice(0, 4).join(\"\")}-${hex.slice(4, 6).join(\"\")}-${hex.slice(6, 8).join(\"\")}-${hex.slice(8, 10).join(\"\")}-${hex.slice(10, 16).join(\"\")}`;\n}\n"]}
@@ -1,44 +0,0 @@
1
- import { type ExecutionEnv, type Skill } from "./types.ts";
2
- export type SkillDiagnosticCode = "file_info_failed" | "list_failed" | "read_failed" | "parse_failed" | "invalid_metadata";
3
- /** Warning produced while loading skills. */
4
- export interface SkillDiagnostic {
5
- /** Diagnostic severity. Currently only warnings are emitted. */
6
- type: "warning";
7
- /** Stable diagnostic code. */
8
- code: SkillDiagnosticCode;
9
- /** Human-readable diagnostic message. */
10
- message: string;
11
- /** Path associated with the diagnostic. */
12
- path: string;
13
- }
14
- /** Format a skill invocation prompt, optionally appending additional user instructions. */
15
- export declare function formatSkillInvocation(skill: Skill, additionalInstructions?: string): string;
16
- /**
17
- * Load skills from one or more directories.
18
- *
19
- * Traverses directories recursively, loads `SKILL.md` files, loads direct root `.md` files as skills, honors ignore files,
20
- * and returns diagnostics for invalid skill files. Missing input directories are skipped.
21
- */
22
- export declare function loadSkills(env: ExecutionEnv, dirs: string | string[]): Promise<{
23
- skills: Skill[];
24
- diagnostics: SkillDiagnostic[];
25
- }>;
26
- /**
27
- * Load skills from source-tagged directories.
28
- *
29
- * Source values are preserved exactly and attached to every loaded skill and diagnostic. The agent package does not
30
- * interpret source values; applications define their own provenance shape.
31
- */
32
- export declare function loadSourcedSkills<TSource, TSkill extends Skill = Skill>(env: ExecutionEnv, inputs: Array<{
33
- path: string;
34
- source: TSource;
35
- }>, mapSkill?: (skill: Skill, source: TSource) => TSkill): Promise<{
36
- skills: Array<{
37
- skill: TSkill;
38
- source: TSource;
39
- }>;
40
- diagnostics: Array<SkillDiagnostic & {
41
- source: TSource;
42
- }>;
43
- }>;
44
- //# sourceMappingURL=skills.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"skills.d.ts","sourceRoot":"","sources":["../../src/harness/skills.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAA8B,KAAK,KAAK,EAAW,MAAM,YAAY,CAAC;AAQhG,MAAM,MAAM,mBAAmB,GAC5B,kBAAkB,GAClB,aAAa,GACb,aAAa,GACb,cAAc,GACd,kBAAkB,CAAC;AAEtB,6CAA6C;AAC7C,MAAM,WAAW,eAAe;IAC/B,gEAAgE;IAChE,IAAI,EAAE,SAAS,CAAC;IAChB,8BAA8B;IAC9B,IAAI,EAAE,mBAAmB,CAAC;IAC1B,yCAAyC;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,2CAA2C;IAC3C,IAAI,EAAE,MAAM,CAAC;CACb;AASD,2FAA2F;AAC3F,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,KAAK,EAAE,sBAAsB,CAAC,EAAE,MAAM,GAAG,MAAM,CAG3F;AAED;;;;;GAKG;AACH,wBAAsB,UAAU,CAC/B,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GACrB,OAAO,CAAC;IAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAAC,WAAW,EAAE,eAAe,EAAE,CAAA;CAAE,CAAC,CAuB9D;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,MAAM,SAAS,KAAK,GAAG,KAAK,EAC5E,GAAG,EAAE,YAAY,EACjB,MAAM,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC,EAChD,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,KAAK,MAAM,GAClD,OAAO,CAAC;IACV,MAAM,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IAClD,WAAW,EAAE,KAAK,CAAC,eAAe,GAAG;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CAC1D,CAAC,CAWD","sourcesContent":["import ignore from \"ignore\";\nimport { parse } from \"yaml\";\nimport { type ExecutionEnv, type FileInfo, type Result, type Skill, toError } from \"./types.ts\";\n\nconst MAX_NAME_LENGTH = 64;\nconst MAX_DESCRIPTION_LENGTH = 1024;\nconst IGNORE_FILE_NAMES = [\".gitignore\", \".ignore\", \".fdignore\"];\n\ntype IgnoreMatcher = ReturnType<typeof ignore>;\n\nexport type SkillDiagnosticCode =\n\t| \"file_info_failed\"\n\t| \"list_failed\"\n\t| \"read_failed\"\n\t| \"parse_failed\"\n\t| \"invalid_metadata\";\n\n/** Warning produced while loading skills. */\nexport interface SkillDiagnostic {\n\t/** Diagnostic severity. Currently only warnings are emitted. */\n\ttype: \"warning\";\n\t/** Stable diagnostic code. */\n\tcode: SkillDiagnosticCode;\n\t/** Human-readable diagnostic message. */\n\tmessage: string;\n\t/** Path associated with the diagnostic. */\n\tpath: string;\n}\n\ninterface SkillFrontmatter {\n\tname?: string;\n\tdescription?: string;\n\t\"disable-model-invocation\"?: boolean;\n\t[key: string]: unknown;\n}\n\n/** Format a skill invocation prompt, optionally appending additional user instructions. */\nexport function formatSkillInvocation(skill: Skill, additionalInstructions?: string): string {\n\tconst skillBlock = `<skill name=\"${skill.name}\" location=\"${skill.filePath}\">\\nReferences are relative to ${dirnameEnvPath(skill.filePath)}.\\n\\n${skill.content}\\n</skill>`;\n\treturn additionalInstructions ? `${skillBlock}\\n\\n${additionalInstructions}` : skillBlock;\n}\n\n/**\n * Load skills from one or more directories.\n *\n * Traverses directories recursively, loads `SKILL.md` files, loads direct root `.md` files as skills, honors ignore files,\n * and returns diagnostics for invalid skill files. Missing input directories are skipped.\n */\nexport async function loadSkills(\n\tenv: ExecutionEnv,\n\tdirs: string | string[],\n): Promise<{ skills: Skill[]; diagnostics: SkillDiagnostic[] }> {\n\tconst skills: Skill[] = [];\n\tconst diagnostics: SkillDiagnostic[] = [];\n\tfor (const dir of Array.isArray(dirs) ? dirs : [dirs]) {\n\t\tconst rootInfoResult = await env.fileInfo(dir);\n\t\tif (!rootInfoResult.ok) {\n\t\t\tif (rootInfoResult.error.code !== \"not_found\") {\n\t\t\t\tdiagnostics.push({\n\t\t\t\t\ttype: \"warning\",\n\t\t\t\t\tcode: \"file_info_failed\",\n\t\t\t\t\tmessage: rootInfoResult.error.message,\n\t\t\t\t\tpath: dir,\n\t\t\t\t});\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\t\tconst rootInfo = rootInfoResult.value;\n\t\tif ((await resolveKind(env, rootInfo, diagnostics)) !== \"directory\") continue;\n\t\tconst result = await loadSkillsFromDirInternal(env, rootInfo.path, true, ignore(), rootInfo.path);\n\t\tskills.push(...result.skills);\n\t\tdiagnostics.push(...result.diagnostics);\n\t}\n\treturn { skills, diagnostics };\n}\n\n/**\n * Load skills from source-tagged directories.\n *\n * Source values are preserved exactly and attached to every loaded skill and diagnostic. The agent package does not\n * interpret source values; applications define their own provenance shape.\n */\nexport async function loadSourcedSkills<TSource, TSkill extends Skill = Skill>(\n\tenv: ExecutionEnv,\n\tinputs: Array<{ path: string; source: TSource }>,\n\tmapSkill?: (skill: Skill, source: TSource) => TSkill,\n): Promise<{\n\tskills: Array<{ skill: TSkill; source: TSource }>;\n\tdiagnostics: Array<SkillDiagnostic & { source: TSource }>;\n}> {\n\tconst skills: Array<{ skill: TSkill; source: TSource }> = [];\n\tconst diagnostics: Array<SkillDiagnostic & { source: TSource }> = [];\n\tfor (const input of inputs) {\n\t\tconst result = await loadSkills(env, input.path);\n\t\tfor (const skill of result.skills) {\n\t\t\tskills.push({ skill: mapSkill ? mapSkill(skill, input.source) : (skill as TSkill), source: input.source });\n\t\t}\n\t\tfor (const diagnostic of result.diagnostics) diagnostics.push({ ...diagnostic, source: input.source });\n\t}\n\treturn { skills, diagnostics };\n}\n\nasync function loadSkillsFromDirInternal(\n\tenv: ExecutionEnv,\n\tdir: string,\n\tincludeRootFiles: boolean,\n\tignoreMatcher: IgnoreMatcher,\n\trootDir: string,\n): Promise<{ skills: Skill[]; diagnostics: SkillDiagnostic[] }> {\n\tconst skills: Skill[] = [];\n\tconst diagnostics: SkillDiagnostic[] = [];\n\n\tconst dirInfoResult = await env.fileInfo(dir);\n\tif (!dirInfoResult.ok) {\n\t\tif (dirInfoResult.error.code !== \"not_found\") {\n\t\t\tdiagnostics.push({\n\t\t\t\ttype: \"warning\",\n\t\t\t\tcode: \"file_info_failed\",\n\t\t\t\tmessage: dirInfoResult.error.message,\n\t\t\t\tpath: dir,\n\t\t\t});\n\t\t}\n\t\treturn { skills, diagnostics };\n\t}\n\tconst dirInfo = dirInfoResult.value;\n\tif ((await resolveKind(env, dirInfo, diagnostics)) !== \"directory\") return { skills, diagnostics };\n\n\tawait addIgnoreRules(env, ignoreMatcher, dir, rootDir, diagnostics);\n\n\tconst entriesResult = await env.listDir(dir);\n\tif (!entriesResult.ok) {\n\t\tdiagnostics.push({ type: \"warning\", code: \"list_failed\", message: entriesResult.error.message, path: dir });\n\t\treturn { skills, diagnostics };\n\t}\n\tconst entries = entriesResult.value;\n\n\tfor (const entry of entries) {\n\t\tif (entry.name !== \"SKILL.md\") continue;\n\t\tconst fullPath = entry.path;\n\t\tconst kind = await resolveKind(env, entry, diagnostics);\n\t\tif (kind !== \"file\") continue;\n\t\tconst relPath = relativeEnvPath(rootDir, fullPath);\n\t\tif (ignoreMatcher.ignores(relPath)) continue;\n\n\t\tconst result = await loadSkillFromFile(env, fullPath);\n\t\tif (result.skill) skills.push(result.skill);\n\t\tdiagnostics.push(...result.diagnostics);\n\t\treturn { skills, diagnostics };\n\t}\n\n\tfor (const entry of entries.sort((a, b) => a.name.localeCompare(b.name))) {\n\t\tif (entry.name.startsWith(\".\") || entry.name === \"node_modules\") continue;\n\t\tconst fullPath = entry.path;\n\t\tconst kind = await resolveKind(env, entry, diagnostics);\n\t\tif (!kind) continue;\n\n\t\tconst relPath = relativeEnvPath(rootDir, fullPath);\n\t\tconst ignorePath = kind === \"directory\" ? `${relPath}/` : relPath;\n\t\tif (ignoreMatcher.ignores(ignorePath)) continue;\n\n\t\tif (kind === \"directory\") {\n\t\t\tconst result = await loadSkillsFromDirInternal(env, fullPath, false, ignoreMatcher, rootDir);\n\t\t\tskills.push(...result.skills);\n\t\t\tdiagnostics.push(...result.diagnostics);\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (kind !== \"file\" || !includeRootFiles || !entry.name.endsWith(\".md\")) continue;\n\t\tconst result = await loadSkillFromFile(env, fullPath);\n\t\tif (result.skill) skills.push(result.skill);\n\t\tdiagnostics.push(...result.diagnostics);\n\t}\n\n\treturn { skills, diagnostics };\n}\n\nasync function addIgnoreRules(\n\tenv: ExecutionEnv,\n\tig: IgnoreMatcher,\n\tdir: string,\n\trootDir: string,\n\tdiagnostics: SkillDiagnostic[],\n): Promise<void> {\n\tconst relativeDir = relativeEnvPath(rootDir, dir);\n\tconst prefix = relativeDir ? `${relativeDir}/` : \"\";\n\n\tfor (const filename of IGNORE_FILE_NAMES) {\n\t\tconst ignorePath = joinEnvPath(dir, filename);\n\t\tconst info = await env.fileInfo(ignorePath);\n\t\tif (!info.ok) {\n\t\t\tif (info.error.code !== \"not_found\") {\n\t\t\t\tdiagnostics.push({\n\t\t\t\t\ttype: \"warning\",\n\t\t\t\t\tcode: \"file_info_failed\",\n\t\t\t\t\tmessage: info.error.message,\n\t\t\t\t\tpath: ignorePath,\n\t\t\t\t});\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\t\tif (info.value.kind !== \"file\") continue;\n\t\tconst content = await env.readTextFile(ignorePath);\n\t\tif (!content.ok) {\n\t\t\tdiagnostics.push({ type: \"warning\", code: \"read_failed\", message: content.error.message, path: ignorePath });\n\t\t\tcontinue;\n\t\t}\n\t\tconst patterns = content.value\n\t\t\t.split(/\\r?\\n/)\n\t\t\t.map((line) => prefixIgnorePattern(line, prefix))\n\t\t\t.filter((line): line is string => Boolean(line));\n\t\tif (patterns.length > 0) ig.add(patterns);\n\t}\n}\n\nfunction prefixIgnorePattern(line: string, prefix: string): string | null {\n\tconst trimmed = line.trim();\n\tif (!trimmed) return null;\n\tif (trimmed.startsWith(\"#\") && !trimmed.startsWith(\"\\\\#\")) return null;\n\n\tlet pattern = line;\n\tlet negated = false;\n\tif (pattern.startsWith(\"!\")) {\n\t\tnegated = true;\n\t\tpattern = pattern.slice(1);\n\t} else if (pattern.startsWith(\"\\\\!\")) {\n\t\tpattern = pattern.slice(1);\n\t}\n\tif (pattern.startsWith(\"/\")) pattern = pattern.slice(1);\n\tconst prefixed = prefix ? `${prefix}${pattern}` : pattern;\n\treturn negated ? `!${prefixed}` : prefixed;\n}\n\nasync function loadSkillFromFile(\n\tenv: ExecutionEnv,\n\tfilePath: string,\n): Promise<{ skill: Skill | null; diagnostics: SkillDiagnostic[] }> {\n\tconst diagnostics: SkillDiagnostic[] = [];\n\tconst rawContent = await env.readTextFile(filePath);\n\tif (!rawContent.ok) {\n\t\tdiagnostics.push({ type: \"warning\", code: \"read_failed\", message: rawContent.error.message, path: filePath });\n\t\treturn { skill: null, diagnostics };\n\t}\n\n\tconst parsed = parseFrontmatter<SkillFrontmatter>(rawContent.value);\n\tif (!parsed.ok) {\n\t\tdiagnostics.push({ type: \"warning\", code: \"parse_failed\", message: parsed.error.message, path: filePath });\n\t\treturn { skill: null, diagnostics };\n\t}\n\n\tconst { frontmatter, body } = parsed.value;\n\tconst skillDir = dirnameEnvPath(filePath);\n\tconst parentDirName = basenameEnvPath(skillDir);\n\tconst description = typeof frontmatter.description === \"string\" ? frontmatter.description : undefined;\n\n\tfor (const error of validateDescription(description)) {\n\t\tdiagnostics.push({ type: \"warning\", code: \"invalid_metadata\", message: error, path: filePath });\n\t}\n\n\tconst frontmatterName = typeof frontmatter.name === \"string\" ? frontmatter.name : undefined;\n\tconst name = frontmatterName || parentDirName;\n\tfor (const error of validateName(name, parentDirName)) {\n\t\tdiagnostics.push({ type: \"warning\", code: \"invalid_metadata\", message: error, path: filePath });\n\t}\n\n\tif (!description || description.trim() === \"\") {\n\t\treturn { skill: null, diagnostics };\n\t}\n\n\treturn {\n\t\tskill: {\n\t\t\tname,\n\t\t\tdescription,\n\t\t\tcontent: body,\n\t\t\tfilePath,\n\t\t\tdisableModelInvocation: frontmatter[\"disable-model-invocation\"] === true,\n\t\t},\n\t\tdiagnostics,\n\t};\n}\n\nfunction validateName(name: string, parentDirName: string): string[] {\n\tconst errors: string[] = [];\n\tif (name !== parentDirName) errors.push(`name \"${name}\" does not match parent directory \"${parentDirName}\"`);\n\tif (name.length > MAX_NAME_LENGTH) errors.push(`name exceeds ${MAX_NAME_LENGTH} characters (${name.length})`);\n\tif (!/^[a-z0-9-]+$/.test(name)) {\n\t\terrors.push(\"name contains invalid characters (must be lowercase a-z, 0-9, hyphens only)\");\n\t}\n\tif (name.startsWith(\"-\") || name.endsWith(\"-\")) errors.push(\"name must not start or end with a hyphen\");\n\tif (name.includes(\"--\")) errors.push(\"name must not contain consecutive hyphens\");\n\treturn errors;\n}\n\nfunction validateDescription(description: string | undefined): string[] {\n\tconst errors: string[] = [];\n\tif (!description || description.trim() === \"\") {\n\t\terrors.push(\"description is required\");\n\t} else if (description.length > MAX_DESCRIPTION_LENGTH) {\n\t\terrors.push(`description exceeds ${MAX_DESCRIPTION_LENGTH} characters (${description.length})`);\n\t}\n\treturn errors;\n}\n\nfunction parseFrontmatter<T extends Record<string, unknown>>(\n\tcontent: string,\n): Result<{ frontmatter: T; body: string }, Error> {\n\ttry {\n\t\tconst normalized = content.replace(/\\r\\n/g, \"\\n\").replace(/\\r/g, \"\\n\");\n\t\tif (!normalized.startsWith(\"---\")) return { ok: true, value: { frontmatter: {} as T, body: normalized } };\n\t\tconst endIndex = normalized.indexOf(\"\\n---\", 3);\n\t\tif (endIndex === -1) return { ok: true, value: { frontmatter: {} as T, body: normalized } };\n\t\tconst yamlString = normalized.slice(4, endIndex);\n\t\tconst body = normalized.slice(endIndex + 4).trim();\n\t\treturn { ok: true, value: { frontmatter: (parse(yamlString) ?? {}) as T, body } };\n\t} catch (error) {\n\t\treturn { ok: false, error: toError(error) };\n\t}\n}\n\nasync function resolveKind(\n\tenv: ExecutionEnv,\n\tinfo: FileInfo,\n\tdiagnostics: SkillDiagnostic[],\n): Promise<\"file\" | \"directory\" | undefined> {\n\tif (info.kind === \"file\" || info.kind === \"directory\") return info.kind;\n\tconst canonicalPath = await env.canonicalPath(info.path);\n\tif (!canonicalPath.ok) {\n\t\tif (canonicalPath.error.code !== \"not_found\") {\n\t\t\tdiagnostics.push({\n\t\t\t\ttype: \"warning\",\n\t\t\t\tcode: \"file_info_failed\",\n\t\t\t\tmessage: canonicalPath.error.message,\n\t\t\t\tpath: info.path,\n\t\t\t});\n\t\t}\n\t\treturn undefined;\n\t}\n\tconst target = await env.fileInfo(canonicalPath.value);\n\tif (!target.ok) {\n\t\tif (target.error.code !== \"not_found\") {\n\t\t\tdiagnostics.push({\n\t\t\t\ttype: \"warning\",\n\t\t\t\tcode: \"file_info_failed\",\n\t\t\t\tmessage: target.error.message,\n\t\t\t\tpath: info.path,\n\t\t\t});\n\t\t}\n\t\treturn undefined;\n\t}\n\treturn target.value.kind === \"file\" || target.value.kind === \"directory\" ? target.value.kind : undefined;\n}\n\nfunction joinEnvPath(base: string, child: string): string {\n\treturn `${base.replace(/\\/+$/, \"\")}/${child.replace(/^\\/+/, \"\")}`;\n}\n\nfunction dirnameEnvPath(path: string): string {\n\tconst normalized = path.replace(/\\/+$/, \"\");\n\tconst slashIndex = normalized.lastIndexOf(\"/\");\n\treturn slashIndex <= 0 ? \"/\" : normalized.slice(0, slashIndex);\n}\n\nfunction basenameEnvPath(path: string): string {\n\tconst normalized = path.replace(/\\/+$/, \"\");\n\tconst slashIndex = normalized.lastIndexOf(\"/\");\n\treturn slashIndex === -1 ? normalized : normalized.slice(slashIndex + 1);\n}\n\nfunction relativeEnvPath(root: string, path: string): string {\n\tconst normalizedRoot = root.replace(/\\/+$/, \"\");\n\tconst normalizedPath = path.replace(/\\/+$/, \"\");\n\tif (normalizedPath === normalizedRoot) return \"\";\n\treturn normalizedPath.startsWith(`${normalizedRoot}/`)\n\t\t? normalizedPath.slice(normalizedRoot.length + 1)\n\t\t: normalizedPath.replace(/^\\/+/, \"\");\n}\n"]}