@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,102 +0,0 @@
1
- export const COMPACTION_SUMMARY_PREFIX = `The conversation history before this point was compacted into the following summary:
2
-
3
- <summary>
4
- `;
5
- export const COMPACTION_SUMMARY_SUFFIX = `
6
- </summary>`;
7
- export const BRANCH_SUMMARY_PREFIX = `The following is a summary of a branch that this conversation came back from:
8
-
9
- <summary>
10
- `;
11
- export const BRANCH_SUMMARY_SUFFIX = `</summary>`;
12
- export function bashExecutionToText(msg) {
13
- let text = `Ran \`${msg.command}\`\n`;
14
- if (msg.output) {
15
- text += `\`\`\`\n${msg.output}\n\`\`\``;
16
- }
17
- else {
18
- text += "(no output)";
19
- }
20
- if (msg.cancelled) {
21
- text += "\n\n(command cancelled)";
22
- }
23
- else if (msg.exitCode !== null && msg.exitCode !== undefined && msg.exitCode !== 0) {
24
- text += `\n\nCommand exited with code ${msg.exitCode}`;
25
- }
26
- if (msg.truncated && msg.fullOutputPath) {
27
- text += `\n\n[Output truncated. Full output: ${msg.fullOutputPath}]`;
28
- }
29
- return text;
30
- }
31
- export function createBranchSummaryMessage(summary, fromId, timestamp) {
32
- return {
33
- role: "branchSummary",
34
- summary,
35
- fromId,
36
- timestamp: new Date(timestamp).getTime(),
37
- };
38
- }
39
- export function createCompactionSummaryMessage(summary, tokensBefore, timestamp) {
40
- return {
41
- role: "compactionSummary",
42
- summary,
43
- tokensBefore,
44
- timestamp: new Date(timestamp).getTime(),
45
- };
46
- }
47
- export function createCustomMessage(customType, content, display, details, timestamp) {
48
- return {
49
- role: "custom",
50
- customType,
51
- content,
52
- display,
53
- details,
54
- timestamp: new Date(timestamp).getTime(),
55
- };
56
- }
57
- export function convertToLlm(messages) {
58
- return messages
59
- .map((m) => {
60
- switch (m.role) {
61
- case "bashExecution":
62
- if (m.excludeFromContext) {
63
- return undefined;
64
- }
65
- return {
66
- role: "user",
67
- content: [{ type: "text", text: bashExecutionToText(m) }],
68
- timestamp: m.timestamp,
69
- };
70
- case "custom": {
71
- const content = typeof m.content === "string" ? [{ type: "text", text: m.content }] : m.content;
72
- return {
73
- role: "user",
74
- content,
75
- timestamp: m.timestamp,
76
- };
77
- }
78
- case "branchSummary":
79
- return {
80
- role: "user",
81
- content: [{ type: "text", text: BRANCH_SUMMARY_PREFIX + m.summary + BRANCH_SUMMARY_SUFFIX }],
82
- timestamp: m.timestamp,
83
- };
84
- case "compactionSummary":
85
- return {
86
- role: "user",
87
- content: [
88
- { type: "text", text: COMPACTION_SUMMARY_PREFIX + m.summary + COMPACTION_SUMMARY_SUFFIX },
89
- ],
90
- timestamp: m.timestamp,
91
- };
92
- case "user":
93
- case "assistant":
94
- case "toolResult":
95
- return m;
96
- default:
97
- return undefined;
98
- }
99
- })
100
- .filter((m) => m !== undefined);
101
- }
102
- //# sourceMappingURL=messages.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/harness/messages.ts"],"names":[],"mappings":"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","sourcesContent":["import type { ImageContent, Message, TextContent } from \"@dimivelev/chimera-ai\";\nimport type { AgentMessage } from \"../types.ts\";\n\nexport const COMPACTION_SUMMARY_PREFIX = `The conversation history before this point was compacted into the following summary:\n\n<summary>\n`;\n\nexport const COMPACTION_SUMMARY_SUFFIX = `\n</summary>`;\n\nexport const BRANCH_SUMMARY_PREFIX = `The following is a summary of a branch that this conversation came back from:\n\n<summary>\n`;\n\nexport const BRANCH_SUMMARY_SUFFIX = `</summary>`;\n\nexport interface BashExecutionMessage {\n\trole: \"bashExecution\";\n\tcommand: string;\n\toutput: string;\n\texitCode: number | undefined;\n\tcancelled: boolean;\n\ttruncated: boolean;\n\tfullOutputPath?: string;\n\ttimestamp: number;\n\texcludeFromContext?: boolean;\n}\n\nexport interface CustomMessage<T = unknown> {\n\trole: \"custom\";\n\tcustomType: string;\n\tcontent: string | (TextContent | ImageContent)[];\n\tdisplay: boolean;\n\tdetails?: T;\n\ttimestamp: number;\n}\n\nexport interface BranchSummaryMessage {\n\trole: \"branchSummary\";\n\tsummary: string;\n\tfromId: string;\n\ttimestamp: number;\n}\n\nexport interface CompactionSummaryMessage {\n\trole: \"compactionSummary\";\n\tsummary: string;\n\ttokensBefore: number;\n\ttimestamp: number;\n}\n\ndeclare module \"../types.ts\" {\n\tinterface CustomAgentMessages {\n\t\tbashExecution: BashExecutionMessage;\n\t\tcustom: CustomMessage;\n\t\tbranchSummary: BranchSummaryMessage;\n\t\tcompactionSummary: CompactionSummaryMessage;\n\t}\n}\n\nexport function bashExecutionToText(msg: BashExecutionMessage): string {\n\tlet text = `Ran \\`${msg.command}\\`\\n`;\n\tif (msg.output) {\n\t\ttext += `\\`\\`\\`\\n${msg.output}\\n\\`\\`\\``;\n\t} else {\n\t\ttext += \"(no output)\";\n\t}\n\tif (msg.cancelled) {\n\t\ttext += \"\\n\\n(command cancelled)\";\n\t} else if (msg.exitCode !== null && msg.exitCode !== undefined && msg.exitCode !== 0) {\n\t\ttext += `\\n\\nCommand exited with code ${msg.exitCode}`;\n\t}\n\tif (msg.truncated && msg.fullOutputPath) {\n\t\ttext += `\\n\\n[Output truncated. Full output: ${msg.fullOutputPath}]`;\n\t}\n\treturn text;\n}\n\nexport function createBranchSummaryMessage(summary: string, fromId: string, timestamp: string): BranchSummaryMessage {\n\treturn {\n\t\trole: \"branchSummary\",\n\t\tsummary,\n\t\tfromId,\n\t\ttimestamp: new Date(timestamp).getTime(),\n\t};\n}\n\nexport function createCompactionSummaryMessage(\n\tsummary: string,\n\ttokensBefore: number,\n\ttimestamp: string,\n): CompactionSummaryMessage {\n\treturn {\n\t\trole: \"compactionSummary\",\n\t\tsummary,\n\t\ttokensBefore,\n\t\ttimestamp: new Date(timestamp).getTime(),\n\t};\n}\n\nexport function createCustomMessage(\n\tcustomType: string,\n\tcontent: string | (TextContent | ImageContent)[],\n\tdisplay: boolean,\n\tdetails: unknown | undefined,\n\ttimestamp: string,\n): CustomMessage {\n\treturn {\n\t\trole: \"custom\",\n\t\tcustomType,\n\t\tcontent,\n\t\tdisplay,\n\t\tdetails,\n\t\ttimestamp: new Date(timestamp).getTime(),\n\t};\n}\n\nexport function convertToLlm(messages: AgentMessage[]): Message[] {\n\treturn messages\n\t\t.map((m): Message | undefined => {\n\t\t\tswitch (m.role) {\n\t\t\t\tcase \"bashExecution\":\n\t\t\t\t\tif (m.excludeFromContext) {\n\t\t\t\t\t\treturn undefined;\n\t\t\t\t\t}\n\t\t\t\t\treturn {\n\t\t\t\t\t\trole: \"user\",\n\t\t\t\t\t\tcontent: [{ type: \"text\", text: bashExecutionToText(m) }],\n\t\t\t\t\t\ttimestamp: m.timestamp,\n\t\t\t\t\t};\n\t\t\t\tcase \"custom\": {\n\t\t\t\t\tconst content = typeof m.content === \"string\" ? [{ type: \"text\" as const, text: m.content }] : m.content;\n\t\t\t\t\treturn {\n\t\t\t\t\t\trole: \"user\",\n\t\t\t\t\t\tcontent,\n\t\t\t\t\t\ttimestamp: m.timestamp,\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\tcase \"branchSummary\":\n\t\t\t\t\treturn {\n\t\t\t\t\t\trole: \"user\",\n\t\t\t\t\t\tcontent: [{ type: \"text\" as const, text: BRANCH_SUMMARY_PREFIX + m.summary + BRANCH_SUMMARY_SUFFIX }],\n\t\t\t\t\t\ttimestamp: m.timestamp,\n\t\t\t\t\t};\n\t\t\t\tcase \"compactionSummary\":\n\t\t\t\t\treturn {\n\t\t\t\t\t\trole: \"user\",\n\t\t\t\t\t\tcontent: [\n\t\t\t\t\t\t\t{ type: \"text\" as const, text: COMPACTION_SUMMARY_PREFIX + m.summary + COMPACTION_SUMMARY_SUFFIX },\n\t\t\t\t\t\t],\n\t\t\t\t\t\ttimestamp: m.timestamp,\n\t\t\t\t\t};\n\t\t\t\tcase \"user\":\n\t\t\t\tcase \"assistant\":\n\t\t\t\tcase \"toolResult\":\n\t\t\t\t\treturn m;\n\t\t\t\tdefault:\n\t\t\t\t\treturn undefined;\n\t\t\t}\n\t\t})\n\t\t.filter((m): m is Message => m !== undefined);\n}\n"]}
@@ -1,48 +0,0 @@
1
- import { type ExecutionEnv, type PromptTemplate } from "./types.ts";
2
- export type PromptTemplateDiagnosticCode = "file_info_failed" | "list_failed" | "read_failed" | "parse_failed";
3
- /** Warning produced while loading prompt templates. */
4
- export interface PromptTemplateDiagnostic {
5
- /** Diagnostic severity. Currently only warnings are emitted. */
6
- type: "warning";
7
- /** Stable diagnostic code. */
8
- code: PromptTemplateDiagnosticCode;
9
- /** Human-readable diagnostic message. */
10
- message: string;
11
- /** Path associated with the diagnostic. */
12
- path: string;
13
- }
14
- /**
15
- * Load prompt templates from one or more paths.
16
- *
17
- * Directory inputs load direct `.md` children non-recursively. File inputs load explicit `.md` files. Missing paths and
18
- * non-markdown files are skipped. Read and parse failures are returned as diagnostics.
19
- */
20
- export declare function loadPromptTemplates(env: ExecutionEnv, paths: string | string[]): Promise<{
21
- promptTemplates: PromptTemplate[];
22
- diagnostics: PromptTemplateDiagnostic[];
23
- }>;
24
- /**
25
- * Load prompt templates from source-tagged paths.
26
- *
27
- * Source values are preserved exactly and attached to every loaded prompt template and diagnostic. The agent package does
28
- * not interpret source values; applications define their own provenance shape.
29
- */
30
- export declare function loadSourcedPromptTemplates<TSource, TPromptTemplate extends PromptTemplate = PromptTemplate>(env: ExecutionEnv, inputs: Array<{
31
- path: string;
32
- source: TSource;
33
- }>, mapPromptTemplate?: (promptTemplate: PromptTemplate, source: TSource) => TPromptTemplate): Promise<{
34
- promptTemplates: Array<{
35
- promptTemplate: TPromptTemplate;
36
- source: TSource;
37
- }>;
38
- diagnostics: Array<PromptTemplateDiagnostic & {
39
- source: TSource;
40
- }>;
41
- }>;
42
- /** Parse an argument string using simple shell-style single and double quotes. */
43
- export declare function parseCommandArgs(argsString: string): string[];
44
- /** Substitute prompt template placeholders (`$1`, `$@`, `$ARGUMENTS`, `${@:N}`, `${@:N:L}`) with command arguments. */
45
- export declare function substituteArgs(content: string, args: string[]): string;
46
- /** Format a prompt template invocation with positional arguments. */
47
- export declare function formatPromptTemplateInvocation(template: PromptTemplate, args?: string[]): string;
48
- //# sourceMappingURL=prompt-templates.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"prompt-templates.d.ts","sourceRoot":"","sources":["../../src/harness/prompt-templates.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,YAAY,EAAiB,KAAK,cAAc,EAAwB,MAAM,YAAY,CAAC;AAEzG,MAAM,MAAM,4BAA4B,GAAG,kBAAkB,GAAG,aAAa,GAAG,aAAa,GAAG,cAAc,CAAC;AAE/G,uDAAuD;AACvD,MAAM,WAAW,wBAAwB;IACxC,gEAAgE;IAChE,IAAI,EAAE,SAAS,CAAC;IAChB,8BAA8B;IAC9B,IAAI,EAAE,4BAA4B,CAAC;IACnC,yCAAyC;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,2CAA2C;IAC3C,IAAI,EAAE,MAAM,CAAC;CACb;AAQD;;;;;GAKG;AACH,wBAAsB,mBAAmB,CACxC,GAAG,EAAE,YAAY,EACjB,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GACtB,OAAO,CAAC;IAAE,eAAe,EAAE,cAAc,EAAE,CAAC;IAAC,WAAW,EAAE,wBAAwB,EAAE,CAAA;CAAE,CAAC,CA6BzF;AAED;;;;;GAKG;AACH,wBAAsB,0BAA0B,CAAC,OAAO,EAAE,eAAe,SAAS,cAAc,GAAG,cAAc,EAChH,GAAG,EAAE,YAAY,EACjB,MAAM,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC,EAChD,iBAAiB,CAAC,EAAE,CAAC,cAAc,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,KAAK,eAAe,GACtF,OAAO,CAAC;IACV,eAAe,EAAE,KAAK,CAAC;QAAE,cAAc,EAAE,eAAe,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IAC7E,WAAW,EAAE,KAAK,CAAC,wBAAwB,GAAG;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CACnE,CAAC,CAgBD;AAiID,kFAAkF;AAClF,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAuB7D;AAED,uHAAuH;AACvH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAatE;AAED,qEAAqE;AACrE,wBAAgB,8BAA8B,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,GAAE,MAAM,EAAO,GAAG,MAAM,CAEpG","sourcesContent":["import { parse } from \"yaml\";\nimport { type ExecutionEnv, type FileInfo, type PromptTemplate, type Result, toError } from \"./types.ts\";\n\nexport type PromptTemplateDiagnosticCode = \"file_info_failed\" | \"list_failed\" | \"read_failed\" | \"parse_failed\";\n\n/** Warning produced while loading prompt templates. */\nexport interface PromptTemplateDiagnostic {\n\t/** Diagnostic severity. Currently only warnings are emitted. */\n\ttype: \"warning\";\n\t/** Stable diagnostic code. */\n\tcode: PromptTemplateDiagnosticCode;\n\t/** Human-readable diagnostic message. */\n\tmessage: string;\n\t/** Path associated with the diagnostic. */\n\tpath: string;\n}\n\ninterface PromptTemplateFrontmatter {\n\tdescription?: string;\n\t\"argument-hint\"?: string;\n\t[key: string]: unknown;\n}\n\n/**\n * Load prompt templates from one or more paths.\n *\n * Directory inputs load direct `.md` children non-recursively. File inputs load explicit `.md` files. Missing paths and\n * non-markdown files are skipped. Read and parse failures are returned as diagnostics.\n */\nexport async function loadPromptTemplates(\n\tenv: ExecutionEnv,\n\tpaths: string | string[],\n): Promise<{ promptTemplates: PromptTemplate[]; diagnostics: PromptTemplateDiagnostic[] }> {\n\tconst promptTemplates: PromptTemplate[] = [];\n\tconst diagnostics: PromptTemplateDiagnostic[] = [];\n\tfor (const path of Array.isArray(paths) ? paths : [paths]) {\n\t\tconst infoResult = await env.fileInfo(path);\n\t\tif (!infoResult.ok) {\n\t\t\tif (infoResult.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: infoResult.error.message,\n\t\t\t\t\tpath,\n\t\t\t\t});\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\t\tconst info = infoResult.value;\n\t\tconst kind = await resolveKind(env, info, diagnostics);\n\t\tif (kind === \"directory\") {\n\t\t\tconst result = await loadTemplatesFromDir(env, info.path);\n\t\t\tpromptTemplates.push(...result.promptTemplates);\n\t\t\tdiagnostics.push(...result.diagnostics);\n\t\t} else if (kind === \"file\" && info.name.endsWith(\".md\")) {\n\t\t\tconst result = await loadTemplateFromFile(env, info.path);\n\t\t\tif (result.promptTemplate) promptTemplates.push(result.promptTemplate);\n\t\t\tdiagnostics.push(...result.diagnostics);\n\t\t}\n\t}\n\treturn { promptTemplates, diagnostics };\n}\n\n/**\n * Load prompt templates from source-tagged paths.\n *\n * Source values are preserved exactly and attached to every loaded prompt template and diagnostic. The agent package does\n * not interpret source values; applications define their own provenance shape.\n */\nexport async function loadSourcedPromptTemplates<TSource, TPromptTemplate extends PromptTemplate = PromptTemplate>(\n\tenv: ExecutionEnv,\n\tinputs: Array<{ path: string; source: TSource }>,\n\tmapPromptTemplate?: (promptTemplate: PromptTemplate, source: TSource) => TPromptTemplate,\n): Promise<{\n\tpromptTemplates: Array<{ promptTemplate: TPromptTemplate; source: TSource }>;\n\tdiagnostics: Array<PromptTemplateDiagnostic & { source: TSource }>;\n}> {\n\tconst promptTemplates: Array<{ promptTemplate: TPromptTemplate; source: TSource }> = [];\n\tconst diagnostics: Array<PromptTemplateDiagnostic & { source: TSource }> = [];\n\tfor (const input of inputs) {\n\t\tconst result = await loadPromptTemplates(env, input.path);\n\t\tfor (const promptTemplate of result.promptTemplates) {\n\t\t\tpromptTemplates.push({\n\t\t\t\tpromptTemplate: mapPromptTemplate\n\t\t\t\t\t? mapPromptTemplate(promptTemplate, input.source)\n\t\t\t\t\t: (promptTemplate as TPromptTemplate),\n\t\t\t\tsource: input.source,\n\t\t\t});\n\t\t}\n\t\tfor (const diagnostic of result.diagnostics) diagnostics.push({ ...diagnostic, source: input.source });\n\t}\n\treturn { promptTemplates, diagnostics };\n}\n\nasync function loadTemplatesFromDir(\n\tenv: ExecutionEnv,\n\tdir: string,\n): Promise<{ promptTemplates: PromptTemplate[]; diagnostics: PromptTemplateDiagnostic[] }> {\n\tconst promptTemplates: PromptTemplate[] = [];\n\tconst diagnostics: PromptTemplateDiagnostic[] = [];\n\tconst entriesResult = await env.listDir(dir);\n\tif (!entriesResult.ok) {\n\t\tdiagnostics.push({\n\t\t\ttype: \"warning\",\n\t\t\tcode: \"list_failed\",\n\t\t\tmessage: entriesResult.error.message,\n\t\t\tpath: dir,\n\t\t});\n\t\treturn { promptTemplates, diagnostics };\n\t}\n\tconst entries = entriesResult.value;\n\n\tfor (const entry of entries.sort((a, b) => a.name.localeCompare(b.name))) {\n\t\tconst kind = await resolveKind(env, entry, diagnostics);\n\t\tif (kind !== \"file\" || !entry.name.endsWith(\".md\")) continue;\n\t\tconst result = await loadTemplateFromFile(env, entry.path);\n\t\tif (result.promptTemplate) promptTemplates.push(result.promptTemplate);\n\t\tdiagnostics.push(...result.diagnostics);\n\t}\n\treturn { promptTemplates, diagnostics };\n}\n\nasync function loadTemplateFromFile(\n\tenv: ExecutionEnv,\n\tfilePath: string,\n): Promise<{ promptTemplate: PromptTemplate | null; diagnostics: PromptTemplateDiagnostic[] }> {\n\tconst diagnostics: PromptTemplateDiagnostic[] = [];\n\tconst rawContent = await env.readTextFile(filePath);\n\tif (!rawContent.ok) {\n\t\tdiagnostics.push({\n\t\t\ttype: \"warning\",\n\t\t\tcode: \"read_failed\",\n\t\t\tmessage: rawContent.error.message,\n\t\t\tpath: filePath,\n\t\t});\n\t\treturn { promptTemplate: null, diagnostics };\n\t}\n\n\tconst parsed = parseFrontmatter<PromptTemplateFrontmatter>(rawContent.value);\n\tif (!parsed.ok) {\n\t\tdiagnostics.push({\n\t\t\ttype: \"warning\",\n\t\t\tcode: \"parse_failed\",\n\t\t\tmessage: parsed.error.message,\n\t\t\tpath: filePath,\n\t\t});\n\t\treturn { promptTemplate: null, diagnostics };\n\t}\n\n\tconst { frontmatter, body } = parsed.value;\n\tconst firstLine = body.split(\"\\n\").find((line) => line.trim());\n\tlet description = typeof frontmatter.description === \"string\" ? frontmatter.description : \"\";\n\tif (!description && firstLine) {\n\t\tdescription = firstLine.slice(0, 60);\n\t\tif (firstLine.length > 60) description += \"...\";\n\t}\n\treturn {\n\t\tpromptTemplate: {\n\t\t\tname: basenameEnvPath(filePath).replace(/\\.md$/i, \"\"),\n\t\t\tdescription,\n\t\t\tcontent: body,\n\t\t},\n\t\tdiagnostics,\n\t};\n}\n\nasync function resolveKind(\n\tenv: ExecutionEnv,\n\tinfo: FileInfo,\n\tdiagnostics: PromptTemplateDiagnostic[],\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 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\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\n/** Parse an argument string using simple shell-style single and double quotes. */\nexport function parseCommandArgs(argsString: string): string[] {\n\tconst args: string[] = [];\n\tlet current = \"\";\n\tlet inQuote: string | null = null;\n\n\tfor (let i = 0; i < argsString.length; i++) {\n\t\tconst char = argsString[i]!;\n\t\tif (inQuote) {\n\t\t\tif (char === inQuote) inQuote = null;\n\t\t\telse current += char;\n\t\t} else if (char === '\"' || char === \"'\") {\n\t\t\tinQuote = char;\n\t\t} else if (char === \" \" || char === \"\\t\") {\n\t\t\tif (current) {\n\t\t\t\targs.push(current);\n\t\t\t\tcurrent = \"\";\n\t\t\t}\n\t\t} else {\n\t\t\tcurrent += char;\n\t\t}\n\t}\n\tif (current) args.push(current);\n\treturn args;\n}\n\n/** Substitute prompt template placeholders (`$1`, `$@`, `$ARGUMENTS`, `${@:N}`, `${@:N:L}`) with command arguments. */\nexport function substituteArgs(content: string, args: string[]): string {\n\tlet result = content;\n\tresult = result.replace(/\\$(\\d+)/g, (_, num: string) => args[parseInt(num, 10) - 1] ?? \"\");\n\tresult = result.replace(/\\$\\{@:(\\d+)(?::(\\d+))?\\}/g, (_, startStr: string, lengthStr?: string) => {\n\t\tlet start = parseInt(startStr, 10) - 1;\n\t\tif (start < 0) start = 0;\n\t\tif (lengthStr) return args.slice(start, start + parseInt(lengthStr, 10)).join(\" \");\n\t\treturn args.slice(start).join(\" \");\n\t});\n\tconst allArgs = args.join(\" \");\n\tresult = result.replace(/\\$ARGUMENTS/g, allArgs);\n\tresult = result.replace(/\\$@/g, allArgs);\n\treturn result;\n}\n\n/** Format a prompt template invocation with positional arguments. */\nexport function formatPromptTemplateInvocation(template: PromptTemplate, args: string[] = []): string {\n\treturn substituteArgs(template.content, args);\n}\n"]}
@@ -1,230 +0,0 @@
1
- import { parse } from "yaml";
2
- import { toError } from "./types.js";
3
- /**
4
- * Load prompt templates from one or more paths.
5
- *
6
- * Directory inputs load direct `.md` children non-recursively. File inputs load explicit `.md` files. Missing paths and
7
- * non-markdown files are skipped. Read and parse failures are returned as diagnostics.
8
- */
9
- export async function loadPromptTemplates(env, paths) {
10
- const promptTemplates = [];
11
- const diagnostics = [];
12
- for (const path of Array.isArray(paths) ? paths : [paths]) {
13
- const infoResult = await env.fileInfo(path);
14
- if (!infoResult.ok) {
15
- if (infoResult.error.code !== "not_found") {
16
- diagnostics.push({
17
- type: "warning",
18
- code: "file_info_failed",
19
- message: infoResult.error.message,
20
- path,
21
- });
22
- }
23
- continue;
24
- }
25
- const info = infoResult.value;
26
- const kind = await resolveKind(env, info, diagnostics);
27
- if (kind === "directory") {
28
- const result = await loadTemplatesFromDir(env, info.path);
29
- promptTemplates.push(...result.promptTemplates);
30
- diagnostics.push(...result.diagnostics);
31
- }
32
- else if (kind === "file" && info.name.endsWith(".md")) {
33
- const result = await loadTemplateFromFile(env, info.path);
34
- if (result.promptTemplate)
35
- promptTemplates.push(result.promptTemplate);
36
- diagnostics.push(...result.diagnostics);
37
- }
38
- }
39
- return { promptTemplates, diagnostics };
40
- }
41
- /**
42
- * Load prompt templates from source-tagged paths.
43
- *
44
- * Source values are preserved exactly and attached to every loaded prompt template and diagnostic. The agent package does
45
- * not interpret source values; applications define their own provenance shape.
46
- */
47
- export async function loadSourcedPromptTemplates(env, inputs, mapPromptTemplate) {
48
- const promptTemplates = [];
49
- const diagnostics = [];
50
- for (const input of inputs) {
51
- const result = await loadPromptTemplates(env, input.path);
52
- for (const promptTemplate of result.promptTemplates) {
53
- promptTemplates.push({
54
- promptTemplate: mapPromptTemplate
55
- ? mapPromptTemplate(promptTemplate, input.source)
56
- : promptTemplate,
57
- source: input.source,
58
- });
59
- }
60
- for (const diagnostic of result.diagnostics)
61
- diagnostics.push({ ...diagnostic, source: input.source });
62
- }
63
- return { promptTemplates, diagnostics };
64
- }
65
- async function loadTemplatesFromDir(env, dir) {
66
- const promptTemplates = [];
67
- const diagnostics = [];
68
- const entriesResult = await env.listDir(dir);
69
- if (!entriesResult.ok) {
70
- diagnostics.push({
71
- type: "warning",
72
- code: "list_failed",
73
- message: entriesResult.error.message,
74
- path: dir,
75
- });
76
- return { promptTemplates, diagnostics };
77
- }
78
- const entries = entriesResult.value;
79
- for (const entry of entries.sort((a, b) => a.name.localeCompare(b.name))) {
80
- const kind = await resolveKind(env, entry, diagnostics);
81
- if (kind !== "file" || !entry.name.endsWith(".md"))
82
- continue;
83
- const result = await loadTemplateFromFile(env, entry.path);
84
- if (result.promptTemplate)
85
- promptTemplates.push(result.promptTemplate);
86
- diagnostics.push(...result.diagnostics);
87
- }
88
- return { promptTemplates, diagnostics };
89
- }
90
- async function loadTemplateFromFile(env, filePath) {
91
- const diagnostics = [];
92
- const rawContent = await env.readTextFile(filePath);
93
- if (!rawContent.ok) {
94
- diagnostics.push({
95
- type: "warning",
96
- code: "read_failed",
97
- message: rawContent.error.message,
98
- path: filePath,
99
- });
100
- return { promptTemplate: null, diagnostics };
101
- }
102
- const parsed = parseFrontmatter(rawContent.value);
103
- if (!parsed.ok) {
104
- diagnostics.push({
105
- type: "warning",
106
- code: "parse_failed",
107
- message: parsed.error.message,
108
- path: filePath,
109
- });
110
- return { promptTemplate: null, diagnostics };
111
- }
112
- const { frontmatter, body } = parsed.value;
113
- const firstLine = body.split("\n").find((line) => line.trim());
114
- let description = typeof frontmatter.description === "string" ? frontmatter.description : "";
115
- if (!description && firstLine) {
116
- description = firstLine.slice(0, 60);
117
- if (firstLine.length > 60)
118
- description += "...";
119
- }
120
- return {
121
- promptTemplate: {
122
- name: basenameEnvPath(filePath).replace(/\.md$/i, ""),
123
- description,
124
- content: body,
125
- },
126
- diagnostics,
127
- };
128
- }
129
- async function resolveKind(env, info, diagnostics) {
130
- if (info.kind === "file" || info.kind === "directory")
131
- return info.kind;
132
- const canonicalPath = await env.canonicalPath(info.path);
133
- if (!canonicalPath.ok) {
134
- if (canonicalPath.error.code !== "not_found") {
135
- diagnostics.push({
136
- type: "warning",
137
- code: "file_info_failed",
138
- message: canonicalPath.error.message,
139
- path: info.path,
140
- });
141
- }
142
- return undefined;
143
- }
144
- const target = await env.fileInfo(canonicalPath.value);
145
- if (!target.ok) {
146
- if (target.error.code !== "not_found") {
147
- diagnostics.push({
148
- type: "warning",
149
- code: "file_info_failed",
150
- message: target.error.message,
151
- path: info.path,
152
- });
153
- }
154
- return undefined;
155
- }
156
- return target.value.kind === "file" || target.value.kind === "directory" ? target.value.kind : undefined;
157
- }
158
- function parseFrontmatter(content) {
159
- try {
160
- const normalized = content.replace(/\r\n/g, "\n").replace(/\r/g, "\n");
161
- if (!normalized.startsWith("---"))
162
- return { ok: true, value: { frontmatter: {}, body: normalized } };
163
- const endIndex = normalized.indexOf("\n---", 3);
164
- if (endIndex === -1)
165
- return { ok: true, value: { frontmatter: {}, body: normalized } };
166
- const yamlString = normalized.slice(4, endIndex);
167
- const body = normalized.slice(endIndex + 4).trim();
168
- return { ok: true, value: { frontmatter: (parse(yamlString) ?? {}), body } };
169
- }
170
- catch (error) {
171
- return { ok: false, error: toError(error) };
172
- }
173
- }
174
- function basenameEnvPath(path) {
175
- const normalized = path.replace(/\/+$/, "");
176
- const slashIndex = normalized.lastIndexOf("/");
177
- return slashIndex === -1 ? normalized : normalized.slice(slashIndex + 1);
178
- }
179
- /** Parse an argument string using simple shell-style single and double quotes. */
180
- export function parseCommandArgs(argsString) {
181
- const args = [];
182
- let current = "";
183
- let inQuote = null;
184
- for (let i = 0; i < argsString.length; i++) {
185
- const char = argsString[i];
186
- if (inQuote) {
187
- if (char === inQuote)
188
- inQuote = null;
189
- else
190
- current += char;
191
- }
192
- else if (char === '"' || char === "'") {
193
- inQuote = char;
194
- }
195
- else if (char === " " || char === "\t") {
196
- if (current) {
197
- args.push(current);
198
- current = "";
199
- }
200
- }
201
- else {
202
- current += char;
203
- }
204
- }
205
- if (current)
206
- args.push(current);
207
- return args;
208
- }
209
- /** Substitute prompt template placeholders (`$1`, `$@`, `$ARGUMENTS`, `${@:N}`, `${@:N:L}`) with command arguments. */
210
- export function substituteArgs(content, args) {
211
- let result = content;
212
- result = result.replace(/\$(\d+)/g, (_, num) => args[parseInt(num, 10) - 1] ?? "");
213
- result = result.replace(/\$\{@:(\d+)(?::(\d+))?\}/g, (_, startStr, lengthStr) => {
214
- let start = parseInt(startStr, 10) - 1;
215
- if (start < 0)
216
- start = 0;
217
- if (lengthStr)
218
- return args.slice(start, start + parseInt(lengthStr, 10)).join(" ");
219
- return args.slice(start).join(" ");
220
- });
221
- const allArgs = args.join(" ");
222
- result = result.replace(/\$ARGUMENTS/g, allArgs);
223
- result = result.replace(/\$@/g, allArgs);
224
- return result;
225
- }
226
- /** Format a prompt template invocation with positional arguments. */
227
- export function formatPromptTemplateInvocation(template, args = []) {
228
- return substituteArgs(template.content, args);
229
- }
230
- //# sourceMappingURL=prompt-templates.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"prompt-templates.js","sourceRoot":"","sources":["../../src/harness/prompt-templates.ts"],"names":[],"mappings":"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","sourcesContent":["import { parse } from \"yaml\";\nimport { type ExecutionEnv, type FileInfo, type PromptTemplate, type Result, toError } from \"./types.ts\";\n\nexport type PromptTemplateDiagnosticCode = \"file_info_failed\" | \"list_failed\" | \"read_failed\" | \"parse_failed\";\n\n/** Warning produced while loading prompt templates. */\nexport interface PromptTemplateDiagnostic {\n\t/** Diagnostic severity. Currently only warnings are emitted. */\n\ttype: \"warning\";\n\t/** Stable diagnostic code. */\n\tcode: PromptTemplateDiagnosticCode;\n\t/** Human-readable diagnostic message. */\n\tmessage: string;\n\t/** Path associated with the diagnostic. */\n\tpath: string;\n}\n\ninterface PromptTemplateFrontmatter {\n\tdescription?: string;\n\t\"argument-hint\"?: string;\n\t[key: string]: unknown;\n}\n\n/**\n * Load prompt templates from one or more paths.\n *\n * Directory inputs load direct `.md` children non-recursively. File inputs load explicit `.md` files. Missing paths and\n * non-markdown files are skipped. Read and parse failures are returned as diagnostics.\n */\nexport async function loadPromptTemplates(\n\tenv: ExecutionEnv,\n\tpaths: string | string[],\n): Promise<{ promptTemplates: PromptTemplate[]; diagnostics: PromptTemplateDiagnostic[] }> {\n\tconst promptTemplates: PromptTemplate[] = [];\n\tconst diagnostics: PromptTemplateDiagnostic[] = [];\n\tfor (const path of Array.isArray(paths) ? paths : [paths]) {\n\t\tconst infoResult = await env.fileInfo(path);\n\t\tif (!infoResult.ok) {\n\t\t\tif (infoResult.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: infoResult.error.message,\n\t\t\t\t\tpath,\n\t\t\t\t});\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\t\tconst info = infoResult.value;\n\t\tconst kind = await resolveKind(env, info, diagnostics);\n\t\tif (kind === \"directory\") {\n\t\t\tconst result = await loadTemplatesFromDir(env, info.path);\n\t\t\tpromptTemplates.push(...result.promptTemplates);\n\t\t\tdiagnostics.push(...result.diagnostics);\n\t\t} else if (kind === \"file\" && info.name.endsWith(\".md\")) {\n\t\t\tconst result = await loadTemplateFromFile(env, info.path);\n\t\t\tif (result.promptTemplate) promptTemplates.push(result.promptTemplate);\n\t\t\tdiagnostics.push(...result.diagnostics);\n\t\t}\n\t}\n\treturn { promptTemplates, diagnostics };\n}\n\n/**\n * Load prompt templates from source-tagged paths.\n *\n * Source values are preserved exactly and attached to every loaded prompt template and diagnostic. The agent package does\n * not interpret source values; applications define their own provenance shape.\n */\nexport async function loadSourcedPromptTemplates<TSource, TPromptTemplate extends PromptTemplate = PromptTemplate>(\n\tenv: ExecutionEnv,\n\tinputs: Array<{ path: string; source: TSource }>,\n\tmapPromptTemplate?: (promptTemplate: PromptTemplate, source: TSource) => TPromptTemplate,\n): Promise<{\n\tpromptTemplates: Array<{ promptTemplate: TPromptTemplate; source: TSource }>;\n\tdiagnostics: Array<PromptTemplateDiagnostic & { source: TSource }>;\n}> {\n\tconst promptTemplates: Array<{ promptTemplate: TPromptTemplate; source: TSource }> = [];\n\tconst diagnostics: Array<PromptTemplateDiagnostic & { source: TSource }> = [];\n\tfor (const input of inputs) {\n\t\tconst result = await loadPromptTemplates(env, input.path);\n\t\tfor (const promptTemplate of result.promptTemplates) {\n\t\t\tpromptTemplates.push({\n\t\t\t\tpromptTemplate: mapPromptTemplate\n\t\t\t\t\t? mapPromptTemplate(promptTemplate, input.source)\n\t\t\t\t\t: (promptTemplate as TPromptTemplate),\n\t\t\t\tsource: input.source,\n\t\t\t});\n\t\t}\n\t\tfor (const diagnostic of result.diagnostics) diagnostics.push({ ...diagnostic, source: input.source });\n\t}\n\treturn { promptTemplates, diagnostics };\n}\n\nasync function loadTemplatesFromDir(\n\tenv: ExecutionEnv,\n\tdir: string,\n): Promise<{ promptTemplates: PromptTemplate[]; diagnostics: PromptTemplateDiagnostic[] }> {\n\tconst promptTemplates: PromptTemplate[] = [];\n\tconst diagnostics: PromptTemplateDiagnostic[] = [];\n\tconst entriesResult = await env.listDir(dir);\n\tif (!entriesResult.ok) {\n\t\tdiagnostics.push({\n\t\t\ttype: \"warning\",\n\t\t\tcode: \"list_failed\",\n\t\t\tmessage: entriesResult.error.message,\n\t\t\tpath: dir,\n\t\t});\n\t\treturn { promptTemplates, diagnostics };\n\t}\n\tconst entries = entriesResult.value;\n\n\tfor (const entry of entries.sort((a, b) => a.name.localeCompare(b.name))) {\n\t\tconst kind = await resolveKind(env, entry, diagnostics);\n\t\tif (kind !== \"file\" || !entry.name.endsWith(\".md\")) continue;\n\t\tconst result = await loadTemplateFromFile(env, entry.path);\n\t\tif (result.promptTemplate) promptTemplates.push(result.promptTemplate);\n\t\tdiagnostics.push(...result.diagnostics);\n\t}\n\treturn { promptTemplates, diagnostics };\n}\n\nasync function loadTemplateFromFile(\n\tenv: ExecutionEnv,\n\tfilePath: string,\n): Promise<{ promptTemplate: PromptTemplate | null; diagnostics: PromptTemplateDiagnostic[] }> {\n\tconst diagnostics: PromptTemplateDiagnostic[] = [];\n\tconst rawContent = await env.readTextFile(filePath);\n\tif (!rawContent.ok) {\n\t\tdiagnostics.push({\n\t\t\ttype: \"warning\",\n\t\t\tcode: \"read_failed\",\n\t\t\tmessage: rawContent.error.message,\n\t\t\tpath: filePath,\n\t\t});\n\t\treturn { promptTemplate: null, diagnostics };\n\t}\n\n\tconst parsed = parseFrontmatter<PromptTemplateFrontmatter>(rawContent.value);\n\tif (!parsed.ok) {\n\t\tdiagnostics.push({\n\t\t\ttype: \"warning\",\n\t\t\tcode: \"parse_failed\",\n\t\t\tmessage: parsed.error.message,\n\t\t\tpath: filePath,\n\t\t});\n\t\treturn { promptTemplate: null, diagnostics };\n\t}\n\n\tconst { frontmatter, body } = parsed.value;\n\tconst firstLine = body.split(\"\\n\").find((line) => line.trim());\n\tlet description = typeof frontmatter.description === \"string\" ? frontmatter.description : \"\";\n\tif (!description && firstLine) {\n\t\tdescription = firstLine.slice(0, 60);\n\t\tif (firstLine.length > 60) description += \"...\";\n\t}\n\treturn {\n\t\tpromptTemplate: {\n\t\t\tname: basenameEnvPath(filePath).replace(/\\.md$/i, \"\"),\n\t\t\tdescription,\n\t\t\tcontent: body,\n\t\t},\n\t\tdiagnostics,\n\t};\n}\n\nasync function resolveKind(\n\tenv: ExecutionEnv,\n\tinfo: FileInfo,\n\tdiagnostics: PromptTemplateDiagnostic[],\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 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\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\n/** Parse an argument string using simple shell-style single and double quotes. */\nexport function parseCommandArgs(argsString: string): string[] {\n\tconst args: string[] = [];\n\tlet current = \"\";\n\tlet inQuote: string | null = null;\n\n\tfor (let i = 0; i < argsString.length; i++) {\n\t\tconst char = argsString[i]!;\n\t\tif (inQuote) {\n\t\t\tif (char === inQuote) inQuote = null;\n\t\t\telse current += char;\n\t\t} else if (char === '\"' || char === \"'\") {\n\t\t\tinQuote = char;\n\t\t} else if (char === \" \" || char === \"\\t\") {\n\t\t\tif (current) {\n\t\t\t\targs.push(current);\n\t\t\t\tcurrent = \"\";\n\t\t\t}\n\t\t} else {\n\t\t\tcurrent += char;\n\t\t}\n\t}\n\tif (current) args.push(current);\n\treturn args;\n}\n\n/** Substitute prompt template placeholders (`$1`, `$@`, `$ARGUMENTS`, `${@:N}`, `${@:N:L}`) with command arguments. */\nexport function substituteArgs(content: string, args: string[]): string {\n\tlet result = content;\n\tresult = result.replace(/\\$(\\d+)/g, (_, num: string) => args[parseInt(num, 10) - 1] ?? \"\");\n\tresult = result.replace(/\\$\\{@:(\\d+)(?::(\\d+))?\\}/g, (_, startStr: string, lengthStr?: string) => {\n\t\tlet start = parseInt(startStr, 10) - 1;\n\t\tif (start < 0) start = 0;\n\t\tif (lengthStr) return args.slice(start, start + parseInt(lengthStr, 10)).join(\" \");\n\t\treturn args.slice(start).join(\" \");\n\t});\n\tconst allArgs = args.join(\" \");\n\tresult = result.replace(/\\$ARGUMENTS/g, allArgs);\n\tresult = result.replace(/\\$@/g, allArgs);\n\treturn result;\n}\n\n/** Format a prompt template invocation with positional arguments. */\nexport function formatPromptTemplateInvocation(template: PromptTemplate, args: string[] = []): string {\n\treturn substituteArgs(template.content, args);\n}\n"]}
@@ -1,26 +0,0 @@
1
- import type { FileSystem, JsonlSessionCreateOptions, JsonlSessionListOptions, JsonlSessionMetadata, JsonlSessionRepoApi, Session } from "../types.ts";
2
- type JsonlSessionRepoFileSystem = Pick<FileSystem, "cwd" | "absolutePath" | "joinPath" | "readTextFile" | "readTextLines" | "writeFile" | "appendFile" | "listDir" | "exists" | "createDir" | "remove">;
3
- export declare class JsonlSessionRepo implements JsonlSessionRepoApi {
4
- private readonly fs;
5
- private readonly sessionsRootInput;
6
- private sessionsRoot;
7
- constructor(options: {
8
- fs: JsonlSessionRepoFileSystem;
9
- sessionsRoot: string;
10
- });
11
- private getSessionsRoot;
12
- private getSessionDir;
13
- private createSessionFilePath;
14
- create(options: JsonlSessionCreateOptions): Promise<Session<JsonlSessionMetadata>>;
15
- open(metadata: JsonlSessionMetadata): Promise<Session<JsonlSessionMetadata>>;
16
- list(options?: JsonlSessionListOptions): Promise<JsonlSessionMetadata[]>;
17
- delete(metadata: JsonlSessionMetadata): Promise<void>;
18
- fork(sourceMetadata: JsonlSessionMetadata, options: JsonlSessionCreateOptions & {
19
- entryId?: string;
20
- position?: "before" | "at";
21
- id?: string;
22
- }): Promise<Session<JsonlSessionMetadata>>;
23
- private listSessionDirs;
24
- }
25
- export {};
26
- //# sourceMappingURL=jsonl-repo.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"jsonl-repo.d.ts","sourceRoot":"","sources":["../../../src/harness/session/jsonl-repo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,UAAU,EACV,yBAAyB,EACzB,uBAAuB,EACvB,oBAAoB,EACpB,mBAAmB,EACnB,OAAO,EACP,MAAM,aAAa,CAAC;AAWrB,KAAK,0BAA0B,GAAG,IAAI,CACrC,UAAU,EACR,KAAK,GACL,cAAc,GACd,UAAU,GACV,cAAc,GACd,eAAe,GACf,WAAW,GACX,YAAY,GACZ,SAAS,GACT,QAAQ,GACR,WAAW,GACX,QAAQ,CACV,CAAC;AAMF,qBAAa,gBAAiB,YAAW,mBAAmB;IAC3D,OAAO,CAAC,QAAQ,CAAC,EAAE,CAA6B;IAChD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAC3C,OAAO,CAAC,YAAY,CAAqB;IAEzC,YAAY,OAAO,EAAE;QAAE,EAAE,EAAE,0BAA0B,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,EAG5E;YAEa,eAAe;YAUf,aAAa;YAOb,qBAAqB;IAU7B,MAAM,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAevF;IAEK,IAAI,CAAC,QAAQ,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAQjF;IAEK,IAAI,CAAC,OAAO,GAAE,uBAA4B,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAsBjF;IAEK,MAAM,CAAC,QAAQ,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAK1D;IAEK,IAAI,CACT,cAAc,EAAE,oBAAoB,EACpC,OAAO,EAAE,yBAAyB,GAAG;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,GAChG,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAuBxC;YAEa,eAAe;CAgB7B","sourcesContent":["import type {\n\tFileSystem,\n\tJsonlSessionCreateOptions,\n\tJsonlSessionListOptions,\n\tJsonlSessionMetadata,\n\tJsonlSessionRepoApi,\n\tSession,\n} from \"../types.ts\";\nimport { SessionError, toError } from \"../types.ts\";\nimport { JsonlSessionStorage, loadJsonlSessionMetadata } from \"./jsonl-storage.ts\";\nimport {\n\tcreateSessionId,\n\tcreateTimestamp,\n\tgetEntriesToFork,\n\tgetFileSystemResultOrThrow,\n\ttoSession,\n} from \"./repo-utils.ts\";\n\ntype JsonlSessionRepoFileSystem = Pick<\n\tFileSystem,\n\t| \"cwd\"\n\t| \"absolutePath\"\n\t| \"joinPath\"\n\t| \"readTextFile\"\n\t| \"readTextLines\"\n\t| \"writeFile\"\n\t| \"appendFile\"\n\t| \"listDir\"\n\t| \"exists\"\n\t| \"createDir\"\n\t| \"remove\"\n>;\n\nfunction encodeCwd(cwd: string): string {\n\treturn `--${cwd.replace(/^[/\\\\]/, \"\").replace(/[/\\\\:]/g, \"-\")}--`;\n}\n\nexport class JsonlSessionRepo implements JsonlSessionRepoApi {\n\tprivate readonly fs: JsonlSessionRepoFileSystem;\n\tprivate readonly sessionsRootInput: string;\n\tprivate sessionsRoot: string | undefined;\n\n\tconstructor(options: { fs: JsonlSessionRepoFileSystem; sessionsRoot: string }) {\n\t\tthis.fs = options.fs;\n\t\tthis.sessionsRootInput = options.sessionsRoot;\n\t}\n\n\tprivate async getSessionsRoot(): Promise<string> {\n\t\tif (!this.sessionsRoot) {\n\t\t\tthis.sessionsRoot = getFileSystemResultOrThrow(\n\t\t\t\tawait this.fs.absolutePath(this.sessionsRootInput),\n\t\t\t\t`Failed to resolve sessions root ${this.sessionsRootInput}`,\n\t\t\t);\n\t\t}\n\t\treturn this.sessionsRoot;\n\t}\n\n\tprivate async getSessionDir(cwd: string): Promise<string> {\n\t\treturn getFileSystemResultOrThrow(\n\t\t\tawait this.fs.joinPath([await this.getSessionsRoot(), encodeCwd(cwd)]),\n\t\t\t`Failed to resolve session directory for ${cwd}`,\n\t\t);\n\t}\n\n\tprivate async createSessionFilePath(cwd: string, sessionId: string, timestamp: string): Promise<string> {\n\t\treturn getFileSystemResultOrThrow(\n\t\t\tawait this.fs.joinPath([\n\t\t\t\tawait this.getSessionDir(cwd),\n\t\t\t\t`${timestamp.replace(/[:.]/g, \"-\")}_${sessionId}.jsonl`,\n\t\t\t]),\n\t\t\t`Failed to resolve session file path for ${sessionId}`,\n\t\t);\n\t}\n\n\tasync create(options: JsonlSessionCreateOptions): Promise<Session<JsonlSessionMetadata>> {\n\t\tconst id = options.id ?? createSessionId();\n\t\tconst createdAt = createTimestamp();\n\t\tconst sessionDir = await this.getSessionDir(options.cwd);\n\t\tgetFileSystemResultOrThrow(\n\t\t\tawait this.fs.createDir(sessionDir, { recursive: true }),\n\t\t\t`Failed to create session directory ${sessionDir}`,\n\t\t);\n\t\tconst filePath = await this.createSessionFilePath(options.cwd, id, createdAt);\n\t\tconst storage = await JsonlSessionStorage.create(this.fs, filePath, {\n\t\t\tcwd: options.cwd,\n\t\t\tsessionId: id,\n\t\t\tparentSessionPath: options.parentSessionPath,\n\t\t});\n\t\treturn toSession(storage);\n\t}\n\n\tasync open(metadata: JsonlSessionMetadata): Promise<Session<JsonlSessionMetadata>> {\n\t\tif (\n\t\t\t!getFileSystemResultOrThrow(await this.fs.exists(metadata.path), `Failed to check session ${metadata.path}`)\n\t\t) {\n\t\t\tthrow new SessionError(\"not_found\", `Session not found: ${metadata.path}`);\n\t\t}\n\t\tconst storage = await JsonlSessionStorage.open(this.fs, metadata.path);\n\t\treturn toSession(storage);\n\t}\n\n\tasync list(options: JsonlSessionListOptions = {}): Promise<JsonlSessionMetadata[]> {\n\t\tconst dirs = options.cwd ? [await this.getSessionDir(options.cwd)] : await this.listSessionDirs();\n\t\tconst sessions: JsonlSessionMetadata[] = [];\n\t\tfor (const dir of dirs) {\n\t\t\tif (!getFileSystemResultOrThrow(await this.fs.exists(dir), `Failed to check session directory ${dir}`)) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tconst files = getFileSystemResultOrThrow(\n\t\t\t\tawait this.fs.listDir(dir),\n\t\t\t\t`Failed to list sessions in ${dir}`,\n\t\t\t).filter((file) => file.kind !== \"directory\" && file.name.endsWith(\".jsonl\"));\n\t\t\tfor (const file of files) {\n\t\t\t\ttry {\n\t\t\t\t\tsessions.push(await loadJsonlSessionMetadata(this.fs, file.path));\n\t\t\t\t} catch (error) {\n\t\t\t\t\tconst cause = toError(error);\n\t\t\t\t\tif (!(cause instanceof SessionError) || cause.code !== \"invalid_session\") throw cause;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tsessions.sort((a, b) => new Date(b.createdAt).getTime() - new Date(a.createdAt).getTime());\n\t\treturn sessions;\n\t}\n\n\tasync delete(metadata: JsonlSessionMetadata): Promise<void> {\n\t\tgetFileSystemResultOrThrow(\n\t\t\tawait this.fs.remove(metadata.path, { force: true }),\n\t\t\t`Failed to delete session ${metadata.path}`,\n\t\t);\n\t}\n\n\tasync fork(\n\t\tsourceMetadata: JsonlSessionMetadata,\n\t\toptions: JsonlSessionCreateOptions & { entryId?: string; position?: \"before\" | \"at\"; id?: string },\n\t): Promise<Session<JsonlSessionMetadata>> {\n\t\tconst source = await this.open(sourceMetadata);\n\t\tconst forkedEntries = await getEntriesToFork(source.getStorage(), options);\n\t\tconst id = options.id ?? createSessionId();\n\t\tconst createdAt = createTimestamp();\n\t\tconst sessionDir = await this.getSessionDir(options.cwd);\n\t\tgetFileSystemResultOrThrow(\n\t\t\tawait this.fs.createDir(sessionDir, { recursive: true }),\n\t\t\t`Failed to create session directory ${sessionDir}`,\n\t\t);\n\t\tconst storage = await JsonlSessionStorage.create(\n\t\t\tthis.fs,\n\t\t\tawait this.createSessionFilePath(options.cwd, id, createdAt),\n\t\t\t{\n\t\t\t\tcwd: options.cwd,\n\t\t\t\tsessionId: id,\n\t\t\t\tparentSessionPath: options.parentSessionPath ?? sourceMetadata.path,\n\t\t\t},\n\t\t);\n\t\tfor (const entry of forkedEntries) {\n\t\t\tawait storage.appendEntry(entry);\n\t\t}\n\t\treturn toSession(storage);\n\t}\n\n\tprivate async listSessionDirs(): Promise<string[]> {\n\t\tconst sessionsRoot = await this.getSessionsRoot();\n\t\tif (\n\t\t\t!getFileSystemResultOrThrow(\n\t\t\t\tawait this.fs.exists(sessionsRoot),\n\t\t\t\t`Failed to check sessions root ${sessionsRoot}`,\n\t\t\t)\n\t\t) {\n\t\t\treturn [];\n\t\t}\n\t\tconst entries = getFileSystemResultOrThrow(\n\t\t\tawait this.fs.listDir(sessionsRoot),\n\t\t\t`Failed to list sessions root ${sessionsRoot}`,\n\t\t);\n\t\treturn entries.filter((entry) => entry.kind === \"directory\").map((entry) => entry.path);\n\t}\n}\n"]}
@@ -1,101 +0,0 @@
1
- import { SessionError, toError } from "../types.js";
2
- import { JsonlSessionStorage, loadJsonlSessionMetadata } from "./jsonl-storage.js";
3
- import { createSessionId, createTimestamp, getEntriesToFork, getFileSystemResultOrThrow, toSession, } from "./repo-utils.js";
4
- function encodeCwd(cwd) {
5
- return `--${cwd.replace(/^[/\\]/, "").replace(/[/\\:]/g, "-")}--`;
6
- }
7
- export class JsonlSessionRepo {
8
- fs;
9
- sessionsRootInput;
10
- sessionsRoot;
11
- constructor(options) {
12
- this.fs = options.fs;
13
- this.sessionsRootInput = options.sessionsRoot;
14
- }
15
- async getSessionsRoot() {
16
- if (!this.sessionsRoot) {
17
- this.sessionsRoot = getFileSystemResultOrThrow(await this.fs.absolutePath(this.sessionsRootInput), `Failed to resolve sessions root ${this.sessionsRootInput}`);
18
- }
19
- return this.sessionsRoot;
20
- }
21
- async getSessionDir(cwd) {
22
- return getFileSystemResultOrThrow(await this.fs.joinPath([await this.getSessionsRoot(), encodeCwd(cwd)]), `Failed to resolve session directory for ${cwd}`);
23
- }
24
- async createSessionFilePath(cwd, sessionId, timestamp) {
25
- return getFileSystemResultOrThrow(await this.fs.joinPath([
26
- await this.getSessionDir(cwd),
27
- `${timestamp.replace(/[:.]/g, "-")}_${sessionId}.jsonl`,
28
- ]), `Failed to resolve session file path for ${sessionId}`);
29
- }
30
- async create(options) {
31
- const id = options.id ?? createSessionId();
32
- const createdAt = createTimestamp();
33
- const sessionDir = await this.getSessionDir(options.cwd);
34
- getFileSystemResultOrThrow(await this.fs.createDir(sessionDir, { recursive: true }), `Failed to create session directory ${sessionDir}`);
35
- const filePath = await this.createSessionFilePath(options.cwd, id, createdAt);
36
- const storage = await JsonlSessionStorage.create(this.fs, filePath, {
37
- cwd: options.cwd,
38
- sessionId: id,
39
- parentSessionPath: options.parentSessionPath,
40
- });
41
- return toSession(storage);
42
- }
43
- async open(metadata) {
44
- if (!getFileSystemResultOrThrow(await this.fs.exists(metadata.path), `Failed to check session ${metadata.path}`)) {
45
- throw new SessionError("not_found", `Session not found: ${metadata.path}`);
46
- }
47
- const storage = await JsonlSessionStorage.open(this.fs, metadata.path);
48
- return toSession(storage);
49
- }
50
- async list(options = {}) {
51
- const dirs = options.cwd ? [await this.getSessionDir(options.cwd)] : await this.listSessionDirs();
52
- const sessions = [];
53
- for (const dir of dirs) {
54
- if (!getFileSystemResultOrThrow(await this.fs.exists(dir), `Failed to check session directory ${dir}`)) {
55
- continue;
56
- }
57
- const files = getFileSystemResultOrThrow(await this.fs.listDir(dir), `Failed to list sessions in ${dir}`).filter((file) => file.kind !== "directory" && file.name.endsWith(".jsonl"));
58
- for (const file of files) {
59
- try {
60
- sessions.push(await loadJsonlSessionMetadata(this.fs, file.path));
61
- }
62
- catch (error) {
63
- const cause = toError(error);
64
- if (!(cause instanceof SessionError) || cause.code !== "invalid_session")
65
- throw cause;
66
- }
67
- }
68
- }
69
- sessions.sort((a, b) => new Date(b.createdAt).getTime() - new Date(a.createdAt).getTime());
70
- return sessions;
71
- }
72
- async delete(metadata) {
73
- getFileSystemResultOrThrow(await this.fs.remove(metadata.path, { force: true }), `Failed to delete session ${metadata.path}`);
74
- }
75
- async fork(sourceMetadata, options) {
76
- const source = await this.open(sourceMetadata);
77
- const forkedEntries = await getEntriesToFork(source.getStorage(), options);
78
- const id = options.id ?? createSessionId();
79
- const createdAt = createTimestamp();
80
- const sessionDir = await this.getSessionDir(options.cwd);
81
- getFileSystemResultOrThrow(await this.fs.createDir(sessionDir, { recursive: true }), `Failed to create session directory ${sessionDir}`);
82
- const storage = await JsonlSessionStorage.create(this.fs, await this.createSessionFilePath(options.cwd, id, createdAt), {
83
- cwd: options.cwd,
84
- sessionId: id,
85
- parentSessionPath: options.parentSessionPath ?? sourceMetadata.path,
86
- });
87
- for (const entry of forkedEntries) {
88
- await storage.appendEntry(entry);
89
- }
90
- return toSession(storage);
91
- }
92
- async listSessionDirs() {
93
- const sessionsRoot = await this.getSessionsRoot();
94
- if (!getFileSystemResultOrThrow(await this.fs.exists(sessionsRoot), `Failed to check sessions root ${sessionsRoot}`)) {
95
- return [];
96
- }
97
- const entries = getFileSystemResultOrThrow(await this.fs.listDir(sessionsRoot), `Failed to list sessions root ${sessionsRoot}`);
98
- return entries.filter((entry) => entry.kind === "directory").map((entry) => entry.path);
99
- }
100
- }
101
- //# sourceMappingURL=jsonl-repo.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"jsonl-repo.js","sourceRoot":"","sources":["../../../src/harness/session/jsonl-repo.ts"],"names":[],"mappings":"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","sourcesContent":["import type {\n\tFileSystem,\n\tJsonlSessionCreateOptions,\n\tJsonlSessionListOptions,\n\tJsonlSessionMetadata,\n\tJsonlSessionRepoApi,\n\tSession,\n} from \"../types.ts\";\nimport { SessionError, toError } from \"../types.ts\";\nimport { JsonlSessionStorage, loadJsonlSessionMetadata } from \"./jsonl-storage.ts\";\nimport {\n\tcreateSessionId,\n\tcreateTimestamp,\n\tgetEntriesToFork,\n\tgetFileSystemResultOrThrow,\n\ttoSession,\n} from \"./repo-utils.ts\";\n\ntype JsonlSessionRepoFileSystem = Pick<\n\tFileSystem,\n\t| \"cwd\"\n\t| \"absolutePath\"\n\t| \"joinPath\"\n\t| \"readTextFile\"\n\t| \"readTextLines\"\n\t| \"writeFile\"\n\t| \"appendFile\"\n\t| \"listDir\"\n\t| \"exists\"\n\t| \"createDir\"\n\t| \"remove\"\n>;\n\nfunction encodeCwd(cwd: string): string {\n\treturn `--${cwd.replace(/^[/\\\\]/, \"\").replace(/[/\\\\:]/g, \"-\")}--`;\n}\n\nexport class JsonlSessionRepo implements JsonlSessionRepoApi {\n\tprivate readonly fs: JsonlSessionRepoFileSystem;\n\tprivate readonly sessionsRootInput: string;\n\tprivate sessionsRoot: string | undefined;\n\n\tconstructor(options: { fs: JsonlSessionRepoFileSystem; sessionsRoot: string }) {\n\t\tthis.fs = options.fs;\n\t\tthis.sessionsRootInput = options.sessionsRoot;\n\t}\n\n\tprivate async getSessionsRoot(): Promise<string> {\n\t\tif (!this.sessionsRoot) {\n\t\t\tthis.sessionsRoot = getFileSystemResultOrThrow(\n\t\t\t\tawait this.fs.absolutePath(this.sessionsRootInput),\n\t\t\t\t`Failed to resolve sessions root ${this.sessionsRootInput}`,\n\t\t\t);\n\t\t}\n\t\treturn this.sessionsRoot;\n\t}\n\n\tprivate async getSessionDir(cwd: string): Promise<string> {\n\t\treturn getFileSystemResultOrThrow(\n\t\t\tawait this.fs.joinPath([await this.getSessionsRoot(), encodeCwd(cwd)]),\n\t\t\t`Failed to resolve session directory for ${cwd}`,\n\t\t);\n\t}\n\n\tprivate async createSessionFilePath(cwd: string, sessionId: string, timestamp: string): Promise<string> {\n\t\treturn getFileSystemResultOrThrow(\n\t\t\tawait this.fs.joinPath([\n\t\t\t\tawait this.getSessionDir(cwd),\n\t\t\t\t`${timestamp.replace(/[:.]/g, \"-\")}_${sessionId}.jsonl`,\n\t\t\t]),\n\t\t\t`Failed to resolve session file path for ${sessionId}`,\n\t\t);\n\t}\n\n\tasync create(options: JsonlSessionCreateOptions): Promise<Session<JsonlSessionMetadata>> {\n\t\tconst id = options.id ?? createSessionId();\n\t\tconst createdAt = createTimestamp();\n\t\tconst sessionDir = await this.getSessionDir(options.cwd);\n\t\tgetFileSystemResultOrThrow(\n\t\t\tawait this.fs.createDir(sessionDir, { recursive: true }),\n\t\t\t`Failed to create session directory ${sessionDir}`,\n\t\t);\n\t\tconst filePath = await this.createSessionFilePath(options.cwd, id, createdAt);\n\t\tconst storage = await JsonlSessionStorage.create(this.fs, filePath, {\n\t\t\tcwd: options.cwd,\n\t\t\tsessionId: id,\n\t\t\tparentSessionPath: options.parentSessionPath,\n\t\t});\n\t\treturn toSession(storage);\n\t}\n\n\tasync open(metadata: JsonlSessionMetadata): Promise<Session<JsonlSessionMetadata>> {\n\t\tif (\n\t\t\t!getFileSystemResultOrThrow(await this.fs.exists(metadata.path), `Failed to check session ${metadata.path}`)\n\t\t) {\n\t\t\tthrow new SessionError(\"not_found\", `Session not found: ${metadata.path}`);\n\t\t}\n\t\tconst storage = await JsonlSessionStorage.open(this.fs, metadata.path);\n\t\treturn toSession(storage);\n\t}\n\n\tasync list(options: JsonlSessionListOptions = {}): Promise<JsonlSessionMetadata[]> {\n\t\tconst dirs = options.cwd ? [await this.getSessionDir(options.cwd)] : await this.listSessionDirs();\n\t\tconst sessions: JsonlSessionMetadata[] = [];\n\t\tfor (const dir of dirs) {\n\t\t\tif (!getFileSystemResultOrThrow(await this.fs.exists(dir), `Failed to check session directory ${dir}`)) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tconst files = getFileSystemResultOrThrow(\n\t\t\t\tawait this.fs.listDir(dir),\n\t\t\t\t`Failed to list sessions in ${dir}`,\n\t\t\t).filter((file) => file.kind !== \"directory\" && file.name.endsWith(\".jsonl\"));\n\t\t\tfor (const file of files) {\n\t\t\t\ttry {\n\t\t\t\t\tsessions.push(await loadJsonlSessionMetadata(this.fs, file.path));\n\t\t\t\t} catch (error) {\n\t\t\t\t\tconst cause = toError(error);\n\t\t\t\t\tif (!(cause instanceof SessionError) || cause.code !== \"invalid_session\") throw cause;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tsessions.sort((a, b) => new Date(b.createdAt).getTime() - new Date(a.createdAt).getTime());\n\t\treturn sessions;\n\t}\n\n\tasync delete(metadata: JsonlSessionMetadata): Promise<void> {\n\t\tgetFileSystemResultOrThrow(\n\t\t\tawait this.fs.remove(metadata.path, { force: true }),\n\t\t\t`Failed to delete session ${metadata.path}`,\n\t\t);\n\t}\n\n\tasync fork(\n\t\tsourceMetadata: JsonlSessionMetadata,\n\t\toptions: JsonlSessionCreateOptions & { entryId?: string; position?: \"before\" | \"at\"; id?: string },\n\t): Promise<Session<JsonlSessionMetadata>> {\n\t\tconst source = await this.open(sourceMetadata);\n\t\tconst forkedEntries = await getEntriesToFork(source.getStorage(), options);\n\t\tconst id = options.id ?? createSessionId();\n\t\tconst createdAt = createTimestamp();\n\t\tconst sessionDir = await this.getSessionDir(options.cwd);\n\t\tgetFileSystemResultOrThrow(\n\t\t\tawait this.fs.createDir(sessionDir, { recursive: true }),\n\t\t\t`Failed to create session directory ${sessionDir}`,\n\t\t);\n\t\tconst storage = await JsonlSessionStorage.create(\n\t\t\tthis.fs,\n\t\t\tawait this.createSessionFilePath(options.cwd, id, createdAt),\n\t\t\t{\n\t\t\t\tcwd: options.cwd,\n\t\t\t\tsessionId: id,\n\t\t\t\tparentSessionPath: options.parentSessionPath ?? sourceMetadata.path,\n\t\t\t},\n\t\t);\n\t\tfor (const entry of forkedEntries) {\n\t\t\tawait storage.appendEntry(entry);\n\t\t}\n\t\treturn toSession(storage);\n\t}\n\n\tprivate async listSessionDirs(): Promise<string[]> {\n\t\tconst sessionsRoot = await this.getSessionsRoot();\n\t\tif (\n\t\t\t!getFileSystemResultOrThrow(\n\t\t\t\tawait this.fs.exists(sessionsRoot),\n\t\t\t\t`Failed to check sessions root ${sessionsRoot}`,\n\t\t\t)\n\t\t) {\n\t\t\treturn [];\n\t\t}\n\t\tconst entries = getFileSystemResultOrThrow(\n\t\t\tawait this.fs.listDir(sessionsRoot),\n\t\t\t`Failed to list sessions root ${sessionsRoot}`,\n\t\t);\n\t\treturn entries.filter((entry) => entry.kind === \"directory\").map((entry) => entry.path);\n\t}\n}\n"]}