byterover-cli 0.2.1 → 0.3.0

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 (490) hide show
  1. package/README.md +56 -56
  2. package/bin/dev.js +1 -1
  3. package/dist/commands/cipher-agent/run.d.ts +111 -0
  4. package/dist/commands/cipher-agent/run.js +493 -0
  5. package/dist/commands/cipher-agent/set-prompt.d.ts +14 -0
  6. package/dist/commands/cipher-agent/set-prompt.js +53 -0
  7. package/dist/commands/cipher-agent/show-prompt.d.ts +11 -0
  8. package/dist/commands/cipher-agent/show-prompt.js +48 -0
  9. package/dist/commands/clear.d.ts +6 -0
  10. package/dist/commands/clear.js +36 -15
  11. package/dist/commands/curate.d.ts +74 -0
  12. package/dist/commands/curate.js +396 -0
  13. package/dist/commands/foo.d.ts +12 -0
  14. package/dist/commands/foo.js +61 -0
  15. package/dist/commands/gen-rules.d.ts +3 -0
  16. package/dist/commands/gen-rules.js +39 -20
  17. package/dist/commands/init.d.ts +48 -3
  18. package/dist/commands/init.js +242 -70
  19. package/dist/commands/login.js +9 -4
  20. package/dist/commands/pull.d.ts +33 -0
  21. package/dist/commands/pull.js +115 -0
  22. package/dist/commands/push.d.ts +13 -13
  23. package/dist/commands/push.js +81 -101
  24. package/dist/commands/query.d.ts +63 -0
  25. package/dist/commands/query.js +349 -0
  26. package/dist/commands/space/list.d.ts +5 -2
  27. package/dist/commands/space/list.js +60 -56
  28. package/dist/commands/space/switch.d.ts +16 -0
  29. package/dist/commands/space/switch.js +102 -53
  30. package/dist/commands/status.d.ts +5 -2
  31. package/dist/commands/status.js +43 -33
  32. package/dist/commands/watch.d.ts +23 -0
  33. package/dist/commands/watch.js +171 -0
  34. package/dist/config/auth.config.js +14 -2
  35. package/dist/config/context-tree-domains.d.ts +12 -0
  36. package/dist/config/context-tree-domains.js +29 -0
  37. package/dist/config/environment.d.ts +6 -0
  38. package/dist/config/environment.js +9 -2
  39. package/dist/constants.d.ts +5 -0
  40. package/dist/constants.js +6 -0
  41. package/dist/core/domain/cipher/agent/agent-state-machine.d.ts +128 -0
  42. package/dist/core/domain/cipher/agent/agent-state-machine.js +183 -0
  43. package/dist/core/domain/cipher/agent/agent-state.d.ts +77 -0
  44. package/dist/core/domain/cipher/agent/agent-state.js +59 -0
  45. package/dist/core/domain/cipher/agent/index.d.ts +7 -0
  46. package/dist/core/domain/cipher/agent/index.js +7 -0
  47. package/dist/core/domain/cipher/agent-events/index.d.ts +8 -0
  48. package/dist/core/domain/cipher/agent-events/index.js +7 -0
  49. package/dist/core/domain/cipher/agent-events/types.d.ts +419 -0
  50. package/dist/core/domain/cipher/agent-events/types.js +42 -0
  51. package/dist/core/domain/cipher/blob/types.d.ts +108 -0
  52. package/dist/core/domain/cipher/errors/blob-error.d.ts +36 -0
  53. package/dist/core/domain/cipher/errors/blob-error.js +68 -0
  54. package/dist/core/domain/cipher/errors/file-system-error.d.ts +211 -0
  55. package/dist/core/domain/cipher/errors/file-system-error.js +291 -0
  56. package/dist/core/domain/cipher/errors/llm-error.d.ts +120 -0
  57. package/dist/core/domain/cipher/errors/llm-error.js +161 -0
  58. package/dist/core/domain/cipher/errors/memory-error.d.ts +35 -0
  59. package/dist/core/domain/cipher/errors/memory-error.js +62 -0
  60. package/dist/core/domain/cipher/errors/process-error-code.d.ts +97 -0
  61. package/dist/core/domain/cipher/errors/process-error-code.js +98 -0
  62. package/dist/core/domain/cipher/errors/process-error.d.ts +135 -0
  63. package/dist/core/domain/cipher/errors/process-error.js +173 -0
  64. package/dist/core/domain/cipher/errors/session-error.d.ts +56 -0
  65. package/dist/core/domain/cipher/errors/session-error.js +74 -0
  66. package/dist/core/domain/cipher/errors/tool-error.d.ts +57 -0
  67. package/dist/core/domain/cipher/errors/tool-error.js +81 -0
  68. package/dist/core/domain/cipher/file-system/types.d.ts +203 -0
  69. package/dist/core/domain/cipher/memory/types.d.ts +102 -0
  70. package/dist/core/domain/cipher/memory/types.js +4 -0
  71. package/dist/core/domain/cipher/parsed-interaction.d.ts +47 -0
  72. package/dist/core/domain/cipher/parsed-interaction.js +25 -0
  73. package/dist/core/domain/cipher/process/types.d.ts +286 -0
  74. package/dist/core/domain/cipher/session/types.d.ts +54 -0
  75. package/dist/core/domain/cipher/storage/history-types.d.ts +38 -0
  76. package/dist/core/domain/cipher/system-prompt/types.d.ts +131 -0
  77. package/dist/core/domain/cipher/todos/index.d.ts +4 -0
  78. package/dist/core/domain/cipher/todos/index.js +4 -0
  79. package/dist/core/domain/cipher/todos/types.d.ts +57 -0
  80. package/dist/core/domain/cipher/todos/types.js +5 -0
  81. package/dist/core/domain/cipher/tools/constants.d.ts +28 -0
  82. package/dist/core/domain/cipher/tools/constants.js +24 -0
  83. package/dist/core/domain/cipher/tools/tool-error.d.ts +183 -0
  84. package/dist/core/domain/cipher/tools/tool-error.js +246 -0
  85. package/dist/core/domain/cipher/tools/types.d.ts +145 -0
  86. package/dist/core/domain/entities/brv-config.d.ts +42 -6
  87. package/dist/core/domain/entities/brv-config.js +115 -17
  88. package/dist/core/domain/entities/cogit-push-context.d.ts +38 -0
  89. package/dist/core/domain/entities/cogit-push-context.js +91 -0
  90. package/dist/core/domain/entities/cogit-push-response.d.ts +20 -0
  91. package/dist/core/domain/entities/cogit-push-response.js +31 -0
  92. package/dist/core/domain/entities/cogit-snapshot-author.d.ts +24 -0
  93. package/dist/core/domain/entities/cogit-snapshot-author.js +39 -0
  94. package/dist/core/domain/entities/cogit-snapshot-file.d.ts +34 -0
  95. package/dist/core/domain/entities/cogit-snapshot-file.js +59 -0
  96. package/dist/core/domain/entities/cogit-snapshot.d.ts +31 -0
  97. package/dist/core/domain/entities/cogit-snapshot.js +58 -0
  98. package/dist/core/domain/entities/context-tree-index.d.ts +26 -0
  99. package/dist/core/domain/entities/context-tree-index.js +27 -0
  100. package/dist/core/domain/entities/context-tree-snapshot.d.ts +56 -0
  101. package/dist/core/domain/entities/context-tree-snapshot.js +83 -0
  102. package/dist/core/domain/entities/event.d.ts +1 -1
  103. package/dist/core/domain/entities/event.js +3 -1
  104. package/dist/core/domain/entities/parser.d.ts +567 -0
  105. package/dist/core/domain/entities/parser.js +10 -0
  106. package/dist/core/domain/entities/playbook.d.ts +2 -23
  107. package/dist/core/domain/entities/playbook.js +2 -70
  108. package/dist/core/domain/errors/brv-config-version-error.d.ts +16 -0
  109. package/dist/core/domain/errors/brv-config-version-error.js +21 -0
  110. package/dist/core/domain/knowledge/directory-manager.d.ts +80 -0
  111. package/dist/core/domain/knowledge/directory-manager.js +145 -0
  112. package/dist/core/domain/knowledge/markdown-writer.d.ts +18 -0
  113. package/dist/core/domain/knowledge/markdown-writer.js +18 -0
  114. package/dist/core/domain/knowledge/relation-parser.d.ts +90 -0
  115. package/dist/core/domain/knowledge/relation-parser.js +131 -0
  116. package/dist/core/interfaces/cipher/cipher-services.d.ts +71 -0
  117. package/dist/core/interfaces/cipher/cipher-services.js +1 -0
  118. package/dist/core/interfaces/cipher/i-blob-storage.d.ts +78 -0
  119. package/dist/core/interfaces/cipher/i-blob-storage.js +1 -0
  120. package/dist/core/interfaces/cipher/i-chat-session.d.ts +62 -0
  121. package/dist/core/interfaces/cipher/i-chat-session.js +1 -0
  122. package/dist/core/interfaces/cipher/i-cipher-agent.d.ts +88 -0
  123. package/dist/core/interfaces/cipher/i-cipher-agent.js +1 -0
  124. package/dist/core/interfaces/cipher/i-coding-agent-log-parser.d.ts +20 -0
  125. package/dist/core/interfaces/cipher/i-coding-agent-log-parser.js +1 -0
  126. package/dist/core/interfaces/cipher/i-coding-agent-log-watcher.d.ts +31 -0
  127. package/dist/core/interfaces/cipher/i-coding-agent-log-watcher.js +1 -0
  128. package/dist/core/interfaces/cipher/i-content-generator.d.ts +120 -0
  129. package/dist/core/interfaces/cipher/i-content-generator.js +12 -0
  130. package/dist/core/interfaces/cipher/i-event-emitter.d.ts +76 -0
  131. package/dist/core/interfaces/cipher/i-event-emitter.js +1 -0
  132. package/dist/core/interfaces/cipher/i-file-system.d.ts +68 -0
  133. package/dist/core/interfaces/cipher/i-file-system.js +1 -0
  134. package/dist/core/interfaces/cipher/i-history-storage.d.ts +53 -0
  135. package/dist/core/interfaces/cipher/i-history-storage.js +1 -0
  136. package/dist/core/interfaces/cipher/i-llm-provider.d.ts +14 -0
  137. package/dist/core/interfaces/cipher/i-llm-provider.js +1 -0
  138. package/dist/core/interfaces/cipher/i-llm-service.d.ts +62 -0
  139. package/dist/core/interfaces/cipher/i-llm-service.js +1 -0
  140. package/dist/core/interfaces/cipher/i-logger.d.ts +78 -0
  141. package/dist/core/interfaces/cipher/i-logger.js +28 -0
  142. package/dist/core/interfaces/cipher/i-message-formatter.d.ts +44 -0
  143. package/dist/core/interfaces/cipher/i-message-formatter.js +1 -0
  144. package/dist/core/interfaces/cipher/i-policy-engine.d.ts +102 -0
  145. package/dist/core/interfaces/cipher/i-policy-engine.js +9 -0
  146. package/dist/core/interfaces/cipher/i-process-service.d.ts +65 -0
  147. package/dist/core/interfaces/cipher/i-process-service.js +1 -0
  148. package/dist/core/interfaces/cipher/i-system-prompt-contributor.d.ts +25 -0
  149. package/dist/core/interfaces/cipher/i-system-prompt-contributor.js +1 -0
  150. package/dist/core/interfaces/cipher/i-tokenizer.d.ts +15 -0
  151. package/dist/core/interfaces/cipher/i-tokenizer.js +1 -0
  152. package/dist/core/interfaces/cipher/i-tool-provider.d.ts +64 -0
  153. package/dist/core/interfaces/cipher/i-tool-provider.js +1 -0
  154. package/dist/core/interfaces/cipher/i-tool-scheduler.d.ts +103 -0
  155. package/dist/core/interfaces/cipher/i-tool-scheduler.js +11 -0
  156. package/dist/core/interfaces/cipher/llm-types.d.ts +46 -0
  157. package/dist/core/interfaces/cipher/llm-types.js +5 -0
  158. package/dist/core/interfaces/cipher/message-types.d.ts +118 -0
  159. package/dist/core/interfaces/cipher/message-types.js +5 -0
  160. package/dist/core/interfaces/cipher/tokenizer-types.d.ts +11 -0
  161. package/dist/core/interfaces/cipher/tokenizer-types.js +14 -0
  162. package/dist/core/interfaces/i-cogit-pull-service.d.ts +24 -0
  163. package/dist/core/interfaces/i-cogit-pull-service.js +1 -0
  164. package/dist/core/interfaces/i-cogit-push-service.d.ts +27 -0
  165. package/dist/core/interfaces/i-cogit-push-service.js +1 -0
  166. package/dist/core/interfaces/i-context-file-reader.d.ts +32 -0
  167. package/dist/core/interfaces/i-context-file-reader.js +1 -0
  168. package/dist/core/interfaces/i-context-tree-service.d.ts +21 -0
  169. package/dist/core/interfaces/i-context-tree-service.js +1 -0
  170. package/dist/core/interfaces/i-context-tree-snapshot-service.d.ts +36 -0
  171. package/dist/core/interfaces/i-context-tree-snapshot-service.js +1 -0
  172. package/dist/core/interfaces/i-context-tree-writer-service.d.ts +32 -0
  173. package/dist/core/interfaces/i-context-tree-writer-service.js +1 -0
  174. package/dist/core/interfaces/i-file-watcher-service.d.ts +41 -0
  175. package/dist/core/interfaces/i-file-watcher-service.js +1 -0
  176. package/dist/core/interfaces/parser/i-clean-parser-service.d.ts +18 -0
  177. package/dist/core/interfaces/parser/i-clean-parser-service.js +1 -0
  178. package/dist/core/interfaces/parser/i-raw-parser-service.d.ts +17 -0
  179. package/dist/core/interfaces/parser/i-raw-parser-service.js +1 -0
  180. package/dist/core/interfaces/parser/i-session-normalizer.d.ts +56 -0
  181. package/dist/core/interfaces/parser/i-session-normalizer.js +1 -0
  182. package/dist/hooks/command_not_found/handle-invalid-commands.d.ts +7 -0
  183. package/dist/hooks/command_not_found/handle-invalid-commands.js +32 -0
  184. package/dist/hooks/error/clean-errors.d.ts +7 -0
  185. package/dist/hooks/error/clean-errors.js +50 -0
  186. package/dist/hooks/init/welcome.js +72 -1
  187. package/dist/hooks/prerun/validate-brv-config-version.d.ts +28 -0
  188. package/dist/hooks/prerun/validate-brv-config-version.js +43 -0
  189. package/dist/infra/cipher/agent-service-factory.d.ts +86 -0
  190. package/dist/infra/cipher/agent-service-factory.js +212 -0
  191. package/dist/infra/cipher/blob/blob-storage-factory.d.ts +13 -0
  192. package/dist/infra/cipher/blob/blob-storage-factory.js +14 -0
  193. package/dist/infra/cipher/blob/index.d.ts +10 -0
  194. package/dist/infra/cipher/blob/index.js +12 -0
  195. package/dist/infra/cipher/blob/migrations.d.ts +63 -0
  196. package/dist/infra/cipher/blob/migrations.js +148 -0
  197. package/dist/infra/cipher/blob/sqlite-blob-storage.d.ts +82 -0
  198. package/dist/infra/cipher/blob/sqlite-blob-storage.js +307 -0
  199. package/dist/infra/cipher/cipher-agent-state-manager.d.ts +63 -0
  200. package/dist/infra/cipher/cipher-agent-state-manager.js +108 -0
  201. package/dist/infra/cipher/cipher-agent.d.ts +182 -0
  202. package/dist/infra/cipher/cipher-agent.js +317 -0
  203. package/dist/infra/cipher/command-parser.d.ts +23 -0
  204. package/dist/infra/cipher/command-parser.js +85 -0
  205. package/dist/infra/cipher/display/todo-display.d.ts +23 -0
  206. package/dist/infra/cipher/display/todo-display.js +129 -0
  207. package/dist/infra/cipher/events/event-emitter.d.ts +137 -0
  208. package/dist/infra/cipher/events/event-emitter.js +158 -0
  209. package/dist/infra/cipher/exit-codes.d.ts +44 -0
  210. package/dist/infra/cipher/exit-codes.js +58 -0
  211. package/dist/infra/cipher/file-system/file-system-service.d.ts +105 -0
  212. package/dist/infra/cipher/file-system/file-system-service.js +641 -0
  213. package/dist/infra/cipher/file-system/gitignore-filter.d.ts +77 -0
  214. package/dist/infra/cipher/file-system/gitignore-filter.js +120 -0
  215. package/dist/infra/cipher/file-system/glob-utils.d.ts +60 -0
  216. package/dist/infra/cipher/file-system/glob-utils.js +120 -0
  217. package/dist/infra/cipher/file-system/path-validator.d.ts +69 -0
  218. package/dist/infra/cipher/file-system/path-validator.js +184 -0
  219. package/dist/infra/cipher/grpc/internal-llm-grpc-service.d.ts +149 -0
  220. package/dist/infra/cipher/grpc/internal-llm-grpc-service.js +364 -0
  221. package/dist/infra/cipher/grpc/internal-llm-grpc.proto +94 -0
  222. package/dist/infra/cipher/interactive-commands.d.ts +16 -0
  223. package/dist/infra/cipher/interactive-commands.js +198 -0
  224. package/dist/infra/cipher/interactive-loop.d.ts +24 -0
  225. package/dist/infra/cipher/interactive-loop.js +352 -0
  226. package/dist/infra/cipher/llm/context/async-mutex.d.ts +59 -0
  227. package/dist/infra/cipher/llm/context/async-mutex.js +92 -0
  228. package/dist/infra/cipher/llm/context/compression/index.d.ts +6 -0
  229. package/dist/infra/cipher/llm/context/compression/index.js +5 -0
  230. package/dist/infra/cipher/llm/context/compression/middle-removal.d.ts +40 -0
  231. package/dist/infra/cipher/llm/context/compression/middle-removal.js +76 -0
  232. package/dist/infra/cipher/llm/context/compression/oldest-removal.d.ts +38 -0
  233. package/dist/infra/cipher/llm/context/compression/oldest-removal.js +53 -0
  234. package/dist/infra/cipher/llm/context/compression/types.d.ts +36 -0
  235. package/dist/infra/cipher/llm/context/compression/types.js +1 -0
  236. package/dist/infra/cipher/llm/context/context-manager.d.ts +234 -0
  237. package/dist/infra/cipher/llm/context/context-manager.js +419 -0
  238. package/dist/infra/cipher/llm/context/index.d.ts +2 -0
  239. package/dist/infra/cipher/llm/context/index.js +2 -0
  240. package/dist/infra/cipher/llm/context/loop-detector.d.ts +125 -0
  241. package/dist/infra/cipher/llm/context/loop-detector.js +194 -0
  242. package/dist/infra/cipher/llm/context/utils.d.ts +17 -0
  243. package/dist/infra/cipher/llm/context/utils.js +89 -0
  244. package/dist/infra/cipher/llm/formatters/claude-formatter.d.ts +54 -0
  245. package/dist/infra/cipher/llm/formatters/claude-formatter.js +182 -0
  246. package/dist/infra/cipher/llm/formatters/gemini-formatter.d.ts +69 -0
  247. package/dist/infra/cipher/llm/formatters/gemini-formatter.js +253 -0
  248. package/dist/infra/cipher/llm/formatters/openrouter-formatter.d.ts +47 -0
  249. package/dist/infra/cipher/llm/formatters/openrouter-formatter.js +238 -0
  250. package/dist/infra/cipher/llm/generators/byterover-content-generator.d.ts +92 -0
  251. package/dist/infra/cipher/llm/generators/byterover-content-generator.js +211 -0
  252. package/dist/infra/cipher/llm/generators/index.d.ts +13 -0
  253. package/dist/infra/cipher/llm/generators/index.js +13 -0
  254. package/dist/infra/cipher/llm/generators/logging-content-generator.d.ts +104 -0
  255. package/dist/infra/cipher/llm/generators/logging-content-generator.js +182 -0
  256. package/dist/infra/cipher/llm/generators/openrouter-content-generator.d.ts +93 -0
  257. package/dist/infra/cipher/llm/generators/openrouter-content-generator.js +254 -0
  258. package/dist/infra/cipher/llm/generators/retryable-content-generator.d.ts +90 -0
  259. package/dist/infra/cipher/llm/generators/retryable-content-generator.js +157 -0
  260. package/dist/infra/cipher/llm/index.d.ts +9 -0
  261. package/dist/infra/cipher/llm/index.js +13 -0
  262. package/dist/infra/cipher/llm/internal-llm-service.d.ts +308 -0
  263. package/dist/infra/cipher/llm/internal-llm-service.js +724 -0
  264. package/dist/infra/cipher/llm/openrouter-llm-service.d.ts +183 -0
  265. package/dist/infra/cipher/llm/openrouter-llm-service.js +386 -0
  266. package/dist/infra/cipher/llm/response-validator.d.ts +89 -0
  267. package/dist/infra/cipher/llm/response-validator.js +157 -0
  268. package/dist/infra/cipher/llm/retry/index.d.ts +10 -0
  269. package/dist/infra/cipher/llm/retry/index.js +10 -0
  270. package/dist/infra/cipher/llm/retry/retry-policy.d.ts +74 -0
  271. package/dist/infra/cipher/llm/retry/retry-policy.js +146 -0
  272. package/dist/infra/cipher/llm/retry/retry-with-backoff.d.ts +113 -0
  273. package/dist/infra/cipher/llm/retry/retry-with-backoff.js +247 -0
  274. package/dist/infra/cipher/llm/thought-parser.d.ts +145 -0
  275. package/dist/infra/cipher/llm/thought-parser.js +190 -0
  276. package/dist/infra/cipher/llm/tokenizers/claude-tokenizer.d.ts +47 -0
  277. package/dist/infra/cipher/llm/tokenizers/claude-tokenizer.js +55 -0
  278. package/dist/infra/cipher/llm/tokenizers/default-tokenizer.d.ts +31 -0
  279. package/dist/infra/cipher/llm/tokenizers/default-tokenizer.js +38 -0
  280. package/dist/infra/cipher/llm/tokenizers/gemini-tokenizer.d.ts +37 -0
  281. package/dist/infra/cipher/llm/tokenizers/gemini-tokenizer.js +45 -0
  282. package/dist/infra/cipher/llm/tokenizers/openrouter-tokenizer.d.ts +29 -0
  283. package/dist/infra/cipher/llm/tokenizers/openrouter-tokenizer.js +37 -0
  284. package/dist/infra/cipher/llm/tool-output-processor.d.ts +117 -0
  285. package/dist/infra/cipher/llm/tool-output-processor.js +153 -0
  286. package/dist/infra/cipher/logger/console-logger.d.ts +42 -0
  287. package/dist/infra/cipher/logger/console-logger.js +63 -0
  288. package/dist/infra/cipher/logger/event-based-logger.d.ts +54 -0
  289. package/dist/infra/cipher/logger/event-based-logger.js +92 -0
  290. package/dist/infra/cipher/memory/index.d.ts +6 -0
  291. package/dist/infra/cipher/memory/index.js +7 -0
  292. package/dist/infra/cipher/memory/memory-manager.d.ts +136 -0
  293. package/dist/infra/cipher/memory/memory-manager.js +523 -0
  294. package/dist/infra/cipher/parsers/coding-agent-log-parser.d.ts +24 -0
  295. package/dist/infra/cipher/parsers/coding-agent-log-parser.js +51 -0
  296. package/dist/infra/cipher/process/command-validator.d.ts +59 -0
  297. package/dist/infra/cipher/process/command-validator.js +266 -0
  298. package/dist/infra/cipher/process/index.d.ts +8 -0
  299. package/dist/infra/cipher/process/index.js +8 -0
  300. package/dist/infra/cipher/process/process-service.d.ts +95 -0
  301. package/dist/infra/cipher/process/process-service.js +439 -0
  302. package/dist/infra/cipher/session/chat-session.d.ts +80 -0
  303. package/dist/infra/cipher/session/chat-session.js +165 -0
  304. package/dist/infra/cipher/session/index.d.ts +6 -0
  305. package/dist/infra/cipher/session/index.js +5 -0
  306. package/dist/infra/cipher/session/session-event-forwarder.d.ts +37 -0
  307. package/dist/infra/cipher/session/session-event-forwarder.js +83 -0
  308. package/dist/infra/cipher/session/session-manager.d.ts +109 -0
  309. package/dist/infra/cipher/session/session-manager.js +172 -0
  310. package/dist/infra/cipher/storage/blob-history-storage.d.ts +76 -0
  311. package/dist/infra/cipher/storage/blob-history-storage.js +178 -0
  312. package/dist/infra/cipher/system-prompt/simple-prompt-factory.d.ts +105 -0
  313. package/dist/infra/cipher/system-prompt/simple-prompt-factory.js +290 -0
  314. package/dist/infra/cipher/tools/core-tool-scheduler.d.ts +99 -0
  315. package/dist/infra/cipher/tools/core-tool-scheduler.js +161 -0
  316. package/dist/infra/cipher/tools/default-policy-rules.d.ts +26 -0
  317. package/dist/infra/cipher/tools/default-policy-rules.js +125 -0
  318. package/dist/infra/cipher/tools/implementations/bash-exec-tool.d.ts +12 -0
  319. package/dist/infra/cipher/tools/implementations/bash-exec-tool.js +93 -0
  320. package/dist/infra/cipher/tools/implementations/bash-output-tool.d.ts +12 -0
  321. package/dist/infra/cipher/tools/implementations/bash-output-tool.js +47 -0
  322. package/dist/infra/cipher/tools/implementations/create-knowledge-topic-tool.d.ts +11 -0
  323. package/dist/infra/cipher/tools/implementations/create-knowledge-topic-tool.js +142 -0
  324. package/dist/infra/cipher/tools/implementations/delete-memory-tool.d.ts +12 -0
  325. package/dist/infra/cipher/tools/implementations/delete-memory-tool.js +37 -0
  326. package/dist/infra/cipher/tools/implementations/detect-domains-tool.d.ts +7 -0
  327. package/dist/infra/cipher/tools/implementations/detect-domains-tool.js +73 -0
  328. package/dist/infra/cipher/tools/implementations/edit-file-tool.d.ts +13 -0
  329. package/dist/infra/cipher/tools/implementations/edit-file-tool.js +50 -0
  330. package/dist/infra/cipher/tools/implementations/edit-memory-tool.d.ts +13 -0
  331. package/dist/infra/cipher/tools/implementations/edit-memory-tool.js +53 -0
  332. package/dist/infra/cipher/tools/implementations/find-knowledge-topics-tool.d.ts +7 -0
  333. package/dist/infra/cipher/tools/implementations/find-knowledge-topics-tool.js +421 -0
  334. package/dist/infra/cipher/tools/implementations/glob-files-tool.d.ts +18 -0
  335. package/dist/infra/cipher/tools/implementations/glob-files-tool.js +70 -0
  336. package/dist/infra/cipher/tools/implementations/grep-content-tool.d.ts +12 -0
  337. package/dist/infra/cipher/tools/implementations/grep-content-tool.js +77 -0
  338. package/dist/infra/cipher/tools/implementations/kill-process-tool.d.ts +12 -0
  339. package/dist/infra/cipher/tools/implementations/kill-process-tool.js +55 -0
  340. package/dist/infra/cipher/tools/implementations/list-memories-tool.d.ts +12 -0
  341. package/dist/infra/cipher/tools/implementations/list-memories-tool.js +63 -0
  342. package/dist/infra/cipher/tools/implementations/read-file-tool.d.ts +12 -0
  343. package/dist/infra/cipher/tools/implementations/read-file-tool.js +54 -0
  344. package/dist/infra/cipher/tools/implementations/read-memory-tool.d.ts +12 -0
  345. package/dist/infra/cipher/tools/implementations/read-memory-tool.js +39 -0
  346. package/dist/infra/cipher/tools/implementations/search-history-tool.d.ts +10 -0
  347. package/dist/infra/cipher/tools/implementations/search-history-tool.js +36 -0
  348. package/dist/infra/cipher/tools/implementations/write-file-tool.d.ts +12 -0
  349. package/dist/infra/cipher/tools/implementations/write-file-tool.js +52 -0
  350. package/dist/infra/cipher/tools/implementations/write-memory-tool.d.ts +13 -0
  351. package/dist/infra/cipher/tools/implementations/write-memory-tool.js +52 -0
  352. package/dist/infra/cipher/tools/implementations/write-todos-tool.d.ts +10 -0
  353. package/dist/infra/cipher/tools/implementations/write-todos-tool.js +165 -0
  354. package/dist/infra/cipher/tools/index.d.ts +18 -0
  355. package/dist/infra/cipher/tools/index.js +19 -0
  356. package/dist/infra/cipher/tools/policy-engine.d.ts +80 -0
  357. package/dist/infra/cipher/tools/policy-engine.js +110 -0
  358. package/dist/infra/cipher/tools/tool-invocation-queue.d.ts +191 -0
  359. package/dist/infra/cipher/tools/tool-invocation-queue.js +254 -0
  360. package/dist/infra/cipher/tools/tool-invocation.d.ts +216 -0
  361. package/dist/infra/cipher/tools/tool-invocation.js +294 -0
  362. package/dist/infra/cipher/tools/tool-manager.d.ts +135 -0
  363. package/dist/infra/cipher/tools/tool-manager.js +209 -0
  364. package/dist/infra/cipher/tools/tool-markers.d.ts +48 -0
  365. package/dist/infra/cipher/tools/tool-markers.js +49 -0
  366. package/dist/infra/cipher/tools/tool-provider.d.ts +77 -0
  367. package/dist/infra/cipher/tools/tool-provider.js +196 -0
  368. package/dist/infra/cipher/tools/tool-registry.d.ts +52 -0
  369. package/dist/infra/cipher/tools/tool-registry.js +144 -0
  370. package/dist/infra/cipher/tools/utils/schema-converter.d.ts +10 -0
  371. package/dist/infra/cipher/tools/utils/schema-converter.js +29 -0
  372. package/dist/infra/cipher/validation/workspace-validator.d.ts +19 -0
  373. package/dist/infra/cipher/validation/workspace-validator.js +37 -0
  374. package/dist/infra/cipher/watcher/coding-agent-log-watcher.d.ts +14 -0
  375. package/dist/infra/cipher/watcher/coding-agent-log-watcher.js +55 -0
  376. package/dist/infra/cogit/context-tree-to-push-context-mapper.d.ts +21 -0
  377. package/dist/infra/cogit/context-tree-to-push-context-mapper.js +32 -0
  378. package/dist/infra/cogit/http-cogit-pull-service.d.ts +15 -0
  379. package/dist/infra/cogit/http-cogit-pull-service.js +30 -0
  380. package/dist/infra/cogit/http-cogit-push-service.d.ts +17 -0
  381. package/dist/infra/cogit/http-cogit-push-service.js +104 -0
  382. package/dist/infra/config/file-config-store.js +9 -3
  383. package/dist/infra/context-tree/file-context-file-reader.d.ts +14 -0
  384. package/dist/infra/context-tree/file-context-file-reader.js +46 -0
  385. package/dist/infra/context-tree/file-context-tree-service.d.ts +14 -0
  386. package/dist/infra/context-tree/file-context-tree-service.js +46 -0
  387. package/dist/infra/context-tree/file-context-tree-snapshot-service.d.ts +34 -0
  388. package/dist/infra/context-tree/file-context-tree-snapshot-service.js +117 -0
  389. package/dist/infra/context-tree/file-context-tree-writer-service.d.ts +22 -0
  390. package/dist/infra/context-tree/file-context-tree-writer-service.js +61 -0
  391. package/dist/infra/memory/http-memory-retrieval-service.js +2 -1
  392. package/dist/infra/memory/http-memory-storage-service.js +4 -3
  393. package/dist/infra/parsers/clean/clean-claude-service.d.ts +111 -0
  394. package/dist/infra/parsers/clean/clean-claude-service.js +271 -0
  395. package/dist/infra/parsers/clean/clean-codex-service.d.ts +231 -0
  396. package/dist/infra/parsers/clean/clean-codex-service.js +534 -0
  397. package/dist/infra/parsers/clean/clean-copilot-service.d.ts +255 -0
  398. package/dist/infra/parsers/clean/clean-copilot-service.js +729 -0
  399. package/dist/infra/parsers/clean/clean-cursor-service.d.ts +161 -0
  400. package/dist/infra/parsers/clean/clean-cursor-service.js +432 -0
  401. package/dist/infra/parsers/clean/clean-parser-service-factory.d.ts +54 -0
  402. package/dist/infra/parsers/clean/clean-parser-service-factory.js +80 -0
  403. package/dist/infra/parsers/clean/shared.d.ts +84 -0
  404. package/dist/infra/parsers/clean/shared.js +273 -0
  405. package/dist/infra/parsers/raw/raw-claude-service.d.ts +195 -0
  406. package/dist/infra/parsers/raw/raw-claude-service.js +548 -0
  407. package/dist/infra/parsers/raw/raw-codex-service.d.ts +313 -0
  408. package/dist/infra/parsers/raw/raw-codex-service.js +782 -0
  409. package/dist/infra/parsers/raw/raw-copilot-service.d.ts +196 -0
  410. package/dist/infra/parsers/raw/raw-copilot-service.js +558 -0
  411. package/dist/infra/parsers/raw/raw-cursor-service.d.ts +316 -0
  412. package/dist/infra/parsers/raw/raw-cursor-service.js +818 -0
  413. package/dist/infra/parsers/raw/raw-parser-service-factory.d.ts +54 -0
  414. package/dist/infra/parsers/raw/raw-parser-service-factory.js +81 -0
  415. package/dist/infra/space/http-space-service.js +2 -1
  416. package/dist/infra/team/http-team-service.js +2 -1
  417. package/dist/infra/user/http-user-service.js +2 -1
  418. package/dist/infra/watcher/file-watcher-service.d.ts +10 -0
  419. package/dist/infra/watcher/file-watcher-service.js +81 -0
  420. package/dist/infra/workspace/workspace-detector-service.d.ts +60 -0
  421. package/dist/infra/workspace/workspace-detector-service.js +165 -0
  422. package/dist/resources/prompts/curate-context-tree-curation.yml +48 -0
  423. package/dist/resources/prompts/modes/autonomous.yml +9 -0
  424. package/dist/resources/prompts/query-context-tree-retrieval.yml +49 -0
  425. package/dist/resources/prompts/reflection.yml +27 -0
  426. package/dist/resources/prompts/system-prompt.yml +82 -0
  427. package/dist/resources/prompts/tool-outputs.yml +30 -0
  428. package/dist/templates/README.md +6 -7
  429. package/dist/templates/sections/command-reference.md +40 -111
  430. package/dist/templates/sections/workflow.md +3 -30
  431. package/dist/utils/emoji-helpers.d.ts +38 -0
  432. package/dist/utils/emoji-helpers.js +42 -0
  433. package/dist/utils/error-handler.d.ts +51 -0
  434. package/dist/utils/error-handler.js +169 -0
  435. package/dist/utils/error-helpers.d.ts +30 -0
  436. package/dist/utils/error-helpers.js +47 -0
  437. package/dist/utils/file-helpers.d.ts +15 -0
  438. package/dist/utils/file-helpers.js +44 -0
  439. package/dist/utils/oclif-error-helpers.d.ts +40 -0
  440. package/dist/utils/oclif-error-helpers.js +46 -0
  441. package/dist/utils/tool-display-formatter.d.ts +53 -0
  442. package/dist/utils/tool-display-formatter.js +257 -0
  443. package/oclif.manifest.json +381 -141
  444. package/package.json +27 -6
  445. package/dist/commands/add.d.ts +0 -49
  446. package/dist/commands/add.js +0 -192
  447. package/dist/commands/complete.d.ts +0 -108
  448. package/dist/commands/complete.js +0 -340
  449. package/dist/commands/retrieve.d.ts +0 -26
  450. package/dist/commands/retrieve.js +0 -101
  451. package/dist/core/domain/entities/curator-output.d.ts +0 -14
  452. package/dist/core/domain/entities/curator-output.js +0 -23
  453. package/dist/core/domain/entities/delta-batch.d.ts +0 -30
  454. package/dist/core/domain/entities/delta-batch.js +0 -52
  455. package/dist/core/domain/entities/delta-operation.d.ts +0 -31
  456. package/dist/core/domain/entities/delta-operation.js +0 -50
  457. package/dist/core/domain/entities/executor-output.d.ts +0 -27
  458. package/dist/core/domain/entities/executor-output.js +0 -33
  459. package/dist/core/domain/entities/reflector-output.d.ts +0 -38
  460. package/dist/core/domain/entities/reflector-output.js +0 -44
  461. package/dist/core/interfaces/i-ace-prompt-builder.d.ts +0 -48
  462. package/dist/core/interfaces/i-bullet-content-store.d.ts +0 -36
  463. package/dist/core/interfaces/i-delta-store.d.ts +0 -15
  464. package/dist/core/interfaces/i-executor-output-store.d.ts +0 -14
  465. package/dist/core/interfaces/i-playbook-service.d.ts +0 -69
  466. package/dist/core/interfaces/i-playbook-store.d.ts +0 -38
  467. package/dist/core/interfaces/i-reflection-store.d.ts +0 -21
  468. package/dist/infra/ace/ace-file-utils.d.ts +0 -46
  469. package/dist/infra/ace/ace-file-utils.js +0 -83
  470. package/dist/infra/ace/ace-prompt-templates.d.ts +0 -13
  471. package/dist/infra/ace/ace-prompt-templates.js +0 -177
  472. package/dist/infra/ace/file-bullet-content-store.d.ts +0 -27
  473. package/dist/infra/ace/file-bullet-content-store.js +0 -89
  474. package/dist/infra/ace/file-delta-store.d.ts +0 -9
  475. package/dist/infra/ace/file-delta-store.js +0 -26
  476. package/dist/infra/ace/file-executor-output-store.d.ts +0 -9
  477. package/dist/infra/ace/file-executor-output-store.js +0 -26
  478. package/dist/infra/ace/file-playbook-store.d.ts +0 -29
  479. package/dist/infra/ace/file-playbook-store.js +0 -107
  480. package/dist/infra/ace/file-reflection-store.d.ts +0 -10
  481. package/dist/infra/ace/file-reflection-store.js +0 -55
  482. package/dist/infra/playbook/file-playbook-service.d.ts +0 -42
  483. package/dist/infra/playbook/file-playbook-service.js +0 -132
  484. /package/dist/core/{interfaces/i-ace-prompt-builder.js → domain/cipher/blob/types.js} +0 -0
  485. /package/dist/core/{interfaces/i-bullet-content-store.js → domain/cipher/file-system/types.js} +0 -0
  486. /package/dist/core/{interfaces/i-delta-store.js → domain/cipher/process/types.js} +0 -0
  487. /package/dist/core/{interfaces/i-executor-output-store.js → domain/cipher/session/types.js} +0 -0
  488. /package/dist/core/{interfaces/i-playbook-service.js → domain/cipher/storage/history-types.js} +0 -0
  489. /package/dist/core/{interfaces/i-playbook-store.js → domain/cipher/system-prompt/types.js} +0 -0
  490. /package/dist/core/{interfaces/i-reflection-store.js → domain/cipher/tools/types.js} +0 -0
@@ -0,0 +1,211 @@
1
+ /**
2
+ * Base error class for file system operations.
3
+ * All file system-specific errors extend this base class.
4
+ */
5
+ export declare class FileSystemError extends Error {
6
+ readonly code: string;
7
+ readonly details?: Record<string, unknown>;
8
+ /**
9
+ * Creates a new file system error
10
+ * @param message - Error message describing what went wrong
11
+ * @param code - Error code for categorization
12
+ * @param details - Additional error context
13
+ */
14
+ constructor(message: string, code: string, details?: Record<string, unknown>);
15
+ }
16
+ /**
17
+ * Error thrown when a file is not found.
18
+ */
19
+ export declare class FileNotFoundError extends FileSystemError {
20
+ /**
21
+ * Creates a new file not found error
22
+ * @param path - Path to the file that was not found
23
+ */
24
+ constructor(path: string);
25
+ }
26
+ /**
27
+ * Error thrown when a directory is not found.
28
+ */
29
+ export declare class DirectoryNotFoundError extends FileSystemError {
30
+ /**
31
+ * Creates a new directory not found error
32
+ * @param path - Path to the directory that was not found
33
+ */
34
+ constructor(path: string);
35
+ }
36
+ /**
37
+ * Error thrown when a path is not in the allowed paths list.
38
+ */
39
+ export declare class PathNotAllowedError extends FileSystemError {
40
+ /**
41
+ * Creates a new path not allowed error
42
+ * @param path - Path that was not allowed
43
+ * @param allowedPaths - List of allowed paths
44
+ */
45
+ constructor(path: string, allowedPaths: string[]);
46
+ }
47
+ /**
48
+ * Error thrown when a path is in the blocked paths list.
49
+ */
50
+ export declare class PathBlockedError extends FileSystemError {
51
+ /**
52
+ * Creates a new path blocked error
53
+ * @param path - Path that was blocked
54
+ * @param reason - Reason why the path was blocked
55
+ */
56
+ constructor(path: string, reason: string);
57
+ }
58
+ /**
59
+ * Error thrown when path traversal is detected.
60
+ */
61
+ export declare class PathTraversalError extends FileSystemError {
62
+ /**
63
+ * Creates a new path traversal error
64
+ * @param path - Path that contained traversal attempt
65
+ */
66
+ constructor(path: string);
67
+ }
68
+ /**
69
+ * Error thrown when a file has a blocked extension.
70
+ */
71
+ export declare class InvalidExtensionError extends FileSystemError {
72
+ /**
73
+ * Creates a new invalid extension error
74
+ * @param path - Path with invalid extension
75
+ * @param extension - The blocked extension
76
+ */
77
+ constructor(path: string, extension: string);
78
+ }
79
+ /**
80
+ * Error thrown when a file exceeds the maximum size limit.
81
+ */
82
+ export declare class FileTooLargeError extends FileSystemError {
83
+ /**
84
+ * Creates a new file too large error
85
+ * @param path - Path to the file that is too large
86
+ * @param size - Actual file size in bytes
87
+ * @param maxSize - Maximum allowed size in bytes
88
+ */
89
+ constructor(path: string, size: number, maxSize: number);
90
+ }
91
+ /**
92
+ * Error thrown when a read operation fails.
93
+ */
94
+ export declare class ReadOperationError extends FileSystemError {
95
+ /**
96
+ * Creates a new read operation error
97
+ * @param path - Path to the file that failed to read
98
+ * @param originalError - The original error message
99
+ */
100
+ constructor(path: string, originalError: string);
101
+ }
102
+ /**
103
+ * Error thrown when a write operation fails.
104
+ */
105
+ export declare class WriteOperationError extends FileSystemError {
106
+ /**
107
+ * Creates a new write operation error
108
+ * @param path - Path to the file that failed to write
109
+ * @param originalError - The original error message
110
+ */
111
+ constructor(path: string, originalError: string);
112
+ }
113
+ /**
114
+ * Error thrown when an edit operation fails.
115
+ */
116
+ export declare class EditOperationError extends FileSystemError {
117
+ /**
118
+ * Creates a new edit operation error
119
+ * @param path - Path to the file that failed to edit
120
+ * @param originalError - The original error message
121
+ */
122
+ constructor(path: string, originalError: string);
123
+ }
124
+ /**
125
+ * Error thrown when a string to replace is not found in the file.
126
+ */
127
+ export declare class StringNotFoundError extends FileSystemError {
128
+ /**
129
+ * Creates a new string not found error
130
+ * @param path - Path to the file
131
+ * @param searchString - The string that was not found
132
+ */
133
+ constructor(path: string, searchString: string);
134
+ }
135
+ /**
136
+ * Error thrown when a string to replace appears multiple times but replaceAll is false.
137
+ */
138
+ export declare class StringNotUniqueError extends FileSystemError {
139
+ /**
140
+ * Creates a new string not unique error
141
+ * @param path - Path to the file
142
+ * @param searchString - The non-unique string
143
+ * @param occurrences - Number of times the string appears
144
+ */
145
+ constructor(path: string, searchString: string, occurrences: number);
146
+ }
147
+ /**
148
+ * Error thrown when a glob pattern is invalid.
149
+ */
150
+ export declare class InvalidPatternError extends FileSystemError {
151
+ /**
152
+ * Creates a new invalid pattern error
153
+ * @param pattern - The invalid pattern
154
+ * @param originalError - The original error message
155
+ */
156
+ constructor(pattern: string, originalError: string);
157
+ }
158
+ /**
159
+ * Error thrown when glob operation fails.
160
+ */
161
+ export declare class GlobOperationError extends FileSystemError {
162
+ /**
163
+ * Creates a new glob operation error
164
+ * @param pattern - The glob pattern that failed
165
+ * @param originalError - The original error message
166
+ */
167
+ constructor(pattern: string, originalError: string);
168
+ }
169
+ /**
170
+ * Error thrown when search operation fails.
171
+ */
172
+ export declare class SearchOperationError extends FileSystemError {
173
+ /**
174
+ * Creates a new search operation error
175
+ * @param pattern - The search pattern that failed
176
+ * @param originalError - The original error message
177
+ */
178
+ constructor(pattern: string, originalError: string);
179
+ }
180
+ /**
181
+ * Error thrown when the service is not initialized.
182
+ */
183
+ export declare class ServiceNotInitializedError extends FileSystemError {
184
+ /**
185
+ * Creates a new service not initialized error
186
+ */
187
+ constructor();
188
+ }
189
+ /**
190
+ * Error thrown when the path is empty or invalid.
191
+ */
192
+ export declare class InvalidPathError extends FileSystemError {
193
+ /**
194
+ * Creates a new invalid path error
195
+ * @param path - The invalid path
196
+ * @param reason - Reason why the path is invalid
197
+ */
198
+ constructor(path: string, reason: string);
199
+ }
200
+ /**
201
+ * Error thrown when too many results are found.
202
+ */
203
+ export declare class TooManyResultsError extends FileSystemError {
204
+ /**
205
+ * Creates a new too many results error
206
+ * @param operation - The operation that produced too many results
207
+ * @param count - Number of results found
208
+ * @param maxResults - Maximum allowed results
209
+ */
210
+ constructor(operation: string, count: number, maxResults: number);
211
+ }
@@ -0,0 +1,291 @@
1
+ /**
2
+ * Base error class for file system operations.
3
+ * All file system-specific errors extend this base class.
4
+ */
5
+ export class FileSystemError extends Error {
6
+ code;
7
+ details;
8
+ /**
9
+ * Creates a new file system error
10
+ * @param message - Error message describing what went wrong
11
+ * @param code - Error code for categorization
12
+ * @param details - Additional error context
13
+ */
14
+ constructor(message, code, details) {
15
+ super(message);
16
+ this.name = 'FileSystemError';
17
+ this.code = code;
18
+ this.details = details;
19
+ }
20
+ }
21
+ /**
22
+ * Error thrown when a file is not found.
23
+ */
24
+ export class FileNotFoundError extends FileSystemError {
25
+ /**
26
+ * Creates a new file not found error
27
+ * @param path - Path to the file that was not found
28
+ */
29
+ constructor(path) {
30
+ super(`File not found: ${path}`, 'FILE_NOT_FOUND', { path });
31
+ this.name = 'FileNotFoundError';
32
+ }
33
+ }
34
+ /**
35
+ * Error thrown when a directory is not found.
36
+ */
37
+ export class DirectoryNotFoundError extends FileSystemError {
38
+ /**
39
+ * Creates a new directory not found error
40
+ * @param path - Path to the directory that was not found
41
+ */
42
+ constructor(path) {
43
+ super(`Directory not found: ${path}`, 'DIRECTORY_NOT_FOUND', { path });
44
+ this.name = 'DirectoryNotFoundError';
45
+ }
46
+ }
47
+ /**
48
+ * Error thrown when a path is not in the allowed paths list.
49
+ */
50
+ export class PathNotAllowedError extends FileSystemError {
51
+ /**
52
+ * Creates a new path not allowed error
53
+ * @param path - Path that was not allowed
54
+ * @param allowedPaths - List of allowed paths
55
+ */
56
+ constructor(path, allowedPaths) {
57
+ super(`Path not allowed: ${path}. Allowed paths: ${allowedPaths.join(', ')}`, 'PATH_NOT_ALLOWED', { allowedPaths, path });
58
+ this.name = 'PathNotAllowedError';
59
+ }
60
+ }
61
+ /**
62
+ * Error thrown when a path is in the blocked paths list.
63
+ */
64
+ export class PathBlockedError extends FileSystemError {
65
+ /**
66
+ * Creates a new path blocked error
67
+ * @param path - Path that was blocked
68
+ * @param reason - Reason why the path was blocked
69
+ */
70
+ constructor(path, reason) {
71
+ super(`Path blocked: ${path}. Reason: ${reason}`, 'PATH_BLOCKED', { path, reason });
72
+ this.name = 'PathBlockedError';
73
+ }
74
+ }
75
+ /**
76
+ * Error thrown when path traversal is detected.
77
+ */
78
+ export class PathTraversalError extends FileSystemError {
79
+ /**
80
+ * Creates a new path traversal error
81
+ * @param path - Path that contained traversal attempt
82
+ */
83
+ constructor(path) {
84
+ super(`Path traversal detected: ${path}. Relative paths with ".." are not allowed`, 'PATH_TRAVERSAL', { path });
85
+ this.name = 'PathTraversalError';
86
+ }
87
+ }
88
+ /**
89
+ * Error thrown when a file has a blocked extension.
90
+ */
91
+ export class InvalidExtensionError extends FileSystemError {
92
+ /**
93
+ * Creates a new invalid extension error
94
+ * @param path - Path with invalid extension
95
+ * @param extension - The blocked extension
96
+ */
97
+ constructor(path, extension) {
98
+ super(`Invalid file extension: ${extension} in ${path}`, 'INVALID_EXTENSION', { extension, path });
99
+ this.name = 'InvalidExtensionError';
100
+ }
101
+ }
102
+ /**
103
+ * Error thrown when a file exceeds the maximum size limit.
104
+ */
105
+ export class FileTooLargeError extends FileSystemError {
106
+ /**
107
+ * Creates a new file too large error
108
+ * @param path - Path to the file that is too large
109
+ * @param size - Actual file size in bytes
110
+ * @param maxSize - Maximum allowed size in bytes
111
+ */
112
+ constructor(path, size, maxSize) {
113
+ super(`File too large: ${path} (${size} bytes). Maximum allowed: ${maxSize} bytes`, 'FILE_TOO_LARGE', { maxSize, path, size });
114
+ this.name = 'FileTooLargeError';
115
+ }
116
+ }
117
+ /**
118
+ * Error thrown when a read operation fails.
119
+ */
120
+ export class ReadOperationError extends FileSystemError {
121
+ /**
122
+ * Creates a new read operation error
123
+ * @param path - Path to the file that failed to read
124
+ * @param originalError - The original error message
125
+ */
126
+ constructor(path, originalError) {
127
+ super(`Failed to read file: ${path}. Error: ${originalError}`, 'READ_OPERATION_FAILED', {
128
+ originalError,
129
+ path,
130
+ });
131
+ this.name = 'ReadOperationError';
132
+ }
133
+ }
134
+ /**
135
+ * Error thrown when a write operation fails.
136
+ */
137
+ export class WriteOperationError extends FileSystemError {
138
+ /**
139
+ * Creates a new write operation error
140
+ * @param path - Path to the file that failed to write
141
+ * @param originalError - The original error message
142
+ */
143
+ constructor(path, originalError) {
144
+ super(`Failed to write file: ${path}. Error: ${originalError}`, 'WRITE_OPERATION_FAILED', {
145
+ originalError,
146
+ path,
147
+ });
148
+ this.name = 'WriteOperationError';
149
+ }
150
+ }
151
+ /**
152
+ * Error thrown when an edit operation fails.
153
+ */
154
+ export class EditOperationError extends FileSystemError {
155
+ /**
156
+ * Creates a new edit operation error
157
+ * @param path - Path to the file that failed to edit
158
+ * @param originalError - The original error message
159
+ */
160
+ constructor(path, originalError) {
161
+ super(`Failed to edit file: ${path}. Error: ${originalError}`, 'EDIT_OPERATION_FAILED', {
162
+ originalError,
163
+ path,
164
+ });
165
+ this.name = 'EditOperationError';
166
+ }
167
+ }
168
+ /**
169
+ * Error thrown when a string to replace is not found in the file.
170
+ */
171
+ export class StringNotFoundError extends FileSystemError {
172
+ /**
173
+ * Creates a new string not found error
174
+ * @param path - Path to the file
175
+ * @param searchString - The string that was not found
176
+ */
177
+ constructor(path, searchString) {
178
+ super(`String not found in ${path}: "${searchString}"`, 'STRING_NOT_FOUND', {
179
+ path,
180
+ searchString,
181
+ });
182
+ this.name = 'StringNotFoundError';
183
+ }
184
+ }
185
+ /**
186
+ * Error thrown when a string to replace appears multiple times but replaceAll is false.
187
+ */
188
+ export class StringNotUniqueError extends FileSystemError {
189
+ /**
190
+ * Creates a new string not unique error
191
+ * @param path - Path to the file
192
+ * @param searchString - The non-unique string
193
+ * @param occurrences - Number of times the string appears
194
+ */
195
+ constructor(path, searchString, occurrences) {
196
+ super(`String not unique in ${path}: "${searchString}" (found ${occurrences} times). Use replaceAll: true to replace all occurrences`, 'STRING_NOT_UNIQUE', { occurrences, path, searchString });
197
+ this.name = 'StringNotUniqueError';
198
+ }
199
+ }
200
+ /**
201
+ * Error thrown when a glob pattern is invalid.
202
+ */
203
+ export class InvalidPatternError extends FileSystemError {
204
+ /**
205
+ * Creates a new invalid pattern error
206
+ * @param pattern - The invalid pattern
207
+ * @param originalError - The original error message
208
+ */
209
+ constructor(pattern, originalError) {
210
+ super(`Invalid pattern: ${pattern}. Error: ${originalError}`, 'INVALID_PATTERN', {
211
+ originalError,
212
+ pattern,
213
+ });
214
+ this.name = 'InvalidPatternError';
215
+ }
216
+ }
217
+ /**
218
+ * Error thrown when glob operation fails.
219
+ */
220
+ export class GlobOperationError extends FileSystemError {
221
+ /**
222
+ * Creates a new glob operation error
223
+ * @param pattern - The glob pattern that failed
224
+ * @param originalError - The original error message
225
+ */
226
+ constructor(pattern, originalError) {
227
+ super(`Glob operation failed for pattern: ${pattern}. Error: ${originalError}`, 'GLOB_OPERATION_FAILED', {
228
+ originalError,
229
+ pattern,
230
+ });
231
+ this.name = 'GlobOperationError';
232
+ }
233
+ }
234
+ /**
235
+ * Error thrown when search operation fails.
236
+ */
237
+ export class SearchOperationError extends FileSystemError {
238
+ /**
239
+ * Creates a new search operation error
240
+ * @param pattern - The search pattern that failed
241
+ * @param originalError - The original error message
242
+ */
243
+ constructor(pattern, originalError) {
244
+ super(`Search operation failed for pattern: ${pattern}. Error: ${originalError}`, 'SEARCH_OPERATION_FAILED', {
245
+ originalError,
246
+ pattern,
247
+ });
248
+ this.name = 'SearchOperationError';
249
+ }
250
+ }
251
+ /**
252
+ * Error thrown when the service is not initialized.
253
+ */
254
+ export class ServiceNotInitializedError extends FileSystemError {
255
+ /**
256
+ * Creates a new service not initialized error
257
+ */
258
+ constructor() {
259
+ super('FileSystemService not initialized. Call initialize() before using the service', 'SERVICE_NOT_INITIALIZED');
260
+ this.name = 'ServiceNotInitializedError';
261
+ }
262
+ }
263
+ /**
264
+ * Error thrown when the path is empty or invalid.
265
+ */
266
+ export class InvalidPathError extends FileSystemError {
267
+ /**
268
+ * Creates a new invalid path error
269
+ * @param path - The invalid path
270
+ * @param reason - Reason why the path is invalid
271
+ */
272
+ constructor(path, reason) {
273
+ super(`Invalid path: ${path}. Reason: ${reason}`, 'INVALID_PATH', { path, reason });
274
+ this.name = 'InvalidPathError';
275
+ }
276
+ }
277
+ /**
278
+ * Error thrown when too many results are found.
279
+ */
280
+ export class TooManyResultsError extends FileSystemError {
281
+ /**
282
+ * Creates a new too many results error
283
+ * @param operation - The operation that produced too many results
284
+ * @param count - Number of results found
285
+ * @param maxResults - Maximum allowed results
286
+ */
287
+ constructor(operation, count, maxResults) {
288
+ super(`Too many results for ${operation}: found ${count}, maximum allowed: ${maxResults}. Narrow your search or increase maxResults`, 'TOO_MANY_RESULTS', { count, maxResults, operation });
289
+ this.name = 'TooManyResultsError';
290
+ }
291
+ }
@@ -0,0 +1,120 @@
1
+ /**
2
+ * Base error class for LLM-related operations.
3
+ * All LLM-specific errors extend this base class.
4
+ */
5
+ export declare class LlmError extends Error {
6
+ readonly code?: string;
7
+ readonly details?: Record<string, unknown>;
8
+ readonly model?: string;
9
+ readonly provider?: string;
10
+ /**
11
+ * Creates a new LLM error
12
+ * @param message - Error message describing what went wrong
13
+ * @param code - Error code for categorization (e.g., 'LLM_GENERATION_FAILED')
14
+ * @param provider - LLM provider name (e.g., 'gemini', 'openai')
15
+ * @param model - Model name that was being used (e.g., 'gemini-2.5-flash')
16
+ */
17
+ constructor(message: string, code?: string, provider?: string, model?: string);
18
+ }
19
+ /**
20
+ * Error thrown when LLM generation fails.
21
+ * This can happen due to API errors, network issues, or model failures.
22
+ */
23
+ export declare class LlmGenerationError extends LlmError {
24
+ readonly originalError: string;
25
+ /**
26
+ * Creates a new generation error
27
+ * @param error - The original error message from the LLM provider
28
+ * @param provider - LLM provider name
29
+ * @param model - Model name that was being used
30
+ */
31
+ constructor(error: string, provider: string, model: string);
32
+ }
33
+ /**
34
+ * Error thrown when rate limits are exceeded.
35
+ * Includes optional retry delay information.
36
+ */
37
+ export declare class LlmRateLimitError extends LlmError {
38
+ readonly retryAfter?: number;
39
+ /**
40
+ * Creates a new rate limit error
41
+ * @param provider - LLM provider name
42
+ * @param retryAfter - Optional number of seconds to wait before retrying
43
+ */
44
+ constructor(provider: string, retryAfter?: number);
45
+ /**
46
+ * Gets the retry delay in milliseconds
47
+ * @returns Delay in milliseconds, or undefined if not specified
48
+ */
49
+ getRetryAfterMs(): number | undefined;
50
+ }
51
+ /**
52
+ * Error thrown when maximum iterations are exceeded in agentic loops.
53
+ * This prevents infinite loops when tool calling doesn't converge.
54
+ */
55
+ export declare class LlmMaxIterationsError extends LlmError {
56
+ readonly maxIterations: number;
57
+ /**
58
+ * Creates a new max iterations error
59
+ * @param maxIterations - The maximum number of iterations that was configured
60
+ * @param provider - LLM provider name
61
+ * @param model - Model name that was being used
62
+ */
63
+ constructor(maxIterations: number, provider: string, model: string);
64
+ }
65
+ /**
66
+ * Error thrown when tool execution fails during LLM operations.
67
+ * This occurs when the LLM requests a tool call but the execution fails.
68
+ */
69
+ export declare class LlmToolExecutionError extends LlmError {
70
+ readonly originalError: string;
71
+ readonly toolName: string;
72
+ /**
73
+ * Creates a new tool execution error
74
+ * @param toolName - Name of the tool that failed
75
+ * @param error - The original error message
76
+ * @param provider - LLM provider name
77
+ * @param model - Model name that was being used
78
+ */
79
+ constructor(toolName: string, error: string, provider: string, model: string);
80
+ }
81
+ /**
82
+ * Error thrown when LLM configuration is invalid or missing.
83
+ * This includes missing API keys, invalid settings, etc.
84
+ */
85
+ export declare class LlmConfigurationError extends LlmError {
86
+ readonly configKey: string;
87
+ /**
88
+ * Creates a new configuration error
89
+ * @param configKey - The configuration key that is problematic
90
+ * @param message - Description of the configuration issue
91
+ * @param provider - LLM provider name
92
+ */
93
+ constructor(configKey: string, message: string, provider: string);
94
+ }
95
+ /**
96
+ * Error thrown when parsing LLM responses fails.
97
+ * This occurs when the response format is unexpected or malformed.
98
+ */
99
+ export declare class LlmResponseParsingError extends LlmError {
100
+ readonly originalError: string;
101
+ /**
102
+ * Creates a new response parsing error
103
+ * @param error - Description of the parsing error
104
+ * @param provider - LLM provider name
105
+ * @param model - Model name that was being used
106
+ */
107
+ constructor(error: string, provider: string, model: string);
108
+ }
109
+ /**
110
+ * Error thrown when no tool executor is provided but tools are requested.
111
+ * This is a configuration issue where the LLM wants to call tools but can't.
112
+ */
113
+ export declare class LlmMissingToolExecutorError extends LlmError {
114
+ /**
115
+ * Creates a new missing tool executor error
116
+ * @param provider - LLM provider name
117
+ * @param model - Model name that was being used
118
+ */
119
+ constructor(provider: string, model: string);
120
+ }