@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.
- package/README.md +254 -68
- package/dist/.tsbuildinfo.app +1 -0
- package/dist/.tsbuildinfo.data +1 -0
- package/dist/.tsbuildinfo.domain +1 -0
- package/dist/.tsbuildinfo.foundation +1 -0
- package/dist/agent.d.ts +134 -4
- package/dist/agent.js +345 -166
- package/dist/anchors/index.d.ts +9 -0
- package/dist/anchors/index.js +9 -0
- package/dist/anchors/project-anchors.d.ts +79 -0
- package/dist/anchors/project-anchors.js +202 -0
- package/dist/auth/api-client.d.ts +124 -0
- package/dist/auth/api-client.js +261 -0
- package/dist/auth/index.d.ts +172 -0
- package/dist/auth/index.js +545 -0
- package/dist/auth/storage.d.ts +52 -0
- package/dist/auth/storage.js +118 -0
- package/dist/changelog/index.d.ts +16 -0
- package/dist/changelog/index.js +24 -0
- package/dist/changelog/releases.d.ts +17 -0
- package/dist/changelog/releases.js +63 -0
- package/dist/commands/index.d.ts +2 -1
- package/dist/commands-v2/handlers/auth.d.ts +10 -0
- package/dist/commands-v2/handlers/auth.js +118 -0
- package/dist/commands-v2/handlers/background.d.ts +14 -0
- package/dist/commands-v2/handlers/background.js +276 -0
- package/dist/commands-v2/handlers/context.d.ts +13 -0
- package/dist/commands-v2/handlers/context.js +533 -0
- package/dist/commands-v2/handlers/core.d.ts +14 -0
- package/dist/commands-v2/handlers/core.js +290 -0
- package/dist/commands-v2/handlers/debug.d.ts +11 -0
- package/dist/commands-v2/handlers/debug.js +177 -0
- package/dist/commands-v2/handlers/delegations.d.ts +8 -0
- package/dist/commands-v2/handlers/delegations.js +29 -0
- package/dist/commands-v2/handlers/files.d.ts +8 -0
- package/dist/commands-v2/handlers/files.js +162 -0
- package/dist/commands-v2/handlers/filter.d.ts +9 -0
- package/dist/commands-v2/handlers/filter.js +130 -0
- package/dist/commands-v2/handlers/games.d.ts +7 -0
- package/dist/commands-v2/handlers/games.js +57 -0
- package/dist/commands-v2/handlers/index.d.ts +25 -0
- package/dist/commands-v2/handlers/index.js +63 -0
- package/dist/commands-v2/handlers/mcp.d.ts +8 -0
- package/dist/commands-v2/handlers/mcp.js +39 -0
- package/dist/commands-v2/handlers/notifications.d.ts +9 -0
- package/dist/commands-v2/handlers/notifications.js +34 -0
- package/dist/commands-v2/handlers/project.d.ts +22 -0
- package/dist/commands-v2/handlers/project.js +1035 -0
- package/dist/commands-v2/handlers/reset.d.ts +11 -0
- package/dist/commands-v2/handlers/reset.js +118 -0
- package/dist/commands-v2/handlers/session.d.ts +161 -0
- package/dist/commands-v2/handlers/session.js +805 -0
- package/dist/commands-v2/handlers/settings.d.ts +17 -0
- package/dist/commands-v2/handlers/settings.js +417 -0
- package/dist/commands-v2/handlers/tasks.d.ts +5 -0
- package/dist/commands-v2/handlers/tasks.js +36 -0
- package/dist/commands-v2/handlers/team.d.ts +9 -0
- package/dist/commands-v2/handlers/team.js +549 -0
- package/dist/commands-v2/handlers/terminals.d.ts +9 -0
- package/dist/commands-v2/handlers/terminals.js +34 -0
- package/dist/commands-v2/index.d.ts +14 -0
- package/dist/commands-v2/index.js +18 -0
- package/dist/commands-v2/registry.d.ts +52 -0
- package/dist/commands-v2/registry.js +114 -0
- package/dist/commands-v2/types.d.ts +153 -0
- package/dist/commands-v2/types.js +7 -0
- package/dist/commands.js +123 -7
- package/dist/compilr-diff-companion.vsix +0 -0
- package/dist/db/index.js +98 -4
- package/dist/db/repositories/document-repository.d.ts +2 -0
- package/dist/db/repositories/document-repository.js +5 -1
- package/dist/db/repositories/index.d.ts +2 -0
- package/dist/db/repositories/index.js +1 -0
- package/dist/db/repositories/plan-repository.d.ts +101 -0
- package/dist/db/repositories/plan-repository.js +275 -0
- package/dist/db/repositories/project-repository.d.ts +6 -0
- package/dist/db/repositories/project-repository.js +41 -0
- package/dist/db/repositories/work-item-repository.d.ts +15 -0
- package/dist/db/repositories/work-item-repository.js +69 -4
- package/dist/db/schema.d.ts +40 -3
- package/dist/db/schema.js +66 -3
- package/dist/episodes/index.d.ts +20 -0
- package/dist/episodes/index.js +27 -0
- package/dist/episodes/recorder.d.ts +51 -0
- package/dist/episodes/recorder.js +195 -0
- package/dist/episodes/significant-work.d.ts +21 -0
- package/dist/episodes/significant-work.js +56 -0
- package/dist/episodes/store.d.ts +38 -0
- package/dist/episodes/store.js +199 -0
- package/dist/episodes/types.d.ts +35 -0
- package/dist/episodes/types.js +6 -0
- package/dist/episodes/work-at-risk.d.ts +12 -0
- package/dist/episodes/work-at-risk.js +38 -0
- package/dist/episodes/work-summary-anchor.d.ts +23 -0
- package/dist/episodes/work-summary-anchor.js +73 -0
- package/dist/games/coins.d.ts +66 -0
- package/dist/games/coins.js +165 -0
- package/dist/games/game-base.d.ts +84 -0
- package/dist/games/game-base.js +204 -0
- package/dist/games/index.d.ts +16 -0
- package/dist/games/index.js +49 -0
- package/dist/games/scores.d.ts +69 -0
- package/dist/games/scores.js +191 -0
- package/dist/games/tetris/board.d.ts +59 -0
- package/dist/games/tetris/board.js +170 -0
- package/dist/games/tetris/index.d.ts +109 -0
- package/dist/games/tetris/index.js +610 -0
- package/dist/games/tetris/pieces.d.ts +44 -0
- package/dist/games/tetris/pieces.js +271 -0
- package/dist/games/tetris/renderer.d.ts +26 -0
- package/dist/games/tetris/renderer.js +77 -0
- package/dist/guide/guide-content.d.ts +23 -0
- package/dist/guide/guide-content.js +196 -0
- package/dist/guide/index.d.ts +8 -0
- package/dist/guide/index.js +7 -0
- package/dist/guide/shared-content.d.ts +37 -0
- package/dist/guide/shared-content.js +1272 -0
- package/dist/guide/tutorial-helpers.d.ts +57 -0
- package/dist/guide/tutorial-helpers.js +147 -0
- package/dist/handlers/ask-user-handlers.d.ts +32 -0
- package/dist/handlers/ask-user-handlers.js +104 -0
- package/dist/handlers/delegation-handlers.d.ts +34 -0
- package/dist/handlers/delegation-handlers.js +291 -0
- package/dist/handlers/permission-handler.d.ts +30 -0
- package/dist/handlers/permission-handler.js +205 -0
- package/dist/index.d.ts +11 -1
- package/dist/index.js +615 -179
- package/dist/input-handlers/index.d.ts +7 -0
- package/dist/input-handlers/index.js +7 -0
- package/dist/input-handlers/memory-handler.d.ts +26 -0
- package/dist/input-handlers/memory-handler.js +69 -0
- package/dist/models/index.d.ts +10 -0
- package/dist/models/index.js +12 -0
- package/dist/models/model-registry.d.ts +38 -0
- package/dist/models/model-registry.js +69 -0
- package/dist/models/model-tiers.d.ts +28 -0
- package/dist/models/model-tiers.js +71 -0
- package/dist/models/model-validation.d.ts +25 -0
- package/dist/models/model-validation.js +291 -0
- package/dist/models/ollama-models.d.ts +73 -0
- package/dist/models/ollama-models.js +178 -0
- package/dist/models/provider-types.d.ts +6 -0
- package/dist/models/provider-types.js +1 -0
- package/dist/models/providers.d.ts +35 -0
- package/dist/models/providers.js +58 -0
- package/dist/models/types.d.ts +4 -0
- package/dist/models/types.js +4 -0
- package/dist/multi-agent/activity.d.ts +21 -0
- package/dist/multi-agent/activity.js +34 -0
- package/dist/multi-agent/agent-selection.d.ts +55 -0
- package/dist/multi-agent/agent-selection.js +90 -0
- package/dist/multi-agent/artifacts.d.ts +197 -0
- package/dist/multi-agent/artifacts.js +379 -0
- package/dist/multi-agent/checkpointer.d.ts +138 -0
- package/dist/multi-agent/checkpointer.js +471 -0
- package/dist/multi-agent/collision-utils.d.ts +16 -0
- package/dist/multi-agent/collision-utils.js +28 -0
- package/dist/multi-agent/context-resolver.d.ts +97 -0
- package/dist/multi-agent/context-resolver.js +316 -0
- package/dist/multi-agent/custom-agents.d.ts +83 -0
- package/dist/multi-agent/custom-agents.js +227 -0
- package/dist/multi-agent/delegation-tracker.d.ts +157 -0
- package/dist/multi-agent/delegation-tracker.js +243 -0
- package/dist/multi-agent/file-lock-hook.d.ts +29 -0
- package/dist/multi-agent/file-lock-hook.js +97 -0
- package/dist/multi-agent/file-locks.d.ts +58 -0
- package/dist/multi-agent/file-locks.js +194 -0
- package/dist/multi-agent/index.d.ts +24 -0
- package/dist/multi-agent/index.js +30 -0
- package/dist/multi-agent/mention-parser.d.ts +64 -0
- package/dist/multi-agent/mention-parser.js +146 -0
- package/dist/multi-agent/notification-manager.d.ts +84 -0
- package/dist/multi-agent/notification-manager.js +224 -0
- package/dist/multi-agent/pending-requests.d.ts +122 -0
- package/dist/multi-agent/pending-requests.js +155 -0
- package/dist/multi-agent/session-registry.d.ts +139 -0
- package/dist/multi-agent/session-registry.js +514 -0
- package/dist/multi-agent/shared-context.d.ts +293 -0
- package/dist/multi-agent/shared-context.js +671 -0
- package/dist/multi-agent/skill-requirements.d.ts +66 -0
- package/dist/multi-agent/skill-requirements.js +178 -0
- package/dist/multi-agent/task-assignment.d.ts +69 -0
- package/dist/multi-agent/task-assignment.js +123 -0
- package/dist/multi-agent/task-suggestion.d.ts +31 -0
- package/dist/multi-agent/task-suggestion.js +72 -0
- package/dist/multi-agent/team-agent.d.ts +201 -0
- package/dist/multi-agent/team-agent.js +488 -0
- package/dist/multi-agent/team.d.ts +286 -0
- package/dist/multi-agent/team.js +610 -0
- package/dist/multi-agent/tool-config.d.ts +110 -0
- package/dist/multi-agent/tool-config.js +661 -0
- package/dist/multi-agent/types.d.ts +211 -0
- package/dist/multi-agent/types.js +617 -0
- package/dist/prompts/plan-mode-prompt.d.ts +11 -0
- package/dist/prompts/plan-mode-prompt.js +95 -0
- package/dist/repl-helpers.d.ts +63 -0
- package/dist/repl-helpers.js +319 -0
- package/dist/repl-v2.d.ts +554 -0
- package/dist/repl-v2.js +3286 -0
- package/dist/session/index.d.ts +6 -0
- package/dist/session/index.js +6 -0
- package/dist/session/project-session-manager.d.ts +158 -0
- package/dist/session/project-session-manager.js +650 -0
- package/dist/settings/index.d.ts +156 -13
- package/dist/settings/index.js +377 -24
- package/dist/settings/mcp-config.d.ts +76 -0
- package/dist/settings/mcp-config.js +143 -0
- package/dist/settings/paths.d.ts +114 -0
- package/dist/settings/paths.js +270 -0
- package/dist/shared-handlers.d.ts +62 -0
- package/dist/shared-handlers.js +48 -0
- package/dist/system-prompt/builder.d.ts +5 -0
- package/dist/system-prompt/builder.js +4 -0
- package/dist/system-prompt/index.d.ts +18 -0
- package/dist/system-prompt/index.js +18 -0
- package/dist/system-prompt/modules.d.ts +5 -0
- package/dist/system-prompt/modules.js +4 -0
- package/dist/tabbed-menu.js +2 -1
- package/dist/templates/compilr-md-import.d.ts +16 -0
- package/dist/templates/compilr-md-import.js +241 -0
- package/dist/templates/compilr-md.js +10 -58
- package/dist/templates/config-json.d.ts +1 -25
- package/dist/templates/index.d.ts +2 -0
- package/dist/templates/index.js +35 -75
- package/dist/themes/colors.js +3 -1
- package/dist/themes/registry.d.ts +5 -36
- package/dist/themes/registry.js +11 -95
- package/dist/themes/types.d.ts +3 -38
- package/dist/themes/types.js +2 -2
- package/dist/tool-names.d.ts +108 -0
- package/dist/tool-names.js +227 -0
- package/dist/tools/anchor-tools.d.ts +31 -0
- package/dist/tools/anchor-tools.js +255 -0
- package/dist/tools/artifact-tools.d.ts +42 -0
- package/dist/tools/artifact-tools.js +328 -0
- package/dist/tools/ask-user-simple.d.ts +1 -1
- package/dist/tools/ask-user-simple.js +2 -1
- package/dist/tools/ask-user.d.ts +1 -1
- package/dist/tools/ask-user.js +2 -1
- package/dist/tools/backlog-wrappers.d.ts +56 -0
- package/dist/tools/backlog-wrappers.js +353 -0
- package/dist/tools/backlog.d.ts +2 -2
- package/dist/tools/backlog.js +2 -2
- package/dist/tools/db-tools.d.ts +12 -0
- package/dist/tools/db-tools.js +14 -0
- package/dist/tools/delegate-background.d.ts +27 -0
- package/dist/tools/delegate-background.js +115 -0
- package/dist/tools/delegate.d.ts +22 -0
- package/dist/tools/delegate.js +97 -0
- package/dist/tools/delegation-status.d.ts +16 -0
- package/dist/tools/delegation-status.js +128 -0
- package/dist/tools/document-db.d.ts +43 -0
- package/dist/tools/document-db.js +220 -0
- package/dist/tools/guide-tool.d.ts +12 -0
- package/dist/tools/guide-tool.js +59 -0
- package/dist/tools/handoff.d.ts +25 -0
- package/dist/tools/handoff.js +99 -0
- package/dist/tools/meta-tools.d.ts +26 -0
- package/dist/tools/meta-tools.js +47 -0
- package/dist/tools/plan-tools.d.ts +54 -0
- package/dist/tools/plan-tools.js +338 -0
- package/dist/tools/platform-adapter.d.ts +29 -0
- package/dist/tools/platform-adapter.js +394 -0
- package/dist/tools/project-db.d.ts +34 -0
- package/dist/tools/project-db.js +39 -0
- package/dist/tools/recall-work-tool.d.ts +18 -0
- package/dist/tools/recall-work-tool.js +82 -0
- package/dist/tools/workitem-db.d.ts +135 -0
- package/dist/tools/workitem-db.js +730 -0
- package/dist/tools.d.ts +67 -2
- package/dist/tools.js +238 -38
- package/dist/ui/ask-user-overlay.d.ts +2 -2
- package/dist/ui/ask-user-overlay.js +443 -535
- package/dist/ui/ask-user-simple-overlay.d.ts +2 -2
- package/dist/ui/ask-user-simple-overlay.js +182 -209
- package/dist/ui/autocomplete-controller.d.ts +42 -0
- package/dist/ui/autocomplete-controller.js +384 -0
- package/dist/ui/base/index.d.ts +26 -0
- package/dist/ui/base/index.js +33 -0
- package/dist/ui/base/inline-overlay-utils.d.ts +217 -0
- package/dist/ui/base/inline-overlay-utils.js +320 -0
- package/dist/ui/base/inline-overlay.d.ts +159 -0
- package/dist/ui/base/inline-overlay.js +257 -0
- package/dist/ui/base/key-utils.d.ts +15 -0
- package/dist/ui/base/key-utils.js +30 -0
- package/dist/ui/base/overlay-base-v2.d.ts +203 -0
- package/dist/ui/base/overlay-base-v2.js +260 -0
- package/dist/ui/base/overlay-base.d.ts +156 -0
- package/dist/ui/base/overlay-base.js +238 -0
- package/dist/ui/base/overlay-lifecycle.d.ts +65 -0
- package/dist/ui/base/overlay-lifecycle.js +159 -0
- package/dist/ui/base/overlay-types.d.ts +185 -0
- package/dist/ui/base/overlay-types.js +7 -0
- package/dist/ui/base/render-utils.d.ts +27 -0
- package/dist/ui/base/render-utils.js +36 -0
- package/dist/ui/base/screen-stack.d.ts +148 -0
- package/dist/ui/base/screen-stack.js +184 -0
- package/dist/ui/base/tabbed-list-overlay-v2.d.ts +118 -0
- package/dist/ui/base/tabbed-list-overlay-v2.js +335 -0
- package/dist/ui/base/tabbed-list-overlay.d.ts +153 -0
- package/dist/ui/base/tabbed-list-overlay.js +369 -0
- package/dist/ui/constants/labels.d.ts +14 -0
- package/dist/ui/constants/labels.js +51 -0
- package/dist/ui/conversation-store.d.ts +55 -0
- package/dist/ui/conversation-store.js +107 -0
- package/dist/ui/conversation.d.ts +75 -4
- package/dist/ui/conversation.js +376 -165
- package/dist/ui/diff.d.ts +7 -1
- package/dist/ui/diff.js +85 -48
- package/dist/ui/ephemeral.d.ts +1 -1
- package/dist/ui/ephemeral.js +4 -10
- package/dist/ui/features/index.d.ts +34 -0
- package/dist/ui/features/index.js +34 -0
- package/dist/ui/features/input-feature.d.ts +85 -0
- package/dist/ui/features/input-feature.js +238 -0
- package/dist/ui/features/list-feature.d.ts +155 -0
- package/dist/ui/features/list-feature.js +244 -0
- package/dist/ui/features/pagination-feature.d.ts +154 -0
- package/dist/ui/features/pagination-feature.js +238 -0
- package/dist/ui/features/search-feature.d.ts +148 -0
- package/dist/ui/features/search-feature.js +185 -0
- package/dist/ui/features/tab-feature.d.ts +194 -0
- package/dist/ui/features/tab-feature.js +307 -0
- package/dist/ui/file-autocomplete.d.ts +24 -0
- package/dist/ui/file-autocomplete.js +56 -0
- package/dist/ui/footer-renderer.d.ts +69 -0
- package/dist/ui/footer-renderer.js +431 -0
- package/dist/ui/footer.d.ts +181 -7
- package/dist/ui/footer.js +523 -74
- package/dist/ui/guardrail-overlay.d.ts +29 -0
- package/dist/ui/guardrail-overlay.js +145 -0
- package/dist/ui/index.d.ts +1 -1
- package/dist/ui/index.js +1 -3
- package/dist/ui/input-controller.d.ts +51 -0
- package/dist/ui/input-controller.js +176 -0
- package/dist/ui/input-prompt.d.ts +135 -33
- package/dist/ui/input-prompt.js +728 -337
- package/dist/ui/iteration-limit-overlay.d.ts +2 -2
- package/dist/ui/iteration-limit-overlay.js +92 -128
- package/dist/ui/keyboard-handler.d.ts +57 -0
- package/dist/ui/keyboard-handler.js +557 -0
- package/dist/ui/keys-overlay.d.ts +1 -0
- package/dist/ui/keys-overlay.js +203 -141
- package/dist/ui/line-utils.d.ts +88 -0
- package/dist/ui/line-utils.js +150 -0
- package/dist/ui/live-region-facade.d.ts +42 -0
- package/dist/ui/live-region-facade.js +205 -0
- package/dist/ui/live-region.d.ts +157 -0
- package/dist/ui/live-region.js +379 -0
- package/dist/ui/mascot/expressions.d.ts +32 -0
- package/dist/ui/mascot/expressions.js +213 -0
- package/dist/ui/mascot/index.d.ts +8 -0
- package/dist/ui/mascot/index.js +8 -0
- package/dist/ui/mascot/renderer.d.ts +19 -0
- package/dist/ui/mascot/renderer.js +132 -0
- package/dist/ui/overlay/data/tutorial-content.d.ts +9 -0
- package/dist/ui/overlay/data/tutorial-content.js +9 -0
- package/dist/ui/overlay/data/tutorial-registry.d.ts +12 -0
- package/dist/ui/overlay/data/tutorial-registry.js +116 -0
- package/dist/ui/overlay/data/tutorial-types.d.ts +35 -0
- package/dist/ui/overlay/data/tutorial-types.js +6 -0
- package/dist/ui/overlay/data/tutorials/basics/first-conversation.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/basics/first-conversation.js +220 -0
- package/dist/ui/overlay/data/tutorials/basics/first-project.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/basics/first-project.js +284 -0
- package/dist/ui/overlay/data/tutorials/basics/navigation.d.ts +8 -0
- package/dist/ui/overlay/data/tutorials/basics/navigation.js +22 -0
- package/dist/ui/overlay/data/tutorials/basics/welcome.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/basics/welcome.js +174 -0
- package/dist/ui/overlay/data/tutorials/config/context-management.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/config/context-management.js +158 -0
- package/dist/ui/overlay/data/tutorials/config/mcp-servers.d.ts +8 -0
- package/dist/ui/overlay/data/tutorials/config/mcp-servers.js +155 -0
- package/dist/ui/overlay/data/tutorials/config/model-selection.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/config/model-selection.js +162 -0
- package/dist/ui/overlay/data/tutorials/config/permissions-safety.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/config/permissions-safety.js +163 -0
- package/dist/ui/overlay/data/tutorials/config/settings-config.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/config/settings-config.js +166 -0
- package/dist/ui/overlay/data/tutorials/planning/arch.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/planning/arch.js +168 -0
- package/dist/ui/overlay/data/tutorials/planning/backlog.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/planning/backlog.js +103 -0
- package/dist/ui/overlay/data/tutorials/planning/build.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/planning/build.js +173 -0
- package/dist/ui/overlay/data/tutorials/planning/design.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/planning/design.js +205 -0
- package/dist/ui/overlay/data/tutorials/planning/docs.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/planning/docs.js +143 -0
- package/dist/ui/overlay/data/tutorials/planning/prd.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/planning/prd.js +173 -0
- package/dist/ui/overlay/data/tutorials/planning/scaffold.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/planning/scaffold.js +164 -0
- package/dist/ui/overlay/data/tutorials/planning/sketch.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/planning/sketch.js +58 -0
- package/dist/ui/overlay/data/tutorials/projects/anchors.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/projects/anchors.js +248 -0
- package/dist/ui/overlay/data/tutorials/projects/import-project.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/projects/import-project.js +172 -0
- package/dist/ui/overlay/data/tutorials/projects/managing-projects.d.ts +8 -0
- package/dist/ui/overlay/data/tutorials/projects/managing-projects.js +212 -0
- package/dist/ui/overlay/data/tutorials/projects/new-project.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/projects/new-project.js +251 -0
- package/dist/ui/overlay/data/tutorials/projects/session-management.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/projects/session-management.js +169 -0
- package/dist/ui/overlay/data/tutorials/teams/background-execution.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/teams/background-execution.js +171 -0
- package/dist/ui/overlay/data/tutorials/teams/multi-terminal.d.ts +8 -0
- package/dist/ui/overlay/data/tutorials/teams/multi-terminal.js +147 -0
- package/dist/ui/overlay/data/tutorials/teams/task-assignment.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/teams/task-assignment.js +204 -0
- package/dist/ui/overlay/data/tutorials/teams/team-overview.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/teams/team-overview.js +165 -0
- package/dist/ui/overlay/data/tutorials/teams/working-with-agents.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/teams/working-with-agents.js +172 -0
- package/dist/ui/overlay/impl/agents-overlay-v2.d.ts +45 -0
- package/dist/ui/overlay/impl/agents-overlay-v2.js +814 -0
- package/dist/ui/overlay/impl/anchors-overlay-v2.d.ts +47 -0
- package/dist/ui/overlay/impl/anchors-overlay-v2.js +749 -0
- package/dist/ui/overlay/impl/arch-type-overlay-v2.d.ts +37 -0
- package/dist/ui/overlay/impl/arch-type-overlay-v2.js +240 -0
- package/dist/ui/overlay/impl/artifact-detail-overlay-v2.d.ts +43 -0
- package/dist/ui/overlay/impl/artifact-detail-overlay-v2.js +232 -0
- package/dist/ui/overlay/impl/artifact-overlay-v2.d.ts +40 -0
- package/dist/ui/overlay/impl/artifact-overlay-v2.js +115 -0
- package/dist/ui/overlay/impl/ask-user-overlay-v2.d.ts +72 -0
- package/dist/ui/overlay/impl/ask-user-overlay-v2.js +581 -0
- package/dist/ui/overlay/impl/ask-user-simple-overlay-v2.d.ts +46 -0
- package/dist/ui/overlay/impl/ask-user-simple-overlay-v2.js +204 -0
- package/dist/ui/overlay/impl/background-overlay-v2.d.ts +40 -0
- package/dist/ui/overlay/impl/background-overlay-v2.js +147 -0
- package/dist/ui/overlay/impl/backlog-overlay-v2.d.ts +52 -0
- package/dist/ui/overlay/impl/backlog-overlay-v2.js +681 -0
- package/dist/ui/overlay/impl/changelog-overlay-v2.d.ts +44 -0
- package/dist/ui/overlay/impl/changelog-overlay-v2.js +165 -0
- package/dist/ui/overlay/impl/commands-overlay-v2.d.ts +33 -0
- package/dist/ui/overlay/impl/commands-overlay-v2.js +439 -0
- package/dist/ui/overlay/impl/config-overlay-v2.d.ts +111 -0
- package/dist/ui/overlay/impl/config-overlay-v2.js +718 -0
- package/dist/ui/overlay/impl/custom-agent-form-overlay-v2.d.ts +83 -0
- package/dist/ui/overlay/impl/custom-agent-form-overlay-v2.js +711 -0
- package/dist/ui/overlay/impl/dashboard-overlay-v2.d.ts +57 -0
- package/dist/ui/overlay/impl/dashboard-overlay-v2.js +382 -0
- package/dist/ui/overlay/impl/delegations-overlay-v2.d.ts +28 -0
- package/dist/ui/overlay/impl/delegations-overlay-v2.js +279 -0
- package/dist/ui/overlay/impl/docs-overlay-v2.d.ts +45 -0
- package/dist/ui/overlay/impl/docs-overlay-v2.js +117 -0
- package/dist/ui/overlay/impl/document-detail-overlay-v2.d.ts +84 -0
- package/dist/ui/overlay/impl/document-detail-overlay-v2.js +1112 -0
- package/dist/ui/overlay/impl/filter-overlay-v2.d.ts +41 -0
- package/dist/ui/overlay/impl/filter-overlay-v2.js +110 -0
- package/dist/ui/overlay/impl/games-overlay-v2.d.ts +31 -0
- package/dist/ui/overlay/impl/games-overlay-v2.js +135 -0
- package/dist/ui/overlay/impl/guardrail-overlay-v2.d.ts +43 -0
- package/dist/ui/overlay/impl/guardrail-overlay-v2.js +114 -0
- package/dist/ui/overlay/impl/help-overlay-v2.d.ts +57 -0
- package/dist/ui/overlay/impl/help-overlay-v2.js +287 -0
- package/dist/ui/overlay/impl/init-setup-overlay-v2.d.ts +25 -0
- package/dist/ui/overlay/impl/init-setup-overlay-v2.js +97 -0
- package/dist/ui/overlay/impl/iteration-limit-overlay-v2.d.ts +35 -0
- package/dist/ui/overlay/impl/iteration-limit-overlay-v2.js +105 -0
- package/dist/ui/overlay/impl/keys-overlay-v2.d.ts +41 -0
- package/dist/ui/overlay/impl/keys-overlay-v2.js +248 -0
- package/dist/ui/overlay/impl/login-overlay-v2.d.ts +49 -0
- package/dist/ui/overlay/impl/login-overlay-v2.js +277 -0
- package/dist/ui/overlay/impl/mascot-overlay-v2.d.ts +41 -0
- package/dist/ui/overlay/impl/mascot-overlay-v2.js +138 -0
- package/dist/ui/overlay/impl/mcp-overlay-v2.d.ts +63 -0
- package/dist/ui/overlay/impl/mcp-overlay-v2.js +907 -0
- package/dist/ui/overlay/impl/model-overlay-v2.d.ts +93 -0
- package/dist/ui/overlay/impl/model-overlay-v2.js +1143 -0
- package/dist/ui/overlay/impl/model-warning-overlay-v2.d.ts +46 -0
- package/dist/ui/overlay/impl/model-warning-overlay-v2.js +132 -0
- package/dist/ui/overlay/impl/new-overlay-v2.d.ts +108 -0
- package/dist/ui/overlay/impl/new-overlay-v2.js +1243 -0
- package/dist/ui/overlay/impl/notifications-overlay-v2.d.ts +20 -0
- package/dist/ui/overlay/impl/notifications-overlay-v2.js +116 -0
- package/dist/ui/overlay/impl/onboarding-wizard-overlay-v2.d.ts +76 -0
- package/dist/ui/overlay/impl/onboarding-wizard-overlay-v2.js +728 -0
- package/dist/ui/overlay/impl/pending-overlay-v2.d.ts +51 -0
- package/dist/ui/overlay/impl/pending-overlay-v2.js +445 -0
- package/dist/ui/overlay/impl/permission-overlay-v2.d.ts +36 -0
- package/dist/ui/overlay/impl/permission-overlay-v2.js +380 -0
- package/dist/ui/overlay/impl/permissions-overlay-v2.d.ts +85 -0
- package/dist/ui/overlay/impl/permissions-overlay-v2.js +820 -0
- package/dist/ui/overlay/impl/plan-approval-overlay-v2.d.ts +35 -0
- package/dist/ui/overlay/impl/plan-approval-overlay-v2.js +181 -0
- package/dist/ui/overlay/impl/project-edit-overlay-v2.d.ts +36 -0
- package/dist/ui/overlay/impl/project-edit-overlay-v2.js +195 -0
- package/dist/ui/overlay/impl/projects-overlay-v2.d.ts +37 -0
- package/dist/ui/overlay/impl/projects-overlay-v2.js +733 -0
- package/dist/ui/overlay/impl/reset-overlay-v2.d.ts +39 -0
- package/dist/ui/overlay/impl/reset-overlay-v2.js +107 -0
- package/dist/ui/overlay/impl/resume-overlay-v2.d.ts +60 -0
- package/dist/ui/overlay/impl/resume-overlay-v2.js +414 -0
- package/dist/ui/overlay/impl/session-mode-overlay-v2.d.ts +43 -0
- package/dist/ui/overlay/impl/session-mode-overlay-v2.js +124 -0
- package/dist/ui/overlay/impl/tasks-overlay-v2.d.ts +28 -0
- package/dist/ui/overlay/impl/tasks-overlay-v2.js +283 -0
- package/dist/ui/overlay/impl/team-overlay-v2.d.ts +86 -0
- package/dist/ui/overlay/impl/team-overlay-v2.js +692 -0
- package/dist/ui/overlay/impl/terminals-overlay-v2.d.ts +26 -0
- package/dist/ui/overlay/impl/terminals-overlay-v2.js +217 -0
- package/dist/ui/overlay/impl/theme-overlay-v2.d.ts +42 -0
- package/dist/ui/overlay/impl/theme-overlay-v2.js +135 -0
- package/dist/ui/overlay/impl/tools-overlay-v2.d.ts +47 -0
- package/dist/ui/overlay/impl/tools-overlay-v2.js +214 -0
- package/dist/ui/overlay/impl/tutorial-overlay-v2.d.ts +45 -0
- package/dist/ui/overlay/impl/tutorial-overlay-v2.js +212 -0
- package/dist/ui/overlay/impl/workflow-overlay-v2.d.ts +80 -0
- package/dist/ui/overlay/impl/workflow-overlay-v2.js +641 -0
- package/dist/ui/overlay/index.d.ts +52 -0
- package/dist/ui/overlay/index.js +54 -0
- package/dist/ui/overlay/key-utils.d.ts +6 -0
- package/dist/ui/overlay/key-utils.js +6 -0
- package/dist/ui/overlay/types.d.ts +140 -0
- package/dist/ui/overlay/types.js +22 -0
- package/dist/ui/overlay-manager.d.ts +43 -0
- package/dist/ui/overlay-manager.js +238 -0
- package/dist/ui/overlays.d.ts +0 -4
- package/dist/ui/overlays.js +4 -460
- package/dist/ui/permission-overlay.d.ts +1 -1
- package/dist/ui/permission-overlay.js +189 -300
- package/dist/ui/providers/types.d.ts +178 -0
- package/dist/ui/providers/types.js +9 -0
- package/dist/ui/render-modes.d.ts +36 -0
- package/dist/ui/render-modes.js +44 -0
- package/dist/ui/startup-menu.d.ts +36 -0
- package/dist/ui/startup-menu.js +236 -0
- package/dist/ui/status-bar-controller.d.ts +33 -0
- package/dist/ui/status-bar-controller.js +99 -0
- package/dist/ui/subagent-renderer.d.ts +117 -0
- package/dist/ui/subagent-renderer.js +318 -0
- package/dist/ui/terminal-autocomplete-utils.d.ts +23 -0
- package/dist/ui/terminal-autocomplete-utils.js +83 -0
- package/dist/ui/terminal-codes.d.ts +94 -0
- package/dist/ui/terminal-codes.js +124 -0
- package/dist/ui/terminal-line-builders.d.ts +17 -0
- package/dist/ui/terminal-line-builders.js +42 -0
- package/dist/ui/terminal-render-item.d.ts +16 -0
- package/dist/ui/terminal-render-item.js +267 -0
- package/dist/ui/terminal-renderer.d.ts +220 -0
- package/dist/ui/terminal-renderer.js +750 -0
- package/dist/ui/terminal-types.d.ts +179 -0
- package/dist/ui/terminal-types.js +34 -0
- package/dist/ui/terminal-ui.d.ts +331 -0
- package/dist/ui/terminal-ui.js +819 -0
- package/dist/ui/terminal.d.ts +20 -0
- package/dist/ui/terminal.js +72 -0
- package/dist/ui/todo-zone.d.ts +19 -1
- package/dist/ui/todo-zone.js +124 -38
- package/dist/ui/tool-formatters.d.ts +16 -0
- package/dist/ui/tool-formatters.js +1027 -0
- package/dist/ui/turn-metrics.d.ts +56 -0
- package/dist/ui/turn-metrics.js +75 -0
- package/dist/ui/types.d.ts +28 -0
- package/dist/ui/types.js +1 -0
- package/dist/ui/vscode-diff-ipc.d.ts +102 -0
- package/dist/ui/vscode-diff-ipc.js +385 -0
- package/dist/utils/credentials.d.ts +24 -5
- package/dist/utils/credentials.js +123 -9
- package/dist/utils/debug-log.d.ts +28 -0
- package/dist/utils/debug-log.js +57 -0
- package/dist/utils/format-tokens.d.ts +13 -0
- package/dist/utils/format-tokens.js +18 -0
- package/dist/utils/git-config.d.ts +26 -0
- package/dist/utils/git-config.js +54 -0
- package/dist/utils/message-utils.d.ts +61 -0
- package/dist/utils/message-utils.js +72 -0
- package/dist/utils/model-tiers.d.ts +8 -1
- package/dist/utils/model-tiers.js +39 -17
- package/dist/utils/open-browser.d.ts +5 -0
- package/dist/utils/open-browser.js +32 -0
- package/dist/utils/path-safety.d.ts +56 -0
- package/dist/utils/path-safety.js +240 -0
- package/dist/utils/project-detection.d.ts +58 -0
- package/dist/utils/project-detection.js +424 -0
- package/dist/utils/project-memory.js +2 -1
- package/dist/utils/project-status.d.ts +2 -2
- package/dist/utils/startup-perf.d.ts +18 -0
- package/dist/utils/startup-perf.js +60 -0
- package/dist/utils/token-tracker.d.ts +62 -0
- package/dist/utils/token-tracker.js +150 -0
- package/dist/utils/token-types.d.ts +23 -0
- package/dist/utils/token-types.js +18 -0
- package/dist/utils/types/config-types.d.ts +32 -0
- package/dist/utils/types/config-types.js +8 -0
- package/dist/utils/update-checker.d.ts +28 -0
- package/dist/utils/update-checker.js +106 -0
- package/dist/utils/version.d.ts +7 -0
- package/dist/utils/version.js +10 -0
- package/dist/utils/vscode-detect.d.ts +39 -0
- package/dist/utils/vscode-detect.js +137 -0
- package/dist/workflow/guided-mode-injector.d.ts +42 -0
- package/dist/workflow/guided-mode-injector.js +191 -0
- package/dist/workflow/index.d.ts +8 -0
- package/dist/workflow/index.js +8 -0
- package/dist/workflow/step-criteria.d.ts +62 -0
- package/dist/workflow/step-criteria.js +150 -0
- package/dist/workflow/step-tracker.d.ts +92 -0
- package/dist/workflow/step-tracker.js +141 -0
- package/package.json +32 -12
- package/dist/index.old.d.ts +0 -7
- package/dist/index.old.js +0 -1014
- package/dist/repl.d.ts +0 -121
- package/dist/repl.js +0 -1878
- package/dist/templates/claude-md.d.ts +0 -7
- package/dist/templates/claude-md.js +0 -189
- package/dist/test-autocomplete.d.ts +0 -7
- package/dist/test-autocomplete.js +0 -85
- package/dist/test-tabbed-menu.d.ts +0 -7
- package/dist/test-tabbed-menu.js +0 -25
- package/dist/tool-selector.d.ts +0 -71
- package/dist/tool-selector.js +0 -184
- package/dist/ui/agents-overlay.d.ts +0 -12
- package/dist/ui/agents-overlay.js +0 -501
- package/dist/ui/arch-type-overlay.d.ts +0 -20
- package/dist/ui/arch-type-overlay.js +0 -229
- package/dist/ui/backlog-overlay.d.ts +0 -17
- package/dist/ui/backlog-overlay.js +0 -786
- package/dist/ui/commands-overlay.d.ts +0 -11
- package/dist/ui/commands-overlay.js +0 -410
- package/dist/ui/config-overlay.d.ts +0 -34
- package/dist/ui/config-overlay.js +0 -977
- package/dist/ui/init-overlay.d.ts +0 -24
- package/dist/ui/init-overlay.js +0 -525
- package/dist/ui/input-prompt-v2.d.ts +0 -179
- package/dist/ui/input-prompt-v2.js +0 -991
- package/dist/ui/model-warning-overlay.d.ts +0 -30
- package/dist/ui/model-warning-overlay.js +0 -171
- package/dist/ui/tools-overlay.d.ts +0 -26
- package/dist/ui/tools-overlay.js +0 -278
- package/dist/ui/tutorial-overlay.d.ts +0 -10
- package/dist/ui/tutorial-overlay.js +0 -936
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Mascot Renderer
|
|
3
|
+
*
|
|
4
|
+
* Handles rendering the mascot alongside the logo and applying colors.
|
|
5
|
+
*/
|
|
6
|
+
import { getStyles } from '../../themes/index.js';
|
|
7
|
+
import { getExpressionForSetting } from './expressions.js';
|
|
8
|
+
import { getTerminalWidth } from '../terminal.js';
|
|
9
|
+
function stripAnsi(str) {
|
|
10
|
+
// eslint-disable-next-line no-control-regex
|
|
11
|
+
return str.replace(/\x1B\[[0-9;]*[a-zA-Z]/g, '');
|
|
12
|
+
}
|
|
13
|
+
// The compilr logo (6 lines to match mascot height)
|
|
14
|
+
const LOGO_LINES = [
|
|
15
|
+
" ___ ___ _ __ ___ _ __ (_) |_ __",
|
|
16
|
+
" / __|/ _ \\| '_ ` _ \\| '_ \\| | | '__|",
|
|
17
|
+
" | (__| (_) | | | | | | |_) | | | |",
|
|
18
|
+
" \\___|\\___/|_| |_| |_| .__/|_|_|_|",
|
|
19
|
+
" | | .dev",
|
|
20
|
+
" |_|",
|
|
21
|
+
];
|
|
22
|
+
/**
|
|
23
|
+
* Combine two sets of lines horizontally with a gap
|
|
24
|
+
*/
|
|
25
|
+
export function combineHorizontally(left, right, gap) {
|
|
26
|
+
const maxLines = Math.max(left.length, right.length);
|
|
27
|
+
const leftWidth = Math.max(...left.map((l) => l.length));
|
|
28
|
+
const result = [];
|
|
29
|
+
for (let i = 0; i < maxLines; i++) {
|
|
30
|
+
const leftLine = (left[i] || '').padEnd(leftWidth);
|
|
31
|
+
const rightLine = right[i] || '';
|
|
32
|
+
result.push(leftLine + ' '.repeat(gap) + rightLine);
|
|
33
|
+
}
|
|
34
|
+
return result;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Render mascot with logo side by side
|
|
38
|
+
* Returns the combined lines ready for output
|
|
39
|
+
*
|
|
40
|
+
* @param mascotSetting - The mascot setting (expression or 'none'/'random')
|
|
41
|
+
* @param version - Version string to append to logo
|
|
42
|
+
* @param projectName - Optional active project name to show
|
|
43
|
+
*/
|
|
44
|
+
export function renderMascotWithLogo(mascotSetting, version, projectName, highlights) {
|
|
45
|
+
const s = getStyles();
|
|
46
|
+
// Get mascot expression (or null for 'none')
|
|
47
|
+
const mascotLines = getExpressionForSetting(mascotSetting);
|
|
48
|
+
// Create logo lines with version
|
|
49
|
+
const logoWithVersion = [...LOGO_LINES];
|
|
50
|
+
logoWithVersion[5] = ` |_| v${version}`;
|
|
51
|
+
// Add tagline and project info below logo
|
|
52
|
+
const tagline = '@compilr-dev/cli - AI-powered coding assistant';
|
|
53
|
+
let result;
|
|
54
|
+
if (mascotLines) {
|
|
55
|
+
// Combine mascot + logo horizontally (5 space gap)
|
|
56
|
+
result = combineHorizontally(mascotLines, logoWithVersion, 5);
|
|
57
|
+
// Add empty line and tagline
|
|
58
|
+
result.push('');
|
|
59
|
+
result.push(tagline);
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
// No mascot - just show logo
|
|
63
|
+
result = [...logoWithVersion];
|
|
64
|
+
result.push('');
|
|
65
|
+
result.push(tagline);
|
|
66
|
+
}
|
|
67
|
+
// Add project info if available
|
|
68
|
+
if (projectName) {
|
|
69
|
+
result.push('');
|
|
70
|
+
result.push(`Project: ${projectName}`);
|
|
71
|
+
}
|
|
72
|
+
// Apply colors: mascot gets secondary color, logo gets accent
|
|
73
|
+
const colored = result.map((line, index) => {
|
|
74
|
+
if (!mascotLines) {
|
|
75
|
+
// No mascot - color the logo with accent
|
|
76
|
+
if (index < logoWithVersion.length) {
|
|
77
|
+
return s.primary(line);
|
|
78
|
+
}
|
|
79
|
+
// Tagline and project info get muted color
|
|
80
|
+
if (line.startsWith('Project:')) {
|
|
81
|
+
return s.muted(line);
|
|
82
|
+
}
|
|
83
|
+
return s.muted(line);
|
|
84
|
+
}
|
|
85
|
+
// With mascot - split the line at the gap point
|
|
86
|
+
const mascotWidth = Math.max(...mascotLines.map((l) => l.length));
|
|
87
|
+
const gap = 5;
|
|
88
|
+
if (index < mascotLines.length) {
|
|
89
|
+
// Lines that have mascot + logo
|
|
90
|
+
const mascotPart = line.slice(0, mascotWidth);
|
|
91
|
+
const logoPart = line.slice(mascotWidth + gap);
|
|
92
|
+
return s.secondary(mascotPart) + ' '.repeat(gap) + s.primary(logoPart);
|
|
93
|
+
}
|
|
94
|
+
else if (line.startsWith('Project:')) {
|
|
95
|
+
return s.muted(line);
|
|
96
|
+
}
|
|
97
|
+
else if (line === tagline) {
|
|
98
|
+
return s.muted(line);
|
|
99
|
+
}
|
|
100
|
+
return line;
|
|
101
|
+
});
|
|
102
|
+
// Append "What's New" highlights column (wide terminals only)
|
|
103
|
+
if (highlights && highlights.length > 0) {
|
|
104
|
+
const termWidth = getTerminalWidth();
|
|
105
|
+
const baseWidth = Math.max(...colored.map((l) => stripAnsi(l).length));
|
|
106
|
+
const highlightsGap = 3;
|
|
107
|
+
const minHighlightsCol = 25;
|
|
108
|
+
if (termWidth >= baseWidth + highlightsGap + minHighlightsCol) {
|
|
109
|
+
// Build styled highlights column (6 lines to match mascot height)
|
|
110
|
+
const hlLines = [];
|
|
111
|
+
hlLines.push(s.primaryBold("[^_^] What's New"));
|
|
112
|
+
hlLines.push(s.muted('───────────────────'));
|
|
113
|
+
for (const h of highlights.slice(0, 3)) {
|
|
114
|
+
hlLines.push(`${s.secondary('+')} ${h}`);
|
|
115
|
+
}
|
|
116
|
+
hlLines.push(s.muted('/changelog for more'));
|
|
117
|
+
while (hlLines.length < 6) {
|
|
118
|
+
hlLines.push('');
|
|
119
|
+
}
|
|
120
|
+
// Append highlights to the first 6 lines of the colored result
|
|
121
|
+
return colored.map((line, i) => {
|
|
122
|
+
if (i < hlLines.length && hlLines[i]) {
|
|
123
|
+
const visualLen = stripAnsi(line).length;
|
|
124
|
+
const pad = Math.max(1, baseWidth - visualLen + highlightsGap);
|
|
125
|
+
return line + ' '.repeat(pad) + hlLines[i];
|
|
126
|
+
}
|
|
127
|
+
return line;
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
return colored;
|
|
132
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tutorial Content
|
|
3
|
+
*
|
|
4
|
+
* Re-exports the tutorial registry for use by tutorial-overlay-v2.
|
|
5
|
+
* This file maintains backward compatibility while the actual content
|
|
6
|
+
* is now organized in separate files under ./tutorials/.
|
|
7
|
+
*/
|
|
8
|
+
export type { TutorialPage, TutorialItem, TutorialTab } from './tutorial-types.js';
|
|
9
|
+
export { buildTutorialRegistry as buildTutorialContent } from './tutorial-registry.js';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tutorial Content
|
|
3
|
+
*
|
|
4
|
+
* Re-exports the tutorial registry for use by tutorial-overlay-v2.
|
|
5
|
+
* This file maintains backward compatibility while the actual content
|
|
6
|
+
* is now organized in separate files under ./tutorials/.
|
|
7
|
+
*/
|
|
8
|
+
// Re-export the builder from the registry
|
|
9
|
+
export { buildTutorialRegistry as buildTutorialContent } from './tutorial-registry.js';
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tutorial Registry
|
|
3
|
+
*
|
|
4
|
+
* Combines all individual tutorials into the tab structure.
|
|
5
|
+
* Add new tutorials here as they are created.
|
|
6
|
+
*/
|
|
7
|
+
import type { ThemeStyleFunctions } from '../../../themes/index.js';
|
|
8
|
+
import type { TutorialTab } from './tutorial-types.js';
|
|
9
|
+
/**
|
|
10
|
+
* Build all tutorial content organized into tabs.
|
|
11
|
+
*/
|
|
12
|
+
export declare function buildTutorialRegistry(s: ThemeStyleFunctions): TutorialTab[];
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tutorial Registry
|
|
3
|
+
*
|
|
4
|
+
* Combines all individual tutorials into the tab structure.
|
|
5
|
+
* Add new tutorials here as they are created.
|
|
6
|
+
*/
|
|
7
|
+
// Import individual tutorials
|
|
8
|
+
import { welcomeTutorial } from './tutorials/basics/welcome.js';
|
|
9
|
+
import { firstProjectTutorial } from './tutorials/basics/first-project.js';
|
|
10
|
+
import { firstConversationTutorial } from './tutorials/basics/first-conversation.js';
|
|
11
|
+
import { navigationTutorial } from './tutorials/basics/navigation.js';
|
|
12
|
+
import { newProjectTutorial } from './tutorials/projects/new-project.js';
|
|
13
|
+
import { managingProjectsTutorial } from './tutorials/projects/managing-projects.js';
|
|
14
|
+
import { sessionManagementTutorial } from './tutorials/projects/session-management.js';
|
|
15
|
+
import { anchorsTutorial } from './tutorials/projects/anchors.js';
|
|
16
|
+
import { importProjectTutorial } from './tutorials/projects/import-project.js';
|
|
17
|
+
import { designTutorial } from './tutorials/planning/design.js';
|
|
18
|
+
import { backlogTutorial } from './tutorials/planning/backlog.js';
|
|
19
|
+
import { sketchTutorial } from './tutorials/planning/sketch.js';
|
|
20
|
+
import { scaffoldTutorial } from './tutorials/planning/scaffold.js';
|
|
21
|
+
import { buildTutorial } from './tutorials/planning/build.js';
|
|
22
|
+
import { prdTutorial } from './tutorials/planning/prd.js';
|
|
23
|
+
import { archTutorial } from './tutorials/planning/arch.js';
|
|
24
|
+
import { docsTutorial } from './tutorials/planning/docs.js';
|
|
25
|
+
import { teamOverviewTutorial } from './tutorials/teams/team-overview.js';
|
|
26
|
+
import { workingWithAgentsTutorial } from './tutorials/teams/working-with-agents.js';
|
|
27
|
+
import { backgroundExecutionTutorial } from './tutorials/teams/background-execution.js';
|
|
28
|
+
import { taskAssignmentTutorial } from './tutorials/teams/task-assignment.js';
|
|
29
|
+
import { multiTerminalTutorial } from './tutorials/teams/multi-terminal.js';
|
|
30
|
+
import { modelSelectionTutorial } from './tutorials/config/model-selection.js';
|
|
31
|
+
import { settingsConfigTutorial } from './tutorials/config/settings-config.js';
|
|
32
|
+
import { contextManagementTutorial } from './tutorials/config/context-management.js';
|
|
33
|
+
import { permissionsSafetyTutorial } from './tutorials/config/permissions-safety.js';
|
|
34
|
+
import { mcpServersTutorial } from './tutorials/config/mcp-servers.js';
|
|
35
|
+
// =============================================================================
|
|
36
|
+
// Registry Builder
|
|
37
|
+
// =============================================================================
|
|
38
|
+
/**
|
|
39
|
+
* Build all tutorial content organized into tabs.
|
|
40
|
+
*/
|
|
41
|
+
export function buildTutorialRegistry(s) {
|
|
42
|
+
return [
|
|
43
|
+
// =========================================================================
|
|
44
|
+
// Tab 1: Basics
|
|
45
|
+
// =========================================================================
|
|
46
|
+
{
|
|
47
|
+
id: 'basics',
|
|
48
|
+
label: 'Basics',
|
|
49
|
+
items: [
|
|
50
|
+
welcomeTutorial(s),
|
|
51
|
+
firstProjectTutorial(s),
|
|
52
|
+
firstConversationTutorial(s),
|
|
53
|
+
navigationTutorial(s),
|
|
54
|
+
],
|
|
55
|
+
},
|
|
56
|
+
// =========================================================================
|
|
57
|
+
// Tab 2: Projects
|
|
58
|
+
// =========================================================================
|
|
59
|
+
{
|
|
60
|
+
id: 'projects',
|
|
61
|
+
label: 'Projects',
|
|
62
|
+
items: [
|
|
63
|
+
newProjectTutorial(s),
|
|
64
|
+
importProjectTutorial(s),
|
|
65
|
+
managingProjectsTutorial(s),
|
|
66
|
+
sessionManagementTutorial(s),
|
|
67
|
+
anchorsTutorial(s),
|
|
68
|
+
],
|
|
69
|
+
},
|
|
70
|
+
// =========================================================================
|
|
71
|
+
// Tab 3: Plan & Build
|
|
72
|
+
// =========================================================================
|
|
73
|
+
{
|
|
74
|
+
id: 'plan-build',
|
|
75
|
+
label: 'Plan & Build',
|
|
76
|
+
items: [
|
|
77
|
+
designTutorial(s),
|
|
78
|
+
sketchTutorial(s),
|
|
79
|
+
backlogTutorial(s),
|
|
80
|
+
prdTutorial(s),
|
|
81
|
+
archTutorial(s),
|
|
82
|
+
docsTutorial(s),
|
|
83
|
+
scaffoldTutorial(s),
|
|
84
|
+
buildTutorial(s),
|
|
85
|
+
],
|
|
86
|
+
},
|
|
87
|
+
// =========================================================================
|
|
88
|
+
// Tab 4: Teams
|
|
89
|
+
// =========================================================================
|
|
90
|
+
{
|
|
91
|
+
id: 'teams',
|
|
92
|
+
label: 'Teams',
|
|
93
|
+
items: [
|
|
94
|
+
teamOverviewTutorial(s),
|
|
95
|
+
workingWithAgentsTutorial(s),
|
|
96
|
+
backgroundExecutionTutorial(s),
|
|
97
|
+
taskAssignmentTutorial(s),
|
|
98
|
+
multiTerminalTutorial(s),
|
|
99
|
+
],
|
|
100
|
+
},
|
|
101
|
+
// =========================================================================
|
|
102
|
+
// Tab 5: Config
|
|
103
|
+
// =========================================================================
|
|
104
|
+
{
|
|
105
|
+
id: 'config',
|
|
106
|
+
label: 'Config',
|
|
107
|
+
items: [
|
|
108
|
+
modelSelectionTutorial(s),
|
|
109
|
+
settingsConfigTutorial(s),
|
|
110
|
+
contextManagementTutorial(s),
|
|
111
|
+
permissionsSafetyTutorial(s),
|
|
112
|
+
mcpServersTutorial(s),
|
|
113
|
+
],
|
|
114
|
+
},
|
|
115
|
+
];
|
|
116
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tutorial Types
|
|
3
|
+
*
|
|
4
|
+
* Shared types for the tutorial system.
|
|
5
|
+
*/
|
|
6
|
+
import type { ThemeStyleFunctions } from '../../../themes/index.js';
|
|
7
|
+
/**
|
|
8
|
+
* A single page within a tutorial.
|
|
9
|
+
* Each tutorial can have multiple pages that the user navigates through.
|
|
10
|
+
*/
|
|
11
|
+
export interface TutorialPage {
|
|
12
|
+
title: string;
|
|
13
|
+
lines: string[];
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* A tutorial item representing a complete tutorial topic.
|
|
17
|
+
*/
|
|
18
|
+
export interface TutorialItem {
|
|
19
|
+
id: string;
|
|
20
|
+
title: string;
|
|
21
|
+
description: string;
|
|
22
|
+
pages: TutorialPage[];
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* A tab grouping related tutorials together.
|
|
26
|
+
*/
|
|
27
|
+
export interface TutorialTab {
|
|
28
|
+
id: string;
|
|
29
|
+
label: string;
|
|
30
|
+
items: TutorialItem[];
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Function signature for building a tutorial with theme styles.
|
|
34
|
+
*/
|
|
35
|
+
export type TutorialBuilder = (s: ThemeStyleFunctions) => TutorialItem;
|
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Your First Conversation Tutorial
|
|
3
|
+
*
|
|
4
|
+
* How to interact with the AI in REPL mode.
|
|
5
|
+
*/
|
|
6
|
+
export const firstConversationTutorial = (s) => ({
|
|
7
|
+
id: 'first-conversation',
|
|
8
|
+
title: 'Your First Conversation',
|
|
9
|
+
description: 'How to chat with the AI assistant',
|
|
10
|
+
pages: [
|
|
11
|
+
// Page 1: Starting from Dashboard
|
|
12
|
+
{
|
|
13
|
+
title: 'Starting from Dashboard',
|
|
14
|
+
lines: [
|
|
15
|
+
'',
|
|
16
|
+
` After creating a project, 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.secondary('CURRENT PROJECT')}`,
|
|
23
|
+
` ${s.primaryBold('★ My First Project')}`,
|
|
24
|
+
` ${s.muted('/workspace/projects/my-first-project │ active │ flexible')}`,
|
|
25
|
+
'',
|
|
26
|
+
` ${s.secondary('ACTIONS')}`,
|
|
27
|
+
` ${s.primary('❯')} Continue with My First Project ${s.muted('Resume working on current project')}`,
|
|
28
|
+
'',
|
|
29
|
+
` ${s.muted('↑↓/jk Navigate Enter Select q Quit')}`,
|
|
30
|
+
'',
|
|
31
|
+
` Press ${s.primary('Enter')} to continue with your project.`,
|
|
32
|
+
'',
|
|
33
|
+
],
|
|
34
|
+
},
|
|
35
|
+
// Page 2: The REPL
|
|
36
|
+
{
|
|
37
|
+
title: 'The REPL',
|
|
38
|
+
lines: [
|
|
39
|
+
'',
|
|
40
|
+
` After pressing Enter, you'll see the REPL (Read-Eval-Print Loop):`,
|
|
41
|
+
'',
|
|
42
|
+
` ${s.muted('✓ Agent connected')}`,
|
|
43
|
+
'',
|
|
44
|
+
` ${s.muted('Model: gemini-2.5-flash')}`,
|
|
45
|
+
` ${s.muted('Provider: gemini')}`,
|
|
46
|
+
` ${s.muted('[^_^] Switched to project: My First Project')}`,
|
|
47
|
+
'',
|
|
48
|
+
` ${s.muted('─'.repeat(40))}`,
|
|
49
|
+
` ${s.primary('compilr>')} ${s.muted('█')}`,
|
|
50
|
+
` ${s.muted('─'.repeat(40))}`,
|
|
51
|
+
` ${s.muted('mode: Normal Project: My First Project')}`,
|
|
52
|
+
'',
|
|
53
|
+
` Type your message and press ${s.primary('Enter')} to chat with the AI.`,
|
|
54
|
+
'',
|
|
55
|
+
],
|
|
56
|
+
},
|
|
57
|
+
// Page 3: File References
|
|
58
|
+
{
|
|
59
|
+
title: 'File References with @',
|
|
60
|
+
lines: [
|
|
61
|
+
'',
|
|
62
|
+
` Reference files by typing ${s.primary('@')} followed by a path:`,
|
|
63
|
+
'',
|
|
64
|
+
` ${s.primary('compilr>')} Fix the bug in ${s.secondary('@src/utils.ts')}`,
|
|
65
|
+
'',
|
|
66
|
+
` ${s.secondary('Autocomplete:')} Press ${s.primary('Tab')} after ${s.primary('@')} to see matches.`,
|
|
67
|
+
'',
|
|
68
|
+
` ${s.primary('compilr>')} Explain ${s.secondary('@src/')}`,
|
|
69
|
+
` ${s.muted('src/index.ts')}`,
|
|
70
|
+
` ${s.muted('src/utils.ts')}`,
|
|
71
|
+
` ${s.muted('src/config.ts')}`,
|
|
72
|
+
'',
|
|
73
|
+
` ${s.secondary('Multiple files:')}`,
|
|
74
|
+
'',
|
|
75
|
+
` ${s.primary('compilr>')} Compare ${s.secondary('@src/old.ts')} with ${s.secondary('@src/new.ts')}`,
|
|
76
|
+
'',
|
|
77
|
+
` The AI will read the files and understand the context.`,
|
|
78
|
+
'',
|
|
79
|
+
],
|
|
80
|
+
},
|
|
81
|
+
// Page 4: Slash Commands
|
|
82
|
+
{
|
|
83
|
+
title: 'Slash Commands',
|
|
84
|
+
lines: [
|
|
85
|
+
'',
|
|
86
|
+
` Commands start with ${s.primary('/')}:`,
|
|
87
|
+
'',
|
|
88
|
+
` ${s.primary('/help')} Show available commands`,
|
|
89
|
+
` ${s.primary('/clear')} Clear the screen`,
|
|
90
|
+
` ${s.primary('/exit')} Exit the CLI`,
|
|
91
|
+
` ${s.primary('/design')} Start requirements gathering`,
|
|
92
|
+
` ${s.primary('/backlog')} View your work items`,
|
|
93
|
+
'',
|
|
94
|
+
` ${s.secondary('Autocomplete:')} Type ${s.primary('/')} and press ${s.primary('Tab')}`,
|
|
95
|
+
'',
|
|
96
|
+
` ${s.primary('compilr>')} /he`,
|
|
97
|
+
` ${s.muted('/help')}`,
|
|
98
|
+
` ${s.muted('/health')}`,
|
|
99
|
+
'',
|
|
100
|
+
` ${s.warning('TIP:')} Run ${s.primary('/help')} to see all commands,`,
|
|
101
|
+
` or ${s.primary('/tutorial')} to browse these guides!`,
|
|
102
|
+
'',
|
|
103
|
+
],
|
|
104
|
+
},
|
|
105
|
+
// Page 5: What the AI Can Do
|
|
106
|
+
{
|
|
107
|
+
title: 'What the AI Can Do',
|
|
108
|
+
lines: [
|
|
109
|
+
'',
|
|
110
|
+
` The AI can help with:`,
|
|
111
|
+
'',
|
|
112
|
+
` ${s.success('✓')} ${s.primary('Read files')} - Understand your code`,
|
|
113
|
+
` ${s.success('✓')} ${s.primary('Write files')} - Create or modify code`,
|
|
114
|
+
` ${s.success('✓')} ${s.primary('Run commands')} - Execute shell commands`,
|
|
115
|
+
` ${s.success('✓')} ${s.primary('Search code')} - Find patterns in your codebase`,
|
|
116
|
+
` ${s.success('✓')} ${s.primary('Git operations')} - Commit, diff, status`,
|
|
117
|
+
` ${s.success('✓')} ${s.primary('Answer questions')} - Explain code, debug issues`,
|
|
118
|
+
'',
|
|
119
|
+
` ${s.secondary('Example requests:')}`,
|
|
120
|
+
'',
|
|
121
|
+
` ${s.muted('"Create a login component"')}`,
|
|
122
|
+
` ${s.muted('"Why is this test failing?"')}`,
|
|
123
|
+
` ${s.muted('"Refactor this function to use async/await"')}`,
|
|
124
|
+
'',
|
|
125
|
+
],
|
|
126
|
+
},
|
|
127
|
+
// Page 6: Permission Prompts
|
|
128
|
+
{
|
|
129
|
+
title: 'Permission Prompts',
|
|
130
|
+
lines: [
|
|
131
|
+
'',
|
|
132
|
+
` The AI asks permission before making changes:`,
|
|
133
|
+
'',
|
|
134
|
+
` ┌─ Permission Required ───────────────────────┐`,
|
|
135
|
+
` │ │`,
|
|
136
|
+
` │ The agent wants to create a file: │`,
|
|
137
|
+
` │ ${s.primary('src/components/Login.tsx')} │`,
|
|
138
|
+
` │ │`,
|
|
139
|
+
` │ ${s.success('[Allow]')} ${s.muted('[Allow Always]')} ${s.error('[Deny]')} │`,
|
|
140
|
+
` │ │`,
|
|
141
|
+
` └─────────────────────────────────────────────┘`,
|
|
142
|
+
'',
|
|
143
|
+
` ${s.success('Allow')} - Approve this specific action`,
|
|
144
|
+
` ${s.muted('Allow Always')} - Auto-approve this tool for the session`,
|
|
145
|
+
` ${s.error('Deny')} - Reject this action`,
|
|
146
|
+
'',
|
|
147
|
+
` ${s.muted('You\'re always in control of what changes are made.')}`,
|
|
148
|
+
'',
|
|
149
|
+
],
|
|
150
|
+
},
|
|
151
|
+
// Page 7: Stopping and Canceling
|
|
152
|
+
{
|
|
153
|
+
title: 'Stopping and Canceling',
|
|
154
|
+
lines: [
|
|
155
|
+
'',
|
|
156
|
+
` ${s.secondary('While the AI is working:')}`,
|
|
157
|
+
'',
|
|
158
|
+
` ${s.primary('Esc')} Stop the current operation`,
|
|
159
|
+
` ${s.muted('The AI will finish its current thought')}`,
|
|
160
|
+
'',
|
|
161
|
+
` ${s.primary('Ctrl+C')} Force stop immediately`,
|
|
162
|
+
` ${s.muted('Use when Esc doesn\'t respond')}`,
|
|
163
|
+
'',
|
|
164
|
+
` ${s.secondary('While typing:')}`,
|
|
165
|
+
'',
|
|
166
|
+
` ${s.primary('Ctrl+C')} Clear current input`,
|
|
167
|
+
` ${s.primary('Ctrl+C')} ${s.muted('twice')} Exit the CLI`,
|
|
168
|
+
'',
|
|
169
|
+
` ${s.warning('TIP:')} If the AI is taking too long, just press Esc.`,
|
|
170
|
+
` You can continue the conversation afterward.`,
|
|
171
|
+
'',
|
|
172
|
+
],
|
|
173
|
+
},
|
|
174
|
+
// Page 8: Context and Memory
|
|
175
|
+
{
|
|
176
|
+
title: 'Context and Memory',
|
|
177
|
+
lines: [
|
|
178
|
+
'',
|
|
179
|
+
` The AI remembers your conversation within a session.`,
|
|
180
|
+
'',
|
|
181
|
+
` ${s.secondary('What the AI knows:')}`,
|
|
182
|
+
` ${s.muted('•')} Your project info (from COMPILR.md)`,
|
|
183
|
+
` ${s.muted('•')} Files you've referenced`,
|
|
184
|
+
` ${s.muted('•')} Previous messages in this session`,
|
|
185
|
+
` ${s.muted('•')} Anchors (persistent notes)`,
|
|
186
|
+
'',
|
|
187
|
+
` ${s.secondary('Context commands:')}`,
|
|
188
|
+
` ${s.primary('/context')} See current context usage`,
|
|
189
|
+
` ${s.primary('/compact')} Summarize old messages (free up space)`,
|
|
190
|
+
` ${s.primary('/anchors')} View/add persistent notes`,
|
|
191
|
+
'',
|
|
192
|
+
` ${s.muted('Sessions auto-save. Use')} ${s.primary('/resume')} ${s.muted('to continue later.')}`,
|
|
193
|
+
'',
|
|
194
|
+
],
|
|
195
|
+
},
|
|
196
|
+
// Page 9: Next Steps
|
|
197
|
+
{
|
|
198
|
+
title: 'Next Steps',
|
|
199
|
+
lines: [
|
|
200
|
+
'',
|
|
201
|
+
` ${s.secondary('You\'re ready to start building!')}`,
|
|
202
|
+
'',
|
|
203
|
+
` ${s.primary('Recommended workflow:')}`,
|
|
204
|
+
'',
|
|
205
|
+
` ${s.muted('1.')} Run ${s.primary('/design')} to plan your features`,
|
|
206
|
+
` ${s.muted('The AI will help create a PRD and backlog')}`,
|
|
207
|
+
'',
|
|
208
|
+
` ${s.muted('2.')} Run ${s.primary('/backlog')} to see your work items`,
|
|
209
|
+
` ${s.muted('Pick one to start building')}`,
|
|
210
|
+
'',
|
|
211
|
+
` ${s.muted('3.')} Ask the AI to implement features`,
|
|
212
|
+
` ${s.muted('"Build the user authentication from REQ-001"')}`,
|
|
213
|
+
'',
|
|
214
|
+
` ${s.warning('TIP:')} Browse the other tutorials to learn about`,
|
|
215
|
+
` ${s.primary('/design')}, ${s.primary('/backlog')}, and team agents!`,
|
|
216
|
+
'',
|
|
217
|
+
],
|
|
218
|
+
},
|
|
219
|
+
],
|
|
220
|
+
});
|