@compilr-dev/cli 0.5.0 → 0.5.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (587) hide show
  1. package/LICENSE +108 -0
  2. package/README.md +237 -69
  3. package/dist/.tsbuildinfo.app +1 -0
  4. package/dist/.tsbuildinfo.data +1 -0
  5. package/dist/.tsbuildinfo.domain +1 -0
  6. package/dist/.tsbuildinfo.foundation +1 -0
  7. package/dist/agent.d.ts +61 -4
  8. package/dist/agent.js +241 -245
  9. package/dist/anchors/index.d.ts +1 -1
  10. package/dist/anchors/index.js +1 -1
  11. package/dist/anchors/project-anchors.d.ts +2 -2
  12. package/dist/anchors/project-anchors.js +1 -1
  13. package/dist/auth/api-client.d.ts +124 -0
  14. package/dist/auth/api-client.js +261 -0
  15. package/dist/auth/index.d.ts +172 -0
  16. package/dist/auth/index.js +545 -0
  17. package/dist/auth/storage.d.ts +52 -0
  18. package/dist/auth/storage.js +118 -0
  19. package/dist/changelog/index.d.ts +16 -0
  20. package/dist/changelog/index.js +24 -0
  21. package/dist/changelog/releases.d.ts +17 -0
  22. package/dist/changelog/releases.js +63 -0
  23. package/dist/commands-v2/handlers/auth.d.ts +10 -0
  24. package/dist/commands-v2/handlers/auth.js +118 -0
  25. package/dist/commands-v2/handlers/background.d.ts +14 -0
  26. package/dist/commands-v2/handlers/background.js +276 -0
  27. package/dist/commands-v2/handlers/context.js +286 -81
  28. package/dist/commands-v2/handlers/core.d.ts +1 -0
  29. package/dist/commands-v2/handlers/core.js +133 -8
  30. package/dist/commands-v2/handlers/debug.js +18 -0
  31. package/dist/commands-v2/handlers/delegations.d.ts +8 -0
  32. package/dist/commands-v2/handlers/delegations.js +29 -0
  33. package/dist/commands-v2/handlers/files.d.ts +8 -0
  34. package/dist/commands-v2/handlers/files.js +162 -0
  35. package/dist/commands-v2/handlers/filter.d.ts +9 -0
  36. package/dist/commands-v2/handlers/filter.js +130 -0
  37. package/dist/commands-v2/handlers/games.d.ts +7 -0
  38. package/dist/commands-v2/handlers/games.js +57 -0
  39. package/dist/commands-v2/handlers/index.d.ts +13 -0
  40. package/dist/commands-v2/handlers/index.js +39 -0
  41. package/dist/commands-v2/handlers/mcp.d.ts +8 -0
  42. package/dist/commands-v2/handlers/mcp.js +39 -0
  43. package/dist/commands-v2/handlers/notifications.d.ts +9 -0
  44. package/dist/commands-v2/handlers/notifications.js +34 -0
  45. package/dist/commands-v2/handlers/project.js +295 -31
  46. package/dist/commands-v2/handlers/reset.d.ts +11 -0
  47. package/dist/commands-v2/handlers/reset.js +118 -0
  48. package/dist/commands-v2/handlers/session.d.ts +161 -0
  49. package/dist/commands-v2/handlers/session.js +805 -0
  50. package/dist/commands-v2/handlers/settings.d.ts +2 -0
  51. package/dist/commands-v2/handlers/settings.js +217 -35
  52. package/dist/commands-v2/handlers/tasks.d.ts +5 -0
  53. package/dist/commands-v2/handlers/tasks.js +36 -0
  54. package/dist/commands-v2/handlers/team.d.ts +9 -0
  55. package/dist/commands-v2/handlers/team.js +549 -0
  56. package/dist/commands-v2/handlers/terminals.d.ts +9 -0
  57. package/dist/commands-v2/handlers/terminals.js +34 -0
  58. package/dist/commands-v2/index.d.ts +3 -2
  59. package/dist/commands-v2/index.js +4 -1
  60. package/dist/commands-v2/registry.d.ts +15 -0
  61. package/dist/commands-v2/registry.js +34 -0
  62. package/dist/commands-v2/types.d.ts +81 -3
  63. package/dist/commands.js +13 -0
  64. package/dist/compilr-diff-companion.vsix +0 -0
  65. package/dist/db/index.js +98 -4
  66. package/dist/db/repositories/document-repository.d.ts +2 -0
  67. package/dist/db/repositories/document-repository.js +6 -1
  68. package/dist/db/repositories/index.d.ts +2 -0
  69. package/dist/db/repositories/index.js +1 -0
  70. package/dist/db/repositories/plan-repository.d.ts +101 -0
  71. package/dist/db/repositories/plan-repository.js +275 -0
  72. package/dist/db/repositories/project-repository.d.ts +6 -0
  73. package/dist/db/repositories/project-repository.js +41 -0
  74. package/dist/db/repositories/work-item-repository.d.ts +15 -0
  75. package/dist/db/repositories/work-item-repository.js +69 -4
  76. package/dist/db/schema.d.ts +40 -3
  77. package/dist/db/schema.js +66 -3
  78. package/dist/episodes/index.d.ts +20 -0
  79. package/dist/episodes/index.js +27 -0
  80. package/dist/episodes/recorder.d.ts +51 -0
  81. package/dist/episodes/recorder.js +195 -0
  82. package/dist/episodes/significant-work.d.ts +21 -0
  83. package/dist/episodes/significant-work.js +56 -0
  84. package/dist/episodes/store.d.ts +38 -0
  85. package/dist/episodes/store.js +199 -0
  86. package/dist/episodes/types.d.ts +35 -0
  87. package/dist/episodes/types.js +6 -0
  88. package/dist/episodes/work-at-risk.d.ts +12 -0
  89. package/dist/episodes/work-at-risk.js +38 -0
  90. package/dist/episodes/work-summary-anchor.d.ts +23 -0
  91. package/dist/episodes/work-summary-anchor.js +73 -0
  92. package/dist/games/coins.d.ts +66 -0
  93. package/dist/games/coins.js +165 -0
  94. package/dist/games/game-base.d.ts +84 -0
  95. package/dist/games/game-base.js +204 -0
  96. package/dist/games/index.d.ts +16 -0
  97. package/dist/games/index.js +49 -0
  98. package/dist/games/scores.d.ts +69 -0
  99. package/dist/games/scores.js +191 -0
  100. package/dist/games/tetris/board.d.ts +59 -0
  101. package/dist/games/tetris/board.js +170 -0
  102. package/dist/games/tetris/index.d.ts +109 -0
  103. package/dist/games/tetris/index.js +610 -0
  104. package/dist/games/tetris/pieces.d.ts +44 -0
  105. package/dist/games/tetris/pieces.js +271 -0
  106. package/dist/games/tetris/renderer.d.ts +26 -0
  107. package/dist/games/tetris/renderer.js +77 -0
  108. package/dist/guide/guide-content.d.ts +23 -0
  109. package/dist/guide/guide-content.js +196 -0
  110. package/dist/guide/index.d.ts +8 -0
  111. package/dist/guide/index.js +7 -0
  112. package/dist/guide/shared-content.d.ts +37 -0
  113. package/dist/guide/shared-content.js +1272 -0
  114. package/dist/guide/tutorial-helpers.d.ts +57 -0
  115. package/dist/guide/tutorial-helpers.js +147 -0
  116. package/dist/handlers/ask-user-handlers.d.ts +32 -0
  117. package/dist/handlers/ask-user-handlers.js +104 -0
  118. package/dist/handlers/delegation-handlers.d.ts +34 -0
  119. package/dist/handlers/delegation-handlers.js +291 -0
  120. package/dist/handlers/permission-handler.d.ts +30 -0
  121. package/dist/handlers/permission-handler.js +205 -0
  122. package/dist/index.d.ts +11 -1
  123. package/dist/index.js +448 -271
  124. package/dist/input-handlers/memory-handler.d.ts +1 -1
  125. package/dist/input-handlers/memory-handler.js +2 -1
  126. package/dist/models/index.d.ts +10 -0
  127. package/dist/models/index.js +12 -0
  128. package/dist/models/model-registry.d.ts +38 -0
  129. package/dist/models/model-registry.js +69 -0
  130. package/dist/models/model-tiers.d.ts +28 -0
  131. package/dist/models/model-tiers.js +71 -0
  132. package/dist/models/model-validation.d.ts +25 -0
  133. package/dist/models/model-validation.js +291 -0
  134. package/dist/models/ollama-models.d.ts +73 -0
  135. package/dist/models/ollama-models.js +178 -0
  136. package/dist/models/provider-types.d.ts +6 -0
  137. package/dist/models/provider-types.js +1 -0
  138. package/dist/models/providers.d.ts +35 -0
  139. package/dist/models/providers.js +58 -0
  140. package/dist/models/types.d.ts +4 -0
  141. package/dist/models/types.js +4 -0
  142. package/dist/multi-agent/activity.d.ts +21 -0
  143. package/dist/multi-agent/activity.js +34 -0
  144. package/dist/multi-agent/agent-selection.d.ts +55 -0
  145. package/dist/multi-agent/agent-selection.js +90 -0
  146. package/dist/multi-agent/artifacts.d.ts +197 -0
  147. package/dist/multi-agent/artifacts.js +379 -0
  148. package/dist/multi-agent/checkpointer.d.ts +138 -0
  149. package/dist/multi-agent/checkpointer.js +471 -0
  150. package/dist/multi-agent/collision-utils.d.ts +16 -0
  151. package/dist/multi-agent/collision-utils.js +28 -0
  152. package/dist/multi-agent/context-resolver.d.ts +97 -0
  153. package/dist/multi-agent/context-resolver.js +316 -0
  154. package/dist/multi-agent/custom-agents.d.ts +83 -0
  155. package/dist/multi-agent/custom-agents.js +227 -0
  156. package/dist/multi-agent/delegation-tracker.d.ts +157 -0
  157. package/dist/multi-agent/delegation-tracker.js +243 -0
  158. package/dist/multi-agent/file-lock-hook.d.ts +29 -0
  159. package/dist/multi-agent/file-lock-hook.js +97 -0
  160. package/dist/multi-agent/file-locks.d.ts +58 -0
  161. package/dist/multi-agent/file-locks.js +194 -0
  162. package/dist/multi-agent/index.d.ts +24 -0
  163. package/dist/multi-agent/index.js +30 -0
  164. package/dist/multi-agent/mention-parser.d.ts +64 -0
  165. package/dist/multi-agent/mention-parser.js +146 -0
  166. package/dist/multi-agent/notification-manager.d.ts +84 -0
  167. package/dist/multi-agent/notification-manager.js +224 -0
  168. package/dist/multi-agent/pending-requests.d.ts +122 -0
  169. package/dist/multi-agent/pending-requests.js +155 -0
  170. package/dist/multi-agent/session-registry.d.ts +139 -0
  171. package/dist/multi-agent/session-registry.js +514 -0
  172. package/dist/multi-agent/shared-context.d.ts +293 -0
  173. package/dist/multi-agent/shared-context.js +671 -0
  174. package/dist/multi-agent/skill-requirements.d.ts +66 -0
  175. package/dist/multi-agent/skill-requirements.js +178 -0
  176. package/dist/multi-agent/task-assignment.d.ts +69 -0
  177. package/dist/multi-agent/task-assignment.js +123 -0
  178. package/dist/multi-agent/task-suggestion.d.ts +31 -0
  179. package/dist/multi-agent/task-suggestion.js +72 -0
  180. package/dist/multi-agent/team-agent.d.ts +201 -0
  181. package/dist/multi-agent/team-agent.js +488 -0
  182. package/dist/multi-agent/team.d.ts +286 -0
  183. package/dist/multi-agent/team.js +610 -0
  184. package/dist/multi-agent/tool-config.d.ts +110 -0
  185. package/dist/multi-agent/tool-config.js +661 -0
  186. package/dist/multi-agent/types.d.ts +211 -0
  187. package/dist/multi-agent/types.js +617 -0
  188. package/dist/prompts/plan-mode-prompt.d.ts +11 -0
  189. package/dist/prompts/plan-mode-prompt.js +95 -0
  190. package/dist/repl-helpers.js +5 -2
  191. package/dist/repl-v2.d.ts +401 -2
  192. package/dist/repl-v2.js +2588 -65
  193. package/dist/session/index.d.ts +6 -0
  194. package/dist/session/index.js +6 -0
  195. package/dist/session/project-session-manager.d.ts +158 -0
  196. package/dist/session/project-session-manager.js +650 -0
  197. package/dist/settings/index.d.ts +133 -13
  198. package/dist/settings/index.js +329 -24
  199. package/dist/settings/mcp-config.d.ts +76 -0
  200. package/dist/settings/mcp-config.js +143 -0
  201. package/dist/settings/paths.d.ts +4 -0
  202. package/dist/settings/paths.js +6 -0
  203. package/dist/shared-handlers.d.ts +62 -0
  204. package/dist/shared-handlers.js +48 -0
  205. package/dist/system-prompt/builder.d.ts +5 -0
  206. package/dist/system-prompt/builder.js +4 -0
  207. package/dist/system-prompt/index.d.ts +18 -0
  208. package/dist/system-prompt/index.js +18 -0
  209. package/dist/system-prompt/modules.d.ts +5 -0
  210. package/dist/system-prompt/modules.js +4 -0
  211. package/dist/tabbed-menu.js +2 -1
  212. package/dist/templates/compilr-md-import.d.ts +16 -0
  213. package/dist/templates/compilr-md-import.js +241 -0
  214. package/dist/templates/compilr-md.js +10 -61
  215. package/dist/templates/config-json.d.ts +1 -25
  216. package/dist/templates/index.d.ts +2 -0
  217. package/dist/templates/index.js +34 -73
  218. package/dist/tool-names.d.ts +113 -0
  219. package/dist/tool-names.js +239 -0
  220. package/dist/tools/ask-user-simple.d.ts +1 -1
  221. package/dist/tools/ask-user-simple.js +2 -1
  222. package/dist/tools/ask-user.d.ts +1 -1
  223. package/dist/tools/ask-user.js +2 -1
  224. package/dist/tools/backlog.d.ts +2 -2
  225. package/dist/tools/backlog.js +1 -1
  226. package/dist/tools/db-tools.d.ts +13 -61
  227. package/dist/tools/db-tools.js +12 -13
  228. package/dist/tools/delegate-background.d.ts +27 -0
  229. package/dist/tools/delegate-background.js +115 -0
  230. package/dist/tools/delegate.d.ts +22 -0
  231. package/dist/tools/delegate.js +97 -0
  232. package/dist/tools/delegation-status.d.ts +16 -0
  233. package/dist/tools/delegation-status.js +128 -0
  234. package/dist/tools/guide-tool.d.ts +12 -0
  235. package/dist/tools/guide-tool.js +59 -0
  236. package/dist/tools/handoff.d.ts +25 -0
  237. package/dist/tools/handoff.js +99 -0
  238. package/dist/tools/meta-tools.d.ts +26 -0
  239. package/dist/tools/meta-tools.js +47 -0
  240. package/dist/tools/platform-adapter.d.ts +35 -0
  241. package/dist/tools/platform-adapter.js +404 -0
  242. package/dist/tools/project-db.d.ts +5 -73
  243. package/dist/tools/project-db.js +5 -336
  244. package/dist/tools.d.ts +67 -2
  245. package/dist/tools.js +240 -48
  246. package/dist/ui/autocomplete-controller.d.ts +42 -0
  247. package/dist/ui/autocomplete-controller.js +384 -0
  248. package/dist/ui/base/index.d.ts +1 -1
  249. package/dist/ui/base/index.js +1 -1
  250. package/dist/ui/base/overlay-base-v2.d.ts +10 -0
  251. package/dist/ui/base/overlay-base-v2.js +14 -0
  252. package/dist/ui/base/render-utils.d.ts +19 -0
  253. package/dist/ui/base/render-utils.js +25 -0
  254. package/dist/ui/base/tabbed-list-overlay-v2.d.ts +16 -1
  255. package/dist/ui/base/tabbed-list-overlay-v2.js +19 -1
  256. package/dist/ui/constants/labels.d.ts +14 -0
  257. package/dist/ui/constants/labels.js +52 -0
  258. package/dist/ui/conversation-store.d.ts +55 -0
  259. package/dist/ui/conversation-store.js +107 -0
  260. package/dist/ui/conversation.js +11 -13
  261. package/dist/ui/diff.d.ts +7 -1
  262. package/dist/ui/diff.js +85 -48
  263. package/dist/ui/ephemeral.js +3 -9
  264. package/dist/ui/file-autocomplete.d.ts +24 -0
  265. package/dist/ui/file-autocomplete.js +56 -0
  266. package/dist/ui/footer-renderer.d.ts +69 -0
  267. package/dist/ui/footer-renderer.js +431 -0
  268. package/dist/ui/footer.d.ts +74 -7
  269. package/dist/ui/footer.js +173 -16
  270. package/dist/ui/input-controller.d.ts +51 -0
  271. package/dist/ui/input-controller.js +176 -0
  272. package/dist/ui/input-prompt.d.ts +19 -0
  273. package/dist/ui/input-prompt.js +206 -14
  274. package/dist/ui/keyboard-handler.d.ts +57 -0
  275. package/dist/ui/keyboard-handler.js +557 -0
  276. package/dist/ui/live-region-facade.d.ts +42 -0
  277. package/dist/ui/live-region-facade.js +205 -0
  278. package/dist/ui/live-region.d.ts +0 -4
  279. package/dist/ui/live-region.js +6 -14
  280. package/dist/ui/mascot/renderer.d.ts +1 -1
  281. package/dist/ui/mascot/renderer.js +37 -2
  282. package/dist/ui/overlay/data/tutorial-content.d.ts +9 -0
  283. package/dist/ui/overlay/data/tutorial-content.js +9 -0
  284. package/dist/ui/overlay/data/tutorial-registry.d.ts +12 -0
  285. package/dist/ui/overlay/data/tutorial-registry.js +116 -0
  286. package/dist/ui/overlay/data/tutorial-types.d.ts +35 -0
  287. package/dist/ui/overlay/data/tutorial-types.js +6 -0
  288. package/dist/ui/overlay/data/tutorials/basics/first-conversation.d.ts +7 -0
  289. package/dist/ui/overlay/data/tutorials/basics/first-conversation.js +220 -0
  290. package/dist/ui/overlay/data/tutorials/basics/first-project.d.ts +7 -0
  291. package/dist/ui/overlay/data/tutorials/basics/first-project.js +284 -0
  292. package/dist/ui/overlay/data/tutorials/basics/navigation.d.ts +8 -0
  293. package/dist/ui/overlay/data/tutorials/basics/navigation.js +22 -0
  294. package/dist/ui/overlay/data/tutorials/basics/welcome.d.ts +7 -0
  295. package/dist/ui/overlay/data/tutorials/basics/welcome.js +174 -0
  296. package/dist/ui/overlay/data/tutorials/config/context-management.d.ts +7 -0
  297. package/dist/ui/overlay/data/tutorials/config/context-management.js +158 -0
  298. package/dist/ui/overlay/data/tutorials/config/mcp-servers.d.ts +8 -0
  299. package/dist/ui/overlay/data/tutorials/config/mcp-servers.js +155 -0
  300. package/dist/ui/overlay/data/tutorials/config/model-selection.d.ts +7 -0
  301. package/dist/ui/overlay/data/tutorials/config/model-selection.js +162 -0
  302. package/dist/ui/overlay/data/tutorials/config/permissions-safety.d.ts +7 -0
  303. package/dist/ui/overlay/data/tutorials/config/permissions-safety.js +163 -0
  304. package/dist/ui/overlay/data/tutorials/config/settings-config.d.ts +7 -0
  305. package/dist/ui/overlay/data/tutorials/config/settings-config.js +166 -0
  306. package/dist/ui/overlay/data/tutorials/planning/arch.d.ts +7 -0
  307. package/dist/ui/overlay/data/tutorials/planning/arch.js +168 -0
  308. package/dist/ui/overlay/data/tutorials/planning/backlog.d.ts +7 -0
  309. package/dist/ui/overlay/data/tutorials/planning/backlog.js +103 -0
  310. package/dist/ui/overlay/data/tutorials/planning/build.d.ts +7 -0
  311. package/dist/ui/overlay/data/tutorials/planning/build.js +173 -0
  312. package/dist/ui/overlay/data/tutorials/planning/design.d.ts +7 -0
  313. package/dist/ui/overlay/data/tutorials/planning/design.js +205 -0
  314. package/dist/ui/overlay/data/tutorials/planning/docs.d.ts +7 -0
  315. package/dist/ui/overlay/data/tutorials/planning/docs.js +143 -0
  316. package/dist/ui/overlay/data/tutorials/planning/prd.d.ts +7 -0
  317. package/dist/ui/overlay/data/tutorials/planning/prd.js +173 -0
  318. package/dist/ui/overlay/data/tutorials/planning/scaffold.d.ts +7 -0
  319. package/dist/ui/overlay/data/tutorials/planning/scaffold.js +164 -0
  320. package/dist/ui/overlay/data/tutorials/planning/sketch.d.ts +7 -0
  321. package/dist/ui/overlay/data/tutorials/planning/sketch.js +58 -0
  322. package/dist/ui/overlay/data/tutorials/projects/anchors.d.ts +7 -0
  323. package/dist/ui/overlay/data/tutorials/projects/anchors.js +248 -0
  324. package/dist/ui/overlay/data/tutorials/projects/import-project.d.ts +7 -0
  325. package/dist/ui/overlay/data/tutorials/projects/import-project.js +172 -0
  326. package/dist/ui/overlay/data/tutorials/projects/managing-projects.d.ts +8 -0
  327. package/dist/ui/overlay/data/tutorials/projects/managing-projects.js +212 -0
  328. package/dist/ui/overlay/data/tutorials/projects/new-project.d.ts +7 -0
  329. package/dist/ui/overlay/data/tutorials/projects/new-project.js +251 -0
  330. package/dist/ui/overlay/data/tutorials/projects/session-management.d.ts +7 -0
  331. package/dist/ui/overlay/data/tutorials/projects/session-management.js +169 -0
  332. package/dist/ui/overlay/data/tutorials/teams/background-execution.d.ts +7 -0
  333. package/dist/ui/overlay/data/tutorials/teams/background-execution.js +171 -0
  334. package/dist/ui/overlay/data/tutorials/teams/multi-terminal.d.ts +8 -0
  335. package/dist/ui/overlay/data/tutorials/teams/multi-terminal.js +147 -0
  336. package/dist/ui/overlay/data/tutorials/teams/task-assignment.d.ts +7 -0
  337. package/dist/ui/overlay/data/tutorials/teams/task-assignment.js +204 -0
  338. package/dist/ui/overlay/data/tutorials/teams/team-overview.d.ts +7 -0
  339. package/dist/ui/overlay/data/tutorials/teams/team-overview.js +165 -0
  340. package/dist/ui/overlay/data/tutorials/teams/working-with-agents.d.ts +7 -0
  341. package/dist/ui/overlay/data/tutorials/teams/working-with-agents.js +172 -0
  342. package/dist/ui/overlay/impl/agents-overlay-v2.js +6 -17
  343. package/dist/ui/overlay/impl/anchors-overlay-v2.js +30 -64
  344. package/dist/ui/overlay/impl/artifact-detail-overlay-v2.d.ts +43 -0
  345. package/dist/ui/overlay/impl/artifact-detail-overlay-v2.js +232 -0
  346. package/dist/ui/overlay/impl/artifact-overlay-v2.d.ts +40 -0
  347. package/dist/ui/overlay/impl/artifact-overlay-v2.js +115 -0
  348. package/dist/ui/overlay/impl/ask-user-overlay-v2.js +2 -5
  349. package/dist/ui/overlay/impl/background-overlay-v2.d.ts +40 -0
  350. package/dist/ui/overlay/impl/background-overlay-v2.js +147 -0
  351. package/dist/ui/overlay/impl/backlog-overlay-v2.d.ts +4 -1
  352. package/dist/ui/overlay/impl/backlog-overlay-v2.js +55 -16
  353. package/dist/ui/overlay/impl/changelog-overlay-v2.d.ts +44 -0
  354. package/dist/ui/overlay/impl/changelog-overlay-v2.js +165 -0
  355. package/dist/ui/overlay/impl/commands-overlay-v2.js +4 -6
  356. package/dist/ui/overlay/impl/config-overlay-v2.d.ts +12 -1
  357. package/dist/ui/overlay/impl/config-overlay-v2.js +164 -100
  358. package/dist/ui/overlay/impl/custom-agent-form-overlay-v2.d.ts +83 -0
  359. package/dist/ui/overlay/impl/custom-agent-form-overlay-v2.js +711 -0
  360. package/dist/ui/overlay/impl/dashboard-overlay-v2.d.ts +2 -0
  361. package/dist/ui/overlay/impl/dashboard-overlay-v2.js +26 -3
  362. package/dist/ui/overlay/impl/delegations-overlay-v2.d.ts +28 -0
  363. package/dist/ui/overlay/impl/delegations-overlay-v2.js +279 -0
  364. package/dist/ui/overlay/impl/docs-overlay-v2.js +12 -9
  365. package/dist/ui/overlay/impl/document-detail-overlay-v2.d.ts +7 -0
  366. package/dist/ui/overlay/impl/document-detail-overlay-v2.js +119 -78
  367. package/dist/ui/overlay/impl/filter-overlay-v2.d.ts +41 -0
  368. package/dist/ui/overlay/impl/filter-overlay-v2.js +110 -0
  369. package/dist/ui/overlay/impl/games-overlay-v2.d.ts +31 -0
  370. package/dist/ui/overlay/impl/games-overlay-v2.js +135 -0
  371. package/dist/ui/overlay/impl/help-overlay-v2.d.ts +26 -3
  372. package/dist/ui/overlay/impl/help-overlay-v2.js +20 -42
  373. package/dist/ui/overlay/impl/login-overlay-v2.d.ts +49 -0
  374. package/dist/ui/overlay/impl/login-overlay-v2.js +277 -0
  375. package/dist/ui/overlay/impl/mcp-overlay-v2.d.ts +63 -0
  376. package/dist/ui/overlay/impl/mcp-overlay-v2.js +907 -0
  377. package/dist/ui/overlay/impl/model-overlay-v2.d.ts +57 -13
  378. package/dist/ui/overlay/impl/model-overlay-v2.js +1086 -61
  379. package/dist/ui/overlay/impl/new-overlay-v2.d.ts +37 -6
  380. package/dist/ui/overlay/impl/new-overlay-v2.js +715 -65
  381. package/dist/ui/overlay/impl/notifications-overlay-v2.d.ts +20 -0
  382. package/dist/ui/overlay/impl/notifications-overlay-v2.js +116 -0
  383. package/dist/ui/overlay/impl/onboarding-wizard-overlay-v2.d.ts +76 -0
  384. package/dist/ui/overlay/impl/onboarding-wizard-overlay-v2.js +728 -0
  385. package/dist/ui/overlay/impl/pending-overlay-v2.d.ts +51 -0
  386. package/dist/ui/overlay/impl/pending-overlay-v2.js +445 -0
  387. package/dist/ui/overlay/impl/permission-overlay-v2.js +5 -5
  388. package/dist/ui/overlay/impl/permissions-overlay-v2.d.ts +85 -0
  389. package/dist/ui/overlay/impl/permissions-overlay-v2.js +820 -0
  390. package/dist/ui/overlay/impl/plan-approval-overlay-v2.d.ts +35 -0
  391. package/dist/ui/overlay/impl/plan-approval-overlay-v2.js +181 -0
  392. package/dist/ui/overlay/impl/project-edit-overlay-v2.d.ts +36 -0
  393. package/dist/ui/overlay/impl/project-edit-overlay-v2.js +195 -0
  394. package/dist/ui/overlay/impl/projects-overlay-v2.d.ts +1 -0
  395. package/dist/ui/overlay/impl/projects-overlay-v2.js +278 -44
  396. package/dist/ui/overlay/impl/reset-overlay-v2.d.ts +39 -0
  397. package/dist/ui/overlay/impl/reset-overlay-v2.js +107 -0
  398. package/dist/ui/overlay/impl/resume-overlay-v2.d.ts +60 -0
  399. package/dist/ui/overlay/impl/resume-overlay-v2.js +414 -0
  400. package/dist/ui/overlay/impl/session-mode-overlay-v2.d.ts +43 -0
  401. package/dist/ui/overlay/impl/session-mode-overlay-v2.js +124 -0
  402. package/dist/ui/overlay/impl/tasks-overlay-v2.d.ts +28 -0
  403. package/dist/ui/overlay/impl/tasks-overlay-v2.js +283 -0
  404. package/dist/ui/overlay/impl/team-overlay-v2.d.ts +86 -0
  405. package/dist/ui/overlay/impl/team-overlay-v2.js +692 -0
  406. package/dist/ui/overlay/impl/terminals-overlay-v2.d.ts +26 -0
  407. package/dist/ui/overlay/impl/terminals-overlay-v2.js +217 -0
  408. package/dist/ui/overlay/impl/tools-overlay-v2.js +3 -7
  409. package/dist/ui/overlay/impl/tutorial-overlay-v2.d.ts +30 -16
  410. package/dist/ui/overlay/impl/tutorial-overlay-v2.js +133 -956
  411. package/dist/ui/overlay/impl/workflow-overlay-v2.d.ts +1 -0
  412. package/dist/ui/overlay/impl/workflow-overlay-v2.js +10 -4
  413. package/dist/ui/overlay/index.d.ts +20 -1
  414. package/dist/ui/overlay/index.js +19 -0
  415. package/dist/ui/overlay/types.d.ts +5 -0
  416. package/dist/ui/overlay-manager.d.ts +43 -0
  417. package/dist/ui/overlay-manager.js +238 -0
  418. package/dist/ui/overlays.js +4 -16
  419. package/dist/ui/permission-overlay.js +6 -5
  420. package/dist/ui/status-bar-controller.d.ts +33 -0
  421. package/dist/ui/status-bar-controller.js +99 -0
  422. package/dist/ui/subagent-renderer.js +3 -19
  423. package/dist/ui/terminal-autocomplete-utils.d.ts +23 -0
  424. package/dist/ui/terminal-autocomplete-utils.js +83 -0
  425. package/dist/ui/terminal-line-builders.d.ts +17 -0
  426. package/dist/ui/terminal-line-builders.js +42 -0
  427. package/dist/ui/terminal-render-item.d.ts +16 -0
  428. package/dist/ui/terminal-render-item.js +267 -0
  429. package/dist/ui/terminal-renderer.d.ts +7 -8
  430. package/dist/ui/terminal-renderer.js +7 -8
  431. package/dist/ui/terminal-types.d.ts +179 -0
  432. package/dist/ui/terminal-types.js +34 -0
  433. package/dist/ui/terminal-ui.d.ts +144 -276
  434. package/dist/ui/terminal-ui.js +384 -1861
  435. package/dist/ui/todo-zone.d.ts +19 -1
  436. package/dist/ui/todo-zone.js +71 -13
  437. package/dist/ui/tool-formatters.js +696 -1
  438. package/dist/ui/turn-metrics.d.ts +56 -0
  439. package/dist/ui/turn-metrics.js +75 -0
  440. package/dist/ui/types.d.ts +28 -0
  441. package/dist/ui/types.js +1 -0
  442. package/dist/ui/vscode-diff-ipc.d.ts +102 -0
  443. package/dist/ui/vscode-diff-ipc.js +385 -0
  444. package/dist/utils/credentials.d.ts +24 -5
  445. package/dist/utils/credentials.js +123 -9
  446. package/dist/utils/format-tokens.d.ts +13 -0
  447. package/dist/utils/format-tokens.js +18 -0
  448. package/dist/utils/git-config.d.ts +26 -0
  449. package/dist/utils/git-config.js +54 -0
  450. package/dist/utils/message-utils.d.ts +61 -0
  451. package/dist/utils/message-utils.js +72 -0
  452. package/dist/utils/model-tiers.d.ts +8 -1
  453. package/dist/utils/model-tiers.js +38 -16
  454. package/dist/utils/open-browser.d.ts +5 -0
  455. package/dist/utils/open-browser.js +32 -0
  456. package/dist/utils/path-safety.js +3 -2
  457. package/dist/utils/project-detection.d.ts +58 -0
  458. package/dist/utils/project-detection.js +424 -0
  459. package/dist/utils/project-memory.js +2 -1
  460. package/dist/utils/project-status.d.ts +2 -2
  461. package/dist/utils/startup-perf.d.ts +18 -0
  462. package/dist/utils/startup-perf.js +60 -0
  463. package/dist/utils/token-tracker.d.ts +62 -0
  464. package/dist/utils/token-tracker.js +150 -0
  465. package/dist/utils/token-types.d.ts +23 -0
  466. package/dist/utils/token-types.js +18 -0
  467. package/dist/utils/types/config-types.d.ts +32 -0
  468. package/dist/utils/types/config-types.js +8 -0
  469. package/dist/utils/update-checker.d.ts +28 -0
  470. package/dist/utils/update-checker.js +106 -0
  471. package/dist/utils/version.d.ts +7 -0
  472. package/dist/utils/version.js +10 -0
  473. package/dist/utils/vscode-detect.d.ts +39 -0
  474. package/dist/utils/vscode-detect.js +137 -0
  475. package/package.json +27 -13
  476. package/dist/commands/handler-types.d.ts +0 -68
  477. package/dist/commands/handler-types.js +0 -8
  478. package/dist/commands/handlers/agent-commands.d.ts +0 -13
  479. package/dist/commands/handlers/agent-commands.js +0 -305
  480. package/dist/commands/handlers/design-commands.d.ts +0 -15
  481. package/dist/commands/handlers/design-commands.js +0 -334
  482. package/dist/commands/handlers/index.d.ts +0 -20
  483. package/dist/commands/handlers/index.js +0 -43
  484. package/dist/commands/handlers/overlay-commands.d.ts +0 -21
  485. package/dist/commands/handlers/overlay-commands.js +0 -287
  486. package/dist/commands/handlers/project-commands.d.ts +0 -11
  487. package/dist/commands/handlers/project-commands.js +0 -167
  488. package/dist/commands/handlers/simple-commands.d.ts +0 -19
  489. package/dist/commands/handlers/simple-commands.js +0 -144
  490. package/dist/commands/registry.d.ts +0 -50
  491. package/dist/commands/registry.js +0 -75
  492. package/dist/index.old.d.ts +0 -7
  493. package/dist/index.old.js +0 -1014
  494. package/dist/repl.d.ts +0 -149
  495. package/dist/repl.js +0 -1151
  496. package/dist/templates/claude-md.d.ts +0 -7
  497. package/dist/templates/claude-md.js +0 -189
  498. package/dist/test-autocomplete.d.ts +0 -7
  499. package/dist/test-autocomplete.js +0 -85
  500. package/dist/test-tabbed-menu.d.ts +0 -7
  501. package/dist/test-tabbed-menu.js +0 -25
  502. package/dist/tool-selector.d.ts +0 -71
  503. package/dist/tool-selector.js +0 -184
  504. package/dist/tools/anchor-tools.d.ts +0 -31
  505. package/dist/tools/anchor-tools.js +0 -255
  506. package/dist/tools/backlog-wrappers.d.ts +0 -54
  507. package/dist/tools/backlog-wrappers.js +0 -338
  508. package/dist/tools/document-db.d.ts +0 -43
  509. package/dist/tools/document-db.js +0 -220
  510. package/dist/tools/workitem-db.d.ts +0 -103
  511. package/dist/tools/workitem-db.js +0 -549
  512. package/dist/ui/agents-overlay-v2.d.ts +0 -43
  513. package/dist/ui/agents-overlay-v2.js +0 -809
  514. package/dist/ui/agents-overlay.d.ts +0 -12
  515. package/dist/ui/agents-overlay.js +0 -863
  516. package/dist/ui/anchors-overlay.d.ts +0 -12
  517. package/dist/ui/anchors-overlay.js +0 -775
  518. package/dist/ui/arch-type-overlay.d.ts +0 -15
  519. package/dist/ui/arch-type-overlay.js +0 -201
  520. package/dist/ui/ask-user-overlay-v2.d.ts +0 -26
  521. package/dist/ui/ask-user-overlay-v2.js +0 -555
  522. package/dist/ui/ask-user-simple-overlay-v2.d.ts +0 -25
  523. package/dist/ui/ask-user-simple-overlay-v2.js +0 -215
  524. package/dist/ui/backlog-overlay.d.ts +0 -32
  525. package/dist/ui/backlog-overlay.js +0 -652
  526. package/dist/ui/commands-overlay-v2.d.ts +0 -33
  527. package/dist/ui/commands-overlay-v2.js +0 -441
  528. package/dist/ui/commands-overlay.d.ts +0 -16
  529. package/dist/ui/commands-overlay.js +0 -439
  530. package/dist/ui/config-overlay.d.ts +0 -35
  531. package/dist/ui/config-overlay.js +0 -707
  532. package/dist/ui/docs-overlay.d.ts +0 -17
  533. package/dist/ui/docs-overlay.js +0 -303
  534. package/dist/ui/footer-v2.d.ts +0 -222
  535. package/dist/ui/footer-v2.js +0 -1349
  536. package/dist/ui/help-overlay-v2.d.ts +0 -34
  537. package/dist/ui/help-overlay-v2.js +0 -309
  538. package/dist/ui/help-overlay.d.ts +0 -16
  539. package/dist/ui/help-overlay.js +0 -316
  540. package/dist/ui/init-overlay-v2.d.ts +0 -34
  541. package/dist/ui/init-overlay-v2.js +0 -600
  542. package/dist/ui/init-overlay.d.ts +0 -34
  543. package/dist/ui/init-overlay.js +0 -604
  544. package/dist/ui/input-prompt-v2.d.ts +0 -180
  545. package/dist/ui/input-prompt-v2.js +0 -999
  546. package/dist/ui/iteration-limit-overlay-v2.d.ts +0 -21
  547. package/dist/ui/iteration-limit-overlay-v2.js +0 -114
  548. package/dist/ui/keys-overlay-v2.d.ts +0 -41
  549. package/dist/ui/keys-overlay-v2.js +0 -248
  550. package/dist/ui/mascot-overlay-v2.d.ts +0 -41
  551. package/dist/ui/mascot-overlay-v2.js +0 -138
  552. package/dist/ui/mascot-overlay.d.ts +0 -21
  553. package/dist/ui/mascot-overlay.js +0 -146
  554. package/dist/ui/model-overlay-v2.d.ts +0 -49
  555. package/dist/ui/model-overlay-v2.js +0 -118
  556. package/dist/ui/model-overlay.d.ts +0 -27
  557. package/dist/ui/model-overlay.js +0 -221
  558. package/dist/ui/model-warning-overlay.d.ts +0 -30
  559. package/dist/ui/model-warning-overlay.js +0 -169
  560. package/dist/ui/new-overlay.d.ts +0 -34
  561. package/dist/ui/new-overlay.js +0 -604
  562. package/dist/ui/overlay/impl/init-overlay-v2.d.ts +0 -77
  563. package/dist/ui/overlay/impl/init-overlay-v2.js +0 -593
  564. package/dist/ui/overlay/overlay-types.d.ts +0 -128
  565. package/dist/ui/overlay/overlay-types.js +0 -22
  566. package/dist/ui/overlays/help-overlay-v2.d.ts +0 -28
  567. package/dist/ui/overlays/help-overlay-v2.js +0 -198
  568. package/dist/ui/overlays/index.d.ts +0 -11
  569. package/dist/ui/overlays/index.js +0 -11
  570. package/dist/ui/permission-overlay-v2.d.ts +0 -36
  571. package/dist/ui/permission-overlay-v2.js +0 -380
  572. package/dist/ui/projects-overlay.d.ts +0 -19
  573. package/dist/ui/projects-overlay.js +0 -484
  574. package/dist/ui/theme-overlay-v2.d.ts +0 -42
  575. package/dist/ui/theme-overlay-v2.js +0 -135
  576. package/dist/ui/theme-overlay.d.ts +0 -24
  577. package/dist/ui/theme-overlay.js +0 -127
  578. package/dist/ui/tools-overlay-v2.d.ts +0 -47
  579. package/dist/ui/tools-overlay-v2.js +0 -218
  580. package/dist/ui/tools-overlay.d.ts +0 -34
  581. package/dist/ui/tools-overlay.js +0 -230
  582. package/dist/ui/tutorial-overlay-v2.d.ts +0 -31
  583. package/dist/ui/tutorial-overlay-v2.js +0 -1035
  584. package/dist/ui/tutorial-overlay.d.ts +0 -11
  585. package/dist/ui/tutorial-overlay.js +0 -1034
  586. package/dist/ui/workflow-overlay.d.ts +0 -22
  587. package/dist/ui/workflow-overlay.js +0 -636
@@ -1,7 +0,0 @@
1
- /**
2
- * CLAUDE.md Template Generator
3
- *
4
- * Generates the AI assistant context file.
5
- */
6
- import type { ProjectConfig } from './types.js';
7
- export declare function generateClaudeMd(config: ProjectConfig): string;
@@ -1,189 +0,0 @@
1
- /**
2
- * CLAUDE.md Template Generator
3
- *
4
- * Generates the AI assistant context file.
5
- */
6
- export function generateClaudeMd(config) {
7
- const techStackSection = generateTechStackSection(config);
8
- const codingStandardsSection = generateCodingStandardsSection(config);
9
- return `# CLAUDE.md
10
-
11
- This file provides guidance to AI coding assistants when working with this project.
12
-
13
- ---
14
-
15
- ## Project Overview
16
-
17
- **Project:** ${config.name}
18
- **Description:** ${config.description}
19
-
20
- ---
21
-
22
- ${techStackSection}
23
-
24
- ---
25
-
26
- ${codingStandardsSection}
27
-
28
- ---
29
-
30
- ## Project Structure
31
-
32
- ${config.repoPattern === 'single' ? generateSingleRepoStructure() : generateTwoRepoStructure(config.name)}
33
-
34
- ---
35
-
36
- ## Architecture Decisions
37
-
38
- Key architectural decisions are documented in:
39
- - ${config.repoPattern === 'single' ? '`.compilr/architecture/decisions/`' : '`02-architecture/decisions/`'}
40
-
41
- When making significant technical choices, create an ADR (Architecture Decision Record).
42
-
43
- ---
44
-
45
- ## Current Focus
46
-
47
- *Updated by session management - tracks current sprint/milestone*
48
-
49
- ---
50
-
51
- ## Key Files
52
-
53
- *Auto-populated based on usage - frequently referenced files appear here*
54
-
55
- ---
56
-
57
- ## Development Commands
58
-
59
- \`\`\`bash
60
- # Development
61
- npm run dev # Start development server
62
- npm run build # Production build
63
- npm run lint # Lint code
64
- npm run test # Run tests
65
-
66
- # Project workflow
67
- compilr start # Begin coding session with context
68
- compilr save # Save session progress
69
- compilr backlog # View/manage tasks
70
- \`\`\`
71
-
72
- ---
73
-
74
- ## Notes for AI Assistants
75
-
76
- 1. **Always read this file first** when starting a session
77
- 2. **Check the backlog** before starting new work
78
- 3. **Follow coding standards** defined in this project
79
- 4. **Document decisions** when making architectural choices
80
- 5. **Update session notes** at the end of each session
81
-
82
- ---
83
-
84
- *Last Updated: ${new Date().toISOString().split('T')[0]}*
85
- `;
86
- }
87
- function generateTechStackSection(config) {
88
- if (config.techStack === 'custom') {
89
- return `## Tech Stack
90
-
91
- *To be configured - update this section with your chosen technologies*
92
-
93
- | Component | Technology | Notes |
94
- |-----------|------------|-------|
95
- | Frontend | TBD | |
96
- | Backend | TBD | |
97
- | Database | TBD | |
98
- | Hosting | TBD | |`;
99
- }
100
- const stacks = {
101
- 'react-node-pg': `## Tech Stack
102
-
103
- | Component | Technology | Notes |
104
- |-----------|------------|-------|
105
- | Frontend | React 18 + Vite | TypeScript, modern React |
106
- | Backend | Node.js + Express | TypeScript, REST API |
107
- | Database | PostgreSQL | Relational, ACID compliant |
108
- | ORM | Prisma | Type-safe database access |`,
109
- 'react-python-pg': `## Tech Stack
110
-
111
- | Component | Technology | Notes |
112
- |-----------|------------|-------|
113
- | Frontend | React 18 + Vite | TypeScript, modern React |
114
- | Backend | Python + FastAPI | Async, auto-docs |
115
- | Database | PostgreSQL | Relational, ACID compliant |
116
- | ORM | SQLAlchemy | Python ORM |`,
117
- 'vue-node-pg': `## Tech Stack
118
-
119
- | Component | Technology | Notes |
120
- |-----------|------------|-------|
121
- | Frontend | Vue 3 + Vite | TypeScript, Composition API |
122
- | Backend | Node.js + Express | TypeScript, REST API |
123
- | Database | PostgreSQL | Relational, ACID compliant |
124
- | ORM | Prisma | Type-safe database access |`,
125
- };
126
- return stacks[config.techStack] ?? stacks['react-node-pg'];
127
- }
128
- function generateCodingStandardsSection(config) {
129
- if (config.codingStandards === 'custom') {
130
- return `## Coding Standards
131
-
132
- *To be configured - update this section with your coding standards*
133
-
134
- See ${config.repoPattern === 'single' ? '`.compilr/architecture/coding-standards.md`' : '`02-architecture/coding-standards.md`'} for details.`;
135
- }
136
- const standards = config.codingStandards === 'strict'
137
- ? `## Coding Standards
138
-
139
- **Preset:** TypeScript Strict
140
-
141
- - TypeScript strict mode enabled
142
- - ESLint + Prettier configured
143
- - Conventional commits required
144
- - No \`any\` types allowed
145
- - Explicit return types required
146
- - Comprehensive error handling
147
-
148
- See ${config.repoPattern === 'single' ? '`.compilr/architecture/coding-standards.md`' : '`02-architecture/coding-standards.md`'} for full details.`
149
- : `## Coding Standards
150
-
151
- **Preset:** TypeScript Relaxed
152
-
153
- - TypeScript with relaxed settings
154
- - ESLint + Prettier configured
155
- - Conventional commits encouraged
156
- - \`any\` types discouraged but allowed
157
- - Implicit return types allowed
158
-
159
- See ${config.repoPattern === 'single' ? '`.compilr/architecture/coding-standards.md`' : '`02-architecture/coding-standards.md`'} for full details.`;
160
- return standards;
161
- }
162
- function generateSingleRepoStructure() {
163
- return `\`\`\`
164
- {project}/
165
- ├── .compilr/ # Workflow files
166
- │ ├── backlog.md # Task tracking
167
- │ ├── architecture/ # ADRs, coding standards
168
- │ └── sessions/ # Session notes
169
- ├── src/ # Source code
170
- ├── CLAUDE.md # This file
171
- ├── package.json
172
- └── README.md
173
- \`\`\``;
174
- }
175
- function generateTwoRepoStructure(name) {
176
- return `\`\`\`
177
- ${name}/ # Code repository
178
- ├── src/
179
- ├── package.json
180
- └── README.md
181
-
182
- ${name}-docs/ # Documentation repository
183
- ├── .compilr/
184
- ├── CLAUDE.md # This file
185
- ├── 01-planning/ # Backlog, roadmap
186
- ├── 02-architecture/ # ADRs, standards
187
- └── 04-session-notes/ # Session history
188
- \`\`\``;
189
- }
@@ -1,7 +0,0 @@
1
- #!/usr/bin/env node
2
- /**
3
- * Test script for slash command autocomplete
4
- *
5
- * Run with: npx tsx src/test-autocomplete.ts
6
- */
7
- export {};
@@ -1,85 +0,0 @@
1
- #!/usr/bin/env node
2
- /**
3
- * Test script for slash command autocomplete
4
- *
5
- * Run with: npx tsx src/test-autocomplete.ts
6
- */
7
- import pc from 'picocolors';
8
- import { createInteractiveInput, SLASH_COMMANDS } from './slash-autocomplete.js';
9
- console.log(pc.bold(pc.cyan('Slash Command Autocomplete Test')));
10
- console.log(pc.dim('─'.repeat(40)));
11
- console.log('');
12
- console.log(pc.dim('Available commands:'));
13
- for (const cmd of SLASH_COMMANDS) {
14
- console.log(pc.dim(` ${cmd.name.padEnd(12)} ${cmd.description}`));
15
- }
16
- console.log('');
17
- console.log(pc.dim('Instructions:'));
18
- console.log(pc.dim(' • Type "/" to see autocomplete dropdown'));
19
- console.log(pc.dim(' • Use ↑↓ arrows to navigate'));
20
- console.log(pc.dim(' • Press Tab to autocomplete selected'));
21
- console.log(pc.dim(' • Press Enter to execute'));
22
- console.log(pc.dim(' • Press Esc to close dropdown'));
23
- console.log(pc.dim(' • Type "quit" to exit'));
24
- console.log('');
25
- const prompt = pc.bold(pc.blue('Test> '));
26
- const handleSubmit = (input) => {
27
- if (input.trim().toLowerCase() === 'quit') {
28
- console.log(pc.dim('Goodbye!'));
29
- inputHandler.stop();
30
- process.exit(0);
31
- }
32
- if (input.trim()) {
33
- console.log(pc.green('Received: ') + pc.cyan(input));
34
- // Handle the command
35
- if (input.startsWith('/')) {
36
- const cmd = input.slice(1).toLowerCase();
37
- switch (cmd) {
38
- case 'exit':
39
- case 'quit':
40
- case 'q':
41
- console.log(pc.dim('Goodbye!'));
42
- inputHandler.stop();
43
- process.exit(0);
44
- break;
45
- case 'help':
46
- case '?':
47
- console.log(pc.bold('\nAvailable commands:'));
48
- for (const c of SLASH_COMMANDS) {
49
- console.log(` ${pc.cyan(c.name.padEnd(12))} ${c.description}`);
50
- }
51
- break;
52
- case 'clear':
53
- console.log(pc.green('✓') + ' History cleared');
54
- break;
55
- case 'tools':
56
- console.log(pc.green('✓') + ' Would list tools here');
57
- break;
58
- case 'tokens':
59
- console.log(pc.green('✓') + ' Would show token usage here');
60
- break;
61
- case 'context':
62
- console.log(pc.green('✓') + ' Would show context info here');
63
- break;
64
- case 'compact':
65
- console.log(pc.green('✓') + ' Would compact context here');
66
- break;
67
- default:
68
- console.log(pc.yellow(`Unknown command: ${input}`));
69
- }
70
- }
71
- }
72
- console.log('');
73
- // Show prompt for next input (handler stays running)
74
- process.stdout.write(prompt);
75
- };
76
- // Don't show separator for test - simpler continuous REPL
77
- const inputHandler = createInteractiveInput(prompt, handleSubmit, false);
78
- // Handle Ctrl+C
79
- process.on('SIGINT', () => {
80
- console.log('\n' + pc.dim('Interrupted.'));
81
- inputHandler.stop();
82
- process.exit(0);
83
- });
84
- // Start
85
- inputHandler.start();
@@ -1,7 +0,0 @@
1
- #!/usr/bin/env node
2
- /**
3
- * Test script for tabbed help menu (Claude Code-style)
4
- *
5
- * Run with: npx tsx src/test-tabbed-menu.ts
6
- */
7
- export {};
@@ -1,25 +0,0 @@
1
- #!/usr/bin/env node
2
- /**
3
- * Test script for tabbed help menu (Claude Code-style)
4
- *
5
- * Run with: npx tsx src/test-tabbed-menu.ts
6
- */
7
- import { showHelpMenu } from './tabbed-menu.js';
8
- import pc from 'picocolors';
9
- console.log(pc.bold(pc.cyan('Tabbed Help Menu Test')));
10
- console.log(pc.dim('─'.repeat(40)));
11
- console.log('');
12
- console.log(pc.dim('This is some terminal history that should remain visible.'));
13
- console.log(pc.dim('The help menu will appear below without clearing this.'));
14
- console.log('');
15
- console.log(pc.dim('Instructions:'));
16
- console.log(pc.dim(' • Press Tab to cycle through tabs'));
17
- console.log(pc.dim(' • Press ↑/↓ to navigate commands list'));
18
- console.log(pc.dim(' • Press Esc to close the menu'));
19
- console.log('');
20
- // Show the help menu
21
- showHelpMenu().then(() => {
22
- console.log(pc.green('✓') + ' Help menu closed');
23
- console.log(pc.dim('Notice how the history above is preserved!'));
24
- process.exit(0);
25
- });
@@ -1,71 +0,0 @@
1
- /**
2
- * Tool Selector - Category-based tool filtering
3
- *
4
- * Reduces token usage by selecting only relevant tools based on user intent.
5
- * This is a PoC implementation to validate the approach before adding to the library.
6
- */
7
- import type { Tool } from '@compilr-dev/agents';
8
- /**
9
- * Tool categories for grouping related tools
10
- */
11
- export declare const TOOL_CATEGORIES: Record<string, string[]>;
12
- /**
13
- * Intent detection rules - maps keywords to relevant categories
14
- */
15
- export declare const INTENT_RULES: Array<{
16
- keywords: string[];
17
- categories: string[];
18
- }>;
19
- /**
20
- * Default tools to always include (core functionality)
21
- */
22
- export declare const CORE_TOOLS: string[];
23
- /**
24
- * Select relevant tool names based on user message intent
25
- */
26
- export declare function selectToolNamesByIntent(userMessage: string): string[];
27
- /**
28
- * Filter tools array to only include selected tool names
29
- */
30
- export declare function filterTools(allTools: Tool[], selectedNames: string[]): Tool[];
31
- /**
32
- * Get a human-readable summary of selected tools
33
- */
34
- export declare function getToolSelectionSummary(selectedNames: string[], totalTools: number): string;
35
- /**
36
- * Estimate token savings from tool filtering
37
- */
38
- export declare function estimateTokenSavings(selectedCount: number, totalCount: number, avgTokensPerTool?: number): {
39
- selected: number;
40
- total: number;
41
- saved: number;
42
- percentage: number;
43
- };
44
- /**
45
- * ToolSelector class for stateful tool selection
46
- */
47
- export declare class ToolSelector {
48
- private readonly allTools;
49
- private readonly toolsByName;
50
- constructor(tools: Tool[]);
51
- /**
52
- * Select tools based on user message
53
- */
54
- select(userMessage: string): Tool[];
55
- /**
56
- * Get tools by name
57
- */
58
- getToolsByNames(names: string[]): Tool[];
59
- /**
60
- * Get all tools
61
- */
62
- getAll(): Tool[];
63
- /**
64
- * Get tool count
65
- */
66
- get count(): number;
67
- /**
68
- * Get selection summary for a message
69
- */
70
- getSummary(userMessage: string): string;
71
- }
@@ -1,184 +0,0 @@
1
- /**
2
- * Tool Selector - Category-based tool filtering
3
- *
4
- * Reduces token usage by selecting only relevant tools based on user intent.
5
- * This is a PoC implementation to validate the approach before adding to the library.
6
- */
7
- /**
8
- * Tool categories for grouping related tools
9
- */
10
- export const TOOL_CATEGORIES = {
11
- file_ops: ['read_file', 'write_file', 'edit', 'glob'],
12
- shell: ['bash'],
13
- git: ['git_status', 'git_diff', 'git_log', 'git_commit', 'git_branch'],
14
- search: ['grep', 'glob'],
15
- project: ['detect_project', 'find_project_root', 'run_tests', 'run_lint'],
16
- task_mgmt: ['todo_write', 'todo_read'],
17
- delegation: ['task'],
18
- };
19
- /**
20
- * Intent detection rules - maps keywords to relevant categories
21
- */
22
- export const INTENT_RULES = [
23
- // Git operations
24
- {
25
- keywords: ['git', 'commit', 'branch', 'diff', 'status', 'log', 'push', 'pull'],
26
- categories: ['git'],
27
- },
28
- // Search operations
29
- {
30
- keywords: ['search', 'find', 'grep', 'look for', 'where is', 'locate'],
31
- categories: ['search', 'file_ops'],
32
- },
33
- // Shell/command operations
34
- {
35
- keywords: ['run', 'execute', 'command', 'shell', 'echo', 'npm', 'node'],
36
- categories: ['shell'],
37
- },
38
- // Project operations
39
- {
40
- keywords: ['test', 'lint', 'build', 'project', 'framework', 'type of'],
41
- categories: ['project', 'shell'],
42
- },
43
- // File operations
44
- {
45
- keywords: ['file', 'read', 'write', 'edit', 'create', 'modify', 'replace', 'content'],
46
- categories: ['file_ops'],
47
- },
48
- // Todo operations
49
- {
50
- keywords: ['todo', 'task', 'list', 'add item', 'show todos'],
51
- categories: ['task_mgmt'],
52
- },
53
- // Directory/file listing
54
- {
55
- keywords: ['list', 'files', 'directory', 'folder', 'typescript', '*.ts'],
56
- categories: ['file_ops', 'search'],
57
- },
58
- // Delegation / sub-agents
59
- {
60
- keywords: [
61
- 'explore',
62
- 'investigate',
63
- 'analyze',
64
- 'review code',
65
- 'code review',
66
- 'security audit',
67
- 'refactor',
68
- 'help me find',
69
- 'search the codebase',
70
- 'look through',
71
- 'scan for',
72
- 'debug',
73
- 'figure out',
74
- 'understand',
75
- 'complex task',
76
- 'multi-step',
77
- 'delegate',
78
- 'sub-agent',
79
- 'agent',
80
- ],
81
- categories: ['delegation', 'search', 'file_ops'],
82
- },
83
- ];
84
- /**
85
- * Default tools to always include (core functionality)
86
- */
87
- export const CORE_TOOLS = ['bash', 'read_file'];
88
- /**
89
- * Select relevant tool names based on user message intent
90
- */
91
- export function selectToolNamesByIntent(userMessage) {
92
- const message = userMessage.toLowerCase();
93
- const selectedCategories = new Set();
94
- // Match intent rules
95
- for (const rule of INTENT_RULES) {
96
- if (rule.keywords.some((kw) => message.includes(kw))) {
97
- rule.categories.forEach((cat) => selectedCategories.add(cat));
98
- }
99
- }
100
- // If no categories matched, use default
101
- if (selectedCategories.size === 0) {
102
- return [...CORE_TOOLS];
103
- }
104
- // Flatten categories to tool names
105
- const toolNames = new Set(CORE_TOOLS);
106
- for (const category of selectedCategories) {
107
- const tools = TOOL_CATEGORIES[category];
108
- // Always execute - tools is guaranteed to exist by categoryNames definition
109
- tools.forEach((t) => toolNames.add(t));
110
- }
111
- return Array.from(toolNames);
112
- }
113
- /**
114
- * Filter tools array to only include selected tool names
115
- */
116
- export function filterTools(allTools, selectedNames) {
117
- const nameSet = new Set(selectedNames);
118
- return allTools.filter((tool) => nameSet.has(tool.definition.name));
119
- }
120
- /**
121
- * Get a human-readable summary of selected tools
122
- */
123
- export function getToolSelectionSummary(selectedNames, totalTools) {
124
- const savings = Math.round((1 - selectedNames.length / totalTools) * 100);
125
- return `[Tools: ${String(selectedNames.length)}/${String(totalTools)} selected (${String(savings)}% reduction): ${selectedNames.join(', ')}]`;
126
- }
127
- /**
128
- * Estimate token savings from tool filtering
129
- */
130
- export function estimateTokenSavings(selectedCount, totalCount, avgTokensPerTool = 200) {
131
- const selected = selectedCount * avgTokensPerTool;
132
- const total = totalCount * avgTokensPerTool;
133
- const saved = total - selected;
134
- const percentage = Math.round((saved / total) * 100);
135
- return { selected, total, saved, percentage };
136
- }
137
- /**
138
- * ToolSelector class for stateful tool selection
139
- */
140
- export class ToolSelector {
141
- allTools;
142
- toolsByName;
143
- constructor(tools) {
144
- this.allTools = tools;
145
- this.toolsByName = new Map();
146
- for (const tool of tools) {
147
- this.toolsByName.set(tool.definition.name, tool);
148
- }
149
- }
150
- /**
151
- * Select tools based on user message
152
- */
153
- select(userMessage) {
154
- const names = selectToolNamesByIntent(userMessage);
155
- return this.getToolsByNames(names);
156
- }
157
- /**
158
- * Get tools by name
159
- */
160
- getToolsByNames(names) {
161
- return names
162
- .map((name) => this.toolsByName.get(name))
163
- .filter((tool) => tool !== undefined);
164
- }
165
- /**
166
- * Get all tools
167
- */
168
- getAll() {
169
- return this.allTools;
170
- }
171
- /**
172
- * Get tool count
173
- */
174
- get count() {
175
- return this.allTools.length;
176
- }
177
- /**
178
- * Get selection summary for a message
179
- */
180
- getSummary(userMessage) {
181
- const selected = selectToolNamesByIntent(userMessage);
182
- return getToolSelectionSummary(selected, this.allTools.length);
183
- }
184
- }
@@ -1,31 +0,0 @@
1
- /**
2
- * Anchor Tools - Agent tools for managing anchors
3
- *
4
- * Provides anchor_add and anchor_remove tools that allow
5
- * the agent to add critical context that survives compaction.
6
- */
7
- interface AnchorAddInput {
8
- /** The anchor content - critical information to preserve */
9
- content: string;
10
- /** Priority level: 'critical' | 'safety' | 'info' (default: 'info') */
11
- priority?: 'critical' | 'safety' | 'info';
12
- /** Scope: 'global' or 'project' (default: 'project' if active project, else 'global') */
13
- scope?: 'global' | 'project';
14
- /** Tags for categorization */
15
- tags?: string[];
16
- }
17
- interface AnchorRemoveInput {
18
- /** ID of the anchor to remove */
19
- id: string;
20
- }
21
- interface AnchorListInput {
22
- /** Filter by scope: 'global' | 'project' | 'all' (default: 'all') */
23
- scope?: 'global' | 'project' | 'all';
24
- /** Filter by priority */
25
- priority?: 'critical' | 'safety' | 'info';
26
- }
27
- export declare const anchorAddTool: import("@compilr-dev/agents").Tool<AnchorAddInput>;
28
- export declare const anchorRemoveTool: import("@compilr-dev/agents").Tool<AnchorRemoveInput>;
29
- export declare const anchorListTool: import("@compilr-dev/agents").Tool<AnchorListInput>;
30
- export declare const allAnchorTools: (import("@compilr-dev/agents").Tool<AnchorAddInput> | import("@compilr-dev/agents").Tool<AnchorRemoveInput>)[];
31
- export {};