@compilr-dev/cli 0.4.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 (634) hide show
  1. package/README.md +254 -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 +134 -4
  7. package/dist/agent.js +345 -166
  8. package/dist/anchors/index.d.ts +9 -0
  9. package/dist/anchors/index.js +9 -0
  10. package/dist/anchors/project-anchors.d.ts +79 -0
  11. package/dist/anchors/project-anchors.js +202 -0
  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/index.d.ts +2 -1
  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.d.ts +13 -0
  28. package/dist/commands-v2/handlers/context.js +533 -0
  29. package/dist/commands-v2/handlers/core.d.ts +14 -0
  30. package/dist/commands-v2/handlers/core.js +290 -0
  31. package/dist/commands-v2/handlers/debug.d.ts +11 -0
  32. package/dist/commands-v2/handlers/debug.js +177 -0
  33. package/dist/commands-v2/handlers/delegations.d.ts +8 -0
  34. package/dist/commands-v2/handlers/delegations.js +29 -0
  35. package/dist/commands-v2/handlers/files.d.ts +8 -0
  36. package/dist/commands-v2/handlers/files.js +162 -0
  37. package/dist/commands-v2/handlers/filter.d.ts +9 -0
  38. package/dist/commands-v2/handlers/filter.js +130 -0
  39. package/dist/commands-v2/handlers/games.d.ts +7 -0
  40. package/dist/commands-v2/handlers/games.js +57 -0
  41. package/dist/commands-v2/handlers/index.d.ts +25 -0
  42. package/dist/commands-v2/handlers/index.js +63 -0
  43. package/dist/commands-v2/handlers/mcp.d.ts +8 -0
  44. package/dist/commands-v2/handlers/mcp.js +39 -0
  45. package/dist/commands-v2/handlers/notifications.d.ts +9 -0
  46. package/dist/commands-v2/handlers/notifications.js +34 -0
  47. package/dist/commands-v2/handlers/project.d.ts +22 -0
  48. package/dist/commands-v2/handlers/project.js +1035 -0
  49. package/dist/commands-v2/handlers/reset.d.ts +11 -0
  50. package/dist/commands-v2/handlers/reset.js +118 -0
  51. package/dist/commands-v2/handlers/session.d.ts +161 -0
  52. package/dist/commands-v2/handlers/session.js +805 -0
  53. package/dist/commands-v2/handlers/settings.d.ts +17 -0
  54. package/dist/commands-v2/handlers/settings.js +417 -0
  55. package/dist/commands-v2/handlers/tasks.d.ts +5 -0
  56. package/dist/commands-v2/handlers/tasks.js +36 -0
  57. package/dist/commands-v2/handlers/team.d.ts +9 -0
  58. package/dist/commands-v2/handlers/team.js +549 -0
  59. package/dist/commands-v2/handlers/terminals.d.ts +9 -0
  60. package/dist/commands-v2/handlers/terminals.js +34 -0
  61. package/dist/commands-v2/index.d.ts +14 -0
  62. package/dist/commands-v2/index.js +18 -0
  63. package/dist/commands-v2/registry.d.ts +52 -0
  64. package/dist/commands-v2/registry.js +114 -0
  65. package/dist/commands-v2/types.d.ts +153 -0
  66. package/dist/commands-v2/types.js +7 -0
  67. package/dist/commands.js +123 -7
  68. package/dist/compilr-diff-companion.vsix +0 -0
  69. package/dist/db/index.js +98 -4
  70. package/dist/db/repositories/document-repository.d.ts +2 -0
  71. package/dist/db/repositories/document-repository.js +5 -1
  72. package/dist/db/repositories/index.d.ts +2 -0
  73. package/dist/db/repositories/index.js +1 -0
  74. package/dist/db/repositories/plan-repository.d.ts +101 -0
  75. package/dist/db/repositories/plan-repository.js +275 -0
  76. package/dist/db/repositories/project-repository.d.ts +6 -0
  77. package/dist/db/repositories/project-repository.js +41 -0
  78. package/dist/db/repositories/work-item-repository.d.ts +15 -0
  79. package/dist/db/repositories/work-item-repository.js +69 -4
  80. package/dist/db/schema.d.ts +40 -3
  81. package/dist/db/schema.js +66 -3
  82. package/dist/episodes/index.d.ts +20 -0
  83. package/dist/episodes/index.js +27 -0
  84. package/dist/episodes/recorder.d.ts +51 -0
  85. package/dist/episodes/recorder.js +195 -0
  86. package/dist/episodes/significant-work.d.ts +21 -0
  87. package/dist/episodes/significant-work.js +56 -0
  88. package/dist/episodes/store.d.ts +38 -0
  89. package/dist/episodes/store.js +199 -0
  90. package/dist/episodes/types.d.ts +35 -0
  91. package/dist/episodes/types.js +6 -0
  92. package/dist/episodes/work-at-risk.d.ts +12 -0
  93. package/dist/episodes/work-at-risk.js +38 -0
  94. package/dist/episodes/work-summary-anchor.d.ts +23 -0
  95. package/dist/episodes/work-summary-anchor.js +73 -0
  96. package/dist/games/coins.d.ts +66 -0
  97. package/dist/games/coins.js +165 -0
  98. package/dist/games/game-base.d.ts +84 -0
  99. package/dist/games/game-base.js +204 -0
  100. package/dist/games/index.d.ts +16 -0
  101. package/dist/games/index.js +49 -0
  102. package/dist/games/scores.d.ts +69 -0
  103. package/dist/games/scores.js +191 -0
  104. package/dist/games/tetris/board.d.ts +59 -0
  105. package/dist/games/tetris/board.js +170 -0
  106. package/dist/games/tetris/index.d.ts +109 -0
  107. package/dist/games/tetris/index.js +610 -0
  108. package/dist/games/tetris/pieces.d.ts +44 -0
  109. package/dist/games/tetris/pieces.js +271 -0
  110. package/dist/games/tetris/renderer.d.ts +26 -0
  111. package/dist/games/tetris/renderer.js +77 -0
  112. package/dist/guide/guide-content.d.ts +23 -0
  113. package/dist/guide/guide-content.js +196 -0
  114. package/dist/guide/index.d.ts +8 -0
  115. package/dist/guide/index.js +7 -0
  116. package/dist/guide/shared-content.d.ts +37 -0
  117. package/dist/guide/shared-content.js +1272 -0
  118. package/dist/guide/tutorial-helpers.d.ts +57 -0
  119. package/dist/guide/tutorial-helpers.js +147 -0
  120. package/dist/handlers/ask-user-handlers.d.ts +32 -0
  121. package/dist/handlers/ask-user-handlers.js +104 -0
  122. package/dist/handlers/delegation-handlers.d.ts +34 -0
  123. package/dist/handlers/delegation-handlers.js +291 -0
  124. package/dist/handlers/permission-handler.d.ts +30 -0
  125. package/dist/handlers/permission-handler.js +205 -0
  126. package/dist/index.d.ts +11 -1
  127. package/dist/index.js +615 -179
  128. package/dist/input-handlers/index.d.ts +7 -0
  129. package/dist/input-handlers/index.js +7 -0
  130. package/dist/input-handlers/memory-handler.d.ts +26 -0
  131. package/dist/input-handlers/memory-handler.js +69 -0
  132. package/dist/models/index.d.ts +10 -0
  133. package/dist/models/index.js +12 -0
  134. package/dist/models/model-registry.d.ts +38 -0
  135. package/dist/models/model-registry.js +69 -0
  136. package/dist/models/model-tiers.d.ts +28 -0
  137. package/dist/models/model-tiers.js +71 -0
  138. package/dist/models/model-validation.d.ts +25 -0
  139. package/dist/models/model-validation.js +291 -0
  140. package/dist/models/ollama-models.d.ts +73 -0
  141. package/dist/models/ollama-models.js +178 -0
  142. package/dist/models/provider-types.d.ts +6 -0
  143. package/dist/models/provider-types.js +1 -0
  144. package/dist/models/providers.d.ts +35 -0
  145. package/dist/models/providers.js +58 -0
  146. package/dist/models/types.d.ts +4 -0
  147. package/dist/models/types.js +4 -0
  148. package/dist/multi-agent/activity.d.ts +21 -0
  149. package/dist/multi-agent/activity.js +34 -0
  150. package/dist/multi-agent/agent-selection.d.ts +55 -0
  151. package/dist/multi-agent/agent-selection.js +90 -0
  152. package/dist/multi-agent/artifacts.d.ts +197 -0
  153. package/dist/multi-agent/artifacts.js +379 -0
  154. package/dist/multi-agent/checkpointer.d.ts +138 -0
  155. package/dist/multi-agent/checkpointer.js +471 -0
  156. package/dist/multi-agent/collision-utils.d.ts +16 -0
  157. package/dist/multi-agent/collision-utils.js +28 -0
  158. package/dist/multi-agent/context-resolver.d.ts +97 -0
  159. package/dist/multi-agent/context-resolver.js +316 -0
  160. package/dist/multi-agent/custom-agents.d.ts +83 -0
  161. package/dist/multi-agent/custom-agents.js +227 -0
  162. package/dist/multi-agent/delegation-tracker.d.ts +157 -0
  163. package/dist/multi-agent/delegation-tracker.js +243 -0
  164. package/dist/multi-agent/file-lock-hook.d.ts +29 -0
  165. package/dist/multi-agent/file-lock-hook.js +97 -0
  166. package/dist/multi-agent/file-locks.d.ts +58 -0
  167. package/dist/multi-agent/file-locks.js +194 -0
  168. package/dist/multi-agent/index.d.ts +24 -0
  169. package/dist/multi-agent/index.js +30 -0
  170. package/dist/multi-agent/mention-parser.d.ts +64 -0
  171. package/dist/multi-agent/mention-parser.js +146 -0
  172. package/dist/multi-agent/notification-manager.d.ts +84 -0
  173. package/dist/multi-agent/notification-manager.js +224 -0
  174. package/dist/multi-agent/pending-requests.d.ts +122 -0
  175. package/dist/multi-agent/pending-requests.js +155 -0
  176. package/dist/multi-agent/session-registry.d.ts +139 -0
  177. package/dist/multi-agent/session-registry.js +514 -0
  178. package/dist/multi-agent/shared-context.d.ts +293 -0
  179. package/dist/multi-agent/shared-context.js +671 -0
  180. package/dist/multi-agent/skill-requirements.d.ts +66 -0
  181. package/dist/multi-agent/skill-requirements.js +178 -0
  182. package/dist/multi-agent/task-assignment.d.ts +69 -0
  183. package/dist/multi-agent/task-assignment.js +123 -0
  184. package/dist/multi-agent/task-suggestion.d.ts +31 -0
  185. package/dist/multi-agent/task-suggestion.js +72 -0
  186. package/dist/multi-agent/team-agent.d.ts +201 -0
  187. package/dist/multi-agent/team-agent.js +488 -0
  188. package/dist/multi-agent/team.d.ts +286 -0
  189. package/dist/multi-agent/team.js +610 -0
  190. package/dist/multi-agent/tool-config.d.ts +110 -0
  191. package/dist/multi-agent/tool-config.js +661 -0
  192. package/dist/multi-agent/types.d.ts +211 -0
  193. package/dist/multi-agent/types.js +617 -0
  194. package/dist/prompts/plan-mode-prompt.d.ts +11 -0
  195. package/dist/prompts/plan-mode-prompt.js +95 -0
  196. package/dist/repl-helpers.d.ts +63 -0
  197. package/dist/repl-helpers.js +319 -0
  198. package/dist/repl-v2.d.ts +554 -0
  199. package/dist/repl-v2.js +3286 -0
  200. package/dist/session/index.d.ts +6 -0
  201. package/dist/session/index.js +6 -0
  202. package/dist/session/project-session-manager.d.ts +158 -0
  203. package/dist/session/project-session-manager.js +650 -0
  204. package/dist/settings/index.d.ts +156 -13
  205. package/dist/settings/index.js +377 -24
  206. package/dist/settings/mcp-config.d.ts +76 -0
  207. package/dist/settings/mcp-config.js +143 -0
  208. package/dist/settings/paths.d.ts +114 -0
  209. package/dist/settings/paths.js +270 -0
  210. package/dist/shared-handlers.d.ts +62 -0
  211. package/dist/shared-handlers.js +48 -0
  212. package/dist/system-prompt/builder.d.ts +5 -0
  213. package/dist/system-prompt/builder.js +4 -0
  214. package/dist/system-prompt/index.d.ts +18 -0
  215. package/dist/system-prompt/index.js +18 -0
  216. package/dist/system-prompt/modules.d.ts +5 -0
  217. package/dist/system-prompt/modules.js +4 -0
  218. package/dist/tabbed-menu.js +2 -1
  219. package/dist/templates/compilr-md-import.d.ts +16 -0
  220. package/dist/templates/compilr-md-import.js +241 -0
  221. package/dist/templates/compilr-md.js +10 -58
  222. package/dist/templates/config-json.d.ts +1 -25
  223. package/dist/templates/index.d.ts +2 -0
  224. package/dist/templates/index.js +35 -75
  225. package/dist/themes/colors.js +3 -1
  226. package/dist/themes/registry.d.ts +5 -36
  227. package/dist/themes/registry.js +11 -95
  228. package/dist/themes/types.d.ts +3 -38
  229. package/dist/themes/types.js +2 -2
  230. package/dist/tool-names.d.ts +108 -0
  231. package/dist/tool-names.js +227 -0
  232. package/dist/tools/anchor-tools.d.ts +31 -0
  233. package/dist/tools/anchor-tools.js +255 -0
  234. package/dist/tools/artifact-tools.d.ts +42 -0
  235. package/dist/tools/artifact-tools.js +328 -0
  236. package/dist/tools/ask-user-simple.d.ts +1 -1
  237. package/dist/tools/ask-user-simple.js +2 -1
  238. package/dist/tools/ask-user.d.ts +1 -1
  239. package/dist/tools/ask-user.js +2 -1
  240. package/dist/tools/backlog-wrappers.d.ts +56 -0
  241. package/dist/tools/backlog-wrappers.js +353 -0
  242. package/dist/tools/backlog.d.ts +2 -2
  243. package/dist/tools/backlog.js +2 -2
  244. package/dist/tools/db-tools.d.ts +12 -0
  245. package/dist/tools/db-tools.js +14 -0
  246. package/dist/tools/delegate-background.d.ts +27 -0
  247. package/dist/tools/delegate-background.js +115 -0
  248. package/dist/tools/delegate.d.ts +22 -0
  249. package/dist/tools/delegate.js +97 -0
  250. package/dist/tools/delegation-status.d.ts +16 -0
  251. package/dist/tools/delegation-status.js +128 -0
  252. package/dist/tools/document-db.d.ts +43 -0
  253. package/dist/tools/document-db.js +220 -0
  254. package/dist/tools/guide-tool.d.ts +12 -0
  255. package/dist/tools/guide-tool.js +59 -0
  256. package/dist/tools/handoff.d.ts +25 -0
  257. package/dist/tools/handoff.js +99 -0
  258. package/dist/tools/meta-tools.d.ts +26 -0
  259. package/dist/tools/meta-tools.js +47 -0
  260. package/dist/tools/plan-tools.d.ts +54 -0
  261. package/dist/tools/plan-tools.js +338 -0
  262. package/dist/tools/platform-adapter.d.ts +29 -0
  263. package/dist/tools/platform-adapter.js +394 -0
  264. package/dist/tools/project-db.d.ts +34 -0
  265. package/dist/tools/project-db.js +39 -0
  266. package/dist/tools/recall-work-tool.d.ts +18 -0
  267. package/dist/tools/recall-work-tool.js +82 -0
  268. package/dist/tools/workitem-db.d.ts +135 -0
  269. package/dist/tools/workitem-db.js +730 -0
  270. package/dist/tools.d.ts +67 -2
  271. package/dist/tools.js +238 -38
  272. package/dist/ui/ask-user-overlay.d.ts +2 -2
  273. package/dist/ui/ask-user-overlay.js +443 -535
  274. package/dist/ui/ask-user-simple-overlay.d.ts +2 -2
  275. package/dist/ui/ask-user-simple-overlay.js +182 -209
  276. package/dist/ui/autocomplete-controller.d.ts +42 -0
  277. package/dist/ui/autocomplete-controller.js +384 -0
  278. package/dist/ui/base/index.d.ts +26 -0
  279. package/dist/ui/base/index.js +33 -0
  280. package/dist/ui/base/inline-overlay-utils.d.ts +217 -0
  281. package/dist/ui/base/inline-overlay-utils.js +320 -0
  282. package/dist/ui/base/inline-overlay.d.ts +159 -0
  283. package/dist/ui/base/inline-overlay.js +257 -0
  284. package/dist/ui/base/key-utils.d.ts +15 -0
  285. package/dist/ui/base/key-utils.js +30 -0
  286. package/dist/ui/base/overlay-base-v2.d.ts +203 -0
  287. package/dist/ui/base/overlay-base-v2.js +260 -0
  288. package/dist/ui/base/overlay-base.d.ts +156 -0
  289. package/dist/ui/base/overlay-base.js +238 -0
  290. package/dist/ui/base/overlay-lifecycle.d.ts +65 -0
  291. package/dist/ui/base/overlay-lifecycle.js +159 -0
  292. package/dist/ui/base/overlay-types.d.ts +185 -0
  293. package/dist/ui/base/overlay-types.js +7 -0
  294. package/dist/ui/base/render-utils.d.ts +27 -0
  295. package/dist/ui/base/render-utils.js +36 -0
  296. package/dist/ui/base/screen-stack.d.ts +148 -0
  297. package/dist/ui/base/screen-stack.js +184 -0
  298. package/dist/ui/base/tabbed-list-overlay-v2.d.ts +118 -0
  299. package/dist/ui/base/tabbed-list-overlay-v2.js +335 -0
  300. package/dist/ui/base/tabbed-list-overlay.d.ts +153 -0
  301. package/dist/ui/base/tabbed-list-overlay.js +369 -0
  302. package/dist/ui/constants/labels.d.ts +14 -0
  303. package/dist/ui/constants/labels.js +51 -0
  304. package/dist/ui/conversation-store.d.ts +55 -0
  305. package/dist/ui/conversation-store.js +107 -0
  306. package/dist/ui/conversation.d.ts +75 -4
  307. package/dist/ui/conversation.js +376 -165
  308. package/dist/ui/diff.d.ts +7 -1
  309. package/dist/ui/diff.js +85 -48
  310. package/dist/ui/ephemeral.d.ts +1 -1
  311. package/dist/ui/ephemeral.js +4 -10
  312. package/dist/ui/features/index.d.ts +34 -0
  313. package/dist/ui/features/index.js +34 -0
  314. package/dist/ui/features/input-feature.d.ts +85 -0
  315. package/dist/ui/features/input-feature.js +238 -0
  316. package/dist/ui/features/list-feature.d.ts +155 -0
  317. package/dist/ui/features/list-feature.js +244 -0
  318. package/dist/ui/features/pagination-feature.d.ts +154 -0
  319. package/dist/ui/features/pagination-feature.js +238 -0
  320. package/dist/ui/features/search-feature.d.ts +148 -0
  321. package/dist/ui/features/search-feature.js +185 -0
  322. package/dist/ui/features/tab-feature.d.ts +194 -0
  323. package/dist/ui/features/tab-feature.js +307 -0
  324. package/dist/ui/file-autocomplete.d.ts +24 -0
  325. package/dist/ui/file-autocomplete.js +56 -0
  326. package/dist/ui/footer-renderer.d.ts +69 -0
  327. package/dist/ui/footer-renderer.js +431 -0
  328. package/dist/ui/footer.d.ts +181 -7
  329. package/dist/ui/footer.js +523 -74
  330. package/dist/ui/guardrail-overlay.d.ts +29 -0
  331. package/dist/ui/guardrail-overlay.js +145 -0
  332. package/dist/ui/index.d.ts +1 -1
  333. package/dist/ui/index.js +1 -3
  334. package/dist/ui/input-controller.d.ts +51 -0
  335. package/dist/ui/input-controller.js +176 -0
  336. package/dist/ui/input-prompt.d.ts +135 -33
  337. package/dist/ui/input-prompt.js +728 -337
  338. package/dist/ui/iteration-limit-overlay.d.ts +2 -2
  339. package/dist/ui/iteration-limit-overlay.js +92 -128
  340. package/dist/ui/keyboard-handler.d.ts +57 -0
  341. package/dist/ui/keyboard-handler.js +557 -0
  342. package/dist/ui/keys-overlay.d.ts +1 -0
  343. package/dist/ui/keys-overlay.js +203 -141
  344. package/dist/ui/line-utils.d.ts +88 -0
  345. package/dist/ui/line-utils.js +150 -0
  346. package/dist/ui/live-region-facade.d.ts +42 -0
  347. package/dist/ui/live-region-facade.js +205 -0
  348. package/dist/ui/live-region.d.ts +157 -0
  349. package/dist/ui/live-region.js +379 -0
  350. package/dist/ui/mascot/expressions.d.ts +32 -0
  351. package/dist/ui/mascot/expressions.js +213 -0
  352. package/dist/ui/mascot/index.d.ts +8 -0
  353. package/dist/ui/mascot/index.js +8 -0
  354. package/dist/ui/mascot/renderer.d.ts +19 -0
  355. package/dist/ui/mascot/renderer.js +132 -0
  356. package/dist/ui/overlay/data/tutorial-content.d.ts +9 -0
  357. package/dist/ui/overlay/data/tutorial-content.js +9 -0
  358. package/dist/ui/overlay/data/tutorial-registry.d.ts +12 -0
  359. package/dist/ui/overlay/data/tutorial-registry.js +116 -0
  360. package/dist/ui/overlay/data/tutorial-types.d.ts +35 -0
  361. package/dist/ui/overlay/data/tutorial-types.js +6 -0
  362. package/dist/ui/overlay/data/tutorials/basics/first-conversation.d.ts +7 -0
  363. package/dist/ui/overlay/data/tutorials/basics/first-conversation.js +220 -0
  364. package/dist/ui/overlay/data/tutorials/basics/first-project.d.ts +7 -0
  365. package/dist/ui/overlay/data/tutorials/basics/first-project.js +284 -0
  366. package/dist/ui/overlay/data/tutorials/basics/navigation.d.ts +8 -0
  367. package/dist/ui/overlay/data/tutorials/basics/navigation.js +22 -0
  368. package/dist/ui/overlay/data/tutorials/basics/welcome.d.ts +7 -0
  369. package/dist/ui/overlay/data/tutorials/basics/welcome.js +174 -0
  370. package/dist/ui/overlay/data/tutorials/config/context-management.d.ts +7 -0
  371. package/dist/ui/overlay/data/tutorials/config/context-management.js +158 -0
  372. package/dist/ui/overlay/data/tutorials/config/mcp-servers.d.ts +8 -0
  373. package/dist/ui/overlay/data/tutorials/config/mcp-servers.js +155 -0
  374. package/dist/ui/overlay/data/tutorials/config/model-selection.d.ts +7 -0
  375. package/dist/ui/overlay/data/tutorials/config/model-selection.js +162 -0
  376. package/dist/ui/overlay/data/tutorials/config/permissions-safety.d.ts +7 -0
  377. package/dist/ui/overlay/data/tutorials/config/permissions-safety.js +163 -0
  378. package/dist/ui/overlay/data/tutorials/config/settings-config.d.ts +7 -0
  379. package/dist/ui/overlay/data/tutorials/config/settings-config.js +166 -0
  380. package/dist/ui/overlay/data/tutorials/planning/arch.d.ts +7 -0
  381. package/dist/ui/overlay/data/tutorials/planning/arch.js +168 -0
  382. package/dist/ui/overlay/data/tutorials/planning/backlog.d.ts +7 -0
  383. package/dist/ui/overlay/data/tutorials/planning/backlog.js +103 -0
  384. package/dist/ui/overlay/data/tutorials/planning/build.d.ts +7 -0
  385. package/dist/ui/overlay/data/tutorials/planning/build.js +173 -0
  386. package/dist/ui/overlay/data/tutorials/planning/design.d.ts +7 -0
  387. package/dist/ui/overlay/data/tutorials/planning/design.js +205 -0
  388. package/dist/ui/overlay/data/tutorials/planning/docs.d.ts +7 -0
  389. package/dist/ui/overlay/data/tutorials/planning/docs.js +143 -0
  390. package/dist/ui/overlay/data/tutorials/planning/prd.d.ts +7 -0
  391. package/dist/ui/overlay/data/tutorials/planning/prd.js +173 -0
  392. package/dist/ui/overlay/data/tutorials/planning/scaffold.d.ts +7 -0
  393. package/dist/ui/overlay/data/tutorials/planning/scaffold.js +164 -0
  394. package/dist/ui/overlay/data/tutorials/planning/sketch.d.ts +7 -0
  395. package/dist/ui/overlay/data/tutorials/planning/sketch.js +58 -0
  396. package/dist/ui/overlay/data/tutorials/projects/anchors.d.ts +7 -0
  397. package/dist/ui/overlay/data/tutorials/projects/anchors.js +248 -0
  398. package/dist/ui/overlay/data/tutorials/projects/import-project.d.ts +7 -0
  399. package/dist/ui/overlay/data/tutorials/projects/import-project.js +172 -0
  400. package/dist/ui/overlay/data/tutorials/projects/managing-projects.d.ts +8 -0
  401. package/dist/ui/overlay/data/tutorials/projects/managing-projects.js +212 -0
  402. package/dist/ui/overlay/data/tutorials/projects/new-project.d.ts +7 -0
  403. package/dist/ui/overlay/data/tutorials/projects/new-project.js +251 -0
  404. package/dist/ui/overlay/data/tutorials/projects/session-management.d.ts +7 -0
  405. package/dist/ui/overlay/data/tutorials/projects/session-management.js +169 -0
  406. package/dist/ui/overlay/data/tutorials/teams/background-execution.d.ts +7 -0
  407. package/dist/ui/overlay/data/tutorials/teams/background-execution.js +171 -0
  408. package/dist/ui/overlay/data/tutorials/teams/multi-terminal.d.ts +8 -0
  409. package/dist/ui/overlay/data/tutorials/teams/multi-terminal.js +147 -0
  410. package/dist/ui/overlay/data/tutorials/teams/task-assignment.d.ts +7 -0
  411. package/dist/ui/overlay/data/tutorials/teams/task-assignment.js +204 -0
  412. package/dist/ui/overlay/data/tutorials/teams/team-overview.d.ts +7 -0
  413. package/dist/ui/overlay/data/tutorials/teams/team-overview.js +165 -0
  414. package/dist/ui/overlay/data/tutorials/teams/working-with-agents.d.ts +7 -0
  415. package/dist/ui/overlay/data/tutorials/teams/working-with-agents.js +172 -0
  416. package/dist/ui/overlay/impl/agents-overlay-v2.d.ts +45 -0
  417. package/dist/ui/overlay/impl/agents-overlay-v2.js +814 -0
  418. package/dist/ui/overlay/impl/anchors-overlay-v2.d.ts +47 -0
  419. package/dist/ui/overlay/impl/anchors-overlay-v2.js +749 -0
  420. package/dist/ui/overlay/impl/arch-type-overlay-v2.d.ts +37 -0
  421. package/dist/ui/overlay/impl/arch-type-overlay-v2.js +240 -0
  422. package/dist/ui/overlay/impl/artifact-detail-overlay-v2.d.ts +43 -0
  423. package/dist/ui/overlay/impl/artifact-detail-overlay-v2.js +232 -0
  424. package/dist/ui/overlay/impl/artifact-overlay-v2.d.ts +40 -0
  425. package/dist/ui/overlay/impl/artifact-overlay-v2.js +115 -0
  426. package/dist/ui/overlay/impl/ask-user-overlay-v2.d.ts +72 -0
  427. package/dist/ui/overlay/impl/ask-user-overlay-v2.js +581 -0
  428. package/dist/ui/overlay/impl/ask-user-simple-overlay-v2.d.ts +46 -0
  429. package/dist/ui/overlay/impl/ask-user-simple-overlay-v2.js +204 -0
  430. package/dist/ui/overlay/impl/background-overlay-v2.d.ts +40 -0
  431. package/dist/ui/overlay/impl/background-overlay-v2.js +147 -0
  432. package/dist/ui/overlay/impl/backlog-overlay-v2.d.ts +52 -0
  433. package/dist/ui/overlay/impl/backlog-overlay-v2.js +681 -0
  434. package/dist/ui/overlay/impl/changelog-overlay-v2.d.ts +44 -0
  435. package/dist/ui/overlay/impl/changelog-overlay-v2.js +165 -0
  436. package/dist/ui/overlay/impl/commands-overlay-v2.d.ts +33 -0
  437. package/dist/ui/overlay/impl/commands-overlay-v2.js +439 -0
  438. package/dist/ui/overlay/impl/config-overlay-v2.d.ts +111 -0
  439. package/dist/ui/overlay/impl/config-overlay-v2.js +718 -0
  440. package/dist/ui/overlay/impl/custom-agent-form-overlay-v2.d.ts +83 -0
  441. package/dist/ui/overlay/impl/custom-agent-form-overlay-v2.js +711 -0
  442. package/dist/ui/overlay/impl/dashboard-overlay-v2.d.ts +57 -0
  443. package/dist/ui/overlay/impl/dashboard-overlay-v2.js +382 -0
  444. package/dist/ui/overlay/impl/delegations-overlay-v2.d.ts +28 -0
  445. package/dist/ui/overlay/impl/delegations-overlay-v2.js +279 -0
  446. package/dist/ui/overlay/impl/docs-overlay-v2.d.ts +45 -0
  447. package/dist/ui/overlay/impl/docs-overlay-v2.js +117 -0
  448. package/dist/ui/overlay/impl/document-detail-overlay-v2.d.ts +84 -0
  449. package/dist/ui/overlay/impl/document-detail-overlay-v2.js +1112 -0
  450. package/dist/ui/overlay/impl/filter-overlay-v2.d.ts +41 -0
  451. package/dist/ui/overlay/impl/filter-overlay-v2.js +110 -0
  452. package/dist/ui/overlay/impl/games-overlay-v2.d.ts +31 -0
  453. package/dist/ui/overlay/impl/games-overlay-v2.js +135 -0
  454. package/dist/ui/overlay/impl/guardrail-overlay-v2.d.ts +43 -0
  455. package/dist/ui/overlay/impl/guardrail-overlay-v2.js +114 -0
  456. package/dist/ui/overlay/impl/help-overlay-v2.d.ts +57 -0
  457. package/dist/ui/overlay/impl/help-overlay-v2.js +287 -0
  458. package/dist/ui/overlay/impl/init-setup-overlay-v2.d.ts +25 -0
  459. package/dist/ui/overlay/impl/init-setup-overlay-v2.js +97 -0
  460. package/dist/ui/overlay/impl/iteration-limit-overlay-v2.d.ts +35 -0
  461. package/dist/ui/overlay/impl/iteration-limit-overlay-v2.js +105 -0
  462. package/dist/ui/overlay/impl/keys-overlay-v2.d.ts +41 -0
  463. package/dist/ui/overlay/impl/keys-overlay-v2.js +248 -0
  464. package/dist/ui/overlay/impl/login-overlay-v2.d.ts +49 -0
  465. package/dist/ui/overlay/impl/login-overlay-v2.js +277 -0
  466. package/dist/ui/overlay/impl/mascot-overlay-v2.d.ts +41 -0
  467. package/dist/ui/overlay/impl/mascot-overlay-v2.js +138 -0
  468. package/dist/ui/overlay/impl/mcp-overlay-v2.d.ts +63 -0
  469. package/dist/ui/overlay/impl/mcp-overlay-v2.js +907 -0
  470. package/dist/ui/overlay/impl/model-overlay-v2.d.ts +93 -0
  471. package/dist/ui/overlay/impl/model-overlay-v2.js +1143 -0
  472. package/dist/ui/overlay/impl/model-warning-overlay-v2.d.ts +46 -0
  473. package/dist/ui/overlay/impl/model-warning-overlay-v2.js +132 -0
  474. package/dist/ui/overlay/impl/new-overlay-v2.d.ts +108 -0
  475. package/dist/ui/overlay/impl/new-overlay-v2.js +1243 -0
  476. package/dist/ui/overlay/impl/notifications-overlay-v2.d.ts +20 -0
  477. package/dist/ui/overlay/impl/notifications-overlay-v2.js +116 -0
  478. package/dist/ui/overlay/impl/onboarding-wizard-overlay-v2.d.ts +76 -0
  479. package/dist/ui/overlay/impl/onboarding-wizard-overlay-v2.js +728 -0
  480. package/dist/ui/overlay/impl/pending-overlay-v2.d.ts +51 -0
  481. package/dist/ui/overlay/impl/pending-overlay-v2.js +445 -0
  482. package/dist/ui/overlay/impl/permission-overlay-v2.d.ts +36 -0
  483. package/dist/ui/overlay/impl/permission-overlay-v2.js +380 -0
  484. package/dist/ui/overlay/impl/permissions-overlay-v2.d.ts +85 -0
  485. package/dist/ui/overlay/impl/permissions-overlay-v2.js +820 -0
  486. package/dist/ui/overlay/impl/plan-approval-overlay-v2.d.ts +35 -0
  487. package/dist/ui/overlay/impl/plan-approval-overlay-v2.js +181 -0
  488. package/dist/ui/overlay/impl/project-edit-overlay-v2.d.ts +36 -0
  489. package/dist/ui/overlay/impl/project-edit-overlay-v2.js +195 -0
  490. package/dist/ui/overlay/impl/projects-overlay-v2.d.ts +37 -0
  491. package/dist/ui/overlay/impl/projects-overlay-v2.js +733 -0
  492. package/dist/ui/overlay/impl/reset-overlay-v2.d.ts +39 -0
  493. package/dist/ui/overlay/impl/reset-overlay-v2.js +107 -0
  494. package/dist/ui/overlay/impl/resume-overlay-v2.d.ts +60 -0
  495. package/dist/ui/overlay/impl/resume-overlay-v2.js +414 -0
  496. package/dist/ui/overlay/impl/session-mode-overlay-v2.d.ts +43 -0
  497. package/dist/ui/overlay/impl/session-mode-overlay-v2.js +124 -0
  498. package/dist/ui/overlay/impl/tasks-overlay-v2.d.ts +28 -0
  499. package/dist/ui/overlay/impl/tasks-overlay-v2.js +283 -0
  500. package/dist/ui/overlay/impl/team-overlay-v2.d.ts +86 -0
  501. package/dist/ui/overlay/impl/team-overlay-v2.js +692 -0
  502. package/dist/ui/overlay/impl/terminals-overlay-v2.d.ts +26 -0
  503. package/dist/ui/overlay/impl/terminals-overlay-v2.js +217 -0
  504. package/dist/ui/overlay/impl/theme-overlay-v2.d.ts +42 -0
  505. package/dist/ui/overlay/impl/theme-overlay-v2.js +135 -0
  506. package/dist/ui/overlay/impl/tools-overlay-v2.d.ts +47 -0
  507. package/dist/ui/overlay/impl/tools-overlay-v2.js +214 -0
  508. package/dist/ui/overlay/impl/tutorial-overlay-v2.d.ts +45 -0
  509. package/dist/ui/overlay/impl/tutorial-overlay-v2.js +212 -0
  510. package/dist/ui/overlay/impl/workflow-overlay-v2.d.ts +80 -0
  511. package/dist/ui/overlay/impl/workflow-overlay-v2.js +641 -0
  512. package/dist/ui/overlay/index.d.ts +52 -0
  513. package/dist/ui/overlay/index.js +54 -0
  514. package/dist/ui/overlay/key-utils.d.ts +6 -0
  515. package/dist/ui/overlay/key-utils.js +6 -0
  516. package/dist/ui/overlay/types.d.ts +140 -0
  517. package/dist/ui/overlay/types.js +22 -0
  518. package/dist/ui/overlay-manager.d.ts +43 -0
  519. package/dist/ui/overlay-manager.js +238 -0
  520. package/dist/ui/overlays.d.ts +0 -4
  521. package/dist/ui/overlays.js +4 -460
  522. package/dist/ui/permission-overlay.d.ts +1 -1
  523. package/dist/ui/permission-overlay.js +189 -300
  524. package/dist/ui/providers/types.d.ts +178 -0
  525. package/dist/ui/providers/types.js +9 -0
  526. package/dist/ui/render-modes.d.ts +36 -0
  527. package/dist/ui/render-modes.js +44 -0
  528. package/dist/ui/startup-menu.d.ts +36 -0
  529. package/dist/ui/startup-menu.js +236 -0
  530. package/dist/ui/status-bar-controller.d.ts +33 -0
  531. package/dist/ui/status-bar-controller.js +99 -0
  532. package/dist/ui/subagent-renderer.d.ts +117 -0
  533. package/dist/ui/subagent-renderer.js +318 -0
  534. package/dist/ui/terminal-autocomplete-utils.d.ts +23 -0
  535. package/dist/ui/terminal-autocomplete-utils.js +83 -0
  536. package/dist/ui/terminal-codes.d.ts +94 -0
  537. package/dist/ui/terminal-codes.js +124 -0
  538. package/dist/ui/terminal-line-builders.d.ts +17 -0
  539. package/dist/ui/terminal-line-builders.js +42 -0
  540. package/dist/ui/terminal-render-item.d.ts +16 -0
  541. package/dist/ui/terminal-render-item.js +267 -0
  542. package/dist/ui/terminal-renderer.d.ts +220 -0
  543. package/dist/ui/terminal-renderer.js +750 -0
  544. package/dist/ui/terminal-types.d.ts +179 -0
  545. package/dist/ui/terminal-types.js +34 -0
  546. package/dist/ui/terminal-ui.d.ts +331 -0
  547. package/dist/ui/terminal-ui.js +819 -0
  548. package/dist/ui/terminal.d.ts +20 -0
  549. package/dist/ui/terminal.js +72 -0
  550. package/dist/ui/todo-zone.d.ts +19 -1
  551. package/dist/ui/todo-zone.js +124 -38
  552. package/dist/ui/tool-formatters.d.ts +16 -0
  553. package/dist/ui/tool-formatters.js +1027 -0
  554. package/dist/ui/turn-metrics.d.ts +56 -0
  555. package/dist/ui/turn-metrics.js +75 -0
  556. package/dist/ui/types.d.ts +28 -0
  557. package/dist/ui/types.js +1 -0
  558. package/dist/ui/vscode-diff-ipc.d.ts +102 -0
  559. package/dist/ui/vscode-diff-ipc.js +385 -0
  560. package/dist/utils/credentials.d.ts +24 -5
  561. package/dist/utils/credentials.js +123 -9
  562. package/dist/utils/debug-log.d.ts +28 -0
  563. package/dist/utils/debug-log.js +57 -0
  564. package/dist/utils/format-tokens.d.ts +13 -0
  565. package/dist/utils/format-tokens.js +18 -0
  566. package/dist/utils/git-config.d.ts +26 -0
  567. package/dist/utils/git-config.js +54 -0
  568. package/dist/utils/message-utils.d.ts +61 -0
  569. package/dist/utils/message-utils.js +72 -0
  570. package/dist/utils/model-tiers.d.ts +8 -1
  571. package/dist/utils/model-tiers.js +39 -17
  572. package/dist/utils/open-browser.d.ts +5 -0
  573. package/dist/utils/open-browser.js +32 -0
  574. package/dist/utils/path-safety.d.ts +56 -0
  575. package/dist/utils/path-safety.js +240 -0
  576. package/dist/utils/project-detection.d.ts +58 -0
  577. package/dist/utils/project-detection.js +424 -0
  578. package/dist/utils/project-memory.js +2 -1
  579. package/dist/utils/project-status.d.ts +2 -2
  580. package/dist/utils/startup-perf.d.ts +18 -0
  581. package/dist/utils/startup-perf.js +60 -0
  582. package/dist/utils/token-tracker.d.ts +62 -0
  583. package/dist/utils/token-tracker.js +150 -0
  584. package/dist/utils/token-types.d.ts +23 -0
  585. package/dist/utils/token-types.js +18 -0
  586. package/dist/utils/types/config-types.d.ts +32 -0
  587. package/dist/utils/types/config-types.js +8 -0
  588. package/dist/utils/update-checker.d.ts +28 -0
  589. package/dist/utils/update-checker.js +106 -0
  590. package/dist/utils/version.d.ts +7 -0
  591. package/dist/utils/version.js +10 -0
  592. package/dist/utils/vscode-detect.d.ts +39 -0
  593. package/dist/utils/vscode-detect.js +137 -0
  594. package/dist/workflow/guided-mode-injector.d.ts +42 -0
  595. package/dist/workflow/guided-mode-injector.js +191 -0
  596. package/dist/workflow/index.d.ts +8 -0
  597. package/dist/workflow/index.js +8 -0
  598. package/dist/workflow/step-criteria.d.ts +62 -0
  599. package/dist/workflow/step-criteria.js +150 -0
  600. package/dist/workflow/step-tracker.d.ts +92 -0
  601. package/dist/workflow/step-tracker.js +141 -0
  602. package/package.json +32 -12
  603. package/dist/index.old.d.ts +0 -7
  604. package/dist/index.old.js +0 -1014
  605. package/dist/repl.d.ts +0 -121
  606. package/dist/repl.js +0 -1878
  607. package/dist/templates/claude-md.d.ts +0 -7
  608. package/dist/templates/claude-md.js +0 -189
  609. package/dist/test-autocomplete.d.ts +0 -7
  610. package/dist/test-autocomplete.js +0 -85
  611. package/dist/test-tabbed-menu.d.ts +0 -7
  612. package/dist/test-tabbed-menu.js +0 -25
  613. package/dist/tool-selector.d.ts +0 -71
  614. package/dist/tool-selector.js +0 -184
  615. package/dist/ui/agents-overlay.d.ts +0 -12
  616. package/dist/ui/agents-overlay.js +0 -501
  617. package/dist/ui/arch-type-overlay.d.ts +0 -20
  618. package/dist/ui/arch-type-overlay.js +0 -229
  619. package/dist/ui/backlog-overlay.d.ts +0 -17
  620. package/dist/ui/backlog-overlay.js +0 -786
  621. package/dist/ui/commands-overlay.d.ts +0 -11
  622. package/dist/ui/commands-overlay.js +0 -410
  623. package/dist/ui/config-overlay.d.ts +0 -34
  624. package/dist/ui/config-overlay.js +0 -977
  625. package/dist/ui/init-overlay.d.ts +0 -24
  626. package/dist/ui/init-overlay.js +0 -525
  627. package/dist/ui/input-prompt-v2.d.ts +0 -179
  628. package/dist/ui/input-prompt-v2.js +0 -991
  629. package/dist/ui/model-warning-overlay.d.ts +0 -30
  630. package/dist/ui/model-warning-overlay.js +0 -171
  631. package/dist/ui/tools-overlay.d.ts +0 -26
  632. package/dist/ui/tools-overlay.js +0 -278
  633. package/dist/ui/tutorial-overlay.d.ts +0 -10
  634. package/dist/ui/tutorial-overlay.js +0 -936
@@ -0,0 +1,284 @@
1
+ /**
2
+ * Your First Project Tutorial
3
+ *
4
+ * Guides users through the dashboard and /new wizard.
5
+ */
6
+ export const firstProjectTutorial = (s) => ({
7
+ id: 'first-project',
8
+ title: 'Your First Project',
9
+ description: 'Dashboard and /new wizard walkthrough',
10
+ pages: [
11
+ // Page 1: What you see first
12
+ {
13
+ title: 'What You See First',
14
+ lines: [
15
+ '',
16
+ ` When you run ${s.primary('compilr')} for the first time, you'll see the Dashboard:`,
17
+ '',
18
+ ` ${s.muted('─'.repeat(50))}`,
19
+ ` ${s.muted('Dashboard')} │ ${s.muted('More')}`,
20
+ ` ${s.muted('─'.repeat(50))}`,
21
+ '',
22
+ ` ${s.primaryBold('WELCOME TO COMPILR DEV CLI')}`,
23
+ '',
24
+ ` ${s.muted('Get started by creating a new project or importing an existing')}`,
25
+ ` ${s.muted('repository. Or use Quick Chat for general assistance.')}`,
26
+ '',
27
+ ` ${s.secondary('ACTIONS')}`,
28
+ ` ${s.primary('❯')} /new Project ${s.muted('Create new or import existing project')}`,
29
+ ` Quick Chat ${s.muted('Chat without project context')}`,
30
+ '',
31
+ ` ${s.muted('↑↓/jk Navigate Enter Select q Quit')}`,
32
+ '',
33
+ ],
34
+ },
35
+ // Page 2: Your options
36
+ {
37
+ title: 'Your Options',
38
+ lines: [
39
+ '',
40
+ ` From the Dashboard you have two choices:`,
41
+ '',
42
+ ` ${s.primary('/new Project')}`,
43
+ ` Create a new project or import an existing one.`,
44
+ ` Sets up the workflow structure for AI-assisted development.`,
45
+ '',
46
+ ` ${s.primary('Quick Chat')}`,
47
+ ` Chat without project context.`,
48
+ ` For quick questions or one-off tasks.`,
49
+ '',
50
+ ` ${s.secondary('Navigation:')}`,
51
+ ` ${s.muted('↑/↓')} or ${s.muted('j/k')} to move between options`,
52
+ ` ${s.muted('Enter')} to select`,
53
+ ` ${s.muted('Tab')} to switch to the "More" tab`,
54
+ '',
55
+ ],
56
+ },
57
+ // Page 3: Starting /new [0/8]
58
+ {
59
+ title: 'Starting /new',
60
+ lines: [
61
+ '',
62
+ ` Select ${s.primary('/new Project')} and press Enter. You'll see:`,
63
+ '',
64
+ ` ${s.primaryBold('Initialize New Project')} ${s.muted('[0/8]')}`,
65
+ '',
66
+ ` ${s.primary('What would you like to do?')}`,
67
+ '',
68
+ ` ${s.primary('>')} 1. Start a new project`,
69
+ ` 2. Add workflow to existing project ${s.muted('(coming soon)')}`,
70
+ '',
71
+ ` ${s.muted('Start fresh with a structured project layout')}`,
72
+ ` ${s.muted('optimized for AI-assisted development.')}`,
73
+ '',
74
+ ` ${s.muted('Up/Down Navigate | Enter Select | q/Esc Cancel')}`,
75
+ '',
76
+ ` Select "Start a new project" and press Enter.`,
77
+ '',
78
+ ],
79
+ },
80
+ // Page 4: Project Name [1/8]
81
+ {
82
+ title: 'Project Name',
83
+ lines: [
84
+ '',
85
+ ` ${s.primaryBold('Initialize New Project')} ${s.muted('[1/8]')}`,
86
+ '',
87
+ ` ${s.primary('Project name')}`,
88
+ '',
89
+ ` ${s.primary('>')} my-first-project${s.muted('|')}`,
90
+ '',
91
+ ` ${s.muted('Use lowercase letters, numbers, hyphens (e.g., my-saas-app)')}`,
92
+ ` ${s.muted('2-50 characters, must start with a letter')}`,
93
+ '',
94
+ ` ${s.muted('Enter Confirm | Esc Back')}`,
95
+ '',
96
+ ` ${s.warning('TIP:')} Choose a descriptive name - it becomes your folder name.`,
97
+ '',
98
+ ],
99
+ },
100
+ // Page 5: Description [2/8]
101
+ {
102
+ title: 'Description',
103
+ lines: [
104
+ '',
105
+ ` ${s.primaryBold('Initialize New Project')} ${s.muted('[2/8]')}`,
106
+ '',
107
+ ` ${s.primary('What are you building?')}`,
108
+ '',
109
+ ` ${s.primary('>')} A note-taking app with markdown support${s.muted('|')}`,
110
+ '',
111
+ ` ${s.muted('Brief description (1-2 sentences)')}`,
112
+ ` ${s.muted('Example: "A task management SaaS for small teams"')}`,
113
+ '',
114
+ ` ${s.muted('Enter Confirm | Esc Back')}`,
115
+ '',
116
+ ` ${s.warning('TIP:')} Be specific! The AI uses this to understand your project.`,
117
+ '',
118
+ ],
119
+ },
120
+ // Page 6: Documentation Structure [3/8]
121
+ {
122
+ title: 'Documentation Structure',
123
+ lines: [
124
+ '',
125
+ ` ${s.primaryBold('Initialize New Project')} ${s.muted('[3/8]')}`,
126
+ '',
127
+ ` ${s.primary('Documentation structure')}`,
128
+ '',
129
+ ` ${s.primary('>')} 1. Single repo (.compilr/ folder + COMPILR.md in project root)`,
130
+ ` 2. Two repos (project/ + project-docs/ separate repositories)`,
131
+ '',
132
+ ` ${s.muted('Single repo: All files in one repository')}`,
133
+ ` ${s.muted('Two repos: Code and docs in separate repositories')}`,
134
+ '',
135
+ ` ${s.muted('Up/Down Navigate | Enter Select | Esc Back')}`,
136
+ '',
137
+ ` ${s.warning('TIP:')} Single repo is simpler for most projects.`,
138
+ '',
139
+ ],
140
+ },
141
+ // Page 7: Tech Stack [4/8]
142
+ {
143
+ title: 'Tech Stack',
144
+ lines: [
145
+ '',
146
+ ` ${s.primaryBold('Initialize New Project')} ${s.muted('[4/8]')}`,
147
+ '',
148
+ ` ${s.primary('Tech stack')}`,
149
+ '',
150
+ ` ${s.primary('>')} 1. React + Node.js + PostgreSQL`,
151
+ ` 2. React + Python + PostgreSQL`,
152
+ ` 3. Vue + Node.js + PostgreSQL`,
153
+ ` 4. Custom (configure later)`,
154
+ '',
155
+ ` ${s.muted('Choose a preset or configure later')}`,
156
+ '',
157
+ ` ${s.muted('Up/Down Navigate | Enter Select | Esc Back')}`,
158
+ '',
159
+ ` ${s.warning('TIP:')} You can change this later in your COMPILR.md file.`,
160
+ '',
161
+ ],
162
+ },
163
+ // Page 8: Coding Standards [5/8]
164
+ {
165
+ title: 'Coding Standards',
166
+ lines: [
167
+ '',
168
+ ` ${s.primaryBold('Initialize New Project')} ${s.muted('[5/8]')}`,
169
+ '',
170
+ ` ${s.primary('Coding standards preset')}`,
171
+ '',
172
+ ` ${s.primary('>')} 1. TypeScript Strict (recommended)`,
173
+ ` 2. TypeScript Relaxed`,
174
+ ` 3. Custom (configure later)`,
175
+ '',
176
+ ` ${s.muted('Strict: Full TypeScript with strict mode + ESLint')}`,
177
+ ` ${s.muted('Relaxed: TypeScript with basic strict mode')}`,
178
+ ` ${s.muted('Custom: Configure your own standards later')}`,
179
+ '',
180
+ ` ${s.muted('Up/Down Navigate | Enter Select | Esc Back')}`,
181
+ '',
182
+ ],
183
+ },
184
+ // Page 9: Git Repository [6/8]
185
+ {
186
+ title: 'Git Repository',
187
+ lines: [
188
+ '',
189
+ ` ${s.primaryBold('Initialize New Project')} ${s.muted('[6/8]')}`,
190
+ '',
191
+ ` ${s.primary('Initialize git repository?')}`,
192
+ '',
193
+ ` ${s.primary('>')} Yes`,
194
+ ` No`,
195
+ '',
196
+ ` ${s.muted('Creates git repo with initial commit')}`,
197
+ '',
198
+ ` ${s.muted('Up/Down Navigate | Enter Select | Esc Back')}`,
199
+ '',
200
+ ` If you select Yes, you can optionally add a remote URL:`,
201
+ '',
202
+ ` ${s.primary('Git remote URL (optional)')}`,
203
+ '',
204
+ ` ${s.primary('>')} https://github.com/user/my-first-project${s.muted('|')}`,
205
+ '',
206
+ ` ${s.muted('Enter Continue · Esc Skip')}`,
207
+ '',
208
+ ],
209
+ },
210
+ // Page 10: Workflow Mode [7/8]
211
+ {
212
+ title: 'Workflow Mode',
213
+ lines: [
214
+ '',
215
+ ` ${s.primaryBold('Initialize New Project')} ${s.muted('[7/8]')}`,
216
+ '',
217
+ ` ${s.primary('Workflow mode')}`,
218
+ '',
219
+ ` ${s.primary('>')} 1. Flexible (user-driven, exploratory) ${s.muted('(recommended)')}`,
220
+ ` 2. Guided (structured step-by-step workflow)`,
221
+ '',
222
+ ` ${s.muted('Flexible: Work at your own pace, agent responds to requests')}`,
223
+ ` ${s.muted('Guided: Agent suggests next steps, tracks work item progress')}`,
224
+ '',
225
+ ` ${s.muted('Up/Down Navigate | Enter Select | Esc Back')}`,
226
+ '',
227
+ ` ${s.warning('TIP:')} Start with Flexible. Switch to Guided anytime via ${s.primary('/workflow')}.`,
228
+ '',
229
+ ],
230
+ },
231
+ // Page 11: Confirmation [8/8]
232
+ {
233
+ title: 'Confirmation',
234
+ lines: [
235
+ '',
236
+ ` ${s.primaryBold('Initialize New Project')} ${s.muted('[8/8]')}`,
237
+ '',
238
+ ` ${s.primary('Ready to create project?')}`,
239
+ '',
240
+ ` Project: ${s.primary('my-first-project')}`,
241
+ ` Location: ${s.primary('./my-first-project/')}`,
242
+ ` Structure: ${s.primary('Single repo')}`,
243
+ ` Tech: ${s.primary('React + Node.js + PostgreSQL')}`,
244
+ ` Standards: ${s.primary('TypeScript Strict (recommended)')}`,
245
+ ` Git: ${s.primary('Yes')}`,
246
+ ` Remote: ${s.primary('https://github.com/user/my-first-project')}`,
247
+ ` Workflow: ${s.primary('Flexible (user-driven, exploratory)')}`,
248
+ '',
249
+ ` ${s.primary('>')} Create`,
250
+ ` Cancel`,
251
+ '',
252
+ ` ${s.muted('Up/Down Navigate | Enter Confirm | Esc Back')}`,
253
+ '',
254
+ ],
255
+ },
256
+ // Page 12: After Creation
257
+ {
258
+ title: 'After Creation',
259
+ lines: [
260
+ '',
261
+ ` After creating your project, you'll see the Dashboard with your project:`,
262
+ '',
263
+ ` ${s.muted('─'.repeat(50))}`,
264
+ ` ${s.muted('Dashboard')} │ ${s.muted('More')}`,
265
+ ` ${s.muted('─'.repeat(50))}`,
266
+ '',
267
+ ` ${s.secondary('CURRENT PROJECT')}`,
268
+ ` ${s.primaryBold('★ My First Project')}`,
269
+ ` ${s.muted('/workspace/projects/my-first-project │ active │ flexible')}`,
270
+ '',
271
+ ` ${s.secondary('ACTIONS')}`,
272
+ ` ${s.primary('❯')} Continue with My First Project ${s.muted('Resume working on current project')}`,
273
+ '',
274
+ ` ${s.muted('[n] /new [p] Projects [c] Chat [w] Workflow')}`,
275
+ '',
276
+ ` ${s.muted('↑↓/jk Navigate Enter Select q Quit')}`,
277
+ '',
278
+ ` Select ${s.primary('Continue')} and press Enter to start chatting!`,
279
+ ` Try ${s.primary('/design')} to plan your features.`,
280
+ '',
281
+ ],
282
+ },
283
+ ],
284
+ });
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Navigation & Help Tutorial
3
+ *
4
+ * How to find your way around the CLI.
5
+ * Uses shared content from shared-content.ts for consistency with guide tool.
6
+ */
7
+ import type { TutorialBuilder } from '../../tutorial-types.js';
8
+ export declare const navigationTutorial: TutorialBuilder;
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Navigation & Help Tutorial
3
+ *
4
+ * How to find your way around the CLI.
5
+ * Uses shared content from shared-content.ts for consistency with guide tool.
6
+ */
7
+ import { CONTENT_TOPICS } from '../../../../../guide/shared-content.js';
8
+ import { topicsToPages } from '../../../../../guide/tutorial-helpers.js';
9
+ // Topic IDs from shared content that form this tutorial
10
+ const NAVIGATION_TOPIC_IDS = [
11
+ 'help',
12
+ 'overlay-navigation',
13
+ 'dashboard',
14
+ 'repl',
15
+ 'commands-quick',
16
+ ];
17
+ export const navigationTutorial = (s) => ({
18
+ id: 'navigation',
19
+ title: 'Navigation & Help',
20
+ description: 'Finding your way around',
21
+ pages: topicsToPages(NAVIGATION_TOPIC_IDS, CONTENT_TOPICS, s),
22
+ });
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Welcome Tutorial
3
+ *
4
+ * Introduces the five pillars philosophy and development workflow overview.
5
+ */
6
+ import type { TutorialBuilder } from '../../tutorial-types.js';
7
+ export declare const welcomeTutorial: TutorialBuilder;
@@ -0,0 +1,174 @@
1
+ /**
2
+ * Welcome Tutorial
3
+ *
4
+ * Introduces the five pillars philosophy and development workflow overview.
5
+ */
6
+ export const welcomeTutorial = (s) => ({
7
+ id: 'welcome',
8
+ title: 'Welcome & Philosophy',
9
+ description: 'Core principles and workflow overview',
10
+ pages: [
11
+ // Page 1: Introduction
12
+ {
13
+ title: 'Welcome to compilr.dev',
14
+ lines: [
15
+ '',
16
+ ` ${s.primaryBold('Stop rebuilding. Start structuring.')}`,
17
+ '',
18
+ ` Have you ever:`,
19
+ ` ${s.muted('•')} Built the same feature three times?`,
20
+ ` ${s.muted('•')} Lost context between sessions?`,
21
+ ` ${s.muted('•')} Watched your codebase become a patchwork of patterns?`,
22
+ '',
23
+ ` This is ${s.warning('vibe coding')} - the chaos that emerges when powerful AI`,
24
+ ` tools meet undisciplined workflows.`,
25
+ '',
26
+ ` ${s.primary('compilr.dev')} provides the structure to make AI coding assistants`,
27
+ ` actually productive.`,
28
+ '',
29
+ ],
30
+ },
31
+ // Page 2: Pillar 1 - Structured
32
+ {
33
+ title: 'Pillar 1: Structured Coding',
34
+ lines: [
35
+ '',
36
+ ` ${s.primaryBold('Every project deserves a skeleton before it has muscles.')}`,
37
+ '',
38
+ ` That means:`,
39
+ '',
40
+ ` ${s.success('✓')} Explicit folder structures (code + documentation)`,
41
+ ` ${s.success('✓')} A ${s.primary('COMPILR.md')} file that persists project context`,
42
+ ` ${s.success('✓')} A ${s.primary('backlog')} that tracks what's done and what's next`,
43
+ ` ${s.success('✓')} Architecture decisions documented before implemented`,
44
+ '',
45
+ ` ${s.muted('Structure isn\'t bureaucracy.')}`,
46
+ ` ${s.muted('It\'s the difference between building a house and piling up bricks.')}`,
47
+ '',
48
+ ],
49
+ },
50
+ // Page 3: Pillar 2 - Disciplined
51
+ {
52
+ title: 'Pillar 2: Disciplined Development',
53
+ lines: [
54
+ '',
55
+ ` ${s.primaryBold('Discipline is doing the boring things that prevent expensive things.')}`,
56
+ '',
57
+ ` That means:`,
58
+ '',
59
+ ` ${s.success('✓')} Committing early and often (not "I'll commit when it's done")`,
60
+ ` ${s.success('✓')} Tracking progress in a backlog (not "I'll remember")`,
61
+ ` ${s.success('✓')} Following coding standards (not "the AI knows best")`,
62
+ ` ${s.success('✓')} Reviewing changes before accepting (not "ship it and pray")`,
63
+ '',
64
+ ` ${s.muted('Discipline compounds. Undisciplined code compounds too -')}`,
65
+ ` ${s.muted('in bugs, rework, and frustration.')}`,
66
+ '',
67
+ ],
68
+ },
69
+ // Page 4: Pillar 3 - Intentional
70
+ {
71
+ title: 'Pillar 3: Intentional Decisions',
72
+ lines: [
73
+ '',
74
+ ` ${s.primaryBold('Every choice should be deliberate.')}`,
75
+ '',
76
+ ` That means:`,
77
+ '',
78
+ ` ${s.success('✓')} Technology stack evaluated upfront, not mid-project`,
79
+ ` ${s.success('✓')} Database schemas normalized, not ad-hoc`,
80
+ ` ${s.success('✓')} Security and performance from day one, not bolted on`,
81
+ ` ${s.success('✓')} Trade-offs documented, not buried in chat`,
82
+ '',
83
+ ` ${s.muted('"It just happened" is never the right answer for')}`,
84
+ ` ${s.muted('how your architecture emerged.')}`,
85
+ '',
86
+ ],
87
+ },
88
+ // Page 5: Pillar 4 - Engineering-First
89
+ {
90
+ title: 'Pillar 4: Engineering-First AI',
91
+ lines: [
92
+ '',
93
+ ` ${s.primaryBold('AI is a tool, not a replacement for engineering judgment.')}`,
94
+ '',
95
+ ` That means:`,
96
+ '',
97
+ ` ${s.success('✓')} The human sets direction; AI accelerates execution`,
98
+ ` ${s.success('✓')} DRY principle enforced (AI should know when it duplicates)`,
99
+ ` ${s.success('✓')} Breaking changes detected before they break things`,
100
+ ` ${s.success('✓')} Context preserved across sessions, not lost to tokens`,
101
+ '',
102
+ ` ${s.muted('The goal isn\'t to code faster.')}`,
103
+ ` ${s.muted('The goal is to build better software, faster.')}`,
104
+ '',
105
+ ],
106
+ },
107
+ // Page 6: Pillar 5 - Flexible
108
+ {
109
+ title: 'Pillar 5: Flexible Execution',
110
+ lines: [
111
+ '',
112
+ ` ${s.primaryBold('Structure enables change - it doesn\'t prevent it.')}`,
113
+ '',
114
+ ` That means:`,
115
+ '',
116
+ ` ${s.success('✓')} The backlog is a living document, not a contract`,
117
+ ` ${s.success('✓')} Priorities shift based on learnings and feedback`,
118
+ ` ${s.success('✓')} New tasks emerge and get slotted in naturally`,
119
+ ` ${s.success('✓')} You can pivot features or reorder phases`,
120
+ '',
121
+ ` ${s.muted('The difference between flexibility and chaos? Foundations.')}`,
122
+ ` ${s.muted('Without structure, every change is a risk.')}`,
123
+ '',
124
+ ],
125
+ },
126
+ // Page 7: The Workflow
127
+ {
128
+ title: 'The Development Workflow',
129
+ lines: [
130
+ '',
131
+ ` ${s.secondary('The CLI guides you through five main stages:')}`,
132
+ '',
133
+ ` ${s.primary('/new')} Create your project`,
134
+ ` ${s.muted('Sets up structure, COMPILR.md, database record')}`,
135
+ '',
136
+ ` ${s.primary('/design')} Gather requirements`,
137
+ ` ${s.muted('Creates a PRD and backlog items')}`,
138
+ '',
139
+ ` ${s.primary('/backlog')} Manage work items`,
140
+ ` ${s.muted('Track status, prioritize, break down tasks')}`,
141
+ '',
142
+ ` ${s.primary('/build')} Implement features`,
143
+ ` ${s.muted('AI-assisted coding with your approval')}`,
144
+ '',
145
+ ` ${s.primary('/workflow')} Check progress`,
146
+ ` ${s.muted('See where you are and what\'s next')}`,
147
+ '',
148
+ ],
149
+ },
150
+ // Page 8: Getting Started
151
+ {
152
+ title: 'Getting Started',
153
+ lines: [
154
+ '',
155
+ ` ${s.secondary('Ready to start? Here are your next steps:')}`,
156
+ '',
157
+ ` ${s.muted('1.')} Run ${s.primary('/new')} to create a project`,
158
+ ` ${s.muted('Or /sketch for a quick outline')}`,
159
+ '',
160
+ ` ${s.muted('2.')} Run ${s.primary('/design')} to gather requirements`,
161
+ ` ${s.muted('Creates a PRD and backlog items')}`,
162
+ '',
163
+ ` ${s.muted('3.')} Run ${s.primary('/backlog')} to see your work items`,
164
+ ` ${s.muted('Pick one and start building!')}`,
165
+ '',
166
+ ` ${s.warning('TIP:')} Browse this tutorial to learn all the features.`,
167
+ ` Use ←/→ to see other topics.`,
168
+ '',
169
+ ` ${s.muted('Your AI assistant, your discipline, your code.')}`,
170
+ '',
171
+ ],
172
+ },
173
+ ],
174
+ });
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Context Management Tutorial
3
+ *
4
+ * Covers /context, /compact, /tokens, /anchors, and auto-compact.
5
+ */
6
+ import type { TutorialBuilder } from '../../tutorial-types.js';
7
+ export declare const contextManagementTutorial: TutorialBuilder;
@@ -0,0 +1,158 @@
1
+ /**
2
+ * Context Management Tutorial
3
+ *
4
+ * Covers /context, /compact, /tokens, /anchors, and auto-compact.
5
+ */
6
+ export const contextManagementTutorial = (s) => ({
7
+ id: 'context-mgmt',
8
+ title: 'Context Management',
9
+ description: 'Manage AI memory and token usage',
10
+ pages: [
11
+ // Page 1: Introduction
12
+ {
13
+ title: 'Understanding Context',
14
+ lines: [
15
+ '',
16
+ ` ${s.primaryBold('Every AI model has a context window — a limit on')}`,
17
+ ` ${s.primaryBold('how much information it can process at once.')}`,
18
+ '',
19
+ ` As your conversation grows, you use more of the window.`,
20
+ ` When it fills up, the AI loses access to older messages.`,
21
+ '',
22
+ ` ${s.secondary('Context management commands:')}`,
23
+ '',
24
+ ` ${s.primary('/context')} View current context usage`,
25
+ ` ${s.primary('/compact')} Summarize old messages to free space`,
26
+ ` ${s.primary('/tokens')} Detailed token breakdown`,
27
+ ` ${s.primary('/status')} Session overview`,
28
+ ` ${s.primary('/anchors')} Persistent notes (survive compaction)`,
29
+ ` ${s.primary('/export')} Save conversation to markdown`,
30
+ '',
31
+ ],
32
+ },
33
+ // Page 2: /context
34
+ {
35
+ title: 'Viewing Context Usage',
36
+ lines: [
37
+ '',
38
+ ` ${s.secondary('Run /context to see how full your context window is:')}`,
39
+ '',
40
+ ` ${s.muted('Context Usage')}`,
41
+ ` ${s.muted('────────────────────')}`,
42
+ ` Agent: ${s.primary('[▲_▲] $dev')}`,
43
+ ` Usage: ${s.success('████')}${s.muted('░░░░░░░░░░░░░░░░')} 18.5%`,
44
+ ` Tokens: ${s.primary('37,000')} / ${s.muted('200,000')}`,
45
+ ` Messages: ${s.primary('42')}`,
46
+ ` Turns: ${s.primary('21')}`,
47
+ '',
48
+ ` ${s.muted('By Agent')}`,
49
+ ` ${s.muted('────────────────────')}`,
50
+ ` ${s.success('●')} $dev ${s.success('████')}${s.muted('░░░░░░')} 18.5% ${s.muted('200K')} (42 msgs)`,
51
+ ` ${s.muted('○')} $pm ${s.muted('█')}${s.muted('░░░░░░░░░')} 2.1% ${s.muted('200K')} (6 msgs)`,
52
+ '',
53
+ ` Each agent shows its model's context window (200K, 128K, 1M).`,
54
+ ` ${s.success('●')} = active agent ${s.muted('○')} = inactive`,
55
+ '',
56
+ ],
57
+ },
58
+ // Page 3: /compact
59
+ {
60
+ title: 'Compacting Context',
61
+ lines: [
62
+ '',
63
+ ` ${s.primaryBold('When context gets too full, run /compact.')}`,
64
+ '',
65
+ ` This summarizes older messages while preserving key info:`,
66
+ '',
67
+ ` ${s.success('✓')} Tool results converted to file references`,
68
+ ` ${s.success('✓')} Conversation history summarized`,
69
+ ` ${s.success('✓')} Recent messages kept intact`,
70
+ ` ${s.success('✓')} Anchors always preserved`,
71
+ '',
72
+ ` ${s.secondary('Multi-agent compact modes:')}`,
73
+ '',
74
+ ` ${s.primary('/compact')} Use default mode (set in /config)`,
75
+ ` ${s.primary('/compact all')} Compact all initialized agents`,
76
+ ` ${s.primary('/compact auto')} Compact agents above 70% usage`,
77
+ ` ${s.primary('/compact $pm')} Compact a specific agent`,
78
+ '',
79
+ ` ${s.warning('TIP:')} Enable ${s.primary('Auto-compact')} in /config for automatic`,
80
+ ` compaction. Set ${s.primary('Default compact mode')} to control /compact.`,
81
+ '',
82
+ ],
83
+ },
84
+ // Page 4: Anchors
85
+ {
86
+ title: 'Persistent Notes with /anchors',
87
+ lines: [
88
+ '',
89
+ ` ${s.primaryBold('Anchors are notes that survive compaction and persist')}`,
90
+ ` ${s.primaryBold('across sessions. The AI always sees them.')}`,
91
+ '',
92
+ ` ${s.secondary('Use anchors for:')}`,
93
+ ` Project conventions: ${s.muted('"Always use async/await"')}`,
94
+ ` Decisions: ${s.muted('"We chose PostgreSQL because..."')}`,
95
+ ` Reminders: ${s.muted('"Don\'t modify the auth module"')}`,
96
+ '',
97
+ ` ${s.secondary('Creating anchors:')}`,
98
+ ` In the REPL, say: ${s.primary('"Remember that we use tabs not spaces"')}`,
99
+ ` Or use the /anchors overlay: press ${s.primary('a')} to add`,
100
+ '',
101
+ ` ${s.secondary('Anchor properties:')}`,
102
+ ` Priority: ${s.error('[!]')} Critical ${s.warning('[S]')} Safety ${s.muted('[i]')} Info`,
103
+ ` Scope: ${s.primary('[G]')} Global (all projects) ${s.primary('[P]')} Project only`,
104
+ '',
105
+ ],
106
+ },
107
+ // Page 5: Anchors Overlay
108
+ {
109
+ title: 'The /anchors Overlay',
110
+ lines: [
111
+ '',
112
+ ` ${s.secondary('Tabs filter anchors by priority and scope:')}`,
113
+ '',
114
+ ` ${s.muted('All | Critical | Safety | Info | Global | Project')}`,
115
+ '',
116
+ ` ${s.secondary('Shortcuts:')}`,
117
+ '',
118
+ ` ${s.primary('Up/Down')} Navigate anchors`,
119
+ ` ${s.primary('Tab/1-6')} Switch filter tabs`,
120
+ ` ${s.primary('a')} Add new anchor`,
121
+ ` ${s.primary('e')} Edit selected anchor`,
122
+ ` ${s.primary('d')} Delete (with confirmation)`,
123
+ ` ${s.primary('/')} Search anchors`,
124
+ ` ${s.primary('q/Esc')} Close`,
125
+ '',
126
+ ` ${s.secondary('When adding/editing:')}`,
127
+ ` Type content (up to 500 chars)`,
128
+ ` Cycle priority and scope with arrow keys`,
129
+ ` ${s.primary('Enter')} to save, ${s.primary('Esc')} to cancel`,
130
+ '',
131
+ ],
132
+ },
133
+ // Page 6: Tips
134
+ {
135
+ title: 'Context Tips',
136
+ lines: [
137
+ '',
138
+ ` ${s.warning('TIP:')} Watch for yellow/red in your context bar.`,
139
+ ` Above 80% the AI starts losing earlier context.`,
140
+ '',
141
+ ` ${s.warning('TIP:')} Use ${s.primary('/export')} to save important conversations`,
142
+ ` before compacting. Example:`,
143
+ ` ${s.primary('/export meeting-notes.md')}`,
144
+ '',
145
+ ` ${s.warning('TIP:')} Create ${s.error('[!]')} Critical anchors for rules the AI`,
146
+ ` must never forget, even across sessions.`,
147
+ '',
148
+ ` ${s.warning('TIP:')} ${s.primary('/tokens')} shows input vs output breakdown.`,
149
+ ` High output tokens may mean the AI is being verbose -`,
150
+ ` create an anchor: "Be concise in responses"`,
151
+ '',
152
+ ` ${s.warning('TIP:')} When team agents each have their own context,`,
153
+ ` use ${s.primary('/context')} to see which agent is using the most.`,
154
+ '',
155
+ ],
156
+ },
157
+ ],
158
+ });