@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
@@ -0,0 +1,241 @@
1
+ /**
2
+ * COMPILR.md Template Generator for Imported Projects
3
+ *
4
+ * Generates the AI assistant context file for existing projects that are being imported.
5
+ * Different from the new project template - acknowledges existing codebase structure.
6
+ */
7
+ export function generateCompilrMdForImport(config) {
8
+ const techStackSection = generateTechStackSection(config);
9
+ const structureSection = generateStructureSection(config);
10
+ return `# COMPILR.md
11
+
12
+ This file provides guidance to AI coding assistants when working with this project.
13
+
14
+ ---
15
+
16
+ ## Project Overview
17
+
18
+ **Project:** ${config.displayName}
19
+ ${config.description ? `**Description:** ${config.description}` : '*Add a description for this project*'}
20
+
21
+ **Workflow:** ${config.workflowMode === 'guided' ? 'Guided (structured step-by-step workflow)' : 'Flexible (user-driven, exploratory)'}
22
+
23
+ ---
24
+
25
+ ${techStackSection}
26
+
27
+ ---
28
+
29
+ ${structureSection}
30
+
31
+ ---
32
+
33
+ ## Project Data (Database-Backed)
34
+
35
+ This project uses compilr's database for tracking. Use these tools to access project data:
36
+
37
+ | Data Type | Read Tool | Write Tool |
38
+ |-----------|-----------|------------|
39
+ | Work Items (Backlog) | \`workitem_query\` | \`workitem_add\`, \`workitem_update\` |
40
+ | Project Documents | \`project_document_get\`, \`project_document_list\` | \`project_document_add\` |
41
+ | Anchors (Context) | \`anchor_list\` | \`anchor_add\`, \`anchor_remove\` |
42
+
43
+ **Important:** Use database tools for project metadata. Explore the existing codebase for implementation details.
44
+
45
+ ---
46
+
47
+ ## Development Commands
48
+
49
+ \`\`\`bash
50
+ ${generateDevCommands(config)}
51
+ \`\`\`
52
+
53
+ ---
54
+
55
+ ## Notes for AI Assistants
56
+
57
+ 1. **This is an existing codebase** - Explore the code structure before making changes
58
+ 2. **Respect existing patterns** - Follow the conventions already established in this project
59
+ 3. **Use database tools** to query backlog, documents, and anchors (project metadata)
60
+ 4. **Check the backlog** with \`workitem_query\` before starting new work
61
+ 5. **Read existing code** to understand the architecture before adding features
62
+
63
+ ---
64
+
65
+ *Generated by compilr CLI on ${new Date().toISOString().split('T')[0]}*
66
+ `;
67
+ }
68
+ function generateTechStackSection(config) {
69
+ const { detected } = config;
70
+ if (!detected.language) {
71
+ return `## Tech Stack
72
+
73
+ *Tech stack not auto-detected. Update this section with your project's technologies.*
74
+
75
+ | Component | Technology | Notes |
76
+ |-----------|------------|-------|
77
+ | Language | TBD | |
78
+ | Framework | TBD | |
79
+ | Database | TBD | |`;
80
+ }
81
+ const languageLabel = getLanguageLabel(detected.language);
82
+ const frameworkLabel = detected.framework ? getFrameworkLabel(detected.framework) : 'Not detected';
83
+ const packageManagerLabel = detected.packageManager ?? 'Not detected';
84
+ return `## Tech Stack
85
+
86
+ *Auto-detected from project files. Update as needed.*
87
+
88
+ | Component | Technology | Notes |
89
+ |-----------|------------|-------|
90
+ | Language | ${languageLabel} | Detected |
91
+ | Framework | ${frameworkLabel} | ${detected.framework ? 'Detected' : 'Update this'} |
92
+ | Package Manager | ${packageManagerLabel} | ${detected.packageManager ? 'Detected' : 'Update this'} |
93
+ | Database | *Not detected* | Update this |`;
94
+ }
95
+ function generateStructureSection(config) {
96
+ const { detected } = config;
97
+ // Provide guidance based on detected language
98
+ const languageHints = {
99
+ node: `- \`src/\` - Source code
100
+ - \`package.json\` - Dependencies and scripts
101
+ - \`tsconfig.json\` - TypeScript configuration (if TypeScript)`,
102
+ python: `- \`src/\` or project module - Source code
103
+ - \`pyproject.toml\` / \`requirements.txt\` - Dependencies
104
+ - \`tests/\` - Test files`,
105
+ go: `- Go modules structure
106
+ - \`go.mod\` - Module definition
107
+ - \`cmd/\` - Main applications (if present)
108
+ - \`internal/\` - Private packages (if present)`,
109
+ rust: `- \`src/\` - Source code
110
+ - \`Cargo.toml\` - Dependencies and project config
111
+ - \`target/\` - Build output (gitignored)`,
112
+ default: `*Explore the project to understand its structure.*`,
113
+ };
114
+ const hint = detected.language ? (languageHints[detected.language] ?? languageHints.default) : languageHints.default;
115
+ return `## Project Structure
116
+
117
+ *This is an existing codebase. Key locations:*
118
+
119
+ ${hint}
120
+
121
+ **Tip:** Use \`glob\` and \`read_file\` tools to explore the codebase structure.`;
122
+ }
123
+ function generateDevCommands(config) {
124
+ const { detected } = config;
125
+ // Generate appropriate dev commands based on language/package manager
126
+ const commands = {
127
+ node: `# Install dependencies
128
+ npm install
129
+
130
+ # Development
131
+ npm run dev
132
+
133
+ # Build
134
+ npm run build
135
+
136
+ # Test
137
+ npm test`,
138
+ pnpm: `# Install dependencies
139
+ pnpm install
140
+
141
+ # Development
142
+ pnpm dev
143
+
144
+ # Build
145
+ pnpm build
146
+
147
+ # Test
148
+ pnpm test`,
149
+ yarn: `# Install dependencies
150
+ yarn install
151
+
152
+ # Development
153
+ yarn dev
154
+
155
+ # Build
156
+ yarn build
157
+
158
+ # Test
159
+ yarn test`,
160
+ python: `# Install dependencies (adjust for your package manager)
161
+ pip install -r requirements.txt
162
+ # or: poetry install
163
+ # or: pdm install
164
+
165
+ # Run application
166
+ python -m ${config.name.replace(/-/g, '_')}
167
+
168
+ # Test
169
+ pytest`,
170
+ go: `# Download dependencies
171
+ go mod download
172
+
173
+ # Build
174
+ go build ./...
175
+
176
+ # Test
177
+ go test ./...
178
+
179
+ # Run (adjust for your main package)
180
+ go run ./cmd/${config.name}`,
181
+ rust: `# Build
182
+ cargo build
183
+
184
+ # Run
185
+ cargo run
186
+
187
+ # Test
188
+ cargo test`,
189
+ default: `# Update these commands for your project
190
+ # npm run dev
191
+ # npm run build
192
+ # npm test`,
193
+ };
194
+ if (detected.packageManager === 'pnpm')
195
+ return commands.pnpm;
196
+ if (detected.packageManager === 'yarn')
197
+ return commands.yarn;
198
+ if (detected.language)
199
+ return commands[detected.language] ?? commands.default;
200
+ return commands.default;
201
+ }
202
+ // =============================================================================
203
+ // Helper Functions (duplicated from project-detection for convenience)
204
+ // =============================================================================
205
+ function getLanguageLabel(language) {
206
+ const labels = {
207
+ node: 'Node.js / TypeScript',
208
+ go: 'Go',
209
+ python: 'Python',
210
+ rust: 'Rust',
211
+ java: 'Java',
212
+ kotlin: 'Kotlin',
213
+ php: 'PHP',
214
+ ruby: 'Ruby',
215
+ dotnet: '.NET (C#/F#)',
216
+ };
217
+ return labels[language] ?? language;
218
+ }
219
+ function getFrameworkLabel(framework) {
220
+ const labels = {
221
+ react: 'React',
222
+ vue: 'Vue.js',
223
+ svelte: 'Svelte',
224
+ angular: 'Angular',
225
+ next: 'Next.js',
226
+ nuxt: 'Nuxt.js',
227
+ express: 'Express.js',
228
+ fastify: 'Fastify',
229
+ koa: 'Koa',
230
+ hono: 'Hono',
231
+ electron: 'Electron',
232
+ fastapi: 'FastAPI',
233
+ django: 'Django',
234
+ flask: 'Flask',
235
+ rails: 'Ruby on Rails',
236
+ sinatra: 'Sinatra',
237
+ laravel: 'Laravel',
238
+ symfony: 'Symfony',
239
+ };
240
+ return labels[framework] ?? framework;
241
+ }
@@ -27,57 +27,37 @@ ${codingStandardsSection}
27
27
 
28
28
  ---
29
29
 
30
- ## Project Structure
30
+ ## Project Data (Database-Backed)
31
31
 
32
- ${config.repoPattern === 'single' ? generateSingleRepoStructure() : generateTwoRepoStructure(config.name)}
32
+ This project uses compilr's database for tracking. Use these tools to access project data:
33
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
34
+ | Data Type | Read Tool | Write Tool |
35
+ |-----------|-----------|------------|
36
+ | Work Items (Backlog) | \`workitem_query\` | \`workitem_add\`, \`workitem_update\` |
37
+ | Project Documents | \`project_document_get\`, \`project_document_list\` | \`project_document_add\` |
38
+ | Anchors (Context) | \`anchor_list\` | \`anchor_add\`, \`anchor_remove\` |
52
39
 
53
- *Auto-populated based on usage - frequently referenced files appear here*
40
+ **Important:** Always use database tools instead of exploring the filesystem for project data.
54
41
 
55
42
  ---
56
43
 
57
44
  ## Development Commands
58
45
 
59
46
  \`\`\`bash
60
- # Development
61
47
  npm run dev # Start development server
62
48
  npm run build # Production build
63
49
  npm run lint # Lint code
64
50
  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
51
  \`\`\`
71
52
 
72
53
  ---
73
54
 
74
55
  ## Notes for AI Assistants
75
56
 
76
- 1. **Always read this file first** when starting a session
77
- 2. **Check the backlog** before starting new work
57
+ 1. **Use database tools** to query backlog, documents, and anchors (not filesystem)
58
+ 2. **Check the backlog** with \`workitem_query\` before starting new work
78
59
  3. **Follow coding standards** defined in this project
79
60
  4. **Document decisions** when making architectural choices
80
- 5. **Update session notes** at the end of each session
81
61
 
82
62
  ---
83
63
 
@@ -159,34 +139,3 @@ See ${config.repoPattern === 'single' ? '`.compilr/architecture/coding-standards
159
139
  See ${config.repoPattern === 'single' ? '`.compilr/architecture/coding-standards.md`' : '`02-architecture/coding-standards.md`'} for full details.`;
160
140
  return standards;
161
141
  }
162
- function generateSingleRepoStructure() {
163
- return `\`\`\`
164
- {project}/
165
- ├── .compilr/ # Workflow files
166
- │ ├── architecture/ # ADRs, coding standards
167
- │ └── sessions/ # Session notes
168
- ├── src/ # Source code
169
- ├── COMPILR.md # This file
170
- ├── package.json
171
- └── README.md
172
- \`\`\`
173
-
174
- **Note:** Backlog/tasks are tracked in the compilr database. Use \`/backlog\` command to view.`;
175
- }
176
- function generateTwoRepoStructure(name) {
177
- return `\`\`\`
178
- ${name}/ # Code repository
179
- ├── src/
180
- ├── package.json
181
- └── README.md
182
-
183
- ${name}-docs/ # Documentation repository
184
- ├── .compilr/
185
- ├── COMPILR.md # This file
186
- ├── 01-planning/ # Roadmap
187
- ├── 02-architecture/ # ADRs, standards
188
- └── 04-session-notes/ # Session history
189
- \`\`\`
190
-
191
- **Note:** Backlog/tasks are tracked in the compilr database. Use \`/backlog\` command to view.`;
192
- }
@@ -4,31 +4,7 @@
4
4
  * Generates the .compilr/config.json file for workflow versioning and settings.
5
5
  */
6
6
  import type { ProjectConfig } from './types.js';
7
- export interface CompilrConfig {
8
- version: string;
9
- project: {
10
- name: string;
11
- description: string;
12
- createdAt: string;
13
- };
14
- paths: {
15
- /** Absolute path to the project/code repository */
16
- project: string;
17
- /** Absolute path to the docs repository (two-repo pattern only) */
18
- docs: string | null;
19
- /** Directory where .compilr/config.json lives (for reference) */
20
- workflowRoot: string;
21
- };
22
- settings: {
23
- repoPattern: 'single' | 'two-repo';
24
- techStack: string;
25
- codingStandards: string;
26
- };
27
- sessions: {
28
- count: number;
29
- lastSession: string | null;
30
- };
31
- }
7
+ export type { CompilrConfig } from '../utils/types/config-types.js';
32
8
  /**
33
9
  * Generate config.json content
34
10
  * @param config Project configuration
@@ -5,6 +5,8 @@
5
5
  */
6
6
  import type { ProjectConfig, GenerationResult } from './types.js';
7
7
  export * from './types.js';
8
+ export { generateCompilrMdForImport } from './compilr-md-import.js';
9
+ export type { ImportProjectConfig } from './compilr-md-import.js';
8
10
  /**
9
11
  * Generate a new project from configuration
10
12
  */
@@ -15,6 +15,8 @@ import { generateReadmeMd } from './readme-md.js';
15
15
  import { generatePackageJson } from './package-json.js';
16
16
  import { generateGitignore } from './gitignore.js';
17
17
  import { generateTsconfig } from './tsconfig.js';
18
+ // Import project template
19
+ export { generateCompilrMdForImport } from './compilr-md-import.js';
18
20
  // =============================================================================
19
21
  // Main Generator
20
22
  // =============================================================================
@@ -50,7 +52,6 @@ function generateSingleRepoProject(config, basePath, filesCreated) {
50
52
  projectPath,
51
53
  path.join(projectPath, 'src'),
52
54
  path.join(projectPath, '.compilr'),
53
- path.join(projectPath, '.compilr', 'requirements'),
54
55
  path.join(projectPath, '.compilr', 'architecture'),
55
56
  path.join(projectPath, '.compilr', 'architecture', 'decisions'),
56
57
  path.join(projectPath, '.compilr', 'docs'),
@@ -67,17 +68,13 @@ function generateSingleRepoProject(config, basePath, filesCreated) {
67
68
  { path: path.join(projectPath, 'package.json'), content: generatePackageJson(config) },
68
69
  { path: path.join(projectPath, '.gitignore'), content: generateGitignore(config) },
69
70
  { path: path.join(projectPath, 'tsconfig.json'), content: generateTsconfig(config) },
70
- // .compilr files (backlog is now tracked in database, not as file)
71
+ // .compilr files (backlog and PRD are now tracked in database, not as files)
71
72
  { path: path.join(projectPath, '.compilr', 'config.json'), content: generateConfigJson(config, projectPath) },
72
73
  { path: path.join(projectPath, '.compilr', 'roadmap.md'), content: generateRoadmapMd(config) },
73
74
  {
74
75
  path: path.join(projectPath, '.compilr', 'architecture', 'coding-standards.md'),
75
76
  content: generateCodingStandardsMd(config),
76
77
  },
77
- {
78
- path: path.join(projectPath, '.compilr', 'requirements', 'PRD.md'),
79
- content: generatePrdMd(config),
80
- },
81
78
  {
82
79
  path: path.join(projectPath, '.compilr', 'docs', 'README.md'),
83
80
  content: '# Documentation\n\n*Add your documentation here*\n',
@@ -116,7 +113,6 @@ function generateTwoRepoProject(config, basePath, filesCreated) {
116
113
  const docsDirs = [
117
114
  docsPath,
118
115
  path.join(docsPath, '.compilr'),
119
- path.join(docsPath, '00-requirements'),
120
116
  path.join(docsPath, '01-planning'),
121
117
  path.join(docsPath, '02-architecture'),
122
118
  path.join(docsPath, '02-architecture', 'decisions'),
@@ -141,8 +137,7 @@ function generateTwoRepoProject(config, basePath, filesCreated) {
141
137
  const docsFiles = [
142
138
  { path: path.join(docsPath, 'COMPILR.md'), content: generateCompilrMd(config) },
143
139
  { path: path.join(docsPath, '.compilr', 'config.json'), content: generateConfigJson(config, projectPath, docsPath) },
144
- { path: path.join(docsPath, '00-requirements', 'PRD.md'), content: generatePrdMd(config) },
145
- // backlog.md removed - backlog is now tracked in database
140
+ // PRD and backlog are now tracked in database, not as files
146
141
  { path: path.join(docsPath, '01-planning', 'roadmap.md'), content: generateRoadmapMd(config) },
147
142
  {
148
143
  path: path.join(docsPath, '02-architecture', 'coding-standards.md'),
@@ -176,14 +171,40 @@ function generateTwoRepoProject(config, basePath, filesCreated) {
176
171
  // =============================================================================
177
172
  // Helper Functions
178
173
  // =============================================================================
174
+ /**
175
+ * Check if git user.name and user.email are configured
176
+ */
177
+ function isGitConfigured() {
178
+ try {
179
+ const name = execSync('git config --global user.name', {
180
+ encoding: 'utf8',
181
+ stdio: ['pipe', 'pipe', 'pipe'],
182
+ }).trim();
183
+ const email = execSync('git config --global user.email', {
184
+ encoding: 'utf8',
185
+ stdio: ['pipe', 'pipe', 'pipe'],
186
+ }).trim();
187
+ return Boolean(name && email);
188
+ }
189
+ catch {
190
+ return false;
191
+ }
192
+ }
193
+ /**
194
+ * Initialize git repository
195
+ * If git config is not set, only runs git init (skips commit)
196
+ */
179
197
  function initGit(projectPath) {
180
198
  try {
181
199
  execSync('git init', { cwd: projectPath, stdio: 'ignore' });
182
200
  execSync('git add .', { cwd: projectPath, stdio: 'ignore' });
183
- execSync('git commit -m "Initial commit from compilr init"', {
184
- cwd: projectPath,
185
- stdio: 'ignore',
186
- });
201
+ // Only commit if git config is set
202
+ if (isGitConfigured()) {
203
+ execSync('git commit -m "Initial commit from compilr init"', {
204
+ cwd: projectPath,
205
+ stdio: 'ignore',
206
+ });
207
+ }
187
208
  }
188
209
  catch {
189
210
  // Git init failed - not critical
@@ -221,66 +242,6 @@ ${config.description}
221
242
 
222
243
  ---
223
244
 
224
- *Last Updated: ${new Date().toISOString().split('T')[0]}*
225
- `;
226
- }
227
- function generatePrdMd(config) {
228
- return `# Product Requirements Document - ${config.name}
229
-
230
- ## Overview
231
-
232
- ${config.description}
233
-
234
- ---
235
-
236
- ## Problem Statement
237
-
238
- *What problem does this project solve?*
239
-
240
- ---
241
-
242
- ## Goals
243
-
244
- 1. *Primary goal*
245
- 2. *Secondary goal*
246
- 3. *Success metrics*
247
-
248
- ---
249
-
250
- ## User Stories
251
-
252
- ### As a user, I want to...
253
-
254
- 1. *User story 1*
255
- 2. *User story 2*
256
- 3. *User story 3*
257
-
258
- ---
259
-
260
- ## Requirements
261
-
262
- ### Functional Requirements
263
-
264
- | ID | Requirement | Priority |
265
- |----|-------------|----------|
266
- | FR-1 | | High |
267
- | FR-2 | | Medium |
268
- | FR-3 | | Low |
269
-
270
- ### Non-Functional Requirements
271
-
272
- - Performance: *Specify targets*
273
- - Security: *Specify requirements*
274
- - Accessibility: *Specify standards*
275
-
276
- ---
277
-
278
- ## Out of Scope
279
-
280
- *What is NOT included in this version*
281
-
282
- ---
283
-
284
245
  *Last Updated: ${new Date().toISOString().split('T')[0]}*
285
246
  `;
286
247
  }
@@ -0,0 +1,113 @@
1
+ /**
2
+ * Tool Names - Single Source of Truth
3
+ *
4
+ * This file contains ONLY tool name constants with NO imports.
5
+ * This breaks circular dependency chains and ensures all modules
6
+ * can safely import tool names.
7
+ *
8
+ * Import from here instead of tools.ts when you only need the names.
9
+ */
10
+ /**
11
+ * All tool names as constants. Import these instead of hardcoding strings.
12
+ * This ensures all tool references stay in sync across the codebase.
13
+ */
14
+ export declare const TOOL_NAMES: {
15
+ readonly READ_FILE: "read_file";
16
+ readonly WRITE_FILE: "write_file";
17
+ readonly EDIT: "edit";
18
+ readonly BASH: "bash";
19
+ readonly BASH_OUTPUT: "bash_output";
20
+ readonly KILL_SHELL: "kill_shell";
21
+ readonly GLOB: "glob";
22
+ readonly GREP: "grep";
23
+ readonly TODO_WRITE: "todo_write";
24
+ readonly TODO_READ: "todo_read";
25
+ readonly TODO_CLAIM: "todo_claim";
26
+ readonly TODO_HANDOFF: "todo_handoff";
27
+ readonly ASK_USER: "ask_user";
28
+ readonly ASK_USER_SIMPLE: "ask_user_simple";
29
+ readonly DELEGATE: "delegate";
30
+ readonly DELEGATE_BACKGROUND: "delegate_background";
31
+ readonly DELEGATION_STATUS: "delegation_status";
32
+ readonly HANDOFF: "handoff";
33
+ readonly COMPILR_GUIDE: "compilr_guide";
34
+ readonly TASK: "task";
35
+ readonly SUGGEST: "suggest";
36
+ readonly LIST_TOOLS: "list_tools";
37
+ readonly GET_TOOL_INFO: "get_tool_info";
38
+ readonly USE_TOOL: "use_tool";
39
+ readonly GIT_STATUS: "git_status";
40
+ readonly GIT_DIFF: "git_diff";
41
+ readonly GIT_LOG: "git_log";
42
+ readonly GIT_COMMIT: "git_commit";
43
+ readonly GIT_BRANCH: "git_branch";
44
+ readonly GIT_STASH: "git_stash";
45
+ readonly GIT_BLAME: "git_blame";
46
+ readonly GIT_FILE_HISTORY: "git_file_history";
47
+ readonly DETECT_PROJECT: "detect_project";
48
+ readonly FIND_PROJECT_ROOT: "find_project_root";
49
+ readonly RUN_TESTS: "run_tests";
50
+ readonly RUN_LINT: "run_lint";
51
+ readonly RUN_BUILD: "run_build";
52
+ readonly RUN_FORMAT: "run_format";
53
+ readonly FIND_DEFINITION: "find_definition";
54
+ readonly FIND_REFERENCES: "find_references";
55
+ readonly FIND_TODOS: "find_todos";
56
+ readonly CHECK_OUTDATED: "check_outdated";
57
+ readonly FIND_VULNERABILITIES: "find_vulnerabilities";
58
+ readonly ANALYZE_TEST_COVERAGE: "analyze_test_coverage";
59
+ readonly GET_FILE_STRUCTURE: "get_file_structure";
60
+ readonly GET_COMPLEXITY: "get_complexity";
61
+ readonly READ_FUNCTION: "read_function";
62
+ readonly READ_CLASS: "read_class";
63
+ readonly READ_TYPE: "read_type";
64
+ readonly BACKLOG_READ: "backlog_read";
65
+ readonly BACKLOG_WRITE: "backlog_write";
66
+ readonly WORKITEM_ADD: "workitem_add";
67
+ readonly WORKITEM_UPDATE: "workitem_update";
68
+ readonly WORKITEM_DELETE: "workitem_delete";
69
+ readonly WORKITEM_QUERY: "workitem_query";
70
+ readonly WORKITEM_NEXT: "workitem_next";
71
+ readonly WORKITEM_ADVANCE_STEP: "workitem_advance_step";
72
+ readonly WORKITEM_STATUS_COUNTS: "workitem_status_counts";
73
+ readonly WORKITEM_CLAIM: "workitem_claim";
74
+ readonly WORKITEM_HANDOFF: "workitem_handoff";
75
+ readonly PROJECT_GET: "project_get";
76
+ readonly PROJECT_LIST: "project_list";
77
+ readonly PROJECT_UPDATE: "project_update";
78
+ readonly PROJECT_DOCUMENT_ADD: "project_document_add";
79
+ readonly PROJECT_DOCUMENT_GET: "project_document_get";
80
+ readonly PROJECT_DOCUMENT_LIST: "project_document_list";
81
+ readonly PROJECT_DOCUMENT_DELETE: "project_document_delete";
82
+ readonly PLAN_CREATE: "plan_create";
83
+ readonly PLAN_UPDATE: "plan_update";
84
+ readonly PLAN_GET: "plan_get";
85
+ readonly PLAN_LIST: "plan_list";
86
+ readonly PLAN_DELETE: "plan_delete";
87
+ readonly ANCHOR_ADD: "anchor_add";
88
+ readonly ANCHOR_LIST: "anchor_list";
89
+ readonly ANCHOR_REMOVE: "anchor_remove";
90
+ readonly ARTIFACT_SAVE: "artifact_save";
91
+ readonly ARTIFACT_GET: "artifact_get";
92
+ readonly ARTIFACT_LIST: "artifact_list";
93
+ readonly ARTIFACT_DELETE: "artifact_delete";
94
+ readonly RECALL_WORK: "recall_work";
95
+ readonly APP_MODEL_GET: "app_model_get";
96
+ readonly APP_MODEL_UPDATE: "app_model_update";
97
+ readonly APP_MODEL_VALIDATE: "app_model_validate";
98
+ readonly FACTORY_SCAFFOLD: "factory_scaffold";
99
+ readonly FACTORY_LIST_TOOLKITS: "factory_list_toolkits";
100
+ };
101
+ /** Type for all valid tool names */
102
+ export type ToolName = (typeof TOOL_NAMES)[keyof typeof TOOL_NAMES];
103
+ /** Array of all direct tool names (always available) */
104
+ export declare const DIRECT_TOOL_NAMES: readonly ToolName[];
105
+ /** Array of all meta-tool names (tool discovery) */
106
+ export declare const META_TOOL_NAMES: readonly ToolName[];
107
+ /** Array of all meta-registry tool names (accessed via use_tool) */
108
+ export declare const META_REGISTRY_TOOL_NAMES: readonly ToolName[];
109
+ /**
110
+ * Get all tool names as an array.
111
+ * Useful for validation or iteration.
112
+ */
113
+ export declare function getAllToolNames(): string[];