@compass-ai/nova 1.0.74 → 1.0.75

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 (973) hide show
  1. package/dist/cli.js +540 -538
  2. package/dist/index.js +10 -8
  3. package/package.json +1 -1
  4. package/dist/acp/agent.d.ts +0 -318
  5. package/dist/acp/agent.d.ts.map +0 -1
  6. package/dist/acp/agent.js +0 -795
  7. package/dist/acp/agent.js.map +0 -1
  8. package/dist/acp/backpressure-writer.d.ts +0 -49
  9. package/dist/acp/backpressure-writer.d.ts.map +0 -1
  10. package/dist/acp/backpressure-writer.js +0 -153
  11. package/dist/acp/backpressure-writer.js.map +0 -1
  12. package/dist/acp/event-adapter.d.ts +0 -242
  13. package/dist/acp/event-adapter.d.ts.map +0 -1
  14. package/dist/acp/event-adapter.js +0 -456
  15. package/dist/acp/event-adapter.js.map +0 -1
  16. package/dist/acp/index.d.ts +0 -30
  17. package/dist/acp/index.d.ts.map +0 -1
  18. package/dist/acp/index.js +0 -36
  19. package/dist/acp/index.js.map +0 -1
  20. package/dist/acp/modes.d.ts +0 -56
  21. package/dist/acp/modes.d.ts.map +0 -1
  22. package/dist/acp/modes.js +0 -135
  23. package/dist/acp/modes.js.map +0 -1
  24. package/dist/acp/session-manager.d.ts +0 -170
  25. package/dist/acp/session-manager.d.ts.map +0 -1
  26. package/dist/acp/session-manager.js +0 -381
  27. package/dist/acp/session-manager.js.map +0 -1
  28. package/dist/acp/text-coalescer.d.ts +0 -45
  29. package/dist/acp/text-coalescer.d.ts.map +0 -1
  30. package/dist/acp/text-coalescer.js +0 -110
  31. package/dist/acp/text-coalescer.js.map +0 -1
  32. package/dist/acp/tool-bridge.d.ts +0 -156
  33. package/dist/acp/tool-bridge.d.ts.map +0 -1
  34. package/dist/acp/tool-bridge.js +0 -381
  35. package/dist/acp/tool-bridge.js.map +0 -1
  36. package/dist/acp/types.d.ts +0 -314
  37. package/dist/acp/types.d.ts.map +0 -1
  38. package/dist/acp/types.js +0 -8
  39. package/dist/acp/types.js.map +0 -1
  40. package/dist/cli.d.ts +0 -9
  41. package/dist/cli.d.ts.map +0 -1
  42. package/dist/cli.js.map +0 -1
  43. package/dist/commands/acp.d.ts +0 -26
  44. package/dist/commands/acp.d.ts.map +0 -1
  45. package/dist/commands/acp.js +0 -492
  46. package/dist/commands/acp.js.map +0 -1
  47. package/dist/commands/cache.d.ts +0 -33
  48. package/dist/commands/cache.d.ts.map +0 -1
  49. package/dist/commands/cache.js +0 -537
  50. package/dist/commands/cache.js.map +0 -1
  51. package/dist/commands/config.d.ts +0 -10
  52. package/dist/commands/config.d.ts.map +0 -1
  53. package/dist/commands/config.js +0 -367
  54. package/dist/commands/config.js.map +0 -1
  55. package/dist/commands/consent.d.ts +0 -21
  56. package/dist/commands/consent.d.ts.map +0 -1
  57. package/dist/commands/consent.js +0 -334
  58. package/dist/commands/consent.js.map +0 -1
  59. package/dist/commands/data.d.ts +0 -24
  60. package/dist/commands/data.d.ts.map +0 -1
  61. package/dist/commands/data.js +0 -586
  62. package/dist/commands/data.js.map +0 -1
  63. package/dist/commands/index.d.ts +0 -145
  64. package/dist/commands/index.d.ts.map +0 -1
  65. package/dist/commands/index.js +0 -210
  66. package/dist/commands/index.js.map +0 -1
  67. package/dist/commands/init.d.ts +0 -106
  68. package/dist/commands/init.d.ts.map +0 -1
  69. package/dist/commands/init.js +0 -349
  70. package/dist/commands/init.js.map +0 -1
  71. package/dist/commands/logs.d.ts +0 -13
  72. package/dist/commands/logs.d.ts.map +0 -1
  73. package/dist/commands/logs.js +0 -359
  74. package/dist/commands/logs.js.map +0 -1
  75. package/dist/commands/mcp.d.ts +0 -20
  76. package/dist/commands/mcp.d.ts.map +0 -1
  77. package/dist/commands/mcp.js +0 -687
  78. package/dist/commands/mcp.js.map +0 -1
  79. package/dist/commands/reset.d.ts +0 -20
  80. package/dist/commands/reset.d.ts.map +0 -1
  81. package/dist/commands/reset.js +0 -372
  82. package/dist/commands/reset.js.map +0 -1
  83. package/dist/commands/setup.d.ts +0 -74
  84. package/dist/commands/setup.d.ts.map +0 -1
  85. package/dist/commands/setup.js +0 -863
  86. package/dist/commands/setup.js.map +0 -1
  87. package/dist/commands/slash/agents.d.ts +0 -40
  88. package/dist/commands/slash/agents.d.ts.map +0 -1
  89. package/dist/commands/slash/agents.js +0 -519
  90. package/dist/commands/slash/agents.js.map +0 -1
  91. package/dist/commands/slash/approve.d.ts +0 -46
  92. package/dist/commands/slash/approve.d.ts.map +0 -1
  93. package/dist/commands/slash/approve.js +0 -239
  94. package/dist/commands/slash/approve.js.map +0 -1
  95. package/dist/commands/slash/attach.d.ts +0 -70
  96. package/dist/commands/slash/attach.d.ts.map +0 -1
  97. package/dist/commands/slash/attach.js +0 -333
  98. package/dist/commands/slash/attach.js.map +0 -1
  99. package/dist/commands/slash/clear.d.ts +0 -47
  100. package/dist/commands/slash/clear.d.ts.map +0 -1
  101. package/dist/commands/slash/clear.js +0 -261
  102. package/dist/commands/slash/clear.js.map +0 -1
  103. package/dist/commands/slash/commit.d.ts +0 -40
  104. package/dist/commands/slash/commit.d.ts.map +0 -1
  105. package/dist/commands/slash/commit.js +0 -337
  106. package/dist/commands/slash/commit.js.map +0 -1
  107. package/dist/commands/slash/compact.d.ts +0 -48
  108. package/dist/commands/slash/compact.d.ts.map +0 -1
  109. package/dist/commands/slash/compact.js +0 -288
  110. package/dist/commands/slash/compact.js.map +0 -1
  111. package/dist/commands/slash/config.d.ts +0 -20
  112. package/dist/commands/slash/config.d.ts.map +0 -1
  113. package/dist/commands/slash/config.js +0 -136
  114. package/dist/commands/slash/config.js.map +0 -1
  115. package/dist/commands/slash/context.d.ts +0 -49
  116. package/dist/commands/slash/context.d.ts.map +0 -1
  117. package/dist/commands/slash/context.js +0 -430
  118. package/dist/commands/slash/context.js.map +0 -1
  119. package/dist/commands/slash/cost.d.ts +0 -34
  120. package/dist/commands/slash/cost.d.ts.map +0 -1
  121. package/dist/commands/slash/cost.js +0 -312
  122. package/dist/commands/slash/cost.js.map +0 -1
  123. package/dist/commands/slash/custom.d.ts +0 -41
  124. package/dist/commands/slash/custom.d.ts.map +0 -1
  125. package/dist/commands/slash/custom.js +0 -126
  126. package/dist/commands/slash/custom.js.map +0 -1
  127. package/dist/commands/slash/exit.d.ts +0 -25
  128. package/dist/commands/slash/exit.d.ts.map +0 -1
  129. package/dist/commands/slash/exit.js +0 -186
  130. package/dist/commands/slash/exit.js.map +0 -1
  131. package/dist/commands/slash/export.d.ts +0 -27
  132. package/dist/commands/slash/export.d.ts.map +0 -1
  133. package/dist/commands/slash/export.js +0 -318
  134. package/dist/commands/slash/export.js.map +0 -1
  135. package/dist/commands/slash/files.d.ts +0 -47
  136. package/dist/commands/slash/files.d.ts.map +0 -1
  137. package/dist/commands/slash/files.js +0 -521
  138. package/dist/commands/slash/files.js.map +0 -1
  139. package/dist/commands/slash/help.d.ts +0 -50
  140. package/dist/commands/slash/help.d.ts.map +0 -1
  141. package/dist/commands/slash/help.js +0 -282
  142. package/dist/commands/slash/help.js.map +0 -1
  143. package/dist/commands/slash/index-cmd.d.ts +0 -41
  144. package/dist/commands/slash/index-cmd.d.ts.map +0 -1
  145. package/dist/commands/slash/index-cmd.js +0 -349
  146. package/dist/commands/slash/index-cmd.js.map +0 -1
  147. package/dist/commands/slash/index.d.ts +0 -97
  148. package/dist/commands/slash/index.d.ts.map +0 -1
  149. package/dist/commands/slash/index.js +0 -251
  150. package/dist/commands/slash/index.js.map +0 -1
  151. package/dist/commands/slash/login.d.ts +0 -23
  152. package/dist/commands/slash/login.d.ts.map +0 -1
  153. package/dist/commands/slash/login.js +0 -175
  154. package/dist/commands/slash/login.js.map +0 -1
  155. package/dist/commands/slash/logout.d.ts +0 -23
  156. package/dist/commands/slash/logout.d.ts.map +0 -1
  157. package/dist/commands/slash/logout.js +0 -153
  158. package/dist/commands/slash/logout.js.map +0 -1
  159. package/dist/commands/slash/logs.d.ts +0 -29
  160. package/dist/commands/slash/logs.d.ts.map +0 -1
  161. package/dist/commands/slash/logs.js +0 -423
  162. package/dist/commands/slash/logs.js.map +0 -1
  163. package/dist/commands/slash/mcp.d.ts +0 -29
  164. package/dist/commands/slash/mcp.d.ts.map +0 -1
  165. package/dist/commands/slash/mcp.js +0 -1026
  166. package/dist/commands/slash/mcp.js.map +0 -1
  167. package/dist/commands/slash/model.d.ts +0 -60
  168. package/dist/commands/slash/model.d.ts.map +0 -1
  169. package/dist/commands/slash/model.js +0 -466
  170. package/dist/commands/slash/model.js.map +0 -1
  171. package/dist/commands/slash/personality.d.ts +0 -40
  172. package/dist/commands/slash/personality.d.ts.map +0 -1
  173. package/dist/commands/slash/personality.js +0 -272
  174. package/dist/commands/slash/personality.js.map +0 -1
  175. package/dist/commands/slash/purge.d.ts +0 -42
  176. package/dist/commands/slash/purge.d.ts.map +0 -1
  177. package/dist/commands/slash/purge.js +0 -233
  178. package/dist/commands/slash/purge.js.map +0 -1
  179. package/dist/commands/slash/reset.d.ts +0 -44
  180. package/dist/commands/slash/reset.d.ts.map +0 -1
  181. package/dist/commands/slash/reset.js +0 -326
  182. package/dist/commands/slash/reset.js.map +0 -1
  183. package/dist/commands/slash/skills.d.ts +0 -40
  184. package/dist/commands/slash/skills.d.ts.map +0 -1
  185. package/dist/commands/slash/skills.js +0 -207
  186. package/dist/commands/slash/skills.js.map +0 -1
  187. package/dist/commands/slash/tokens.d.ts +0 -34
  188. package/dist/commands/slash/tokens.d.ts.map +0 -1
  189. package/dist/commands/slash/tokens.js +0 -205
  190. package/dist/commands/slash/tokens.js.map +0 -1
  191. package/dist/commands/slash/unleash.d.ts +0 -50
  192. package/dist/commands/slash/unleash.d.ts.map +0 -1
  193. package/dist/commands/slash/unleash.js +0 -262
  194. package/dist/commands/slash/unleash.js.map +0 -1
  195. package/dist/commands/slash/update.d.ts +0 -34
  196. package/dist/commands/slash/update.d.ts.map +0 -1
  197. package/dist/commands/slash/update.js +0 -364
  198. package/dist/commands/slash/update.js.map +0 -1
  199. package/dist/commands/slash/wrap.d.ts +0 -18
  200. package/dist/commands/slash/wrap.d.ts.map +0 -1
  201. package/dist/commands/slash/wrap.js +0 -21
  202. package/dist/commands/slash/wrap.js.map +0 -1
  203. package/dist/commands/tokens.d.ts +0 -26
  204. package/dist/commands/tokens.d.ts.map +0 -1
  205. package/dist/commands/tokens.js +0 -245
  206. package/dist/commands/tokens.js.map +0 -1
  207. package/dist/constants/builtin-agents.d.ts +0 -27
  208. package/dist/constants/builtin-agents.d.ts.map +0 -1
  209. package/dist/constants/builtin-agents.js +0 -710
  210. package/dist/constants/builtin-agents.js.map +0 -1
  211. package/dist/constants/builtin-skills.d.ts +0 -32
  212. package/dist/constants/builtin-skills.d.ts.map +0 -1
  213. package/dist/constants/builtin-skills.js +0 -389
  214. package/dist/constants/builtin-skills.js.map +0 -1
  215. package/dist/constants/defaults.d.ts +0 -448
  216. package/dist/constants/defaults.d.ts.map +0 -1
  217. package/dist/constants/defaults.js +0 -829
  218. package/dist/constants/defaults.js.map +0 -1
  219. package/dist/constants/index.d.ts +0 -27
  220. package/dist/constants/index.d.ts.map +0 -1
  221. package/dist/constants/index.js +0 -85
  222. package/dist/constants/index.js.map +0 -1
  223. package/dist/constants/install-hints.d.ts +0 -7
  224. package/dist/constants/install-hints.d.ts.map +0 -1
  225. package/dist/constants/install-hints.js +0 -123
  226. package/dist/constants/install-hints.js.map +0 -1
  227. package/dist/constants/models.d.ts +0 -255
  228. package/dist/constants/models.d.ts.map +0 -1
  229. package/dist/constants/models.js +0 -596
  230. package/dist/constants/models.js.map +0 -1
  231. package/dist/constants/schedule.d.ts +0 -43
  232. package/dist/constants/schedule.d.ts.map +0 -1
  233. package/dist/constants/schedule.js +0 -110
  234. package/dist/constants/schedule.js.map +0 -1
  235. package/dist/constants/system-utilities.d.ts +0 -57
  236. package/dist/constants/system-utilities.d.ts.map +0 -1
  237. package/dist/constants/system-utilities.js +0 -421
  238. package/dist/constants/system-utilities.js.map +0 -1
  239. package/dist/constants/token-limits.d.ts +0 -102
  240. package/dist/constants/token-limits.d.ts.map +0 -1
  241. package/dist/constants/token-limits.js +0 -286
  242. package/dist/constants/token-limits.js.map +0 -1
  243. package/dist/core/autocomplete.d.ts +0 -132
  244. package/dist/core/autocomplete.d.ts.map +0 -1
  245. package/dist/core/autocomplete.js +0 -653
  246. package/dist/core/autocomplete.js.map +0 -1
  247. package/dist/core/command-parser.d.ts +0 -301
  248. package/dist/core/command-parser.d.ts.map +0 -1
  249. package/dist/core/command-parser.js +0 -526
  250. package/dist/core/command-parser.js.map +0 -1
  251. package/dist/core/context-builder.d.ts +0 -264
  252. package/dist/core/context-builder.d.ts.map +0 -1
  253. package/dist/core/context-builder.js +0 -1018
  254. package/dist/core/context-builder.js.map +0 -1
  255. package/dist/core/event-emitter.d.ts +0 -411
  256. package/dist/core/event-emitter.d.ts.map +0 -1
  257. package/dist/core/event-emitter.js +0 -138
  258. package/dist/core/event-emitter.js.map +0 -1
  259. package/dist/core/history-manager.d.ts +0 -62
  260. package/dist/core/history-manager.d.ts.map +0 -1
  261. package/dist/core/history-manager.js +0 -151
  262. package/dist/core/history-manager.js.map +0 -1
  263. package/dist/core/slash-command-handler.d.ts +0 -352
  264. package/dist/core/slash-command-handler.d.ts.map +0 -1
  265. package/dist/core/slash-command-handler.js +0 -563
  266. package/dist/core/slash-command-handler.js.map +0 -1
  267. package/dist/core/task-processor.d.ts +0 -179
  268. package/dist/core/task-processor.d.ts.map +0 -1
  269. package/dist/core/task-processor.js +0 -519
  270. package/dist/core/task-processor.js.map +0 -1
  271. package/dist/index.d.ts +0 -90
  272. package/dist/index.d.ts.map +0 -1
  273. package/dist/index.js.map +0 -1
  274. package/dist/prompts/agent-prompt-generator.d.ts +0 -26
  275. package/dist/prompts/agent-prompt-generator.d.ts.map +0 -1
  276. package/dist/prompts/agent-prompt-generator.js +0 -244
  277. package/dist/prompts/agent-prompt-generator.js.map +0 -1
  278. package/dist/prompts/commit-message.d.ts +0 -35
  279. package/dist/prompts/commit-message.d.ts.map +0 -1
  280. package/dist/prompts/commit-message.js +0 -187
  281. package/dist/prompts/commit-message.js.map +0 -1
  282. package/dist/prompts/conversation.d.ts +0 -51
  283. package/dist/prompts/conversation.d.ts.map +0 -1
  284. package/dist/prompts/conversation.js +0 -115
  285. package/dist/prompts/conversation.js.map +0 -1
  286. package/dist/prompts/index.d.ts +0 -39
  287. package/dist/prompts/index.d.ts.map +0 -1
  288. package/dist/prompts/index.js +0 -74
  289. package/dist/prompts/index.js.map +0 -1
  290. package/dist/prompts/memory.d.ts +0 -6
  291. package/dist/prompts/memory.d.ts.map +0 -1
  292. package/dist/prompts/memory.js +0 -29
  293. package/dist/prompts/memory.js.map +0 -1
  294. package/dist/prompts/personality.d.ts +0 -77
  295. package/dist/prompts/personality.d.ts.map +0 -1
  296. package/dist/prompts/personality.js +0 -393
  297. package/dist/prompts/personality.js.map +0 -1
  298. package/dist/prompts/plan-generator.d.ts +0 -144
  299. package/dist/prompts/plan-generator.d.ts.map +0 -1
  300. package/dist/prompts/plan-generator.js +0 -553
  301. package/dist/prompts/plan-generator.js.map +0 -1
  302. package/dist/prompts/system.d.ts +0 -95
  303. package/dist/prompts/system.d.ts.map +0 -1
  304. package/dist/prompts/system.js +0 -461
  305. package/dist/prompts/system.js.map +0 -1
  306. package/dist/prompts/task-processor.d.ts +0 -94
  307. package/dist/prompts/task-processor.d.ts.map +0 -1
  308. package/dist/prompts/task-processor.js +0 -554
  309. package/dist/prompts/task-processor.js.map +0 -1
  310. package/dist/prompts/unguarded.d.ts +0 -78
  311. package/dist/prompts/unguarded.d.ts.map +0 -1
  312. package/dist/prompts/unguarded.js +0 -418
  313. package/dist/prompts/unguarded.js.map +0 -1
  314. package/dist/prompts/utils.d.ts +0 -73
  315. package/dist/prompts/utils.d.ts.map +0 -1
  316. package/dist/prompts/utils.js +0 -114
  317. package/dist/prompts/utils.js.map +0 -1
  318. package/dist/prompts/workflow.d.ts +0 -241
  319. package/dist/prompts/workflow.d.ts.map +0 -1
  320. package/dist/prompts/workflow.js +0 -608
  321. package/dist/prompts/workflow.js.map +0 -1
  322. package/dist/services/action-logger.d.ts +0 -383
  323. package/dist/services/action-logger.d.ts.map +0 -1
  324. package/dist/services/action-logger.js +0 -544
  325. package/dist/services/action-logger.js.map +0 -1
  326. package/dist/services/agent-budget-allocator.d.ts +0 -111
  327. package/dist/services/agent-budget-allocator.d.ts.map +0 -1
  328. package/dist/services/agent-budget-allocator.js +0 -278
  329. package/dist/services/agent-budget-allocator.js.map +0 -1
  330. package/dist/services/agent-manager.d.ts +0 -181
  331. package/dist/services/agent-manager.d.ts.map +0 -1
  332. package/dist/services/agent-manager.js +0 -749
  333. package/dist/services/agent-manager.js.map +0 -1
  334. package/dist/services/agent-spawner.d.ts +0 -138
  335. package/dist/services/agent-spawner.d.ts.map +0 -1
  336. package/dist/services/agent-spawner.js +0 -748
  337. package/dist/services/agent-spawner.js.map +0 -1
  338. package/dist/services/agent-state-service.d.ts +0 -145
  339. package/dist/services/agent-state-service.d.ts.map +0 -1
  340. package/dist/services/agent-state-service.js +0 -247
  341. package/dist/services/agent-state-service.js.map +0 -1
  342. package/dist/services/anthropic-client.d.ts +0 -357
  343. package/dist/services/anthropic-client.d.ts.map +0 -1
  344. package/dist/services/anthropic-client.js +0 -1451
  345. package/dist/services/anthropic-client.js.map +0 -1
  346. package/dist/services/approval-manager.d.ts +0 -385
  347. package/dist/services/approval-manager.d.ts.map +0 -1
  348. package/dist/services/approval-manager.js +0 -1044
  349. package/dist/services/approval-manager.js.map +0 -1
  350. package/dist/services/audit-logger.d.ts +0 -245
  351. package/dist/services/audit-logger.d.ts.map +0 -1
  352. package/dist/services/audit-logger.js +0 -324
  353. package/dist/services/audit-logger.js.map +0 -1
  354. package/dist/services/backup-manager.d.ts +0 -136
  355. package/dist/services/backup-manager.d.ts.map +0 -1
  356. package/dist/services/backup-manager.js +0 -260
  357. package/dist/services/backup-manager.js.map +0 -1
  358. package/dist/services/cache-service.d.ts +0 -247
  359. package/dist/services/cache-service.d.ts.map +0 -1
  360. package/dist/services/cache-service.js +0 -558
  361. package/dist/services/cache-service.js.map +0 -1
  362. package/dist/services/chat-archival-service.d.ts +0 -108
  363. package/dist/services/chat-archival-service.d.ts.map +0 -1
  364. package/dist/services/chat-archival-service.js +0 -465
  365. package/dist/services/chat-archival-service.js.map +0 -1
  366. package/dist/services/codebase-indexer.d.ts +0 -272
  367. package/dist/services/codebase-indexer.d.ts.map +0 -1
  368. package/dist/services/codebase-indexer.js +0 -863
  369. package/dist/services/codebase-indexer.js.map +0 -1
  370. package/dist/services/compass-auth-service.d.ts +0 -204
  371. package/dist/services/compass-auth-service.d.ts.map +0 -1
  372. package/dist/services/compass-auth-service.js +0 -391
  373. package/dist/services/compass-auth-service.js.map +0 -1
  374. package/dist/services/complexity-classifier.d.ts +0 -208
  375. package/dist/services/complexity-classifier.d.ts.map +0 -1
  376. package/dist/services/complexity-classifier.js +0 -1410
  377. package/dist/services/complexity-classifier.js.map +0 -1
  378. package/dist/services/config-manager.d.ts +0 -278
  379. package/dist/services/config-manager.d.ts.map +0 -1
  380. package/dist/services/config-manager.js +0 -651
  381. package/dist/services/config-manager.js.map +0 -1
  382. package/dist/services/consent-manager.d.ts +0 -239
  383. package/dist/services/consent-manager.d.ts.map +0 -1
  384. package/dist/services/consent-manager.js +0 -516
  385. package/dist/services/consent-manager.js.map +0 -1
  386. package/dist/services/conversation-compactor.d.ts +0 -223
  387. package/dist/services/conversation-compactor.d.ts.map +0 -1
  388. package/dist/services/conversation-compactor.js +0 -750
  389. package/dist/services/conversation-compactor.js.map +0 -1
  390. package/dist/services/cost-tracker.d.ts +0 -167
  391. package/dist/services/cost-tracker.d.ts.map +0 -1
  392. package/dist/services/cost-tracker.js +0 -199
  393. package/dist/services/cost-tracker.js.map +0 -1
  394. package/dist/services/credential-store.d.ts +0 -273
  395. package/dist/services/credential-store.d.ts.map +0 -1
  396. package/dist/services/credential-store.js +0 -877
  397. package/dist/services/credential-store.js.map +0 -1
  398. package/dist/services/custom-command-service.d.ts +0 -112
  399. package/dist/services/custom-command-service.d.ts.map +0 -1
  400. package/dist/services/custom-command-service.js +0 -464
  401. package/dist/services/custom-command-service.js.map +0 -1
  402. package/dist/services/default-statusline-renderer.d.ts +0 -60
  403. package/dist/services/default-statusline-renderer.d.ts.map +0 -1
  404. package/dist/services/default-statusline-renderer.js +0 -110
  405. package/dist/services/default-statusline-renderer.js.map +0 -1
  406. package/dist/services/enhanced-context-gatherer.d.ts +0 -116
  407. package/dist/services/enhanced-context-gatherer.d.ts.map +0 -1
  408. package/dist/services/enhanced-context-gatherer.js +0 -605
  409. package/dist/services/enhanced-context-gatherer.js.map +0 -1
  410. package/dist/services/file-hash-tracker.d.ts +0 -95
  411. package/dist/services/file-hash-tracker.d.ts.map +0 -1
  412. package/dist/services/file-hash-tracker.js +0 -199
  413. package/dist/services/file-hash-tracker.js.map +0 -1
  414. package/dist/services/file-service.d.ts +0 -274
  415. package/dist/services/file-service.d.ts.map +0 -1
  416. package/dist/services/file-service.js +0 -876
  417. package/dist/services/file-service.js.map +0 -1
  418. package/dist/services/git-service.d.ts +0 -536
  419. package/dist/services/git-service.d.ts.map +0 -1
  420. package/dist/services/git-service.js +0 -1215
  421. package/dist/services/git-service.js.map +0 -1
  422. package/dist/services/hook-service.d.ts +0 -148
  423. package/dist/services/hook-service.d.ts.map +0 -1
  424. package/dist/services/hook-service.js +0 -705
  425. package/dist/services/hook-service.js.map +0 -1
  426. package/dist/services/ide-state-service.d.ts +0 -114
  427. package/dist/services/ide-state-service.d.ts.map +0 -1
  428. package/dist/services/ide-state-service.js +0 -204
  429. package/dist/services/ide-state-service.js.map +0 -1
  430. package/dist/services/interactive-clarifier.d.ts +0 -90
  431. package/dist/services/interactive-clarifier.d.ts.map +0 -1
  432. package/dist/services/interactive-clarifier.js +0 -446
  433. package/dist/services/interactive-clarifier.js.map +0 -1
  434. package/dist/services/iteration-scoper.d.ts +0 -225
  435. package/dist/services/iteration-scoper.d.ts.map +0 -1
  436. package/dist/services/iteration-scoper.js +0 -387
  437. package/dist/services/iteration-scoper.js.map +0 -1
  438. package/dist/services/llm-plan-generator.d.ts +0 -44
  439. package/dist/services/llm-plan-generator.d.ts.map +0 -1
  440. package/dist/services/llm-plan-generator.js +0 -863
  441. package/dist/services/llm-plan-generator.js.map +0 -1
  442. package/dist/services/llm-system-prompt-generator.d.ts +0 -85
  443. package/dist/services/llm-system-prompt-generator.d.ts.map +0 -1
  444. package/dist/services/llm-system-prompt-generator.js +0 -257
  445. package/dist/services/llm-system-prompt-generator.js.map +0 -1
  446. package/dist/services/log-interpreter.d.ts +0 -190
  447. package/dist/services/log-interpreter.d.ts.map +0 -1
  448. package/dist/services/log-interpreter.js +0 -520
  449. package/dist/services/log-interpreter.js.map +0 -1
  450. package/dist/services/mcp-config-manager.d.ts +0 -141
  451. package/dist/services/mcp-config-manager.d.ts.map +0 -1
  452. package/dist/services/mcp-config-manager.js +0 -678
  453. package/dist/services/mcp-config-manager.js.map +0 -1
  454. package/dist/services/mcp-oauth-service.d.ts +0 -170
  455. package/dist/services/mcp-oauth-service.d.ts.map +0 -1
  456. package/dist/services/mcp-oauth-service.js +0 -892
  457. package/dist/services/mcp-oauth-service.js.map +0 -1
  458. package/dist/services/mcp-plugin-support.d.ts +0 -81
  459. package/dist/services/mcp-plugin-support.d.ts.map +0 -1
  460. package/dist/services/mcp-plugin-support.js +0 -305
  461. package/dist/services/mcp-plugin-support.js.map +0 -1
  462. package/dist/services/mcp-server-manager.d.ts +0 -134
  463. package/dist/services/mcp-server-manager.d.ts.map +0 -1
  464. package/dist/services/mcp-server-manager.js +0 -613
  465. package/dist/services/mcp-server-manager.js.map +0 -1
  466. package/dist/services/mcp-tool-integration.d.ts +0 -119
  467. package/dist/services/mcp-tool-integration.d.ts.map +0 -1
  468. package/dist/services/mcp-tool-integration.js +0 -381
  469. package/dist/services/mcp-tool-integration.js.map +0 -1
  470. package/dist/services/mcp-transport.d.ts +0 -105
  471. package/dist/services/mcp-transport.d.ts.map +0 -1
  472. package/dist/services/mcp-transport.js +0 -1316
  473. package/dist/services/mcp-transport.js.map +0 -1
  474. package/dist/services/memory-service.d.ts +0 -55
  475. package/dist/services/memory-service.d.ts.map +0 -1
  476. package/dist/services/memory-service.js +0 -251
  477. package/dist/services/memory-service.js.map +0 -1
  478. package/dist/services/model-availability.d.ts +0 -64
  479. package/dist/services/model-availability.d.ts.map +0 -1
  480. package/dist/services/model-availability.js +0 -114
  481. package/dist/services/model-availability.js.map +0 -1
  482. package/dist/services/plan-generator.d.ts +0 -98
  483. package/dist/services/plan-generator.d.ts.map +0 -1
  484. package/dist/services/plan-generator.js +0 -658
  485. package/dist/services/plan-generator.js.map +0 -1
  486. package/dist/services/plan-mode-fallback.d.ts +0 -80
  487. package/dist/services/plan-mode-fallback.d.ts.map +0 -1
  488. package/dist/services/plan-mode-fallback.js +0 -307
  489. package/dist/services/plan-mode-fallback.js.map +0 -1
  490. package/dist/services/plan-mode-handler.d.ts +0 -42
  491. package/dist/services/plan-mode-handler.d.ts.map +0 -1
  492. package/dist/services/plan-mode-handler.js +0 -388
  493. package/dist/services/plan-mode-handler.js.map +0 -1
  494. package/dist/services/plan-persistence.d.ts +0 -203
  495. package/dist/services/plan-persistence.d.ts.map +0 -1
  496. package/dist/services/plan-persistence.js +0 -538
  497. package/dist/services/plan-persistence.js.map +0 -1
  498. package/dist/services/prompt-preprocessor.d.ts +0 -73
  499. package/dist/services/prompt-preprocessor.d.ts.map +0 -1
  500. package/dist/services/prompt-preprocessor.js +0 -146
  501. package/dist/services/prompt-preprocessor.js.map +0 -1
  502. package/dist/services/rating-service.d.ts +0 -84
  503. package/dist/services/rating-service.d.ts.map +0 -1
  504. package/dist/services/rating-service.js +0 -171
  505. package/dist/services/rating-service.js.map +0 -1
  506. package/dist/services/rating-state-manager.d.ts +0 -131
  507. package/dist/services/rating-state-manager.d.ts.map +0 -1
  508. package/dist/services/rating-state-manager.js +0 -270
  509. package/dist/services/rating-state-manager.js.map +0 -1
  510. package/dist/services/sdk-runner.d.ts +0 -113
  511. package/dist/services/sdk-runner.d.ts.map +0 -1
  512. package/dist/services/sdk-runner.js +0 -1424
  513. package/dist/services/sdk-runner.js.map +0 -1
  514. package/dist/services/session-manager.d.ts +0 -528
  515. package/dist/services/session-manager.d.ts.map +0 -1
  516. package/dist/services/session-manager.js +0 -1184
  517. package/dist/services/session-manager.js.map +0 -1
  518. package/dist/services/shell-executor.d.ts +0 -337
  519. package/dist/services/shell-executor.d.ts.map +0 -1
  520. package/dist/services/shell-executor.js +0 -1201
  521. package/dist/services/shell-executor.js.map +0 -1
  522. package/dist/services/skill-service.d.ts +0 -149
  523. package/dist/services/skill-service.d.ts.map +0 -1
  524. package/dist/services/skill-service.js +0 -594
  525. package/dist/services/skill-service.js.map +0 -1
  526. package/dist/services/statusline-executor.d.ts +0 -102
  527. package/dist/services/statusline-executor.d.ts.map +0 -1
  528. package/dist/services/statusline-executor.js +0 -305
  529. package/dist/services/statusline-executor.js.map +0 -1
  530. package/dist/services/step-tracker.d.ts +0 -356
  531. package/dist/services/step-tracker.d.ts.map +0 -1
  532. package/dist/services/step-tracker.js +0 -634
  533. package/dist/services/step-tracker.js.map +0 -1
  534. package/dist/services/system-event-logger.d.ts +0 -473
  535. package/dist/services/system-event-logger.d.ts.map +0 -1
  536. package/dist/services/system-event-logger.js +0 -790
  537. package/dist/services/system-event-logger.js.map +0 -1
  538. package/dist/services/system-utility-detector.d.ts +0 -91
  539. package/dist/services/system-utility-detector.d.ts.map +0 -1
  540. package/dist/services/system-utility-detector.js +0 -238
  541. package/dist/services/system-utility-detector.js.map +0 -1
  542. package/dist/services/team-context-store.d.ts +0 -100
  543. package/dist/services/team-context-store.d.ts.map +0 -1
  544. package/dist/services/team-context-store.js +0 -513
  545. package/dist/services/team-context-store.js.map +0 -1
  546. package/dist/services/temp-file-service.d.ts +0 -164
  547. package/dist/services/temp-file-service.d.ts.map +0 -1
  548. package/dist/services/temp-file-service.js +0 -303
  549. package/dist/services/temp-file-service.js.map +0 -1
  550. package/dist/services/token-limit-enforcer.d.ts +0 -53
  551. package/dist/services/token-limit-enforcer.d.ts.map +0 -1
  552. package/dist/services/token-limit-enforcer.js +0 -90
  553. package/dist/services/token-limit-enforcer.js.map +0 -1
  554. package/dist/services/token-limit-store.d.ts +0 -105
  555. package/dist/services/token-limit-store.d.ts.map +0 -1
  556. package/dist/services/token-limit-store.js +0 -288
  557. package/dist/services/token-limit-store.js.map +0 -1
  558. package/dist/services/token-tracker.d.ts +0 -290
  559. package/dist/services/token-tracker.d.ts.map +0 -1
  560. package/dist/services/token-tracker.js +0 -751
  561. package/dist/services/token-tracker.js.map +0 -1
  562. package/dist/services/tool-registry.d.ts +0 -302
  563. package/dist/services/tool-registry.d.ts.map +0 -1
  564. package/dist/services/tool-registry.js +0 -606
  565. package/dist/services/tool-registry.js.map +0 -1
  566. package/dist/services/tools-logger.d.ts +0 -152
  567. package/dist/services/tools-logger.d.ts.map +0 -1
  568. package/dist/services/tools-logger.js +0 -222
  569. package/dist/services/tools-logger.js.map +0 -1
  570. package/dist/services/update-plan-handler.d.ts +0 -56
  571. package/dist/services/update-plan-handler.d.ts.map +0 -1
  572. package/dist/services/update-plan-handler.js +0 -372
  573. package/dist/services/update-plan-handler.js.map +0 -1
  574. package/dist/services/update-service.d.ts +0 -197
  575. package/dist/services/update-service.d.ts.map +0 -1
  576. package/dist/services/update-service.js +0 -749
  577. package/dist/services/update-service.js.map +0 -1
  578. package/dist/services/verifier.d.ts +0 -113
  579. package/dist/services/verifier.d.ts.map +0 -1
  580. package/dist/services/verifier.js +0 -541
  581. package/dist/services/verifier.js.map +0 -1
  582. package/dist/services/workflow-manager.d.ts +0 -277
  583. package/dist/services/workflow-manager.d.ts.map +0 -1
  584. package/dist/services/workflow-manager.js +0 -616
  585. package/dist/services/workflow-manager.js.map +0 -1
  586. package/dist/services/workflow-orchestrator.d.ts +0 -148
  587. package/dist/services/workflow-orchestrator.d.ts.map +0 -1
  588. package/dist/services/workflow-orchestrator.js +0 -617
  589. package/dist/services/workflow-orchestrator.js.map +0 -1
  590. package/dist/services/worktree-manager.d.ts +0 -36
  591. package/dist/services/worktree-manager.d.ts.map +0 -1
  592. package/dist/services/worktree-manager.js +0 -185
  593. package/dist/services/worktree-manager.js.map +0 -1
  594. package/dist/templates/ascii-art.d.ts +0 -136
  595. package/dist/templates/ascii-art.d.ts.map +0 -1
  596. package/dist/templates/ascii-art.js +0 -286
  597. package/dist/templates/ascii-art.js.map +0 -1
  598. package/dist/templates/help.d.ts +0 -186
  599. package/dist/templates/help.d.ts.map +0 -1
  600. package/dist/templates/help.js +0 -588
  601. package/dist/templates/help.js.map +0 -1
  602. package/dist/templates/prompts/workflow-prompts.d.ts +0 -9
  603. package/dist/templates/prompts/workflow-prompts.d.ts.map +0 -1
  604. package/dist/templates/prompts/workflow-prompts.js +0 -9
  605. package/dist/templates/prompts/workflow-prompts.js.map +0 -1
  606. package/dist/tools/agent-tools.d.ts +0 -9
  607. package/dist/tools/agent-tools.d.ts.map +0 -1
  608. package/dist/tools/agent-tools.js +0 -349
  609. package/dist/tools/agent-tools.js.map +0 -1
  610. package/dist/tools/edit-replacers.d.ts +0 -90
  611. package/dist/tools/edit-replacers.d.ts.map +0 -1
  612. package/dist/tools/edit-replacers.js +0 -553
  613. package/dist/tools/edit-replacers.js.map +0 -1
  614. package/dist/tools/file-tools.d.ts +0 -13
  615. package/dist/tools/file-tools.d.ts.map +0 -1
  616. package/dist/tools/file-tools.js +0 -954
  617. package/dist/tools/file-tools.js.map +0 -1
  618. package/dist/tools/git-tools.d.ts +0 -9
  619. package/dist/tools/git-tools.d.ts.map +0 -1
  620. package/dist/tools/git-tools.js +0 -261
  621. package/dist/tools/git-tools.js.map +0 -1
  622. package/dist/tools/index.d.ts +0 -13
  623. package/dist/tools/index.d.ts.map +0 -1
  624. package/dist/tools/index.js +0 -70
  625. package/dist/tools/index.js.map +0 -1
  626. package/dist/tools/network-tools.d.ts +0 -8
  627. package/dist/tools/network-tools.d.ts.map +0 -1
  628. package/dist/tools/network-tools.js +0 -261
  629. package/dist/tools/network-tools.js.map +0 -1
  630. package/dist/tools/openai-tools.d.ts +0 -16
  631. package/dist/tools/openai-tools.d.ts.map +0 -1
  632. package/dist/tools/openai-tools.js +0 -385
  633. package/dist/tools/openai-tools.js.map +0 -1
  634. package/dist/tools/plan-tools.d.ts +0 -9
  635. package/dist/tools/plan-tools.d.ts.map +0 -1
  636. package/dist/tools/plan-tools.js +0 -223
  637. package/dist/tools/plan-tools.js.map +0 -1
  638. package/dist/tools/schedule-tools.d.ts +0 -9
  639. package/dist/tools/schedule-tools.d.ts.map +0 -1
  640. package/dist/tools/schedule-tools.js +0 -405
  641. package/dist/tools/schedule-tools.js.map +0 -1
  642. package/dist/tools/search-tools.d.ts +0 -8
  643. package/dist/tools/search-tools.d.ts.map +0 -1
  644. package/dist/tools/search-tools.js +0 -357
  645. package/dist/tools/search-tools.js.map +0 -1
  646. package/dist/tools/shared-utils.d.ts +0 -91
  647. package/dist/tools/shared-utils.d.ts.map +0 -1
  648. package/dist/tools/shared-utils.js +0 -385
  649. package/dist/tools/shared-utils.js.map +0 -1
  650. package/dist/tools/shell-tools.d.ts +0 -9
  651. package/dist/tools/shell-tools.d.ts.map +0 -1
  652. package/dist/tools/shell-tools.js +0 -409
  653. package/dist/tools/shell-tools.js.map +0 -1
  654. package/dist/tools/skill-tools.d.ts +0 -13
  655. package/dist/tools/skill-tools.d.ts.map +0 -1
  656. package/dist/tools/skill-tools.js +0 -244
  657. package/dist/tools/skill-tools.js.map +0 -1
  658. package/dist/tools/swarm-tools.d.ts +0 -9
  659. package/dist/tools/swarm-tools.d.ts.map +0 -1
  660. package/dist/tools/swarm-tools.js +0 -422
  661. package/dist/tools/swarm-tools.js.map +0 -1
  662. package/dist/tools/user-tools.d.ts +0 -13
  663. package/dist/tools/user-tools.d.ts.map +0 -1
  664. package/dist/tools/user-tools.js +0 -232
  665. package/dist/tools/user-tools.js.map +0 -1
  666. package/dist/types/agent-process.d.ts +0 -244
  667. package/dist/types/agent-process.d.ts.map +0 -1
  668. package/dist/types/agent-process.js +0 -93
  669. package/dist/types/agent-process.js.map +0 -1
  670. package/dist/types/agent.d.ts +0 -358
  671. package/dist/types/agent.d.ts.map +0 -1
  672. package/dist/types/agent.js +0 -171
  673. package/dist/types/agent.js.map +0 -1
  674. package/dist/types/anthropic.d.ts +0 -438
  675. package/dist/types/anthropic.d.ts.map +0 -1
  676. package/dist/types/anthropic.js +0 -9
  677. package/dist/types/anthropic.js.map +0 -1
  678. package/dist/types/approval.d.ts +0 -332
  679. package/dist/types/approval.d.ts.map +0 -1
  680. package/dist/types/approval.js +0 -44
  681. package/dist/types/approval.js.map +0 -1
  682. package/dist/types/autocomplete.d.ts +0 -57
  683. package/dist/types/autocomplete.d.ts.map +0 -1
  684. package/dist/types/autocomplete.js +0 -7
  685. package/dist/types/autocomplete.js.map +0 -1
  686. package/dist/types/chat-archive.d.ts +0 -161
  687. package/dist/types/chat-archive.d.ts.map +0 -1
  688. package/dist/types/chat-archive.js +0 -36
  689. package/dist/types/chat-archive.js.map +0 -1
  690. package/dist/types/config.d.ts +0 -268
  691. package/dist/types/config.d.ts.map +0 -1
  692. package/dist/types/config.js +0 -188
  693. package/dist/types/config.js.map +0 -1
  694. package/dist/types/consent.d.ts +0 -191
  695. package/dist/types/consent.d.ts.map +0 -1
  696. package/dist/types/consent.js +0 -119
  697. package/dist/types/consent.js.map +0 -1
  698. package/dist/types/custom-command.d.ts +0 -139
  699. package/dist/types/custom-command.d.ts.map +0 -1
  700. package/dist/types/custom-command.js +0 -7
  701. package/dist/types/custom-command.js.map +0 -1
  702. package/dist/types/git.d.ts +0 -20
  703. package/dist/types/git.d.ts.map +0 -1
  704. package/dist/types/git.js +0 -2
  705. package/dist/types/git.js.map +0 -1
  706. package/dist/types/hook.d.ts +0 -342
  707. package/dist/types/hook.d.ts.map +0 -1
  708. package/dist/types/hook.js +0 -84
  709. package/dist/types/hook.js.map +0 -1
  710. package/dist/types/index.d.ts +0 -86
  711. package/dist/types/index.d.ts.map +0 -1
  712. package/dist/types/index.js +0 -71
  713. package/dist/types/index.js.map +0 -1
  714. package/dist/types/mcp.d.ts +0 -456
  715. package/dist/types/mcp.d.ts.map +0 -1
  716. package/dist/types/mcp.js +0 -94
  717. package/dist/types/mcp.js.map +0 -1
  718. package/dist/types/rating.d.ts +0 -110
  719. package/dist/types/rating.d.ts.map +0 -1
  720. package/dist/types/rating.js +0 -53
  721. package/dist/types/rating.js.map +0 -1
  722. package/dist/types/schedule.d.ts +0 -91
  723. package/dist/types/schedule.d.ts.map +0 -1
  724. package/dist/types/schedule.js +0 -8
  725. package/dist/types/schedule.js.map +0 -1
  726. package/dist/types/session.d.ts +0 -361
  727. package/dist/types/session.d.ts.map +0 -1
  728. package/dist/types/session.js +0 -9
  729. package/dist/types/session.js.map +0 -1
  730. package/dist/types/skill.d.ts +0 -258
  731. package/dist/types/skill.d.ts.map +0 -1
  732. package/dist/types/skill.js +0 -79
  733. package/dist/types/skill.js.map +0 -1
  734. package/dist/types/statusline.d.ts +0 -212
  735. package/dist/types/statusline.d.ts.map +0 -1
  736. package/dist/types/statusline.js +0 -8
  737. package/dist/types/statusline.js.map +0 -1
  738. package/dist/types/stream.d.ts +0 -61
  739. package/dist/types/stream.d.ts.map +0 -1
  740. package/dist/types/stream.js +0 -17
  741. package/dist/types/stream.js.map +0 -1
  742. package/dist/types/swarm.d.ts +0 -132
  743. package/dist/types/swarm.d.ts.map +0 -1
  744. package/dist/types/swarm.js +0 -21
  745. package/dist/types/swarm.js.map +0 -1
  746. package/dist/types/token-limits.d.ts +0 -107
  747. package/dist/types/token-limits.d.ts.map +0 -1
  748. package/dist/types/token-limits.js +0 -57
  749. package/dist/types/token-limits.js.map +0 -1
  750. package/dist/types/token.d.ts +0 -329
  751. package/dist/types/token.d.ts.map +0 -1
  752. package/dist/types/token.js +0 -9
  753. package/dist/types/token.js.map +0 -1
  754. package/dist/types/update.d.ts +0 -189
  755. package/dist/types/update.d.ts.map +0 -1
  756. package/dist/types/update.js +0 -55
  757. package/dist/types/update.js.map +0 -1
  758. package/dist/types/workflow.d.ts +0 -396
  759. package/dist/types/workflow.d.ts.map +0 -1
  760. package/dist/types/workflow.js +0 -46
  761. package/dist/types/workflow.js.map +0 -1
  762. package/dist/ui/App.d.ts +0 -62
  763. package/dist/ui/App.d.ts.map +0 -1
  764. package/dist/ui/App.js +0 -511
  765. package/dist/ui/App.js.map +0 -1
  766. package/dist/ui/InteractiveSession.d.ts +0 -34
  767. package/dist/ui/InteractiveSession.d.ts.map +0 -1
  768. package/dist/ui/InteractiveSession.js +0 -3611
  769. package/dist/ui/InteractiveSession.js.map +0 -1
  770. package/dist/ui/MCPApprovalPrompt.d.ts +0 -27
  771. package/dist/ui/MCPApprovalPrompt.d.ts.map +0 -1
  772. package/dist/ui/MCPApprovalPrompt.js +0 -51
  773. package/dist/ui/MCPApprovalPrompt.js.map +0 -1
  774. package/dist/ui/SetupWizard.d.ts +0 -26
  775. package/dist/ui/SetupWizard.d.ts.map +0 -1
  776. package/dist/ui/SetupWizard.js +0 -396
  777. package/dist/ui/SetupWizard.js.map +0 -1
  778. package/dist/ui/components/AgentCreationWizard.d.ts +0 -36
  779. package/dist/ui/components/AgentCreationWizard.d.ts.map +0 -1
  780. package/dist/ui/components/AgentCreationWizard.js +0 -619
  781. package/dist/ui/components/AgentCreationWizard.js.map +0 -1
  782. package/dist/ui/components/AgentManager.d.ts +0 -41
  783. package/dist/ui/components/AgentManager.d.ts.map +0 -1
  784. package/dist/ui/components/AgentManager.js +0 -343
  785. package/dist/ui/components/AgentManager.js.map +0 -1
  786. package/dist/ui/components/ApprovalDialog.d.ts +0 -18
  787. package/dist/ui/components/ApprovalDialog.d.ts.map +0 -1
  788. package/dist/ui/components/ApprovalDialog.js +0 -439
  789. package/dist/ui/components/ApprovalDialog.js.map +0 -1
  790. package/dist/ui/components/AsciiArt.d.ts +0 -54
  791. package/dist/ui/components/AsciiArt.d.ts.map +0 -1
  792. package/dist/ui/components/AsciiArt.js +0 -89
  793. package/dist/ui/components/AsciiArt.js.map +0 -1
  794. package/dist/ui/components/ClarificationWizard.d.ts +0 -36
  795. package/dist/ui/components/ClarificationWizard.d.ts.map +0 -1
  796. package/dist/ui/components/ClarificationWizard.js +0 -407
  797. package/dist/ui/components/ClarificationWizard.js.map +0 -1
  798. package/dist/ui/components/CompassSpinner.d.ts +0 -15
  799. package/dist/ui/components/CompassSpinner.d.ts.map +0 -1
  800. package/dist/ui/components/CompassSpinner.js +0 -50
  801. package/dist/ui/components/CompassSpinner.js.map +0 -1
  802. package/dist/ui/components/ConfirmationSelector.d.ts +0 -45
  803. package/dist/ui/components/ConfirmationSelector.d.ts.map +0 -1
  804. package/dist/ui/components/ConfirmationSelector.js +0 -106
  805. package/dist/ui/components/ConfirmationSelector.js.map +0 -1
  806. package/dist/ui/components/ContextUsage.d.ts +0 -76
  807. package/dist/ui/components/ContextUsage.d.ts.map +0 -1
  808. package/dist/ui/components/ContextUsage.js +0 -188
  809. package/dist/ui/components/ContextUsage.js.map +0 -1
  810. package/dist/ui/components/DiffPreview.d.ts +0 -13
  811. package/dist/ui/components/DiffPreview.d.ts.map +0 -1
  812. package/dist/ui/components/DiffPreview.js +0 -30
  813. package/dist/ui/components/DiffPreview.js.map +0 -1
  814. package/dist/ui/components/ExecutionModeSelector.d.ts +0 -45
  815. package/dist/ui/components/ExecutionModeSelector.d.ts.map +0 -1
  816. package/dist/ui/components/ExecutionModeSelector.js +0 -120
  817. package/dist/ui/components/ExecutionModeSelector.js.map +0 -1
  818. package/dist/ui/components/FileTree.d.ts +0 -47
  819. package/dist/ui/components/FileTree.d.ts.map +0 -1
  820. package/dist/ui/components/FileTree.js +0 -258
  821. package/dist/ui/components/FileTree.js.map +0 -1
  822. package/dist/ui/components/HelpMenu.d.ts +0 -49
  823. package/dist/ui/components/HelpMenu.d.ts.map +0 -1
  824. package/dist/ui/components/HelpMenu.js +0 -91
  825. package/dist/ui/components/HelpMenu.js.map +0 -1
  826. package/dist/ui/components/InterleavedStream.d.ts +0 -42
  827. package/dist/ui/components/InterleavedStream.d.ts.map +0 -1
  828. package/dist/ui/components/InterleavedStream.js +0 -1500
  829. package/dist/ui/components/InterleavedStream.js.map +0 -1
  830. package/dist/ui/components/ModelSelector.d.ts +0 -81
  831. package/dist/ui/components/ModelSelector.d.ts.map +0 -1
  832. package/dist/ui/components/ModelSelector.js +0 -305
  833. package/dist/ui/components/ModelSelector.js.map +0 -1
  834. package/dist/ui/components/PlanApprovalDialog.d.ts +0 -21
  835. package/dist/ui/components/PlanApprovalDialog.d.ts.map +0 -1
  836. package/dist/ui/components/PlanApprovalDialog.js +0 -189
  837. package/dist/ui/components/PlanApprovalDialog.js.map +0 -1
  838. package/dist/ui/components/PlanExecutionTracker.d.ts +0 -53
  839. package/dist/ui/components/PlanExecutionTracker.d.ts.map +0 -1
  840. package/dist/ui/components/PlanExecutionTracker.js +0 -113
  841. package/dist/ui/components/PlanExecutionTracker.js.map +0 -1
  842. package/dist/ui/components/ProgressIndicator.d.ts +0 -151
  843. package/dist/ui/components/ProgressIndicator.d.ts.map +0 -1
  844. package/dist/ui/components/ProgressIndicator.js +0 -171
  845. package/dist/ui/components/ProgressIndicator.js.map +0 -1
  846. package/dist/ui/components/Prompt.d.ts +0 -47
  847. package/dist/ui/components/Prompt.d.ts.map +0 -1
  848. package/dist/ui/components/Prompt.js +0 -632
  849. package/dist/ui/components/Prompt.js.map +0 -1
  850. package/dist/ui/components/RatingPanel.d.ts +0 -45
  851. package/dist/ui/components/RatingPanel.d.ts.map +0 -1
  852. package/dist/ui/components/RatingPanel.js +0 -119
  853. package/dist/ui/components/RatingPanel.js.map +0 -1
  854. package/dist/ui/components/StatusLine.d.ts +0 -43
  855. package/dist/ui/components/StatusLine.d.ts.map +0 -1
  856. package/dist/ui/components/StatusLine.js +0 -44
  857. package/dist/ui/components/StatusLine.js.map +0 -1
  858. package/dist/ui/components/StreamingResponse.d.ts +0 -45
  859. package/dist/ui/components/StreamingResponse.d.ts.map +0 -1
  860. package/dist/ui/components/StreamingResponse.js +0 -56
  861. package/dist/ui/components/StreamingResponse.js.map +0 -1
  862. package/dist/ui/components/TokenUsage.d.ts +0 -89
  863. package/dist/ui/components/TokenUsage.d.ts.map +0 -1
  864. package/dist/ui/components/TokenUsage.js +0 -99
  865. package/dist/ui/components/TokenUsage.js.map +0 -1
  866. package/dist/ui/components/ToolSummary.d.ts +0 -77
  867. package/dist/ui/components/ToolSummary.d.ts.map +0 -1
  868. package/dist/ui/components/ToolSummary.js +0 -162
  869. package/dist/ui/components/ToolSummary.js.map +0 -1
  870. package/dist/ui/components/UpdateNotification.d.ts +0 -65
  871. package/dist/ui/components/UpdateNotification.d.ts.map +0 -1
  872. package/dist/ui/components/UpdateNotification.js +0 -166
  873. package/dist/ui/components/UpdateNotification.js.map +0 -1
  874. package/dist/ui/diff-renderer.d.ts +0 -18
  875. package/dist/ui/diff-renderer.d.ts.map +0 -1
  876. package/dist/ui/diff-renderer.js +0 -206
  877. package/dist/ui/diff-renderer.js.map +0 -1
  878. package/dist/ui/themes/markdown-theme.d.ts +0 -48
  879. package/dist/ui/themes/markdown-theme.d.ts.map +0 -1
  880. package/dist/ui/themes/markdown-theme.js +0 -79
  881. package/dist/ui/themes/markdown-theme.js.map +0 -1
  882. package/dist/ui/themes/ui-theme.d.ts +0 -301
  883. package/dist/ui/themes/ui-theme.d.ts.map +0 -1
  884. package/dist/ui/themes/ui-theme.js +0 -204
  885. package/dist/ui/themes/ui-theme.js.map +0 -1
  886. package/dist/utils/attachment-handler.d.ts +0 -129
  887. package/dist/utils/attachment-handler.d.ts.map +0 -1
  888. package/dist/utils/attachment-handler.js +0 -280
  889. package/dist/utils/attachment-handler.js.map +0 -1
  890. package/dist/utils/backup-cleanup.d.ts +0 -28
  891. package/dist/utils/backup-cleanup.d.ts.map +0 -1
  892. package/dist/utils/backup-cleanup.js +0 -99
  893. package/dist/utils/backup-cleanup.js.map +0 -1
  894. package/dist/utils/clipboard-handler.d.ts +0 -82
  895. package/dist/utils/clipboard-handler.d.ts.map +0 -1
  896. package/dist/utils/clipboard-handler.js +0 -311
  897. package/dist/utils/clipboard-handler.js.map +0 -1
  898. package/dist/utils/cloud-detection.d.ts +0 -14
  899. package/dist/utils/cloud-detection.d.ts.map +0 -1
  900. package/dist/utils/cloud-detection.js +0 -92
  901. package/dist/utils/cloud-detection.js.map +0 -1
  902. package/dist/utils/command-parser.d.ts +0 -56
  903. package/dist/utils/command-parser.d.ts.map +0 -1
  904. package/dist/utils/command-parser.js +0 -206
  905. package/dist/utils/command-parser.js.map +0 -1
  906. package/dist/utils/console-capture.d.ts +0 -30
  907. package/dist/utils/console-capture.d.ts.map +0 -1
  908. package/dist/utils/console-capture.js +0 -88
  909. package/dist/utils/console-capture.js.map +0 -1
  910. package/dist/utils/cron-parser.d.ts +0 -52
  911. package/dist/utils/cron-parser.d.ts.map +0 -1
  912. package/dist/utils/cron-parser.js +0 -455
  913. package/dist/utils/cron-parser.js.map +0 -1
  914. package/dist/utils/crypto.d.ts +0 -351
  915. package/dist/utils/crypto.d.ts.map +0 -1
  916. package/dist/utils/crypto.js +0 -615
  917. package/dist/utils/crypto.js.map +0 -1
  918. package/dist/utils/diff.d.ts +0 -311
  919. package/dist/utils/diff.d.ts.map +0 -1
  920. package/dist/utils/diff.js +0 -566
  921. package/dist/utils/diff.js.map +0 -1
  922. package/dist/utils/editor.d.ts +0 -12
  923. package/dist/utils/editor.d.ts.map +0 -1
  924. package/dist/utils/editor.js +0 -30
  925. package/dist/utils/editor.js.map +0 -1
  926. package/dist/utils/file-system.d.ts +0 -512
  927. package/dist/utils/file-system.d.ts.map +0 -1
  928. package/dist/utils/file-system.js +0 -798
  929. package/dist/utils/file-system.js.map +0 -1
  930. package/dist/utils/format.d.ts +0 -318
  931. package/dist/utils/format.d.ts.map +0 -1
  932. package/dist/utils/format.js +0 -587
  933. package/dist/utils/format.js.map +0 -1
  934. package/dist/utils/ignore-patterns.d.ts +0 -93
  935. package/dist/utils/ignore-patterns.d.ts.map +0 -1
  936. package/dist/utils/ignore-patterns.js +0 -710
  937. package/dist/utils/ignore-patterns.js.map +0 -1
  938. package/dist/utils/log-cleanup.d.ts +0 -16
  939. package/dist/utils/log-cleanup.d.ts.map +0 -1
  940. package/dist/utils/log-cleanup.js +0 -51
  941. package/dist/utils/log-cleanup.js.map +0 -1
  942. package/dist/utils/logger.d.ts +0 -305
  943. package/dist/utils/logger.d.ts.map +0 -1
  944. package/dist/utils/logger.js +0 -447
  945. package/dist/utils/logger.js.map +0 -1
  946. package/dist/utils/path.d.ts +0 -406
  947. package/dist/utils/path.d.ts.map +0 -1
  948. package/dist/utils/path.js +0 -549
  949. package/dist/utils/path.js.map +0 -1
  950. package/dist/utils/schedule-file.d.ts +0 -63
  951. package/dist/utils/schedule-file.d.ts.map +0 -1
  952. package/dist/utils/schedule-file.js +0 -244
  953. package/dist/utils/schedule-file.js.map +0 -1
  954. package/dist/utils/task-id.d.ts +0 -29
  955. package/dist/utils/task-id.d.ts.map +0 -1
  956. package/dist/utils/task-id.js +0 -53
  957. package/dist/utils/task-id.js.map +0 -1
  958. package/dist/utils/temp-cleanup.d.ts +0 -46
  959. package/dist/utils/temp-cleanup.d.ts.map +0 -1
  960. package/dist/utils/temp-cleanup.js +0 -95
  961. package/dist/utils/temp-cleanup.js.map +0 -1
  962. package/dist/utils/terminal-output.d.ts +0 -34
  963. package/dist/utils/terminal-output.d.ts.map +0 -1
  964. package/dist/utils/terminal-output.js +0 -40
  965. package/dist/utils/terminal-output.js.map +0 -1
  966. package/dist/utils/token-counter.d.ts +0 -224
  967. package/dist/utils/token-counter.d.ts.map +0 -1
  968. package/dist/utils/token-counter.js +0 -332
  969. package/dist/utils/token-counter.js.map +0 -1
  970. package/dist/utils/tool-mapper.d.ts +0 -70
  971. package/dist/utils/tool-mapper.d.ts.map +0 -1
  972. package/dist/utils/tool-mapper.js +0 -234
  973. package/dist/utils/tool-mapper.js.map +0 -1
@@ -1,750 +0,0 @@
1
- /**
2
- * Conversation compaction service using Claude to intelligently summarize
3
- * conversation history while preserving key decisions and context.
4
- *
5
- * This module provides functionality to reduce token usage by compacting
6
- * long conversation histories into concise summaries that retain essential
7
- * information for continued development assistance.
8
- */
9
- import { getAnthropicClient } from './anthropic-client.js';
10
- import { getSessionManager } from './session-manager.js';
11
- import { getTokenTracker } from './token-tracker.js';
12
- import { logger } from '../utils/logger.js';
13
- import { estimateTokens } from '../utils/token-counter.js';
14
- import { formatTimestamp } from '../utils/format.js';
15
- import { AUTO_COMPACT_TRIGGER, COMPACTION_MODEL } from '../constants/defaults.js';
16
- import { getSystemEventLogger } from './system-event-logger.js';
17
- import { CONVERSATION_COMPACTION_SYSTEM_PROMPT, PLAN_APPROVAL_COMPACTION_SYSTEM_PROMPT } from '../prompts/index.js';
18
- /**
19
- * Default compaction options
20
- */
21
- const DEFAULT_COMPACTION_OPTIONS = {
22
- maxSummaryTokens: 2000,
23
- minMessagesForCompaction: 10,
24
- preserveRecentMessages: 2,
25
- customPrompt: '',
26
- includeCodeSnippets: true,
27
- includeFilePaths: true,
28
- };
29
- // COMPACTION_SYSTEM_PROMPT imported from '../prompts/index.js'
30
- // Local alias for backward compatibility
31
- const COMPACTION_SYSTEM_PROMPT = CONVERSATION_COMPACTION_SYSTEM_PROMPT;
32
- /**
33
- * ConversationCompactor class provides intelligent conversation summarization
34
- * using Claude to reduce token usage while preserving essential context.
35
- */
36
- class ConversationCompactor {
37
- client = null;
38
- autoCompactThreshold;
39
- constructor(autoCompactThreshold) {
40
- this.autoCompactThreshold = autoCompactThreshold ?? AUTO_COMPACT_TRIGGER;
41
- }
42
- /**
43
- * Initializes the compactor with an Anthropic client
44
- */
45
- async initialize() {
46
- try {
47
- this.client = await getAnthropicClient();
48
- if (!this.client.isInitialized()) {
49
- const initialized = await this.client.initialize();
50
- if (!initialized) {
51
- logger.warn('Failed to initialize Anthropic client for compaction');
52
- return false;
53
- }
54
- }
55
- return true;
56
- }
57
- catch (error) {
58
- logger.error('Failed to initialize conversation compactor', error);
59
- return false;
60
- }
61
- }
62
- /**
63
- * Compacts a conversation history into a summary
64
- *
65
- * @param messages - Array of conversation messages to compact
66
- * @param options - Compaction options
67
- * @returns CompactionResult with the summary and statistics
68
- */
69
- async compact(messages, options = {}) {
70
- const opts = { ...DEFAULT_COMPACTION_OPTIONS, ...options };
71
- // Validate minimum messages
72
- if (messages.length < opts.minMessagesForCompaction) {
73
- throw new Error(`Not enough messages to compact. Minimum required: ${opts.minMessagesForCompaction}, got: ${messages.length}`);
74
- }
75
- // Ensure client is initialized
76
- if (!this.client) {
77
- const initialized = await this.initialize();
78
- if (!initialized) {
79
- throw new Error('Failed to initialize Anthropic client for compaction');
80
- }
81
- }
82
- // Separate messages to compact from recent messages to preserve
83
- const messagesToCompact = messages.slice(0, -opts.preserveRecentMessages);
84
- // Calculate tokens before compaction
85
- const tokensBefore = this.calculateMessageTokens(messagesToCompact);
86
- // Build the compaction prompt
87
- const compactionPrompt = this.buildCompactionPrompt(messagesToCompact, opts);
88
- // Generate summary using Claude
89
- const systemPrompt = opts.customPrompt || COMPACTION_SYSTEM_PROMPT;
90
- logger.debug(`Compacting ${messagesToCompact.length} messages (${tokensBefore} tokens)`);
91
- try {
92
- const result = await this.client.sendMessage([{ role: 'user', content: compactionPrompt }], {
93
- system: systemPrompt,
94
- maxTokens: opts.maxSummaryTokens,
95
- temperature: 0.3, // Lower temperature for more consistent summaries
96
- model: COMPACTION_MODEL, // Use Haiku for cost efficiency - 12-60x cheaper
97
- callType: 'compaction', // Tag as compaction for cost tracking
98
- });
99
- const summary = result.content.trim();
100
- const tokensAfter = estimateTokens(summary);
101
- const tokensSaved = tokensBefore - tokensAfter;
102
- const savingsPercent = Math.round((tokensSaved / tokensBefore) * 100);
103
- const compactionResult = {
104
- summary,
105
- messagesCompacted: messagesToCompact.length,
106
- tokensBefore,
107
- tokensAfter,
108
- tokensSaved,
109
- savingsPercent,
110
- timestamp: formatTimestamp(),
111
- apiUsage: result.usage,
112
- };
113
- logger.info(`Compacted ${messagesToCompact.length} messages: ${tokensBefore} → ${tokensAfter} tokens (${savingsPercent}% saved)`);
114
- // Log the compaction event
115
- const systemEventLogger = getSystemEventLogger();
116
- await systemEventLogger.logContextCompacted({
117
- contextType: 'conversation',
118
- messageCount: messagesToCompact.length,
119
- tokenCount: tokensBefore,
120
- compactionRatio: savingsPercent / 100,
121
- });
122
- return compactionResult;
123
- }
124
- catch (error) {
125
- logger.error('Failed to compact conversation', error);
126
- throw error;
127
- }
128
- }
129
- /**
130
- * Compacts the current session's conversation history
131
- *
132
- * @param options - Compaction options
133
- * @returns CompactionResult with the summary and statistics
134
- */
135
- async compactCurrentSession(options = {}) {
136
- const sessionManager = getSessionManager();
137
- const session = sessionManager.getSession();
138
- if (!session) {
139
- throw new Error('No active session to compact');
140
- }
141
- const messages = session.state.conversationHistory;
142
- const result = await this.compact(messages, options);
143
- // Update session with compacted summary
144
- sessionManager.setCompactedSummary(result.summary);
145
- // Track the compaction in token usage
146
- try {
147
- const tokenTracker = await getTokenTracker();
148
- await tokenTracker.recordUsage(this.client?.getCurrentModelId() || 'unknown', result.apiUsage, 'conversation_compaction');
149
- }
150
- catch (trackingError) {
151
- logger.debug('Failed to track compaction token usage', trackingError);
152
- }
153
- return result;
154
- }
155
- /**
156
- * Checks if the current session should be auto-compacted based on token usage
157
- *
158
- * @returns True if auto-compaction is recommended
159
- */
160
- async shouldAutoCompact() {
161
- const sessionManager = getSessionManager();
162
- const session = sessionManager.getSession();
163
- if (!session) {
164
- logger.debug('Compaction check: no active session');
165
- return false;
166
- }
167
- const messages = session.state.conversationHistory;
168
- // Don't compact if already compacted (has summary and few messages)
169
- if (session.state.compactedSummary && messages.length < 10) {
170
- logger.debug(`Compaction check: skipped - already compacted with ${messages.length} messages`);
171
- return false;
172
- }
173
- // Use the synced estimated context tokens if available (more accurate during agentic loops)
174
- // Fall back to calculating from session history if not set
175
- const estimatedContextTokens = sessionManager.getEstimatedContextTokens();
176
- const historyTokens = this.calculateMessageTokens(messages);
177
- const totalTokens = estimatedContextTokens > 0 ? Math.max(estimatedContextTokens, historyTokens) : historyTokens;
178
- const shouldCompact = totalTokens >= this.autoCompactThreshold;
179
- logger.debug(`Compaction check: ${totalTokens.toLocaleString()} tokens ` +
180
- `(estimated=${estimatedContextTokens.toLocaleString()}, history=${historyTokens.toLocaleString()}) ` +
181
- `vs ${this.autoCompactThreshold.toLocaleString()} threshold ` +
182
- `(${messages.length} messages) -> ${shouldCompact ? 'TRIGGER' : 'skip'}`);
183
- return shouldCompact;
184
- }
185
- /**
186
- * Performs auto-compaction if the threshold is exceeded
187
- *
188
- * @param options - Compaction options
189
- * @returns CompactionResult if compaction was performed, null otherwise
190
- */
191
- async autoCompactIfNeeded(options = {}) {
192
- const shouldCompact = await this.shouldAutoCompact();
193
- if (!shouldCompact) {
194
- return null;
195
- }
196
- logger.info('Auto-compaction triggered due to token threshold');
197
- return this.compactCurrentSession(options);
198
- }
199
- /**
200
- * Sets the auto-compact threshold
201
- *
202
- * @param threshold - Token count threshold for auto-compaction
203
- */
204
- setAutoCompactThreshold(threshold) {
205
- this.autoCompactThreshold = threshold;
206
- }
207
- /**
208
- * Gets the current auto-compact threshold
209
- *
210
- * @returns The current threshold value
211
- */
212
- getAutoCompactThreshold() {
213
- return this.autoCompactThreshold;
214
- }
215
- /**
216
- * Estimates the token savings from compacting the given messages
217
- *
218
- * @param messages - Messages to estimate compaction for
219
- * @returns Estimated token savings
220
- */
221
- estimateSavings(messages) {
222
- const currentTokens = this.calculateMessageTokens(messages);
223
- // Estimate summary will be roughly 10-20% of original
224
- // This is a heuristic based on typical compaction ratios
225
- const compressionRatio = 0.15;
226
- const estimatedAfter = Math.ceil(currentTokens * compressionRatio);
227
- const estimatedSavings = currentTokens - estimatedAfter;
228
- const estimatedSavingsPercent = Math.round((estimatedSavings / currentTokens) * 100);
229
- return {
230
- currentTokens,
231
- estimatedAfter,
232
- estimatedSavings,
233
- estimatedSavingsPercent,
234
- };
235
- }
236
- /**
237
- * Formats a compacted summary for display
238
- *
239
- * @param result - The compaction result
240
- * @returns Formatted string for display
241
- */
242
- formatCompactionSummary(result) {
243
- const lines = [
244
- '📦 Conversation Compacted',
245
- '',
246
- `Messages compacted: ${result.messagesCompacted}`,
247
- `Tokens before: ${result.tokensBefore.toLocaleString()}`,
248
- `Tokens after: ${result.tokensAfter.toLocaleString()}`,
249
- `Tokens saved: ${result.tokensSaved.toLocaleString()} (${result.savingsPercent}%)`,
250
- '',
251
- '─'.repeat(50),
252
- '',
253
- result.summary,
254
- ];
255
- return lines.join('\n');
256
- }
257
- /**
258
- * Builds the prompt for compaction
259
- */
260
- buildCompactionPrompt(messages, options) {
261
- const parts = [
262
- 'Please summarize the following conversation history between a user and Compass (an AI development assistant).',
263
- '',
264
- 'Focus on preserving:',
265
- '- Key decisions and their rationale',
266
- '- Code changes and file modifications',
267
- '- Technical requirements and constraints',
268
- '- Current project state and pending tasks',
269
- ];
270
- if (options.includeCodeSnippets) {
271
- parts.push('- Important code snippets that provide essential context');
272
- }
273
- if (options.includeFilePaths) {
274
- parts.push('- File paths that were discussed or modified');
275
- }
276
- parts.push('');
277
- parts.push('---');
278
- parts.push('CONVERSATION HISTORY:');
279
- parts.push('---');
280
- parts.push('');
281
- // Format messages for the prompt
282
- for (const message of messages) {
283
- const role = message.role === 'user' ? 'User' : 'Compass';
284
- const timestamp = message.timestamp ? ` [${message.timestamp}]` : '';
285
- parts.push(`**${role}**${timestamp}:`);
286
- parts.push(message.content);
287
- parts.push('');
288
- }
289
- parts.push('---');
290
- parts.push('');
291
- parts.push('Please provide a structured summary that captures all essential information needed to continue this development session effectively.');
292
- return parts.join('\n');
293
- }
294
- /**
295
- * Calculates the total token count for an array of messages
296
- */
297
- calculateMessageTokens(messages) {
298
- // Use the message token counts if available, otherwise estimate
299
- let total = 0;
300
- for (const message of messages) {
301
- if (message.tokenCount !== undefined) {
302
- total += message.tokenCount;
303
- }
304
- else {
305
- total += estimateTokens(message.content);
306
- }
307
- }
308
- // Add overhead for message structure
309
- total += messages.length * 4;
310
- return total;
311
- }
312
- /**
313
- * Extracts key information from messages for quick reference
314
- */
315
- extractKeyInfo(messages) {
316
- const filesModified = new Set();
317
- let decisionsCount = 0;
318
- let codeBlocksCount = 0;
319
- // Patterns to detect file paths
320
- const filePathPattern = /(?:^|\s)([a-zA-Z0-9_\-./]+\.[a-zA-Z0-9]+)(?:\s|$|:|\))/g;
321
- const codeBlockPattern = /```[\s\S]*?```/g;
322
- const decisionPatterns = [
323
- /\b(?:decided|decision|chose|choosing|will use|going with|opted for)\b/i,
324
- /\b(?:let's|we should|I recommend|the approach)\b/i,
325
- ];
326
- for (const message of messages) {
327
- const content = message.content;
328
- // Extract file paths
329
- const fileMatches = content.matchAll(filePathPattern);
330
- for (const match of fileMatches) {
331
- const filePath = match[1];
332
- // Filter out common false positives
333
- if (filePath.includes('/') ||
334
- filePath.match(/\.(ts|js|tsx|jsx|py|go|rs|java|json|yaml|yml|md|css|html)$/)) {
335
- filesModified.add(filePath);
336
- }
337
- }
338
- // Count code blocks
339
- const codeBlocks = content.match(codeBlockPattern);
340
- if (codeBlocks) {
341
- codeBlocksCount += codeBlocks.length;
342
- }
343
- // Count decisions (rough heuristic)
344
- for (const pattern of decisionPatterns) {
345
- if (pattern.test(content)) {
346
- decisionsCount++;
347
- break;
348
- }
349
- }
350
- }
351
- return {
352
- filesModified: Array.from(filesModified),
353
- decisionsCount,
354
- codeBlocksCount,
355
- };
356
- }
357
- /**
358
- * Compacts an array of API messages (Message[] format used in agentic loops).
359
- * This handles the complex content blocks from Anthropic API format.
360
- *
361
- * @param messages - Array of API messages to compact
362
- * @param preserveRecentCount - Number of recent messages to preserve uncompacted (default: 4)
363
- * @param maxSummaryTokens - Maximum tokens for the summary (default: 3000)
364
- * @returns Object with the summary and the reconstructed messages array
365
- */
366
- async compactApiMessages(messages, preserveRecentCount = 4, maxSummaryTokens = 3000, systemPrompt) {
367
- // Ensure client is initialized
368
- if (!this.client) {
369
- const initialized = await this.initialize();
370
- if (!initialized) {
371
- throw new Error('Failed to initialize Anthropic client for compaction');
372
- }
373
- }
374
- // Keep first message (original user request) and recent messages
375
- // Validate preserveRecentCount to avoid invalid slice ranges
376
- let actualPreserveCount = Math.min(preserveRecentCount, Math.max(0, messages.length - 2));
377
- // Ensure the preserved boundary doesn't split a tool_use/tool_result pair.
378
- // If the first preserved message is a user message with tool_result blocks,
379
- // its matching assistant tool_use message was compacted away — bump the count
380
- // to include the preceding assistant message.
381
- if (actualPreserveCount > 0 && actualPreserveCount < messages.length - 1) {
382
- const firstPreserved = messages[messages.length - actualPreserveCount];
383
- const hasToolResults = firstPreserved.role === 'user' &&
384
- Array.isArray(firstPreserved.content) &&
385
- firstPreserved.content.some((block) => block.type === 'tool_result');
386
- if (hasToolResults) {
387
- actualPreserveCount = Math.min(actualPreserveCount + 1, messages.length - 2);
388
- }
389
- }
390
- if (actualPreserveCount < 1) {
391
- // Not enough messages to preserve anything meaningful
392
- return {
393
- summary: '',
394
- compactedMessages: messages,
395
- tokensBefore: this.estimateApiMessageTokens(messages),
396
- tokensAfter: this.estimateApiMessageTokens(messages),
397
- messagesCompacted: 0,
398
- };
399
- }
400
- const originalFirstMessage = messages[0];
401
- // Filter out old compaction summaries — they'll be replaced by the new one.
402
- // For messages that are fully summary-only, remove them entirely.
403
- // For messages that contain a summary mixed with other content (e.g., plan context
404
- // appended by reinjectPlanContextAfterCompaction), strip the summary portion but
405
- // preserve any non-summary content like [ACTIVE PLAN CONTEXT blocks.
406
- const isSummaryMessage = (msg) => msg.role === 'user' &&
407
- typeof msg.content === 'string' &&
408
- msg.content.includes('[CONTEXT SUMMARY');
409
- const stripStaleSummaryContent = (msg) => {
410
- if (!isSummaryMessage(msg))
411
- return msg;
412
- const content = msg.content;
413
- // Check if there's plan context or other non-summary content appended after the summary
414
- const planContextMatch = content.match(/(\[ACTIVE PLAN CONTEXT[\s\S]*)/);
415
- if (planContextMatch) {
416
- // Preserve the plan context portion, discard the stale summary
417
- return { ...msg, content: planContextMatch[1] };
418
- }
419
- // Pure summary message — remove entirely
420
- return null;
421
- };
422
- const rawMessagesToCompact = messages.slice(1, -actualPreserveCount);
423
- const messagesToCompact = rawMessagesToCompact.filter(msg => !isSummaryMessage(msg));
424
- const recentMessages = messages.slice(-actualPreserveCount)
425
- .map(stripStaleSummaryContent)
426
- .filter((msg) => msg !== null);
427
- if (messagesToCompact.length < 3) {
428
- // Not enough to compact - return as is
429
- return {
430
- summary: '',
431
- compactedMessages: messages,
432
- tokensBefore: this.estimateApiMessageTokens(messages),
433
- tokensAfter: this.estimateApiMessageTokens(messages),
434
- messagesCompacted: 0,
435
- };
436
- }
437
- const tokensBefore = this.estimateApiMessageTokens(messages);
438
- // Convert API messages to text for summarization
439
- const formattedHistory = this.formatApiMessagesForCompaction(messagesToCompact);
440
- logger.debug(`Compacting ${messagesToCompact.length} API messages (${tokensBefore} tokens estimated)`);
441
- const compactionPrompt = `Please summarize the following conversation history between a user and an AI development assistant.
442
-
443
- Focus on preserving:
444
- - Key decisions and their rationale
445
- - Code changes and file modifications made
446
- - Technical requirements and constraints discussed
447
- - Current task state and any pending work
448
- - Important file paths that were modified or discussed
449
- - Any errors encountered and their resolutions
450
- - Active plan IDs and task IDs VERBATIM (e.g., plan ID, task-1, task-2) — these reference on-disk state and must be preserved exactly
451
-
452
- ---
453
- CONVERSATION HISTORY TO SUMMARIZE:
454
- ---
455
-
456
- ${formattedHistory}
457
-
458
- ---
459
-
460
- Provide a structured, concise summary that captures all essential information needed to continue this development session effectively. Include specific file paths, code patterns, and decisions made.`;
461
- try {
462
- const effectiveSystemPrompt = systemPrompt || COMPACTION_SYSTEM_PROMPT;
463
- const result = await this.client.sendMessage([{ role: 'user', content: compactionPrompt }], {
464
- system: effectiveSystemPrompt,
465
- maxTokens: maxSummaryTokens,
466
- temperature: 0.3,
467
- model: COMPACTION_MODEL, // Use Haiku for cost efficiency - 12-60x cheaper
468
- callType: 'compaction', // Tag as compaction for cost tracking
469
- });
470
- const summary = result.content.trim();
471
- // Validate summary is not empty
472
- if (!summary) {
473
- logger.warn('Compaction resulted in empty summary, returning original messages');
474
- return {
475
- summary: '',
476
- compactedMessages: messages,
477
- tokensBefore,
478
- tokensAfter: tokensBefore,
479
- messagesCompacted: 0,
480
- };
481
- }
482
- // Reconstruct messages with summary injected
483
- const compactedMessages = [
484
- originalFirstMessage,
485
- {
486
- role: 'user',
487
- content: `[CONTEXT SUMMARY - Previous ${messagesToCompact.length} messages compacted]\n\n${summary}\n\n[END SUMMARY - Continue from recent context below]`,
488
- },
489
- ...recentMessages,
490
- ];
491
- const tokensAfter = this.estimateApiMessageTokens(compactedMessages);
492
- logger.info(`Compacted ${messagesToCompact.length} API messages: ${tokensBefore} → ${tokensAfter} tokens (${Math.round(((tokensBefore - tokensAfter) / tokensBefore) * 100)}% saved)`);
493
- // Log the compaction event
494
- const systemEventLogger = getSystemEventLogger();
495
- await systemEventLogger.logContextCompacted({
496
- contextType: 'conversation',
497
- messageCount: messagesToCompact.length,
498
- tokenCount: tokensBefore,
499
- compactionRatio: (tokensBefore - tokensAfter) / tokensBefore,
500
- });
501
- return {
502
- summary,
503
- compactedMessages,
504
- tokensBefore,
505
- tokensAfter,
506
- messagesCompacted: messagesToCompact.length,
507
- };
508
- }
509
- catch (error) {
510
- logger.error('Failed to compact API messages', error);
511
- throw error;
512
- }
513
- }
514
- /**
515
- * Compacts API messages specifically for plan approval transitions.
516
- * Uses a plan-focused summarization prompt that preserves architectural decisions
517
- * and file paths while discarding raw exploration data (file contents, grep results).
518
- *
519
- * @param messages - Array of API messages to compact
520
- * @param preserveRecentCount - Number of recent messages to preserve (default: 3)
521
- * @param maxSummaryTokens - Maximum tokens for the summary (default: 3000)
522
- * @returns Object with the summary and the reconstructed messages array
523
- */
524
- async compactForPlanApproval(messages, preserveRecentCount = 3, maxSummaryTokens = 3000) {
525
- return this.compactApiMessages(messages, preserveRecentCount, maxSummaryTokens, PLAN_APPROVAL_COMPACTION_SYSTEM_PROMPT);
526
- }
527
- /**
528
- * Estimates token count for API Message[] array
529
- */
530
- estimateApiMessageTokens(messages) {
531
- let total = 0;
532
- const MESSAGE_OVERHEAD = 4;
533
- for (const message of messages) {
534
- total += MESSAGE_OVERHEAD;
535
- if (typeof message.content === 'string') {
536
- total += estimateTokens(message.content);
537
- }
538
- else if (Array.isArray(message.content)) {
539
- for (const block of message.content) {
540
- total += this.estimateContentBlockTokens(block);
541
- }
542
- }
543
- }
544
- return total;
545
- }
546
- /**
547
- * Estimates tokens for a single content block
548
- */
549
- estimateContentBlockTokens(block) {
550
- const BLOCK_OVERHEAD = 10; // JSON structure overhead
551
- switch (block.type) {
552
- case 'text':
553
- return BLOCK_OVERHEAD + estimateTokens(block.text || '');
554
- case 'tool_use':
555
- return BLOCK_OVERHEAD + estimateTokens(block.name || '') +
556
- estimateTokens(typeof block.input === 'string' ? block.input : JSON.stringify(block.input || {}));
557
- case 'tool_result':
558
- if (typeof block.content === 'string') {
559
- return BLOCK_OVERHEAD + estimateTokens(block.content);
560
- }
561
- else if (Array.isArray(block.content)) {
562
- return BLOCK_OVERHEAD + block.content.reduce((sum, c) => sum + estimateTokens(typeof c === 'string' ? c : (c.text || '')), 0);
563
- }
564
- return BLOCK_OVERHEAD;
565
- default:
566
- return BLOCK_OVERHEAD;
567
- }
568
- }
569
- /**
570
- * Formats API messages into a text representation for compaction.
571
- * Empty tool results (no matches, no files found) are stripped from the
572
- * per-message output and replaced with a single terse summary line at the
573
- * top, saving significant tokens when the LLM performed many exploratory
574
- * searches that returned nothing.
575
- */
576
- formatApiMessagesForCompaction(messages) {
577
- // Pre-scan: identify tool_use IDs whose results were empty
578
- const emptyToolIds = this.collectEmptyToolResultIds(messages);
579
- const parts = [];
580
- // Emit a compact summary of all empty searches at the top
581
- if (emptyToolIds.size > 0) {
582
- const emptySearches = [];
583
- for (const msg of messages) {
584
- if (msg.role !== 'assistant' || !Array.isArray(msg.content))
585
- continue;
586
- for (const block of msg.content) {
587
- if (block.type === 'tool_use' && block.id && emptyToolIds.has(block.id)) {
588
- const input = block.input;
589
- const pattern = input?.pattern || input?.path || '';
590
- const shortPattern = pattern.length > 80 ? pattern.substring(0, 80) + '…' : pattern;
591
- emptySearches.push(`${block.name || 'tool'}("${shortPattern}")`);
592
- }
593
- }
594
- }
595
- if (emptySearches.length > 0) {
596
- parts.push(`[${emptySearches.length} tool calls returned no results: ${emptySearches.join('; ')}]`);
597
- parts.push('');
598
- }
599
- }
600
- for (const message of messages) {
601
- const role = message.role === 'user' ? 'User' : 'Assistant';
602
- if (typeof message.content === 'string') {
603
- parts.push(`**${role}**:`);
604
- parts.push(message.content);
605
- parts.push('');
606
- }
607
- else if (Array.isArray(message.content)) {
608
- // Filter out blocks belonging to empty tool pairs
609
- const filteredBlocks = message.content.filter(block => {
610
- if (block.type === 'tool_use' && block.id && emptyToolIds.has(block.id))
611
- return false;
612
- if (block.type === 'tool_result' && block.tool_use_id && emptyToolIds.has(block.tool_use_id))
613
- return false;
614
- return true;
615
- });
616
- // Skip messages that become empty after filtering
617
- if (filteredBlocks.length === 0)
618
- continue;
619
- parts.push(`**${role}**:`);
620
- for (const block of filteredBlocks) {
621
- parts.push(this.formatContentBlock(block));
622
- }
623
- parts.push('');
624
- }
625
- }
626
- return parts.join('\n');
627
- }
628
- /**
629
- * Scans messages for tool_result blocks that indicate empty/no-match results
630
- * and returns the set of their corresponding tool_use IDs.
631
- */
632
- collectEmptyToolResultIds(messages) {
633
- const emptyIds = new Set();
634
- for (const msg of messages) {
635
- if (msg.role !== 'user' || !Array.isArray(msg.content))
636
- continue;
637
- for (const block of msg.content) {
638
- if (block.type !== 'tool_result' || !block.tool_use_id)
639
- continue;
640
- if (block.is_error)
641
- continue; // Keep errors — they're always informative
642
- const text = this.extractToolResultText(block);
643
- if (this.isEmptyToolResult(text)) {
644
- emptyIds.add(block.tool_use_id);
645
- }
646
- }
647
- }
648
- return emptyIds;
649
- }
650
- /**
651
- * Extracts the text content from a tool_result block.
652
- */
653
- extractToolResultText(block) {
654
- if (typeof block.content === 'string')
655
- return block.content;
656
- if (Array.isArray(block.content)) {
657
- return block.content.map(c => typeof c === 'string' ? c : (c.text || '')).join('\n');
658
- }
659
- return '';
660
- }
661
- /**
662
- * Determines if a tool result's text content indicates an empty/no-match result.
663
- * Matches common patterns from search_code, find_files, and list_files tools.
664
- */
665
- isEmptyToolResult(text) {
666
- // JSON results with matchCount: 0 or totalFound: 0
667
- if (/"matchCount"\s*:\s*0\b/.test(text))
668
- return true;
669
- if (/"totalFound"\s*:\s*0\b/.test(text))
670
- return true;
671
- // Plain-text "no matches" indicators
672
- if (/no\s+matches\s+found/i.test(text))
673
- return true;
674
- if (/no\s+results\s+found/i.test(text))
675
- return true;
676
- if (/0\s+matches/i.test(text))
677
- return true;
678
- return false;
679
- }
680
- /**
681
- * Formats a content block to text representation
682
- */
683
- formatContentBlock(block) {
684
- switch (block.type) {
685
- case 'text':
686
- return block.text || '';
687
- case 'tool_use': {
688
- // Summarize tool calls - don't include full input for large ones
689
- const inputStr = typeof block.input === 'string'
690
- ? block.input
691
- : JSON.stringify(block.input || {});
692
- const truncatedInput = inputStr.length > 500
693
- ? inputStr.substring(0, 500) + '...[truncated]'
694
- : inputStr;
695
- return `[Tool Call: ${block.name}] Input: ${truncatedInput}`;
696
- }
697
- case 'tool_result': {
698
- // Summarize tool results - focus on errors and key outcomes
699
- let resultContent = '';
700
- if (typeof block.content === 'string') {
701
- resultContent = block.content;
702
- }
703
- else if (Array.isArray(block.content)) {
704
- resultContent = block.content.map(c => typeof c === 'string' ? c : (c.text || '')).join('\n');
705
- }
706
- // Truncate long results but preserve error information
707
- if (resultContent.length > 1000) {
708
- const hasError = /error|fail|exception/i.test(resultContent);
709
- if (hasError) {
710
- // Keep more context for errors
711
- resultContent = resultContent.substring(0, 2000) + '\n...[result truncated, errors preserved]';
712
- }
713
- else {
714
- resultContent = resultContent.substring(0, 500) + '\n...[result truncated]';
715
- }
716
- }
717
- return `[Tool Result: ${block.is_error ? 'ERROR' : 'success'}] ${resultContent}`;
718
- }
719
- default:
720
- return `[${block.type}]`;
721
- }
722
- }
723
- }
724
- // Singleton instance
725
- let conversationCompactorInstance = null;
726
- /**
727
- * Gets the singleton ConversationCompactor instance.
728
- * Creates the instance on first call.
729
- *
730
- * @param autoCompactThreshold - Optional threshold for auto-compaction
731
- * @returns Promise resolving to the ConversationCompactor instance
732
- */
733
- export async function getConversationCompactor(autoCompactThreshold) {
734
- if (!conversationCompactorInstance) {
735
- conversationCompactorInstance = new ConversationCompactor(autoCompactThreshold);
736
- }
737
- return conversationCompactorInstance;
738
- }
739
- /**
740
- * Creates a new ConversationCompactor instance with custom configuration.
741
- * Use this when you need a separate instance from the singleton.
742
- *
743
- * @param autoCompactThreshold - Optional threshold for auto-compaction
744
- * @returns A new ConversationCompactor instance
745
- */
746
- export function createConversationCompactor(autoCompactThreshold) {
747
- return new ConversationCompactor(autoCompactThreshold);
748
- }
749
- export { ConversationCompactor, COMPACTION_SYSTEM_PROMPT };
750
- //# sourceMappingURL=conversation-compactor.js.map