attocode 0.2.3 → 0.2.4

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 (327) hide show
  1. package/CHANGELOG.md +67 -1
  2. package/README.md +65 -5
  3. package/dist/src/adapters.d.ts.map +1 -1
  4. package/dist/src/adapters.js +15 -11
  5. package/dist/src/adapters.js.map +1 -1
  6. package/dist/src/agent.d.ts +38 -98
  7. package/dist/src/agent.d.ts.map +1 -1
  8. package/dist/src/agent.js +505 -2892
  9. package/dist/src/agent.js.map +1 -1
  10. package/dist/src/cli.d.ts.map +1 -1
  11. package/dist/src/cli.js +2 -1
  12. package/dist/src/cli.js.map +1 -1
  13. package/dist/src/commands/handler.d.ts.map +1 -1
  14. package/dist/src/commands/handler.js +11 -3
  15. package/dist/src/commands/handler.js.map +1 -1
  16. package/dist/src/commands/init-commands.d.ts.map +1 -1
  17. package/dist/src/commands/init-commands.js +16 -1
  18. package/dist/src/commands/init-commands.js.map +1 -1
  19. package/dist/src/commands/init.d.ts.map +1 -1
  20. package/dist/src/commands/init.js +31 -0
  21. package/dist/src/commands/init.js.map +1 -1
  22. package/dist/src/config/base-types.d.ts +45 -0
  23. package/dist/src/config/base-types.d.ts.map +1 -0
  24. package/dist/src/config/base-types.js +9 -0
  25. package/dist/src/config/base-types.js.map +1 -0
  26. package/dist/src/config/config-manager.d.ts +35 -0
  27. package/dist/src/config/config-manager.d.ts.map +1 -0
  28. package/dist/src/config/config-manager.js +108 -0
  29. package/dist/src/config/config-manager.js.map +1 -0
  30. package/dist/src/config/index.d.ts +4 -0
  31. package/dist/src/config/index.d.ts.map +1 -0
  32. package/dist/src/config/index.js +3 -0
  33. package/dist/src/config/index.js.map +1 -0
  34. package/dist/src/config/schema.d.ts +1546 -0
  35. package/dist/src/config/schema.d.ts.map +1 -0
  36. package/dist/src/config/schema.js +268 -0
  37. package/dist/src/config/schema.js.map +1 -0
  38. package/dist/src/config.d.ts +4 -1
  39. package/dist/src/config.d.ts.map +1 -1
  40. package/dist/src/config.js +8 -12
  41. package/dist/src/config.js.map +1 -1
  42. package/dist/src/core/agent-state-machine.d.ts +131 -0
  43. package/dist/src/core/agent-state-machine.d.ts.map +1 -0
  44. package/dist/src/core/agent-state-machine.js +302 -0
  45. package/dist/src/core/agent-state-machine.js.map +1 -0
  46. package/dist/src/core/base-manager.d.ts +79 -0
  47. package/dist/src/core/base-manager.d.ts.map +1 -0
  48. package/dist/src/core/base-manager.js +170 -0
  49. package/dist/src/core/base-manager.js.map +1 -0
  50. package/dist/src/core/completion-analyzer.d.ts +15 -0
  51. package/dist/src/core/completion-analyzer.d.ts.map +1 -0
  52. package/dist/src/core/completion-analyzer.js +53 -0
  53. package/dist/src/core/completion-analyzer.js.map +1 -0
  54. package/dist/src/core/execution-loop.d.ts +46 -0
  55. package/dist/src/core/execution-loop.d.ts.map +1 -0
  56. package/dist/src/core/execution-loop.js +1258 -0
  57. package/dist/src/core/execution-loop.js.map +1 -0
  58. package/dist/src/core/index.d.ts +7 -0
  59. package/dist/src/core/index.d.ts.map +1 -1
  60. package/dist/src/core/index.js +9 -0
  61. package/dist/src/core/index.js.map +1 -1
  62. package/dist/src/core/process-handlers.d.ts.map +1 -1
  63. package/dist/src/core/process-handlers.js +14 -0
  64. package/dist/src/core/process-handlers.js.map +1 -1
  65. package/dist/src/core/protocol/types.d.ts +12 -12
  66. package/dist/src/core/response-handler.d.ts +16 -0
  67. package/dist/src/core/response-handler.d.ts.map +1 -0
  68. package/dist/src/core/response-handler.js +234 -0
  69. package/dist/src/core/response-handler.js.map +1 -0
  70. package/dist/src/core/subagent-spawner.d.ts +43 -0
  71. package/dist/src/core/subagent-spawner.d.ts.map +1 -0
  72. package/dist/src/core/subagent-spawner.js +966 -0
  73. package/dist/src/core/subagent-spawner.js.map +1 -0
  74. package/dist/src/core/tool-executor.d.ts +59 -0
  75. package/dist/src/core/tool-executor.d.ts.map +1 -0
  76. package/dist/src/core/tool-executor.js +677 -0
  77. package/dist/src/core/tool-executor.js.map +1 -0
  78. package/dist/src/core/types.d.ts +133 -0
  79. package/dist/src/core/types.d.ts.map +1 -0
  80. package/dist/src/core/types.js +12 -0
  81. package/dist/src/core/types.js.map +1 -0
  82. package/dist/src/defaults.d.ts +2 -2
  83. package/dist/src/defaults.d.ts.map +1 -1
  84. package/dist/src/defaults.js +29 -1
  85. package/dist/src/defaults.js.map +1 -1
  86. package/dist/src/integrations/auto-compaction.d.ts.map +1 -1
  87. package/dist/src/integrations/auto-compaction.js +3 -2
  88. package/dist/src/integrations/auto-compaction.js.map +1 -1
  89. package/dist/src/integrations/budget-pool.d.ts +7 -0
  90. package/dist/src/integrations/budget-pool.d.ts.map +1 -1
  91. package/dist/src/integrations/budget-pool.js +43 -0
  92. package/dist/src/integrations/budget-pool.js.map +1 -1
  93. package/dist/src/integrations/codebase-ast.d.ts +52 -0
  94. package/dist/src/integrations/codebase-ast.d.ts.map +1 -0
  95. package/dist/src/integrations/codebase-ast.js +457 -0
  96. package/dist/src/integrations/codebase-ast.js.map +1 -0
  97. package/dist/src/integrations/codebase-context.d.ts +18 -0
  98. package/dist/src/integrations/codebase-context.d.ts.map +1 -1
  99. package/dist/src/integrations/codebase-context.js +197 -17
  100. package/dist/src/integrations/codebase-context.js.map +1 -1
  101. package/dist/src/integrations/compaction.d.ts.map +1 -1
  102. package/dist/src/integrations/compaction.js +14 -6
  103. package/dist/src/integrations/compaction.js.map +1 -1
  104. package/dist/src/integrations/context-engineering.d.ts +8 -0
  105. package/dist/src/integrations/context-engineering.d.ts.map +1 -1
  106. package/dist/src/integrations/context-engineering.js +19 -0
  107. package/dist/src/integrations/context-engineering.js.map +1 -1
  108. package/dist/src/integrations/economics.d.ts +25 -1
  109. package/dist/src/integrations/economics.d.ts.map +1 -1
  110. package/dist/src/integrations/economics.js +217 -38
  111. package/dist/src/integrations/economics.js.map +1 -1
  112. package/dist/src/integrations/edit-validator.d.ts +30 -0
  113. package/dist/src/integrations/edit-validator.d.ts.map +1 -0
  114. package/dist/src/integrations/edit-validator.js +85 -0
  115. package/dist/src/integrations/edit-validator.js.map +1 -0
  116. package/dist/src/integrations/file-cache.d.ts +7 -0
  117. package/dist/src/integrations/file-cache.d.ts.map +1 -1
  118. package/dist/src/integrations/file-cache.js +54 -0
  119. package/dist/src/integrations/file-cache.js.map +1 -1
  120. package/dist/src/integrations/health-check.d.ts.map +1 -1
  121. package/dist/src/integrations/health-check.js +3 -2
  122. package/dist/src/integrations/health-check.js.map +1 -1
  123. package/dist/src/integrations/hierarchical-config.d.ts +3 -0
  124. package/dist/src/integrations/hierarchical-config.d.ts.map +1 -1
  125. package/dist/src/integrations/hierarchical-config.js +3 -0
  126. package/dist/src/integrations/hierarchical-config.js.map +1 -1
  127. package/dist/src/integrations/hooks.d.ts +2 -0
  128. package/dist/src/integrations/hooks.d.ts.map +1 -1
  129. package/dist/src/integrations/hooks.js +99 -15
  130. package/dist/src/integrations/hooks.js.map +1 -1
  131. package/dist/src/integrations/index.d.ts +7 -0
  132. package/dist/src/integrations/index.d.ts.map +1 -1
  133. package/dist/src/integrations/index.js +9 -1
  134. package/dist/src/integrations/index.js.map +1 -1
  135. package/dist/src/integrations/logger.d.ts +104 -0
  136. package/dist/src/integrations/logger.d.ts.map +1 -0
  137. package/dist/src/integrations/logger.js +219 -0
  138. package/dist/src/integrations/logger.js.map +1 -0
  139. package/dist/src/integrations/lsp.d.ts.map +1 -1
  140. package/dist/src/integrations/lsp.js +5 -4
  141. package/dist/src/integrations/lsp.js.map +1 -1
  142. package/dist/src/integrations/mcp-client.d.ts.map +1 -1
  143. package/dist/src/integrations/mcp-client.js +8 -7
  144. package/dist/src/integrations/mcp-client.js.map +1 -1
  145. package/dist/src/integrations/observability.d.ts.map +1 -1
  146. package/dist/src/integrations/observability.js +5 -4
  147. package/dist/src/integrations/observability.js.map +1 -1
  148. package/dist/src/integrations/openrouter-pricing.d.ts.map +1 -1
  149. package/dist/src/integrations/openrouter-pricing.js +4 -3
  150. package/dist/src/integrations/openrouter-pricing.js.map +1 -1
  151. package/dist/src/integrations/persistence.d.ts.map +1 -1
  152. package/dist/src/integrations/persistence.js +5 -4
  153. package/dist/src/integrations/persistence.js.map +1 -1
  154. package/dist/src/integrations/planning.d.ts.map +1 -1
  155. package/dist/src/integrations/planning.js +5 -4
  156. package/dist/src/integrations/planning.js.map +1 -1
  157. package/dist/src/integrations/retry.d.ts +1 -0
  158. package/dist/src/integrations/retry.d.ts.map +1 -1
  159. package/dist/src/integrations/retry.js.map +1 -1
  160. package/dist/src/integrations/routing.d.ts.map +1 -1
  161. package/dist/src/integrations/routing.js +2 -1
  162. package/dist/src/integrations/routing.js.map +1 -1
  163. package/dist/src/integrations/safety.d.ts.map +1 -1
  164. package/dist/src/integrations/safety.js +13 -13
  165. package/dist/src/integrations/safety.js.map +1 -1
  166. package/dist/src/integrations/sandbox/docker.d.ts.map +1 -1
  167. package/dist/src/integrations/sandbox/docker.js +2 -1
  168. package/dist/src/integrations/sandbox/docker.js.map +1 -1
  169. package/dist/src/integrations/sandbox/index.d.ts.map +1 -1
  170. package/dist/src/integrations/sandbox/index.js +5 -4
  171. package/dist/src/integrations/sandbox/index.js.map +1 -1
  172. package/dist/src/integrations/session-store.d.ts +1 -0
  173. package/dist/src/integrations/session-store.d.ts.map +1 -1
  174. package/dist/src/integrations/session-store.js +1 -0
  175. package/dist/src/integrations/session-store.js.map +1 -1
  176. package/dist/src/integrations/shared-blackboard.d.ts +3 -0
  177. package/dist/src/integrations/shared-blackboard.d.ts.map +1 -1
  178. package/dist/src/integrations/shared-blackboard.js +47 -0
  179. package/dist/src/integrations/shared-blackboard.js.map +1 -1
  180. package/dist/src/integrations/smart-decomposer.d.ts +27 -0
  181. package/dist/src/integrations/smart-decomposer.d.ts.map +1 -1
  182. package/dist/src/integrations/smart-decomposer.js +414 -30
  183. package/dist/src/integrations/smart-decomposer.js.map +1 -1
  184. package/dist/src/integrations/sqlite-store.d.ts +2 -0
  185. package/dist/src/integrations/sqlite-store.d.ts.map +1 -1
  186. package/dist/src/integrations/sqlite-store.js +18 -6
  187. package/dist/src/integrations/sqlite-store.js.map +1 -1
  188. package/dist/src/integrations/swarm/failure-classifier.d.ts +11 -0
  189. package/dist/src/integrations/swarm/failure-classifier.d.ts.map +1 -0
  190. package/dist/src/integrations/swarm/failure-classifier.js +95 -0
  191. package/dist/src/integrations/swarm/failure-classifier.js.map +1 -0
  192. package/dist/src/integrations/swarm/model-selector.d.ts.map +1 -1
  193. package/dist/src/integrations/swarm/model-selector.js +2 -1
  194. package/dist/src/integrations/swarm/model-selector.js.map +1 -1
  195. package/dist/src/integrations/swarm/swarm-config-loader.d.ts +8 -0
  196. package/dist/src/integrations/swarm/swarm-config-loader.d.ts.map +1 -1
  197. package/dist/src/integrations/swarm/swarm-config-loader.js +95 -0
  198. package/dist/src/integrations/swarm/swarm-config-loader.js.map +1 -1
  199. package/dist/src/integrations/swarm/swarm-event-bridge.d.ts +74 -0
  200. package/dist/src/integrations/swarm/swarm-event-bridge.d.ts.map +1 -1
  201. package/dist/src/integrations/swarm/swarm-event-bridge.js +37 -0
  202. package/dist/src/integrations/swarm/swarm-event-bridge.js.map +1 -1
  203. package/dist/src/integrations/swarm/swarm-events.d.ts +3 -0
  204. package/dist/src/integrations/swarm/swarm-events.d.ts.map +1 -1
  205. package/dist/src/integrations/swarm/swarm-events.js +1 -1
  206. package/dist/src/integrations/swarm/swarm-events.js.map +1 -1
  207. package/dist/src/integrations/swarm/swarm-orchestrator.d.ts +23 -0
  208. package/dist/src/integrations/swarm/swarm-orchestrator.d.ts.map +1 -1
  209. package/dist/src/integrations/swarm/swarm-orchestrator.js +530 -55
  210. package/dist/src/integrations/swarm/swarm-orchestrator.js.map +1 -1
  211. package/dist/src/integrations/swarm/swarm-state-store.d.ts +4 -1
  212. package/dist/src/integrations/swarm/swarm-state-store.d.ts.map +1 -1
  213. package/dist/src/integrations/swarm/swarm-state-store.js +8 -1
  214. package/dist/src/integrations/swarm/swarm-state-store.js.map +1 -1
  215. package/dist/src/integrations/swarm/task-queue.d.ts +10 -0
  216. package/dist/src/integrations/swarm/task-queue.d.ts.map +1 -1
  217. package/dist/src/integrations/swarm/task-queue.js +36 -1
  218. package/dist/src/integrations/swarm/task-queue.js.map +1 -1
  219. package/dist/src/integrations/swarm/types.d.ts +41 -0
  220. package/dist/src/integrations/swarm/types.d.ts.map +1 -1
  221. package/dist/src/integrations/swarm/types.js +9 -0
  222. package/dist/src/integrations/swarm/types.js.map +1 -1
  223. package/dist/src/integrations/swarm/worker-pool.d.ts +12 -2
  224. package/dist/src/integrations/swarm/worker-pool.d.ts.map +1 -1
  225. package/dist/src/integrations/swarm/worker-pool.js +53 -4
  226. package/dist/src/integrations/swarm/worker-pool.js.map +1 -1
  227. package/dist/src/integrations/task-manager.d.ts +33 -1
  228. package/dist/src/integrations/task-manager.d.ts.map +1 -1
  229. package/dist/src/integrations/task-manager.js +78 -4
  230. package/dist/src/integrations/task-manager.js.map +1 -1
  231. package/dist/src/main.js +83 -32
  232. package/dist/src/main.js.map +1 -1
  233. package/dist/src/modes/repl.d.ts.map +1 -1
  234. package/dist/src/modes/repl.js +40 -8
  235. package/dist/src/modes/repl.js.map +1 -1
  236. package/dist/src/modes/tui.d.ts.map +1 -1
  237. package/dist/src/modes/tui.js +36 -6
  238. package/dist/src/modes/tui.js.map +1 -1
  239. package/dist/src/observability/tracer.d.ts.map +1 -1
  240. package/dist/src/observability/tracer.js +2 -1
  241. package/dist/src/observability/tracer.js.map +1 -1
  242. package/dist/src/persistence/schema.d.ts.map +1 -1
  243. package/dist/src/persistence/schema.js +11 -0
  244. package/dist/src/persistence/schema.js.map +1 -1
  245. package/dist/src/providers/adapters/anthropic.d.ts.map +1 -1
  246. package/dist/src/providers/adapters/anthropic.js +3 -2
  247. package/dist/src/providers/adapters/anthropic.js.map +1 -1
  248. package/dist/src/providers/adapters/openai.d.ts.map +1 -1
  249. package/dist/src/providers/adapters/openai.js +3 -2
  250. package/dist/src/providers/adapters/openai.js.map +1 -1
  251. package/dist/src/providers/adapters/openrouter.d.ts.map +1 -1
  252. package/dist/src/providers/adapters/openrouter.js +11 -11
  253. package/dist/src/providers/adapters/openrouter.js.map +1 -1
  254. package/dist/src/providers/circuit-breaker.d.ts +1 -0
  255. package/dist/src/providers/circuit-breaker.d.ts.map +1 -1
  256. package/dist/src/providers/circuit-breaker.js.map +1 -1
  257. package/dist/src/providers/provider.d.ts.map +1 -1
  258. package/dist/src/providers/provider.js +2 -1
  259. package/dist/src/providers/provider.js.map +1 -1
  260. package/dist/src/providers/resilient-provider.d.ts.map +1 -1
  261. package/dist/src/providers/resilient-provider.js +2 -1
  262. package/dist/src/providers/resilient-provider.js.map +1 -1
  263. package/dist/src/session-picker.d.ts.map +1 -1
  264. package/dist/src/session-picker.js +40 -5
  265. package/dist/src/session-picker.js.map +1 -1
  266. package/dist/src/shared/budget-tracker.d.ts +65 -0
  267. package/dist/src/shared/budget-tracker.d.ts.map +1 -0
  268. package/dist/src/shared/budget-tracker.js +128 -0
  269. package/dist/src/shared/budget-tracker.js.map +1 -0
  270. package/dist/src/shared/context-engine.d.ts +64 -0
  271. package/dist/src/shared/context-engine.d.ts.map +1 -0
  272. package/dist/src/shared/context-engine.js +117 -0
  273. package/dist/src/shared/context-engine.js.map +1 -0
  274. package/dist/src/shared/index.d.ts +12 -0
  275. package/dist/src/shared/index.d.ts.map +1 -0
  276. package/dist/src/shared/index.js +12 -0
  277. package/dist/src/shared/index.js.map +1 -0
  278. package/dist/src/shared/persistence.d.ts +57 -0
  279. package/dist/src/shared/persistence.d.ts.map +1 -0
  280. package/dist/src/shared/persistence.js +168 -0
  281. package/dist/src/shared/persistence.js.map +1 -0
  282. package/dist/src/shared/shared-context-state.d.ts +89 -0
  283. package/dist/src/shared/shared-context-state.d.ts.map +1 -0
  284. package/dist/src/shared/shared-context-state.js +175 -0
  285. package/dist/src/shared/shared-context-state.js.map +1 -0
  286. package/dist/src/shared/shared-economics-state.d.ts +61 -0
  287. package/dist/src/shared/shared-economics-state.d.ts.map +1 -0
  288. package/dist/src/shared/shared-economics-state.js +100 -0
  289. package/dist/src/shared/shared-economics-state.js.map +1 -0
  290. package/dist/src/tools/bash.d.ts +3 -3
  291. package/dist/src/tools/bash.d.ts.map +1 -1
  292. package/dist/src/tools/bash.js +2 -1
  293. package/dist/src/tools/bash.js.map +1 -1
  294. package/dist/src/tools/file.d.ts +3 -3
  295. package/dist/src/tools/permission.d.ts.map +1 -1
  296. package/dist/src/tools/permission.js +6 -5
  297. package/dist/src/tools/permission.js.map +1 -1
  298. package/dist/src/tools/types.d.ts +1 -0
  299. package/dist/src/tools/types.d.ts.map +1 -1
  300. package/dist/src/tools/types.js.map +1 -1
  301. package/dist/src/tracing/trace-collector.d.ts +125 -0
  302. package/dist/src/tracing/trace-collector.d.ts.map +1 -1
  303. package/dist/src/tracing/trace-collector.js +112 -5
  304. package/dist/src/tracing/trace-collector.js.map +1 -1
  305. package/dist/src/tracing/types.d.ts +96 -1
  306. package/dist/src/tracing/types.d.ts.map +1 -1
  307. package/dist/src/tracing/types.js.map +1 -1
  308. package/dist/src/tricks/failure-evidence.d.ts.map +1 -1
  309. package/dist/src/tricks/failure-evidence.js +2 -1
  310. package/dist/src/tricks/failure-evidence.js.map +1 -1
  311. package/dist/src/tui/app.d.ts +13 -0
  312. package/dist/src/tui/app.d.ts.map +1 -1
  313. package/dist/src/tui/app.js +129 -15
  314. package/dist/src/tui/app.js.map +1 -1
  315. package/dist/src/tui/components/ErrorBoundary.d.ts.map +1 -1
  316. package/dist/src/tui/components/ErrorBoundary.js +3 -2
  317. package/dist/src/tui/components/ErrorBoundary.js.map +1 -1
  318. package/dist/src/tui/event-display.d.ts.map +1 -1
  319. package/dist/src/tui/event-display.js +36 -62
  320. package/dist/src/tui/event-display.js.map +1 -1
  321. package/dist/src/tui/index.d.ts +4 -0
  322. package/dist/src/tui/index.d.ts.map +1 -1
  323. package/dist/src/tui/index.js +17 -0
  324. package/dist/src/tui/index.js.map +1 -1
  325. package/dist/src/types.d.ts +143 -1
  326. package/dist/src/types.d.ts.map +1 -1
  327. package/package.json +18 -3
@@ -15,6 +15,7 @@
15
15
  */
16
16
  import * as fs from 'fs/promises';
17
17
  import * as path from 'path';
18
+ import { isASTSupported, extractSymbolsAST, extractDependenciesAST } from './codebase-ast.js';
18
19
  // =============================================================================
19
20
  // CONSTANTS
20
21
  // =============================================================================
@@ -48,6 +49,16 @@ const DEFAULT_CONFIG = {
48
49
  cacheResults: true,
49
50
  cacheTTL: 5 * 60 * 1000, // 5 minutes
50
51
  };
52
+ const ALWAYS_EXCLUDED_DIRS = new Set([
53
+ 'node_modules',
54
+ '.git',
55
+ 'dist',
56
+ 'build',
57
+ 'coverage',
58
+ '.next',
59
+ 'target',
60
+ 'vendor',
61
+ ]);
51
62
  // =============================================================================
52
63
  // CODEBASE CONTEXT MANAGER
53
64
  // =============================================================================
@@ -78,6 +89,8 @@ export class CodebaseContextManager {
78
89
  cache = new Map();
79
90
  listeners = [];
80
91
  lspManager = null;
92
+ /** Optional trace collector for emitting codebase analysis events. */
93
+ traceCollector;
81
94
  constructor(config = {}) {
82
95
  this.config = { ...DEFAULT_CONFIG, ...config };
83
96
  }
@@ -192,6 +205,42 @@ export class CodebaseContextManager {
192
205
  totalFiles: chunks.size,
193
206
  totalTokens,
194
207
  });
208
+ // Emit trace event with full codebase map data
209
+ this.traceCollector?.record({
210
+ type: 'codebase.map',
211
+ data: {
212
+ totalFiles: chunks.size,
213
+ totalTokens,
214
+ entryPoints,
215
+ coreModules,
216
+ dependencyEdges: Array.from(dependencyGraph.entries()).map(([file, imports]) => ({
217
+ file,
218
+ imports: Array.from(imports),
219
+ })),
220
+ topChunks: Array.from(chunks.values())
221
+ .sort((a, b) => b.importance - a.importance)
222
+ .slice(0, 50)
223
+ .map(chunk => ({
224
+ filePath: chunk.filePath,
225
+ tokenCount: chunk.tokenCount,
226
+ importance: chunk.importance,
227
+ type: chunk.type,
228
+ symbols: chunk.symbolDetails,
229
+ dependencies: chunk.dependencies,
230
+ })),
231
+ files: Array.from(chunks.values()).map((chunk) => ({
232
+ filePath: chunk.filePath,
233
+ directory: path.dirname(chunk.filePath) === '.' ? '' : path.dirname(chunk.filePath),
234
+ fileName: path.basename(chunk.filePath),
235
+ tokenCount: chunk.tokenCount,
236
+ importance: chunk.importance,
237
+ type: chunk.type,
238
+ symbols: chunk.symbolDetails,
239
+ inDegree: reverseDependencyGraph.get(chunk.filePath)?.size ?? 0,
240
+ outDegree: dependencyGraph.get(chunk.filePath)?.size ?? 0,
241
+ })),
242
+ },
243
+ });
195
244
  return repoMap;
196
245
  }
197
246
  catch (error) {
@@ -208,8 +257,11 @@ export class CodebaseContextManager {
208
257
  const entries = await fs.readdir(dir, { withFileTypes: true });
209
258
  for (const entry of entries) {
210
259
  const fullPath = path.join(dir, entry.name);
211
- const relativePath = path.relative(root, fullPath);
260
+ const relativePath = this.normalizePath(path.relative(root, fullPath));
212
261
  // Check exclusions first
262
+ if (entry.isDirectory() && ALWAYS_EXCLUDED_DIRS.has(entry.name)) {
263
+ continue;
264
+ }
213
265
  if (this.matchesPatterns(relativePath, this.config.excludePatterns)) {
214
266
  continue;
215
267
  }
@@ -240,8 +292,11 @@ export class CodebaseContextManager {
240
292
  const content = await fs.readFile(fullPath, 'utf-8');
241
293
  const tokenCount = Math.ceil(content.length * this.config.tokensPerChar);
242
294
  const type = this.determineChunkType(relativePath, content);
243
- const symbols = this.extractSymbols(content, relativePath);
244
- const dependencies = this.extractDependencyNames(content);
295
+ const symbolDetails = this.extractSymbolDetails(content, relativePath);
296
+ const symbols = symbolDetails.length > 0
297
+ ? symbolDetails.map((s) => s.name)
298
+ : this.extractSymbols(content, relativePath);
299
+ const dependencies = this.extractDependencyNames(content, relativePath);
245
300
  // Calculate base importance
246
301
  const importance = this.calculateBaseImportance(type, relativePath);
247
302
  return {
@@ -252,6 +307,7 @@ export class CodebaseContextManager {
252
307
  importance,
253
308
  type,
254
309
  symbols,
310
+ symbolDetails,
255
311
  dependencies,
256
312
  lastModified: stat.mtime,
257
313
  };
@@ -330,8 +386,17 @@ export class CodebaseContextManager {
330
386
  }
331
387
  /**
332
388
  * Extract exported symbols from code.
389
+ * Uses AST-based extraction when available, with regex fallback.
333
390
  */
334
391
  extractSymbols(content, filePath) {
392
+ // Try AST-based extraction first
393
+ if (isASTSupported(filePath)) {
394
+ const astSymbols = extractSymbolsAST(content, filePath);
395
+ if (astSymbols.length > 0) {
396
+ return astSymbols.map(s => s.name);
397
+ }
398
+ }
399
+ // Fallback to regex extraction
335
400
  const symbols = [];
336
401
  const ext = path.extname(filePath);
337
402
  if (['.ts', '.tsx', '.js', '.jsx'].includes(ext)) {
@@ -369,23 +434,91 @@ export class CodebaseContextManager {
369
434
  }
370
435
  return symbols;
371
436
  }
437
+ /**
438
+ * Extract structured symbols from code.
439
+ */
440
+ extractSymbolDetails(content, filePath) {
441
+ if (isASTSupported(filePath)) {
442
+ const astSymbols = extractSymbolsAST(content, filePath);
443
+ if (astSymbols.length > 0) {
444
+ return astSymbols.map((s) => ({
445
+ name: s.name,
446
+ kind: s.kind,
447
+ exported: s.exported,
448
+ line: s.line,
449
+ }));
450
+ }
451
+ }
452
+ const details = [];
453
+ const ext = path.extname(filePath);
454
+ if (['.ts', '.tsx', '.js', '.jsx'].includes(ext)) {
455
+ const addMatches = (kind, exported, pattern) => {
456
+ let match;
457
+ while ((match = pattern.exec(content)) !== null) {
458
+ details.push({ name: match[1], kind, exported, line: 0 });
459
+ }
460
+ };
461
+ addMatches('function', true, /export\s+(?:default\s+)?function\s+(\w+)/g);
462
+ addMatches('class', true, /export\s+(?:default\s+)?class\s+(\w+)/g);
463
+ addMatches('interface', true, /export\s+interface\s+(\w+)/g);
464
+ addMatches('type', true, /export\s+type\s+(\w+)/g);
465
+ addMatches('enum', true, /export\s+enum\s+(\w+)/g);
466
+ addMatches('variable', true, /export\s+(?:const|let|var)\s+(\w+)/g);
467
+ addMatches('function', false, /(?:^|\n)\s*function\s+(\w+)/g);
468
+ addMatches('class', false, /(?:^|\n)\s*class\s+(\w+)/g);
469
+ }
470
+ else if (ext === '.py') {
471
+ let match;
472
+ const classPattern = /^class\s+(\w+)/gm;
473
+ while ((match = classPattern.exec(content)) !== null) {
474
+ details.push({ name: match[1], kind: 'class', exported: true, line: 0 });
475
+ }
476
+ const fnPattern = /^def\s+(\w+)/gm;
477
+ while ((match = fnPattern.exec(content)) !== null) {
478
+ details.push({ name: match[1], kind: 'function', exported: true, line: 0 });
479
+ }
480
+ }
481
+ const seen = new Set();
482
+ return details.filter((d) => {
483
+ const key = `${d.kind}:${d.name}`;
484
+ if (seen.has(key))
485
+ return false;
486
+ seen.add(key);
487
+ return true;
488
+ });
489
+ }
372
490
  /**
373
491
  * Extract dependency file paths from imports.
492
+ * Uses AST-based extraction when available, with regex fallback.
374
493
  */
375
494
  extractDependencies(content, currentFile) {
495
+ // Try AST-based extraction first
496
+ if (isASTSupported(currentFile)) {
497
+ const astDeps = extractDependenciesAST(content, currentFile);
498
+ const deps = new Set();
499
+ const dir = path.dirname(currentFile);
500
+ for (const dep of astDeps) {
501
+ if (dep.isRelative) {
502
+ const resolved = path.normalize(path.join(dir, dep.source));
503
+ for (const tryExt of ['', '.ts', '.tsx', '.js', '.jsx', '/index.ts', '/index.js']) {
504
+ deps.add(resolved + tryExt);
505
+ }
506
+ }
507
+ }
508
+ if (deps.size > 0)
509
+ return deps;
510
+ }
511
+ // Fallback to regex extraction
376
512
  const deps = new Set();
377
513
  const ext = path.extname(currentFile);
378
514
  const dir = path.dirname(currentFile);
379
515
  if (['.ts', '.tsx', '.js', '.jsx'].includes(ext)) {
380
- // Match import statements
381
516
  const importPattern = /import\s+.*?\s+from\s+['"]([^'"]+)['"]/g;
382
517
  let match;
383
518
  while ((match = importPattern.exec(content)) !== null) {
384
519
  const importPath = match[1];
385
- // Only track relative imports
386
520
  if (importPath.startsWith('.')) {
387
521
  const resolved = path.normalize(path.join(dir, importPath));
388
- // Add possible extensions
389
522
  for (const tryExt of ['', '.ts', '.tsx', '.js', '.jsx', '/index.ts', '/index.js']) {
390
523
  const tryPath = resolved + tryExt;
391
524
  deps.add(tryPath);
@@ -397,10 +530,23 @@ export class CodebaseContextManager {
397
530
  }
398
531
  /**
399
532
  * Extract dependency names (for symbol matching).
533
+ * Uses AST-based extraction when available, with regex fallback.
400
534
  */
401
- extractDependencyNames(content) {
535
+ extractDependencyNames(content, filePath) {
536
+ // Try AST-based extraction first
537
+ if (filePath && isASTSupported(filePath)) {
538
+ const astDeps = extractDependenciesAST(content, filePath);
539
+ if (astDeps.length > 0) {
540
+ const names = [];
541
+ for (const dep of astDeps) {
542
+ names.push(...dep.names.filter(n => !n.startsWith('* as ')));
543
+ }
544
+ if (names.length > 0)
545
+ return names;
546
+ }
547
+ }
548
+ // Fallback to regex extraction
402
549
  const deps = [];
403
- // Extract imported names
404
550
  const patterns = [
405
551
  /import\s+\{\s*([^}]+)\s*\}\s+from/g,
406
552
  /import\s+(\w+)\s+from/g,
@@ -439,8 +585,9 @@ export class CodebaseContextManager {
439
585
  * Check if a path matches any of the given patterns.
440
586
  */
441
587
  matchesPatterns(filePath, patterns) {
588
+ const normalizedPath = this.normalizePath(filePath);
442
589
  for (const pattern of patterns) {
443
- if (this.matchesGlob(filePath, pattern)) {
590
+ if (this.matchesGlob(normalizedPath, pattern)) {
444
591
  return true;
445
592
  }
446
593
  }
@@ -450,14 +597,47 @@ export class CodebaseContextManager {
450
597
  * Simple glob matching (supports * and **).
451
598
  */
452
599
  matchesGlob(filePath, pattern) {
453
- // Convert glob to regex
454
- const regexStr = pattern
455
- .replace(/\*\*/g, '<<<DOUBLESTAR>>>')
456
- .replace(/\*/g, '[^/]*')
457
- .replace(/<<<DOUBLESTAR>>>/g, '.*')
458
- .replace(/\?/g, '.');
459
- const regex = new RegExp(`^${regexStr}$`);
460
- return regex.test(filePath);
600
+ const normalizedPath = this.normalizePath(filePath);
601
+ const normalizedPattern = this.normalizePath(pattern).replace(/^\.\/+/, '');
602
+ const pathSegments = normalizedPath.split('/').filter(Boolean);
603
+ const patternSegments = normalizedPattern.split('/').filter(Boolean);
604
+ const matchSegment = (segment, segmentPattern) => {
605
+ if (segmentPattern === '*')
606
+ return true;
607
+ const escaped = segmentPattern
608
+ .replace(/[.+^${}()|[\]\\]/g, '\\$&')
609
+ .replace(/\*/g, '.*')
610
+ .replace(/\?/g, '.');
611
+ return new RegExp(`^${escaped}$`).test(segment);
612
+ };
613
+ const matchFrom = (pathIndex, patternIndex) => {
614
+ if (patternIndex >= patternSegments.length) {
615
+ return pathIndex >= pathSegments.length;
616
+ }
617
+ const part = patternSegments[patternIndex];
618
+ if (part === '**') {
619
+ for (let i = pathIndex; i <= pathSegments.length; i++) {
620
+ if (matchFrom(i, patternIndex + 1)) {
621
+ return true;
622
+ }
623
+ }
624
+ return false;
625
+ }
626
+ if (pathIndex >= pathSegments.length) {
627
+ return false;
628
+ }
629
+ if (!matchSegment(pathSegments[pathIndex], part)) {
630
+ return false;
631
+ }
632
+ return matchFrom(pathIndex + 1, patternIndex + 1);
633
+ };
634
+ return matchFrom(0, 0);
635
+ }
636
+ normalizePath(value) {
637
+ return value
638
+ .replaceAll('\\', '/')
639
+ .replace(/^\.\/+/, '')
640
+ .replace(/\/{2,}/g, '/');
461
641
  }
462
642
  // ===========================================================================
463
643
  // SELECTION
@@ -1 +1 @@
1
- {"version":3,"file":"codebase-context.js","sourceRoot":"","sources":["../../../src/integrations/codebase-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codebase-context.js","sourceRoot":"","sources":["../../../src/integrations/codebase-context.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"compaction.d.ts","sourceRoot":"","sources":["../../../src/integrations/compaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compaction.d.ts","sourceRoot":"","sources":["../../../src/integrations/compaction.ts"],"names":[],"mappings":"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"}
@@ -123,13 +123,21 @@ export class Compactor {
123
123
  return `${role}: ${content}`;
124
124
  }).join('\n\n');
125
125
  const summaryPrompt = `Summarize this conversation concisely, preserving:
126
- 1. Key decisions and actions taken
127
- 2. Important files, paths, or code discussed
128
- 3. Current task/goal being worked on
129
- 4. Any errors or issues encountered
130
- 5. Key findings or conclusions
126
+ 1. The CURRENT TASK being worked on and its overall goal
127
+ 2. What has been COMPLETED so far (files created/modified, features implemented)
128
+ 3. What REMAINS TO BE DONE (specific files to create, changes to make)
129
+ 4. The NEXT ACTION the agent should take when resuming
130
+ 5. Key errors or blockers encountered
131
+ 6. Important file paths and code patterns
131
132
 
132
- Keep the summary structured and under ${this.config.summaryMaxTokens} tokens.
133
+ Structure the summary as:
134
+ ## Current Task: [description]
135
+ ## Completed: [list]
136
+ ## Remaining: [list]
137
+ ## Next Action: [specific next step]
138
+ ## Notes: [errors, patterns, decisions]
139
+
140
+ Keep under ${this.config.summaryMaxTokens} tokens.
133
141
 
134
142
  Conversation to summarize:
135
143
  ---
@@ -1 +1 @@
1
- {"version":3,"file":"compaction.js","sourceRoot":"","sources":["../../../src/integrations/compaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compaction.js","sourceRoot":"","sources":["../../../src/integrations/compaction.ts"],"names":[],"mappings":"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"}