@compilr-dev/cli 0.5.0 → 0.5.1

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 (591) hide show
  1. package/README.md +236 -68
  2. package/dist/.tsbuildinfo.app +1 -0
  3. package/dist/.tsbuildinfo.data +1 -0
  4. package/dist/.tsbuildinfo.domain +1 -0
  5. package/dist/.tsbuildinfo.foundation +1 -0
  6. package/dist/agent.d.ts +61 -4
  7. package/dist/agent.js +241 -245
  8. package/dist/anchors/index.d.ts +1 -1
  9. package/dist/anchors/index.js +1 -1
  10. package/dist/anchors/project-anchors.d.ts +2 -2
  11. package/dist/anchors/project-anchors.js +1 -1
  12. package/dist/auth/api-client.d.ts +124 -0
  13. package/dist/auth/api-client.js +261 -0
  14. package/dist/auth/index.d.ts +172 -0
  15. package/dist/auth/index.js +545 -0
  16. package/dist/auth/storage.d.ts +52 -0
  17. package/dist/auth/storage.js +118 -0
  18. package/dist/changelog/index.d.ts +16 -0
  19. package/dist/changelog/index.js +24 -0
  20. package/dist/changelog/releases.d.ts +17 -0
  21. package/dist/changelog/releases.js +63 -0
  22. package/dist/commands-v2/handlers/auth.d.ts +10 -0
  23. package/dist/commands-v2/handlers/auth.js +118 -0
  24. package/dist/commands-v2/handlers/background.d.ts +14 -0
  25. package/dist/commands-v2/handlers/background.js +276 -0
  26. package/dist/commands-v2/handlers/context.js +266 -81
  27. package/dist/commands-v2/handlers/core.d.ts +1 -0
  28. package/dist/commands-v2/handlers/core.js +133 -8
  29. package/dist/commands-v2/handlers/debug.js +18 -0
  30. package/dist/commands-v2/handlers/delegations.d.ts +8 -0
  31. package/dist/commands-v2/handlers/delegations.js +29 -0
  32. package/dist/commands-v2/handlers/files.d.ts +8 -0
  33. package/dist/commands-v2/handlers/files.js +162 -0
  34. package/dist/commands-v2/handlers/filter.d.ts +9 -0
  35. package/dist/commands-v2/handlers/filter.js +130 -0
  36. package/dist/commands-v2/handlers/games.d.ts +7 -0
  37. package/dist/commands-v2/handlers/games.js +57 -0
  38. package/dist/commands-v2/handlers/index.d.ts +13 -0
  39. package/dist/commands-v2/handlers/index.js +39 -0
  40. package/dist/commands-v2/handlers/mcp.d.ts +8 -0
  41. package/dist/commands-v2/handlers/mcp.js +39 -0
  42. package/dist/commands-v2/handlers/notifications.d.ts +9 -0
  43. package/dist/commands-v2/handlers/notifications.js +34 -0
  44. package/dist/commands-v2/handlers/project.js +244 -23
  45. package/dist/commands-v2/handlers/reset.d.ts +11 -0
  46. package/dist/commands-v2/handlers/reset.js +118 -0
  47. package/dist/commands-v2/handlers/session.d.ts +161 -0
  48. package/dist/commands-v2/handlers/session.js +805 -0
  49. package/dist/commands-v2/handlers/settings.d.ts +2 -0
  50. package/dist/commands-v2/handlers/settings.js +217 -35
  51. package/dist/commands-v2/handlers/tasks.d.ts +5 -0
  52. package/dist/commands-v2/handlers/tasks.js +36 -0
  53. package/dist/commands-v2/handlers/team.d.ts +9 -0
  54. package/dist/commands-v2/handlers/team.js +549 -0
  55. package/dist/commands-v2/handlers/terminals.d.ts +9 -0
  56. package/dist/commands-v2/handlers/terminals.js +34 -0
  57. package/dist/commands-v2/index.d.ts +3 -2
  58. package/dist/commands-v2/index.js +4 -1
  59. package/dist/commands-v2/registry.d.ts +15 -0
  60. package/dist/commands-v2/registry.js +34 -0
  61. package/dist/commands-v2/types.d.ts +81 -3
  62. package/dist/commands.js +13 -0
  63. package/dist/compilr-diff-companion.vsix +0 -0
  64. package/dist/db/index.js +98 -4
  65. package/dist/db/repositories/document-repository.d.ts +2 -0
  66. package/dist/db/repositories/document-repository.js +5 -1
  67. package/dist/db/repositories/index.d.ts +2 -0
  68. package/dist/db/repositories/index.js +1 -0
  69. package/dist/db/repositories/plan-repository.d.ts +101 -0
  70. package/dist/db/repositories/plan-repository.js +275 -0
  71. package/dist/db/repositories/project-repository.d.ts +6 -0
  72. package/dist/db/repositories/project-repository.js +41 -0
  73. package/dist/db/repositories/work-item-repository.d.ts +15 -0
  74. package/dist/db/repositories/work-item-repository.js +69 -4
  75. package/dist/db/schema.d.ts +40 -3
  76. package/dist/db/schema.js +66 -3
  77. package/dist/episodes/index.d.ts +20 -0
  78. package/dist/episodes/index.js +27 -0
  79. package/dist/episodes/recorder.d.ts +51 -0
  80. package/dist/episodes/recorder.js +195 -0
  81. package/dist/episodes/significant-work.d.ts +21 -0
  82. package/dist/episodes/significant-work.js +56 -0
  83. package/dist/episodes/store.d.ts +38 -0
  84. package/dist/episodes/store.js +199 -0
  85. package/dist/episodes/types.d.ts +35 -0
  86. package/dist/episodes/types.js +6 -0
  87. package/dist/episodes/work-at-risk.d.ts +12 -0
  88. package/dist/episodes/work-at-risk.js +38 -0
  89. package/dist/episodes/work-summary-anchor.d.ts +23 -0
  90. package/dist/episodes/work-summary-anchor.js +73 -0
  91. package/dist/games/coins.d.ts +66 -0
  92. package/dist/games/coins.js +165 -0
  93. package/dist/games/game-base.d.ts +84 -0
  94. package/dist/games/game-base.js +204 -0
  95. package/dist/games/index.d.ts +16 -0
  96. package/dist/games/index.js +49 -0
  97. package/dist/games/scores.d.ts +69 -0
  98. package/dist/games/scores.js +191 -0
  99. package/dist/games/tetris/board.d.ts +59 -0
  100. package/dist/games/tetris/board.js +170 -0
  101. package/dist/games/tetris/index.d.ts +109 -0
  102. package/dist/games/tetris/index.js +610 -0
  103. package/dist/games/tetris/pieces.d.ts +44 -0
  104. package/dist/games/tetris/pieces.js +271 -0
  105. package/dist/games/tetris/renderer.d.ts +26 -0
  106. package/dist/games/tetris/renderer.js +77 -0
  107. package/dist/guide/guide-content.d.ts +23 -0
  108. package/dist/guide/guide-content.js +196 -0
  109. package/dist/guide/index.d.ts +8 -0
  110. package/dist/guide/index.js +7 -0
  111. package/dist/guide/shared-content.d.ts +37 -0
  112. package/dist/guide/shared-content.js +1272 -0
  113. package/dist/guide/tutorial-helpers.d.ts +57 -0
  114. package/dist/guide/tutorial-helpers.js +147 -0
  115. package/dist/handlers/ask-user-handlers.d.ts +32 -0
  116. package/dist/handlers/ask-user-handlers.js +104 -0
  117. package/dist/handlers/delegation-handlers.d.ts +34 -0
  118. package/dist/handlers/delegation-handlers.js +291 -0
  119. package/dist/handlers/permission-handler.d.ts +30 -0
  120. package/dist/handlers/permission-handler.js +205 -0
  121. package/dist/index.d.ts +11 -1
  122. package/dist/index.js +448 -271
  123. package/dist/input-handlers/memory-handler.d.ts +1 -1
  124. package/dist/input-handlers/memory-handler.js +2 -1
  125. package/dist/models/index.d.ts +10 -0
  126. package/dist/models/index.js +12 -0
  127. package/dist/models/model-registry.d.ts +38 -0
  128. package/dist/models/model-registry.js +69 -0
  129. package/dist/models/model-tiers.d.ts +28 -0
  130. package/dist/models/model-tiers.js +71 -0
  131. package/dist/models/model-validation.d.ts +25 -0
  132. package/dist/models/model-validation.js +291 -0
  133. package/dist/models/ollama-models.d.ts +73 -0
  134. package/dist/models/ollama-models.js +178 -0
  135. package/dist/models/provider-types.d.ts +6 -0
  136. package/dist/models/provider-types.js +1 -0
  137. package/dist/models/providers.d.ts +35 -0
  138. package/dist/models/providers.js +58 -0
  139. package/dist/models/types.d.ts +4 -0
  140. package/dist/models/types.js +4 -0
  141. package/dist/multi-agent/activity.d.ts +21 -0
  142. package/dist/multi-agent/activity.js +34 -0
  143. package/dist/multi-agent/agent-selection.d.ts +55 -0
  144. package/dist/multi-agent/agent-selection.js +90 -0
  145. package/dist/multi-agent/artifacts.d.ts +197 -0
  146. package/dist/multi-agent/artifacts.js +379 -0
  147. package/dist/multi-agent/checkpointer.d.ts +138 -0
  148. package/dist/multi-agent/checkpointer.js +471 -0
  149. package/dist/multi-agent/collision-utils.d.ts +16 -0
  150. package/dist/multi-agent/collision-utils.js +28 -0
  151. package/dist/multi-agent/context-resolver.d.ts +97 -0
  152. package/dist/multi-agent/context-resolver.js +316 -0
  153. package/dist/multi-agent/custom-agents.d.ts +83 -0
  154. package/dist/multi-agent/custom-agents.js +227 -0
  155. package/dist/multi-agent/delegation-tracker.d.ts +157 -0
  156. package/dist/multi-agent/delegation-tracker.js +243 -0
  157. package/dist/multi-agent/file-lock-hook.d.ts +29 -0
  158. package/dist/multi-agent/file-lock-hook.js +97 -0
  159. package/dist/multi-agent/file-locks.d.ts +58 -0
  160. package/dist/multi-agent/file-locks.js +194 -0
  161. package/dist/multi-agent/index.d.ts +24 -0
  162. package/dist/multi-agent/index.js +30 -0
  163. package/dist/multi-agent/mention-parser.d.ts +64 -0
  164. package/dist/multi-agent/mention-parser.js +146 -0
  165. package/dist/multi-agent/notification-manager.d.ts +84 -0
  166. package/dist/multi-agent/notification-manager.js +224 -0
  167. package/dist/multi-agent/pending-requests.d.ts +122 -0
  168. package/dist/multi-agent/pending-requests.js +155 -0
  169. package/dist/multi-agent/session-registry.d.ts +139 -0
  170. package/dist/multi-agent/session-registry.js +514 -0
  171. package/dist/multi-agent/shared-context.d.ts +293 -0
  172. package/dist/multi-agent/shared-context.js +671 -0
  173. package/dist/multi-agent/skill-requirements.d.ts +66 -0
  174. package/dist/multi-agent/skill-requirements.js +178 -0
  175. package/dist/multi-agent/task-assignment.d.ts +69 -0
  176. package/dist/multi-agent/task-assignment.js +123 -0
  177. package/dist/multi-agent/task-suggestion.d.ts +31 -0
  178. package/dist/multi-agent/task-suggestion.js +72 -0
  179. package/dist/multi-agent/team-agent.d.ts +201 -0
  180. package/dist/multi-agent/team-agent.js +488 -0
  181. package/dist/multi-agent/team.d.ts +286 -0
  182. package/dist/multi-agent/team.js +610 -0
  183. package/dist/multi-agent/tool-config.d.ts +110 -0
  184. package/dist/multi-agent/tool-config.js +661 -0
  185. package/dist/multi-agent/types.d.ts +211 -0
  186. package/dist/multi-agent/types.js +617 -0
  187. package/dist/prompts/plan-mode-prompt.d.ts +11 -0
  188. package/dist/prompts/plan-mode-prompt.js +95 -0
  189. package/dist/repl-helpers.js +3 -2
  190. package/dist/repl-v2.d.ts +401 -2
  191. package/dist/repl-v2.js +2577 -65
  192. package/dist/session/index.d.ts +6 -0
  193. package/dist/session/index.js +6 -0
  194. package/dist/session/project-session-manager.d.ts +158 -0
  195. package/dist/session/project-session-manager.js +650 -0
  196. package/dist/settings/index.d.ts +133 -13
  197. package/dist/settings/index.js +329 -24
  198. package/dist/settings/mcp-config.d.ts +76 -0
  199. package/dist/settings/mcp-config.js +143 -0
  200. package/dist/settings/paths.d.ts +4 -0
  201. package/dist/settings/paths.js +6 -0
  202. package/dist/shared-handlers.d.ts +62 -0
  203. package/dist/shared-handlers.js +48 -0
  204. package/dist/system-prompt/builder.d.ts +5 -0
  205. package/dist/system-prompt/builder.js +4 -0
  206. package/dist/system-prompt/index.d.ts +18 -0
  207. package/dist/system-prompt/index.js +18 -0
  208. package/dist/system-prompt/modules.d.ts +5 -0
  209. package/dist/system-prompt/modules.js +4 -0
  210. package/dist/tabbed-menu.js +2 -1
  211. package/dist/templates/compilr-md-import.d.ts +16 -0
  212. package/dist/templates/compilr-md-import.js +241 -0
  213. package/dist/templates/compilr-md.js +10 -61
  214. package/dist/templates/config-json.d.ts +1 -25
  215. package/dist/templates/index.d.ts +2 -0
  216. package/dist/templates/index.js +34 -73
  217. package/dist/tool-names.d.ts +108 -0
  218. package/dist/tool-names.js +227 -0
  219. package/dist/tools/anchor-tools.d.ts +4 -4
  220. package/dist/tools/anchor-tools.js +1 -1
  221. package/dist/tools/artifact-tools.d.ts +42 -0
  222. package/dist/tools/artifact-tools.js +328 -0
  223. package/dist/tools/ask-user-simple.d.ts +1 -1
  224. package/dist/tools/ask-user-simple.js +2 -1
  225. package/dist/tools/ask-user.d.ts +1 -1
  226. package/dist/tools/ask-user.js +2 -1
  227. package/dist/tools/backlog-wrappers.d.ts +5 -3
  228. package/dist/tools/backlog-wrappers.js +16 -1
  229. package/dist/tools/backlog.d.ts +2 -2
  230. package/dist/tools/backlog.js +1 -1
  231. package/dist/tools/db-tools.d.ts +8 -61
  232. package/dist/tools/db-tools.js +8 -13
  233. package/dist/tools/delegate-background.d.ts +27 -0
  234. package/dist/tools/delegate-background.js +115 -0
  235. package/dist/tools/delegate.d.ts +22 -0
  236. package/dist/tools/delegate.js +97 -0
  237. package/dist/tools/delegation-status.d.ts +16 -0
  238. package/dist/tools/delegation-status.js +128 -0
  239. package/dist/tools/document-db.d.ts +5 -5
  240. package/dist/tools/document-db.js +1 -1
  241. package/dist/tools/guide-tool.d.ts +12 -0
  242. package/dist/tools/guide-tool.js +59 -0
  243. package/dist/tools/handoff.d.ts +25 -0
  244. package/dist/tools/handoff.js +99 -0
  245. package/dist/tools/meta-tools.d.ts +26 -0
  246. package/dist/tools/meta-tools.js +47 -0
  247. package/dist/tools/plan-tools.d.ts +54 -0
  248. package/dist/tools/plan-tools.js +338 -0
  249. package/dist/tools/platform-adapter.d.ts +29 -0
  250. package/dist/tools/platform-adapter.js +394 -0
  251. package/dist/tools/project-db.d.ts +5 -73
  252. package/dist/tools/project-db.js +5 -336
  253. package/dist/tools/recall-work-tool.d.ts +18 -0
  254. package/dist/tools/recall-work-tool.js +82 -0
  255. package/dist/tools/workitem-db.d.ts +43 -11
  256. package/dist/tools/workitem-db.js +186 -5
  257. package/dist/tools.d.ts +67 -2
  258. package/dist/tools.js +237 -47
  259. package/dist/ui/autocomplete-controller.d.ts +42 -0
  260. package/dist/ui/autocomplete-controller.js +384 -0
  261. package/dist/ui/base/index.d.ts +1 -1
  262. package/dist/ui/base/index.js +1 -1
  263. package/dist/ui/base/overlay-base-v2.d.ts +10 -0
  264. package/dist/ui/base/overlay-base-v2.js +14 -0
  265. package/dist/ui/base/render-utils.d.ts +19 -0
  266. package/dist/ui/base/render-utils.js +25 -0
  267. package/dist/ui/base/tabbed-list-overlay-v2.d.ts +16 -1
  268. package/dist/ui/base/tabbed-list-overlay-v2.js +19 -1
  269. package/dist/ui/constants/labels.d.ts +14 -0
  270. package/dist/ui/constants/labels.js +51 -0
  271. package/dist/ui/conversation-store.d.ts +55 -0
  272. package/dist/ui/conversation-store.js +107 -0
  273. package/dist/ui/conversation.js +11 -13
  274. package/dist/ui/diff.d.ts +7 -1
  275. package/dist/ui/diff.js +85 -48
  276. package/dist/ui/ephemeral.js +3 -9
  277. package/dist/ui/file-autocomplete.d.ts +24 -0
  278. package/dist/ui/file-autocomplete.js +56 -0
  279. package/dist/ui/footer-renderer.d.ts +69 -0
  280. package/dist/ui/footer-renderer.js +431 -0
  281. package/dist/ui/footer.d.ts +74 -7
  282. package/dist/ui/footer.js +173 -16
  283. package/dist/ui/input-controller.d.ts +51 -0
  284. package/dist/ui/input-controller.js +176 -0
  285. package/dist/ui/input-prompt.d.ts +19 -0
  286. package/dist/ui/input-prompt.js +206 -14
  287. package/dist/ui/keyboard-handler.d.ts +57 -0
  288. package/dist/ui/keyboard-handler.js +557 -0
  289. package/dist/ui/live-region-facade.d.ts +42 -0
  290. package/dist/ui/live-region-facade.js +205 -0
  291. package/dist/ui/live-region.d.ts +0 -4
  292. package/dist/ui/live-region.js +6 -14
  293. package/dist/ui/mascot/renderer.d.ts +1 -1
  294. package/dist/ui/mascot/renderer.js +37 -2
  295. package/dist/ui/overlay/data/tutorial-content.d.ts +9 -0
  296. package/dist/ui/overlay/data/tutorial-content.js +9 -0
  297. package/dist/ui/overlay/data/tutorial-registry.d.ts +12 -0
  298. package/dist/ui/overlay/data/tutorial-registry.js +116 -0
  299. package/dist/ui/overlay/data/tutorial-types.d.ts +35 -0
  300. package/dist/ui/overlay/data/tutorial-types.js +6 -0
  301. package/dist/ui/overlay/data/tutorials/basics/first-conversation.d.ts +7 -0
  302. package/dist/ui/overlay/data/tutorials/basics/first-conversation.js +220 -0
  303. package/dist/ui/overlay/data/tutorials/basics/first-project.d.ts +7 -0
  304. package/dist/ui/overlay/data/tutorials/basics/first-project.js +284 -0
  305. package/dist/ui/overlay/data/tutorials/basics/navigation.d.ts +8 -0
  306. package/dist/ui/overlay/data/tutorials/basics/navigation.js +22 -0
  307. package/dist/ui/overlay/data/tutorials/basics/welcome.d.ts +7 -0
  308. package/dist/ui/overlay/data/tutorials/basics/welcome.js +174 -0
  309. package/dist/ui/overlay/data/tutorials/config/context-management.d.ts +7 -0
  310. package/dist/ui/overlay/data/tutorials/config/context-management.js +158 -0
  311. package/dist/ui/overlay/data/tutorials/config/mcp-servers.d.ts +8 -0
  312. package/dist/ui/overlay/data/tutorials/config/mcp-servers.js +155 -0
  313. package/dist/ui/overlay/data/tutorials/config/model-selection.d.ts +7 -0
  314. package/dist/ui/overlay/data/tutorials/config/model-selection.js +162 -0
  315. package/dist/ui/overlay/data/tutorials/config/permissions-safety.d.ts +7 -0
  316. package/dist/ui/overlay/data/tutorials/config/permissions-safety.js +163 -0
  317. package/dist/ui/overlay/data/tutorials/config/settings-config.d.ts +7 -0
  318. package/dist/ui/overlay/data/tutorials/config/settings-config.js +166 -0
  319. package/dist/ui/overlay/data/tutorials/planning/arch.d.ts +7 -0
  320. package/dist/ui/overlay/data/tutorials/planning/arch.js +168 -0
  321. package/dist/ui/overlay/data/tutorials/planning/backlog.d.ts +7 -0
  322. package/dist/ui/overlay/data/tutorials/planning/backlog.js +103 -0
  323. package/dist/ui/overlay/data/tutorials/planning/build.d.ts +7 -0
  324. package/dist/ui/overlay/data/tutorials/planning/build.js +173 -0
  325. package/dist/ui/overlay/data/tutorials/planning/design.d.ts +7 -0
  326. package/dist/ui/overlay/data/tutorials/planning/design.js +205 -0
  327. package/dist/ui/overlay/data/tutorials/planning/docs.d.ts +7 -0
  328. package/dist/ui/overlay/data/tutorials/planning/docs.js +143 -0
  329. package/dist/ui/overlay/data/tutorials/planning/prd.d.ts +7 -0
  330. package/dist/ui/overlay/data/tutorials/planning/prd.js +173 -0
  331. package/dist/ui/overlay/data/tutorials/planning/scaffold.d.ts +7 -0
  332. package/dist/ui/overlay/data/tutorials/planning/scaffold.js +164 -0
  333. package/dist/ui/overlay/data/tutorials/planning/sketch.d.ts +7 -0
  334. package/dist/ui/overlay/data/tutorials/planning/sketch.js +58 -0
  335. package/dist/ui/overlay/data/tutorials/projects/anchors.d.ts +7 -0
  336. package/dist/ui/overlay/data/tutorials/projects/anchors.js +248 -0
  337. package/dist/ui/overlay/data/tutorials/projects/import-project.d.ts +7 -0
  338. package/dist/ui/overlay/data/tutorials/projects/import-project.js +172 -0
  339. package/dist/ui/overlay/data/tutorials/projects/managing-projects.d.ts +8 -0
  340. package/dist/ui/overlay/data/tutorials/projects/managing-projects.js +212 -0
  341. package/dist/ui/overlay/data/tutorials/projects/new-project.d.ts +7 -0
  342. package/dist/ui/overlay/data/tutorials/projects/new-project.js +251 -0
  343. package/dist/ui/overlay/data/tutorials/projects/session-management.d.ts +7 -0
  344. package/dist/ui/overlay/data/tutorials/projects/session-management.js +169 -0
  345. package/dist/ui/overlay/data/tutorials/teams/background-execution.d.ts +7 -0
  346. package/dist/ui/overlay/data/tutorials/teams/background-execution.js +171 -0
  347. package/dist/ui/overlay/data/tutorials/teams/multi-terminal.d.ts +8 -0
  348. package/dist/ui/overlay/data/tutorials/teams/multi-terminal.js +147 -0
  349. package/dist/ui/overlay/data/tutorials/teams/task-assignment.d.ts +7 -0
  350. package/dist/ui/overlay/data/tutorials/teams/task-assignment.js +204 -0
  351. package/dist/ui/overlay/data/tutorials/teams/team-overview.d.ts +7 -0
  352. package/dist/ui/overlay/data/tutorials/teams/team-overview.js +165 -0
  353. package/dist/ui/overlay/data/tutorials/teams/working-with-agents.d.ts +7 -0
  354. package/dist/ui/overlay/data/tutorials/teams/working-with-agents.js +172 -0
  355. package/dist/ui/overlay/impl/agents-overlay-v2.js +6 -17
  356. package/dist/ui/overlay/impl/anchors-overlay-v2.js +30 -64
  357. package/dist/ui/overlay/impl/artifact-detail-overlay-v2.d.ts +43 -0
  358. package/dist/ui/overlay/impl/artifact-detail-overlay-v2.js +232 -0
  359. package/dist/ui/overlay/impl/artifact-overlay-v2.d.ts +40 -0
  360. package/dist/ui/overlay/impl/artifact-overlay-v2.js +115 -0
  361. package/dist/ui/overlay/impl/ask-user-overlay-v2.js +2 -5
  362. package/dist/ui/overlay/impl/background-overlay-v2.d.ts +40 -0
  363. package/dist/ui/overlay/impl/background-overlay-v2.js +147 -0
  364. package/dist/ui/overlay/impl/backlog-overlay-v2.d.ts +4 -1
  365. package/dist/ui/overlay/impl/backlog-overlay-v2.js +55 -16
  366. package/dist/ui/overlay/impl/changelog-overlay-v2.d.ts +44 -0
  367. package/dist/ui/overlay/impl/changelog-overlay-v2.js +165 -0
  368. package/dist/ui/overlay/impl/commands-overlay-v2.js +4 -6
  369. package/dist/ui/overlay/impl/config-overlay-v2.d.ts +12 -1
  370. package/dist/ui/overlay/impl/config-overlay-v2.js +164 -100
  371. package/dist/ui/overlay/impl/custom-agent-form-overlay-v2.d.ts +83 -0
  372. package/dist/ui/overlay/impl/custom-agent-form-overlay-v2.js +711 -0
  373. package/dist/ui/overlay/impl/dashboard-overlay-v2.d.ts +2 -0
  374. package/dist/ui/overlay/impl/dashboard-overlay-v2.js +26 -3
  375. package/dist/ui/overlay/impl/delegations-overlay-v2.d.ts +28 -0
  376. package/dist/ui/overlay/impl/delegations-overlay-v2.js +279 -0
  377. package/dist/ui/overlay/impl/docs-overlay-v2.js +12 -9
  378. package/dist/ui/overlay/impl/document-detail-overlay-v2.d.ts +7 -0
  379. package/dist/ui/overlay/impl/document-detail-overlay-v2.js +119 -78
  380. package/dist/ui/overlay/impl/filter-overlay-v2.d.ts +41 -0
  381. package/dist/ui/overlay/impl/filter-overlay-v2.js +110 -0
  382. package/dist/ui/overlay/impl/games-overlay-v2.d.ts +31 -0
  383. package/dist/ui/overlay/impl/games-overlay-v2.js +135 -0
  384. package/dist/ui/overlay/impl/help-overlay-v2.d.ts +26 -3
  385. package/dist/ui/overlay/impl/help-overlay-v2.js +20 -42
  386. package/dist/ui/overlay/impl/login-overlay-v2.d.ts +49 -0
  387. package/dist/ui/overlay/impl/login-overlay-v2.js +277 -0
  388. package/dist/ui/overlay/impl/mcp-overlay-v2.d.ts +63 -0
  389. package/dist/ui/overlay/impl/mcp-overlay-v2.js +907 -0
  390. package/dist/ui/overlay/impl/model-overlay-v2.d.ts +57 -13
  391. package/dist/ui/overlay/impl/model-overlay-v2.js +1086 -61
  392. package/dist/ui/overlay/impl/new-overlay-v2.d.ts +37 -6
  393. package/dist/ui/overlay/impl/new-overlay-v2.js +715 -65
  394. package/dist/ui/overlay/impl/notifications-overlay-v2.d.ts +20 -0
  395. package/dist/ui/overlay/impl/notifications-overlay-v2.js +116 -0
  396. package/dist/ui/overlay/impl/onboarding-wizard-overlay-v2.d.ts +76 -0
  397. package/dist/ui/overlay/impl/onboarding-wizard-overlay-v2.js +728 -0
  398. package/dist/ui/overlay/impl/pending-overlay-v2.d.ts +51 -0
  399. package/dist/ui/overlay/impl/pending-overlay-v2.js +445 -0
  400. package/dist/ui/overlay/impl/permission-overlay-v2.js +5 -5
  401. package/dist/ui/overlay/impl/permissions-overlay-v2.d.ts +85 -0
  402. package/dist/ui/overlay/impl/permissions-overlay-v2.js +820 -0
  403. package/dist/ui/overlay/impl/plan-approval-overlay-v2.d.ts +35 -0
  404. package/dist/ui/overlay/impl/plan-approval-overlay-v2.js +181 -0
  405. package/dist/ui/overlay/impl/project-edit-overlay-v2.d.ts +36 -0
  406. package/dist/ui/overlay/impl/project-edit-overlay-v2.js +195 -0
  407. package/dist/ui/overlay/impl/projects-overlay-v2.d.ts +1 -0
  408. package/dist/ui/overlay/impl/projects-overlay-v2.js +278 -44
  409. package/dist/ui/overlay/impl/reset-overlay-v2.d.ts +39 -0
  410. package/dist/ui/overlay/impl/reset-overlay-v2.js +107 -0
  411. package/dist/ui/overlay/impl/resume-overlay-v2.d.ts +60 -0
  412. package/dist/ui/overlay/impl/resume-overlay-v2.js +414 -0
  413. package/dist/ui/overlay/impl/session-mode-overlay-v2.d.ts +43 -0
  414. package/dist/ui/overlay/impl/session-mode-overlay-v2.js +124 -0
  415. package/dist/ui/overlay/impl/tasks-overlay-v2.d.ts +28 -0
  416. package/dist/ui/overlay/impl/tasks-overlay-v2.js +283 -0
  417. package/dist/ui/overlay/impl/team-overlay-v2.d.ts +86 -0
  418. package/dist/ui/overlay/impl/team-overlay-v2.js +692 -0
  419. package/dist/ui/overlay/impl/terminals-overlay-v2.d.ts +26 -0
  420. package/dist/ui/overlay/impl/terminals-overlay-v2.js +217 -0
  421. package/dist/ui/overlay/impl/tools-overlay-v2.js +3 -7
  422. package/dist/ui/overlay/impl/tutorial-overlay-v2.d.ts +30 -16
  423. package/dist/ui/overlay/impl/tutorial-overlay-v2.js +133 -956
  424. package/dist/ui/overlay/impl/workflow-overlay-v2.js +5 -1
  425. package/dist/ui/overlay/index.d.ts +20 -1
  426. package/dist/ui/overlay/index.js +19 -0
  427. package/dist/ui/overlay/types.d.ts +5 -0
  428. package/dist/ui/overlay-manager.d.ts +43 -0
  429. package/dist/ui/overlay-manager.js +238 -0
  430. package/dist/ui/overlays.js +4 -16
  431. package/dist/ui/permission-overlay.js +6 -5
  432. package/dist/ui/status-bar-controller.d.ts +33 -0
  433. package/dist/ui/status-bar-controller.js +99 -0
  434. package/dist/ui/subagent-renderer.js +3 -19
  435. package/dist/ui/terminal-autocomplete-utils.d.ts +23 -0
  436. package/dist/ui/terminal-autocomplete-utils.js +83 -0
  437. package/dist/ui/terminal-line-builders.d.ts +17 -0
  438. package/dist/ui/terminal-line-builders.js +42 -0
  439. package/dist/ui/terminal-render-item.d.ts +16 -0
  440. package/dist/ui/terminal-render-item.js +267 -0
  441. package/dist/ui/terminal-renderer.d.ts +7 -8
  442. package/dist/ui/terminal-renderer.js +7 -8
  443. package/dist/ui/terminal-types.d.ts +179 -0
  444. package/dist/ui/terminal-types.js +34 -0
  445. package/dist/ui/terminal-ui.d.ts +144 -276
  446. package/dist/ui/terminal-ui.js +384 -1861
  447. package/dist/ui/todo-zone.d.ts +19 -1
  448. package/dist/ui/todo-zone.js +71 -13
  449. package/dist/ui/tool-formatters.js +512 -1
  450. package/dist/ui/turn-metrics.d.ts +56 -0
  451. package/dist/ui/turn-metrics.js +75 -0
  452. package/dist/ui/types.d.ts +28 -0
  453. package/dist/ui/types.js +1 -0
  454. package/dist/ui/vscode-diff-ipc.d.ts +102 -0
  455. package/dist/ui/vscode-diff-ipc.js +385 -0
  456. package/dist/utils/credentials.d.ts +24 -5
  457. package/dist/utils/credentials.js +123 -9
  458. package/dist/utils/format-tokens.d.ts +13 -0
  459. package/dist/utils/format-tokens.js +18 -0
  460. package/dist/utils/git-config.d.ts +26 -0
  461. package/dist/utils/git-config.js +54 -0
  462. package/dist/utils/message-utils.d.ts +61 -0
  463. package/dist/utils/message-utils.js +72 -0
  464. package/dist/utils/model-tiers.d.ts +8 -1
  465. package/dist/utils/model-tiers.js +38 -16
  466. package/dist/utils/open-browser.d.ts +5 -0
  467. package/dist/utils/open-browser.js +32 -0
  468. package/dist/utils/path-safety.js +3 -2
  469. package/dist/utils/project-detection.d.ts +58 -0
  470. package/dist/utils/project-detection.js +424 -0
  471. package/dist/utils/project-memory.js +2 -1
  472. package/dist/utils/project-status.d.ts +2 -2
  473. package/dist/utils/startup-perf.d.ts +18 -0
  474. package/dist/utils/startup-perf.js +60 -0
  475. package/dist/utils/token-tracker.d.ts +62 -0
  476. package/dist/utils/token-tracker.js +150 -0
  477. package/dist/utils/token-types.d.ts +23 -0
  478. package/dist/utils/token-types.js +18 -0
  479. package/dist/utils/types/config-types.d.ts +32 -0
  480. package/dist/utils/types/config-types.js +8 -0
  481. package/dist/utils/update-checker.d.ts +28 -0
  482. package/dist/utils/update-checker.js +106 -0
  483. package/dist/utils/version.d.ts +7 -0
  484. package/dist/utils/version.js +10 -0
  485. package/dist/utils/vscode-detect.d.ts +39 -0
  486. package/dist/utils/vscode-detect.js +137 -0
  487. package/package.json +25 -12
  488. package/dist/commands/handler-types.d.ts +0 -68
  489. package/dist/commands/handler-types.js +0 -8
  490. package/dist/commands/handlers/agent-commands.d.ts +0 -13
  491. package/dist/commands/handlers/agent-commands.js +0 -305
  492. package/dist/commands/handlers/design-commands.d.ts +0 -15
  493. package/dist/commands/handlers/design-commands.js +0 -334
  494. package/dist/commands/handlers/index.d.ts +0 -20
  495. package/dist/commands/handlers/index.js +0 -43
  496. package/dist/commands/handlers/overlay-commands.d.ts +0 -21
  497. package/dist/commands/handlers/overlay-commands.js +0 -287
  498. package/dist/commands/handlers/project-commands.d.ts +0 -11
  499. package/dist/commands/handlers/project-commands.js +0 -167
  500. package/dist/commands/handlers/simple-commands.d.ts +0 -19
  501. package/dist/commands/handlers/simple-commands.js +0 -144
  502. package/dist/commands/registry.d.ts +0 -50
  503. package/dist/commands/registry.js +0 -75
  504. package/dist/index.old.d.ts +0 -7
  505. package/dist/index.old.js +0 -1014
  506. package/dist/repl.d.ts +0 -149
  507. package/dist/repl.js +0 -1151
  508. package/dist/templates/claude-md.d.ts +0 -7
  509. package/dist/templates/claude-md.js +0 -189
  510. package/dist/test-autocomplete.d.ts +0 -7
  511. package/dist/test-autocomplete.js +0 -85
  512. package/dist/test-tabbed-menu.d.ts +0 -7
  513. package/dist/test-tabbed-menu.js +0 -25
  514. package/dist/tool-selector.d.ts +0 -71
  515. package/dist/tool-selector.js +0 -184
  516. package/dist/ui/agents-overlay-v2.d.ts +0 -43
  517. package/dist/ui/agents-overlay-v2.js +0 -809
  518. package/dist/ui/agents-overlay.d.ts +0 -12
  519. package/dist/ui/agents-overlay.js +0 -863
  520. package/dist/ui/anchors-overlay.d.ts +0 -12
  521. package/dist/ui/anchors-overlay.js +0 -775
  522. package/dist/ui/arch-type-overlay.d.ts +0 -15
  523. package/dist/ui/arch-type-overlay.js +0 -201
  524. package/dist/ui/ask-user-overlay-v2.d.ts +0 -26
  525. package/dist/ui/ask-user-overlay-v2.js +0 -555
  526. package/dist/ui/ask-user-simple-overlay-v2.d.ts +0 -25
  527. package/dist/ui/ask-user-simple-overlay-v2.js +0 -215
  528. package/dist/ui/backlog-overlay.d.ts +0 -32
  529. package/dist/ui/backlog-overlay.js +0 -652
  530. package/dist/ui/commands-overlay-v2.d.ts +0 -33
  531. package/dist/ui/commands-overlay-v2.js +0 -441
  532. package/dist/ui/commands-overlay.d.ts +0 -16
  533. package/dist/ui/commands-overlay.js +0 -439
  534. package/dist/ui/config-overlay.d.ts +0 -35
  535. package/dist/ui/config-overlay.js +0 -707
  536. package/dist/ui/docs-overlay.d.ts +0 -17
  537. package/dist/ui/docs-overlay.js +0 -303
  538. package/dist/ui/footer-v2.d.ts +0 -222
  539. package/dist/ui/footer-v2.js +0 -1349
  540. package/dist/ui/help-overlay-v2.d.ts +0 -34
  541. package/dist/ui/help-overlay-v2.js +0 -309
  542. package/dist/ui/help-overlay.d.ts +0 -16
  543. package/dist/ui/help-overlay.js +0 -316
  544. package/dist/ui/init-overlay-v2.d.ts +0 -34
  545. package/dist/ui/init-overlay-v2.js +0 -600
  546. package/dist/ui/init-overlay.d.ts +0 -34
  547. package/dist/ui/init-overlay.js +0 -604
  548. package/dist/ui/input-prompt-v2.d.ts +0 -180
  549. package/dist/ui/input-prompt-v2.js +0 -999
  550. package/dist/ui/iteration-limit-overlay-v2.d.ts +0 -21
  551. package/dist/ui/iteration-limit-overlay-v2.js +0 -114
  552. package/dist/ui/keys-overlay-v2.d.ts +0 -41
  553. package/dist/ui/keys-overlay-v2.js +0 -248
  554. package/dist/ui/mascot-overlay-v2.d.ts +0 -41
  555. package/dist/ui/mascot-overlay-v2.js +0 -138
  556. package/dist/ui/mascot-overlay.d.ts +0 -21
  557. package/dist/ui/mascot-overlay.js +0 -146
  558. package/dist/ui/model-overlay-v2.d.ts +0 -49
  559. package/dist/ui/model-overlay-v2.js +0 -118
  560. package/dist/ui/model-overlay.d.ts +0 -27
  561. package/dist/ui/model-overlay.js +0 -221
  562. package/dist/ui/model-warning-overlay.d.ts +0 -30
  563. package/dist/ui/model-warning-overlay.js +0 -169
  564. package/dist/ui/new-overlay.d.ts +0 -34
  565. package/dist/ui/new-overlay.js +0 -604
  566. package/dist/ui/overlay/impl/init-overlay-v2.d.ts +0 -77
  567. package/dist/ui/overlay/impl/init-overlay-v2.js +0 -593
  568. package/dist/ui/overlay/overlay-types.d.ts +0 -128
  569. package/dist/ui/overlay/overlay-types.js +0 -22
  570. package/dist/ui/overlays/help-overlay-v2.d.ts +0 -28
  571. package/dist/ui/overlays/help-overlay-v2.js +0 -198
  572. package/dist/ui/overlays/index.d.ts +0 -11
  573. package/dist/ui/overlays/index.js +0 -11
  574. package/dist/ui/permission-overlay-v2.d.ts +0 -36
  575. package/dist/ui/permission-overlay-v2.js +0 -380
  576. package/dist/ui/projects-overlay.d.ts +0 -19
  577. package/dist/ui/projects-overlay.js +0 -484
  578. package/dist/ui/theme-overlay-v2.d.ts +0 -42
  579. package/dist/ui/theme-overlay-v2.js +0 -135
  580. package/dist/ui/theme-overlay.d.ts +0 -24
  581. package/dist/ui/theme-overlay.js +0 -127
  582. package/dist/ui/tools-overlay-v2.d.ts +0 -47
  583. package/dist/ui/tools-overlay-v2.js +0 -218
  584. package/dist/ui/tools-overlay.d.ts +0 -34
  585. package/dist/ui/tools-overlay.js +0 -230
  586. package/dist/ui/tutorial-overlay-v2.d.ts +0 -31
  587. package/dist/ui/tutorial-overlay-v2.js +0 -1035
  588. package/dist/ui/tutorial-overlay.d.ts +0 -11
  589. package/dist/ui/tutorial-overlay.js +0 -1034
  590. package/dist/ui/workflow-overlay.d.ts +0 -22
  591. package/dist/ui/workflow-overlay.js +0 -636
@@ -0,0 +1,162 @@
1
+ /**
2
+ * Model Selection Tutorial
3
+ *
4
+ * Covers the /model overlay: provider tabs, tiers, API keys, model cycling.
5
+ */
6
+ export const modelSelectionTutorial = (s) => ({
7
+ id: 'model-selection',
8
+ title: 'Model Selection',
9
+ description: 'Choose your AI model and provider',
10
+ pages: [
11
+ // Page 1: Introduction
12
+ {
13
+ title: 'Choosing Your AI Model',
14
+ lines: [
15
+ '',
16
+ ` ${s.primaryBold('The /model command opens the model selection overlay.')}`,
17
+ '',
18
+ ` compilr.dev supports ${s.primary('multiple AI providers')}:`,
19
+ '',
20
+ ` ${s.success('Claude')} Anthropic's Claude models`,
21
+ ` ${s.success('OpenAI')} GPT models`,
22
+ ` ${s.success('Gemini')} Google AI Gemini models`,
23
+ ` ${s.success('Ollama (local)')} Run models on your machine`,
24
+ ` ${s.success('Others')} Together AI, Groq, Perplexity, etc.`,
25
+ '',
26
+ ` Each provider offers three ${s.primary('tiers')}:`,
27
+ '',
28
+ ` ${s.muted('Fast')} Quick responses, lower cost`,
29
+ ` ${s.muted('Balanced')} Best mix of speed and capability`,
30
+ ` ${s.muted('Powerful')} Best reasoning for complex tasks`,
31
+ '',
32
+ ],
33
+ },
34
+ // Page 2: The Model Overlay
35
+ {
36
+ title: 'The Model Overlay',
37
+ lines: [
38
+ '',
39
+ ` ${s.secondary('Run /model to open the overlay:')}`,
40
+ '',
41
+ ` ${s.muted('Select Model [3/17]')}`,
42
+ '',
43
+ ` ${s.muted(' Claude OpenAI Gemini Ollama (local) Others ')}`,
44
+ '',
45
+ ` ${s.success('●')} API Key: Set`,
46
+ '',
47
+ ` ${s.primary('>')} ${s.success('●')} Fast Haiku 4.5 (active)`,
48
+ ` ${s.success('●')} Balanced Sonnet 4.5`,
49
+ ` ${s.success('●')} Powerful Opus 4.5`,
50
+ '',
51
+ ` ${s.muted('Status indicators:')}`,
52
+ ` ${s.success('●')} API key set / Ollama installed`,
53
+ ` ${s.error('○')} Missing credentials`,
54
+ ` ${s.muted('(active)')} Currently selected model`,
55
+ ` ${s.warning('*')} Custom model (different from default)`,
56
+ '',
57
+ ],
58
+ },
59
+ // Page 3: Navigation & Keys
60
+ {
61
+ title: 'Navigation',
62
+ lines: [
63
+ '',
64
+ ` ${s.secondary('Main list shortcuts:')}`,
65
+ '',
66
+ ` ${s.primary('Tab')} Switch provider tabs`,
67
+ ` ${s.primary('1-5')} Jump to provider by number`,
68
+ ` ${s.primary('Up/Down')} Navigate tiers`,
69
+ ` ${s.primary('Enter')} Open tier details`,
70
+ ` ${s.primary('s')} Set API key`,
71
+ ` ${s.primary('/')} Search models`,
72
+ ` ${s.primary('q/Esc')} Close`,
73
+ '',
74
+ ` ${s.secondary('Detail screen shortcuts:')}`,
75
+ '',
76
+ ` ${s.primary('Left/Right')} Cycle through available models`,
77
+ ` ${s.primary('e')} Enter custom model ID`,
78
+ ` ${s.primary('t')} Test model connection`,
79
+ ` ${s.primary('a')} Set as active model`,
80
+ ` ${s.primary('d')} Reset to default`,
81
+ ` ${s.primary('Esc')} Back to list`,
82
+ '',
83
+ ],
84
+ },
85
+ // Page 4: Tier Details
86
+ {
87
+ title: 'Tier Configuration',
88
+ lines: [
89
+ '',
90
+ ` ${s.secondary('Press Enter on a tier to see its detail screen:')}`,
91
+ '',
92
+ ` ${s.muted('Tier Configuration')}`,
93
+ ` ${s.muted('─────────────────────')}`,
94
+ ` Provider: Claude`,
95
+ ` Tier: Fast - Quick, low cost`,
96
+ ` API Key: ${s.success('●')} Set`,
97
+ '',
98
+ ` ${s.muted('─── Model ID ───')}`,
99
+ ` Default: ${s.muted('claude-haiku-4-5-20251001')}`,
100
+ ` Current: Haiku 4.5 ${s.muted('[1/5]')}`,
101
+ '',
102
+ ` ${s.success('✓')} This is the active model`,
103
+ '',
104
+ ` ${s.muted('The [1/5] indicator shows you can cycle through')}`,
105
+ ` ${s.muted('5 models using Left/Right arrows.')}`,
106
+ '',
107
+ ],
108
+ },
109
+ // Page 5: API Keys & Ollama
110
+ {
111
+ title: 'API Keys & Local Models',
112
+ lines: [
113
+ '',
114
+ ` ${s.primaryBold('Setting API Keys')}`,
115
+ '',
116
+ ` Press ${s.primary('s')} in the model overlay to enter your API key.`,
117
+ ` Keys are stored encrypted in ${s.muted('~/.compilr-dev/credentials.enc')}`,
118
+ '',
119
+ ` You can also set keys via ${s.primary('/config')} or at startup.`,
120
+ '',
121
+ ` ${s.primaryBold('Local Models with Ollama')}`,
122
+ '',
123
+ ` Ollama runs models ${s.primary('locally')} — no API key needed.`,
124
+ '',
125
+ ` ${s.muted('1.')} Install Ollama (${s.muted('ollama.com')})`,
126
+ ` ${s.muted('2.')} Pull a model: ${s.primary('ollama pull llama3')}`,
127
+ ` ${s.muted('3.')} Select the Ollama tab in /model`,
128
+ ` ${s.muted('4.')} The CLI auto-detects available models`,
129
+ '',
130
+ ` ${s.muted('Server URL defaults to http://localhost:11434')}`,
131
+ ` ${s.muted('and can be changed in the tier detail screen.')}`,
132
+ '',
133
+ ],
134
+ },
135
+ // Page 6: Tips
136
+ {
137
+ title: 'Model Selection Tips',
138
+ lines: [
139
+ '',
140
+ ` ${s.warning('TIP:')} Match the model to the task:`,
141
+ '',
142
+ ` ${s.primary('Fast')} tier ${s.muted('(Haiku, GPT-4o-mini)')}`,
143
+ ` Simple questions, quick edits, file reads`,
144
+ '',
145
+ ` ${s.primary('Balanced')} tier ${s.muted('(Sonnet, GPT-4o)')}`,
146
+ ` Feature implementation, debugging, code review`,
147
+ '',
148
+ ` ${s.primary('Powerful')} tier ${s.muted('(Opus, o1)')}`,
149
+ ` Architecture decisions, complex refactoring`,
150
+ '',
151
+ ` ${s.warning('TIP:')} Team agents can use different tiers.`,
152
+ ` Use ${s.primary('/team')} to assign Fast tier to simple agents`,
153
+ ` and Powerful tier to architects.`,
154
+ '',
155
+ ` ${s.warning('TIP:')} Press ${s.primary('e')} to type any model ID manually.`,
156
+ ` This lets you use the latest models before`,
157
+ ` they appear in the default list.`,
158
+ '',
159
+ ],
160
+ },
161
+ ],
162
+ });
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Permissions & Safety Tutorial
3
+ *
4
+ * Covers the /permissions overlay: Rules, Mode, Session tabs.
5
+ */
6
+ import type { TutorialBuilder } from '../../tutorial-types.js';
7
+ export declare const permissionsSafetyTutorial: TutorialBuilder;
@@ -0,0 +1,163 @@
1
+ /**
2
+ * Permissions & Safety Tutorial
3
+ *
4
+ * Covers the /permissions overlay: Rules, Mode, Session tabs.
5
+ */
6
+ export const permissionsSafetyTutorial = (s) => ({
7
+ id: 'permissions',
8
+ title: 'Permissions & Safety',
9
+ description: 'Control what the AI can do',
10
+ pages: [
11
+ // Page 1: Introduction
12
+ {
13
+ title: 'Controlling AI Actions',
14
+ lines: [
15
+ '',
16
+ ` ${s.primaryBold('The permission system controls what tools the AI')}`,
17
+ ` ${s.primaryBold('can use and when it needs your approval.')}`,
18
+ '',
19
+ ` Run ${s.primary('/permissions')} to open the permissions overlay.`,
20
+ '',
21
+ ` Three tabs:`,
22
+ '',
23
+ ` ${s.primary('Rules')} Per-tool permission levels`,
24
+ ` ${s.primary('Mode')} Global permission mode`,
25
+ ` ${s.primary('Session')} Grants given during this session`,
26
+ '',
27
+ ` ${s.secondary('Why it matters:')}`,
28
+ ` The AI can read files, write code, run commands, and`,
29
+ ` create git commits. Permissions let you decide which`,
30
+ ` of these actions need your approval first.`,
31
+ '',
32
+ ],
33
+ },
34
+ // Page 2: Permission Levels
35
+ {
36
+ title: 'Permission Levels',
37
+ lines: [
38
+ '',
39
+ ` ${s.secondary('Each tool has one of four permission levels:')}`,
40
+ '',
41
+ ` ${s.success('always')} Always allowed, no prompt`,
42
+ ` ${s.muted('Best for: read_file, glob, grep')}`,
43
+ '',
44
+ ` ${s.primary('session')} Allowed for the rest of the session`,
45
+ ` ${s.muted('Best for: run_tests, run_lint')}`,
46
+ '',
47
+ ` ${s.warning('once')} Ask every time`,
48
+ ` ${s.muted('Best for: bash, write_file, edit')}`,
49
+ '',
50
+ ` ${s.error('deny')} Explicitly blocked`,
51
+ ` ${s.muted('Best for: tools you never want used')}`,
52
+ '',
53
+ ` ${s.muted('Default rules ship with sensible defaults:')}`,
54
+ ` ${s.muted('read-only tools are "always", write tools are "once".')}`,
55
+ '',
56
+ ],
57
+ },
58
+ // Page 3: Rules Tab
59
+ {
60
+ title: 'Managing Rules',
61
+ lines: [
62
+ '',
63
+ ` ${s.secondary('The Rules tab shows all permission rules:')}`,
64
+ '',
65
+ ` ${s.muted('bash : once Execute shell commands')}`,
66
+ ` ${s.muted('write_file : once Write/create files')}`,
67
+ ` ${s.muted('edit : once Edit file contents')}`,
68
+ ` ${s.muted('git_commit : once Create git commits')}`,
69
+ ` ${s.muted('read_file : always Read files')}`,
70
+ ` ${s.muted('glob : always Find files by pattern')}`,
71
+ ` ${s.muted('grep : always Search file contents')}`,
72
+ '',
73
+ ` ${s.secondary('Shortcuts:')}`,
74
+ ` ${s.primary('a')} Add new rule`,
75
+ ` ${s.primary('e')} Edit selected rule (change level)`,
76
+ ` ${s.primary('d')} Delete custom rule`,
77
+ ` ${s.primary('r')} Reset all rules to defaults`,
78
+ '',
79
+ ` ${s.warning('TIP:')} Use wildcards: ${s.primary('git_*')} matches git_commit,`,
80
+ ` git_branch, and any future git tools.`,
81
+ '',
82
+ ],
83
+ },
84
+ // Page 4: Permission Modes
85
+ {
86
+ title: 'Permission Modes',
87
+ lines: [
88
+ '',
89
+ ` ${s.secondary('The Mode tab sets the global permission behavior:')}`,
90
+ '',
91
+ ` ${s.primary('Normal')}`,
92
+ ` Ask for confirmation before risky actions.`,
93
+ ` ${s.muted('Recommended for most users.')}`,
94
+ '',
95
+ ` ${s.primary('Plan mode')}`,
96
+ ` AI shows a plan first, then asks to execute.`,
97
+ ` ${s.muted('Good for learning what the AI wants to do.')}`,
98
+ '',
99
+ ` ${s.primary('Auto-accept')}`,
100
+ ` Automatically approve all actions.`,
101
+ ` ${s.muted('For experienced users who trust the AI.')}`,
102
+ '',
103
+ ` ${s.muted('You can also set the default mode in /config')}`,
104
+ ` ${s.muted('under "Default permission mode".')}`,
105
+ '',
106
+ ` ${s.warning('NOTE:')} Changing modes can optionally clear all`,
107
+ ` session grants to start fresh.`,
108
+ '',
109
+ ],
110
+ },
111
+ // Page 5: Session Grants & Safety
112
+ {
113
+ title: 'Session Grants & Safety',
114
+ lines: [
115
+ '',
116
+ ` ${s.primaryBold('Session Tab')}`,
117
+ '',
118
+ ` Shows tools you have approved during this session:`,
119
+ '',
120
+ ` ${s.primary('r')} Revoke a specific grant`,
121
+ ` ${s.primary('c')} Clear all grants`,
122
+ ` ${s.primary('a')} Toggle auto-accept mode`,
123
+ '',
124
+ ` ${s.primaryBold('Safety Settings (in /config Environment tab)')}`,
125
+ '',
126
+ ` ${s.success('Delete protection')}`,
127
+ ` Only allows file deletion within your projects path.`,
128
+ ` Prevents accidental deletion of system files.`,
129
+ '',
130
+ ` ${s.success('CWD mismatch warning')}`,
131
+ ` Warns when your terminal directory differs from`,
132
+ ` the active project. Prevents working in the wrong folder.`,
133
+ '',
134
+ ` ${s.muted('Both safety settings are enabled by default.')}`,
135
+ '',
136
+ ],
137
+ },
138
+ // Page 6: Tips
139
+ {
140
+ title: 'Permission Tips',
141
+ lines: [
142
+ '',
143
+ ` ${s.warning('TIP:')} Start with ${s.primary('Normal')} mode and "once" for`,
144
+ ` write tools. You can always relax permissions later.`,
145
+ '',
146
+ ` ${s.warning('TIP:')} Set ${s.primary('run_tests')} and ${s.primary('run_lint')} to "session"`,
147
+ ` so the AI can iterate on code without asking each time.`,
148
+ '',
149
+ ` ${s.warning('TIP:')} When building a feature with /build, consider`,
150
+ ` switching to ${s.primary('Auto-accept')} mode temporarily so the AI`,
151
+ ` can work uninterrupted. Switch back after.`,
152
+ '',
153
+ ` ${s.warning('TIP:')} Keep ${s.primary('Delete protection')} enabled. It prevents`,
154
+ ` accidental deletion outside your projects directory.`,
155
+ '',
156
+ ` ${s.warning('TIP:')} Custom rules with ${s.primary('deny')} level are useful`,
157
+ ` for tools you never want the AI to call, like`,
158
+ ` ${s.muted('git_push')} if you always want to push manually.`,
159
+ '',
160
+ ],
161
+ },
162
+ ],
163
+ });
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Settings & Config Tutorial
3
+ *
4
+ * Covers the /config overlay: Status, Config, Environment, Usage tabs.
5
+ */
6
+ import type { TutorialBuilder } from '../../tutorial-types.js';
7
+ export declare const settingsConfigTutorial: TutorialBuilder;
@@ -0,0 +1,166 @@
1
+ /**
2
+ * Settings & Config Tutorial
3
+ *
4
+ * Covers the /config overlay: Status, Config, Environment, Usage tabs.
5
+ */
6
+ export const settingsConfigTutorial = (s) => ({
7
+ id: 'settings',
8
+ title: 'Settings & Config',
9
+ description: 'Customize the CLI behavior and environment',
10
+ pages: [
11
+ // Page 1: Introduction
12
+ {
13
+ title: 'The /config Command',
14
+ lines: [
15
+ '',
16
+ ` ${s.primaryBold('Run /config to open the settings overlay.')}`,
17
+ '',
18
+ ` The overlay has ${s.primary('4 tabs')}:`,
19
+ '',
20
+ ` ${s.primary('Status')} Session info (version, model, tools)`,
21
+ ` ${s.primary('Config')} Toggle preferences`,
22
+ ` ${s.primary('Environment')} Paths and safety settings`,
23
+ ` ${s.primary('Usage')} Token usage statistics`,
24
+ '',
25
+ ` ${s.secondary('Navigation:')}`,
26
+ '',
27
+ ` ${s.primary('Tab')} Switch between tabs`,
28
+ ` ${s.primary('1-4')} Jump to tab by number`,
29
+ ` ${s.primary('Up/Down')} Navigate settings`,
30
+ ` ${s.primary('Enter/Space')} Toggle or edit value`,
31
+ ` ${s.primary('q/Esc')} Close`,
32
+ '',
33
+ ],
34
+ },
35
+ // Page 2: Status Tab
36
+ {
37
+ title: 'Status Tab',
38
+ lines: [
39
+ '',
40
+ ` ${s.secondary('The Status tab shows read-only session info:')}`,
41
+ '',
42
+ ` ${s.muted('Version')} CLI version`,
43
+ ` ${s.muted('Session ID')} Unique 8-char hex identifier`,
44
+ ` ${s.muted('Uptime')} How long the session has been running`,
45
+ ` ${s.muted('Provider')} Current LLM provider (Claude, OpenAI, etc.)`,
46
+ ` ${s.muted('Model')} Active model name`,
47
+ ` ${s.muted('Tools')} Tool count breakdown`,
48
+ ` ${s.muted('Cwd')} Current working directory`,
49
+ ` ${s.muted('Memory File')} COMPILR.md or CLAUDE.md if present`,
50
+ ` ${s.muted('Settings File')} Path to settings.json`,
51
+ '',
52
+ ` ${s.muted('Use this tab to quickly check what model and')}`,
53
+ ` ${s.muted('provider you are using in the current session.')}`,
54
+ '',
55
+ ],
56
+ },
57
+ // Page 3: Config Tab
58
+ {
59
+ title: 'Config Tab - Preferences',
60
+ lines: [
61
+ '',
62
+ ` ${s.secondary('Toggle and cycle through preferences:')}`,
63
+ '',
64
+ ` ${s.primary('Auto-compact')} ${s.muted('true/false')}`,
65
+ ` Auto-compress old messages for context`,
66
+ '',
67
+ ` ${s.primary('Verbose output')} ${s.muted('true/false')}`,
68
+ ` Show debug information`,
69
+ '',
70
+ ` ${s.primary('Terminal progress bar')} ${s.muted('true/false')}`,
71
+ ` Display progress during execution`,
72
+ '',
73
+ ` ${s.primary('Default permission mode')} ${s.muted('cycle')}`,
74
+ ` Normal / Plan mode / Accept edits / Don't ask`,
75
+ '',
76
+ ` ${s.primary('Theme')} ${s.muted('opens submenu')}`,
77
+ ` ${s.primary('Model')} ${s.muted('opens submenu')}`,
78
+ ` ${s.primary('Mascot')} ${s.muted('opens submenu')}`,
79
+ '',
80
+ ],
81
+ },
82
+ // Page 4: More Config + Startup
83
+ {
84
+ title: 'Config Tab - Startup & Sessions',
85
+ lines: [
86
+ '',
87
+ ` ${s.secondary('More preferences in the Config tab:')}`,
88
+ '',
89
+ ` ${s.primary('Terminal notifications')} ${s.muted('Auto / Bell / Disabled')}`,
90
+ ` How to notify when tasks complete`,
91
+ '',
92
+ ` ${s.primary('Check for updates')} ${s.muted('true/false')}`,
93
+ ` Check npm for new versions on startup`,
94
+ '',
95
+ ` ${s.primary('Startup behavior')} ${s.muted('Show menu / Direct to REPL')}`,
96
+ ` What to show when the CLI starts`,
97
+ '',
98
+ ` ${s.primary('Auto-open project')} ${s.muted('Last opened / Off')}`,
99
+ ` Automatically open your last project`,
100
+ '',
101
+ ` ${s.primary('Session restore mode')} ${s.muted('Auto / Ask / Fresh')}`,
102
+ ` What to do with previous sessions`,
103
+ '',
104
+ ` ${s.warning('TIP:')} Set ${s.primary('Auto-open project')} to "Last opened" and`,
105
+ ` ${s.primary('Session restore mode')} to "Auto" for the fastest startup.`,
106
+ '',
107
+ ],
108
+ },
109
+ // Page 5: Environment Tab
110
+ {
111
+ title: 'Environment Tab',
112
+ lines: [
113
+ '',
114
+ ` ${s.secondary('Configure paths and safety settings:')}`,
115
+ '',
116
+ ` ${s.primaryBold('Path Configuration')}`,
117
+ ` Workspace path ${s.muted('/home/user')}`,
118
+ ` Projects path ${s.muted('/home/user/projects')}`,
119
+ ` Data path ${s.muted('~/.compilr-dev')}`,
120
+ '',
121
+ ` ${s.primaryBold('Git Configuration')}`,
122
+ ` Git user name ${s.muted('your-name')}`,
123
+ ` Git user email ${s.muted('your@email.com')}`,
124
+ '',
125
+ ` ${s.primaryBold('Safety Settings')}`,
126
+ ` ${s.success('Delete protection')} ${s.muted('enabled')}`,
127
+ ` Only allow file deletion within projects path`,
128
+ '',
129
+ ` ${s.success('CWD mismatch warning')} ${s.muted('enabled')}`,
130
+ ` Warn when working outside active project`,
131
+ '',
132
+ ` ${s.muted('Press Enter to edit a path, Enter again to save.')}`,
133
+ '',
134
+ ],
135
+ },
136
+ // Page 6: Usage Tab + Theme/Mascot
137
+ {
138
+ title: 'Usage Tab & Submenus',
139
+ lines: [
140
+ '',
141
+ ` ${s.secondary('The Usage tab shows real-time token statistics:')}`,
142
+ '',
143
+ ` ${s.muted('Session Tokens:')} Input / Output / Total`,
144
+ ` ${s.muted('Context Window:')} Progress bar + percentage`,
145
+ ` ${s.muted('Session Activity:')} Requests and messages count`,
146
+ '',
147
+ ` ${s.muted('Progress bar colors: green <60%, yellow 60-80%, red >80%')}`,
148
+ '',
149
+ ` ${s.primaryBold('Submenus')}`,
150
+ '',
151
+ ` Three settings open dedicated overlays:`,
152
+ '',
153
+ ` ${s.primary('Theme')} 418 terminal themes with live preview`,
154
+ ` Tabs: Curated, All, Dark, Light`,
155
+ '',
156
+ ` ${s.primary('Model')} Full model selection (see Model Selection tutorial)`,
157
+ '',
158
+ ` ${s.primary('Mascot')} Choose your CLI companion (13 options)`,
159
+ ` None, Random, or a specific expression`,
160
+ '',
161
+ ` ${s.muted('All settings are saved to ~/.compilr-dev/settings.json')}`,
162
+ '',
163
+ ],
164
+ },
165
+ ],
166
+ });
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Architecture Tutorial
3
+ *
4
+ * Walkthrough of the /arch command for creating architecture documentation.
5
+ */
6
+ import type { TutorialBuilder } from '../../tutorial-types.js';
7
+ export declare const archTutorial: TutorialBuilder;