@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,164 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Scaffold Tutorial
|
|
3
|
+
*
|
|
4
|
+
* Walkthrough of the /scaffold command for creating project foundations.
|
|
5
|
+
*/
|
|
6
|
+
export const scaffoldTutorial = (s) => ({
|
|
7
|
+
id: 'scaffold',
|
|
8
|
+
title: 'Project Scaffolding',
|
|
9
|
+
description: 'Create project foundation',
|
|
10
|
+
pages: [
|
|
11
|
+
// Page 1: Introduction
|
|
12
|
+
{
|
|
13
|
+
title: 'Project Scaffolding',
|
|
14
|
+
lines: [
|
|
15
|
+
'',
|
|
16
|
+
` The ${s.primary('/scaffold')} command creates the base project structure`,
|
|
17
|
+
` — folders, config files, dependencies, and initial code.`,
|
|
18
|
+
'',
|
|
19
|
+
` ${s.secondary('When to use /scaffold:')}`,
|
|
20
|
+
'',
|
|
21
|
+
` ${s.muted('•')} After ${s.primary('/design')} or ${s.primary('/sketch')} has created your backlog`,
|
|
22
|
+
` ${s.muted('•')} When starting from scratch (empty project directory)`,
|
|
23
|
+
` ${s.muted('•')} When you need a working foundation before features`,
|
|
24
|
+
'',
|
|
25
|
+
` ${s.secondary('What it produces:')}`,
|
|
26
|
+
'',
|
|
27
|
+
` ${s.muted('•')} Folder structure (src, tests, config)`,
|
|
28
|
+
` ${s.muted('•')} Build tooling (package.json, tsconfig, vite, etc.)`,
|
|
29
|
+
` ${s.muted('•')} Initial source files (app entry, routes, etc.)`,
|
|
30
|
+
` ${s.muted('•')} Dependency installation and verified build`,
|
|
31
|
+
` ${s.muted('•')} Initial git commit`,
|
|
32
|
+
'',
|
|
33
|
+
],
|
|
34
|
+
},
|
|
35
|
+
// Page 2: Prerequisites
|
|
36
|
+
{
|
|
37
|
+
title: 'Prerequisites',
|
|
38
|
+
lines: [
|
|
39
|
+
'',
|
|
40
|
+
` Before running ${s.primary('/scaffold')}, you need:`,
|
|
41
|
+
'',
|
|
42
|
+
` ${s.primary('1.')} An active project (via ${s.primary('/new')} or ${s.primary('/projects')})`,
|
|
43
|
+
` ${s.primary('2.')} A project path set (where files will be created)`,
|
|
44
|
+
'',
|
|
45
|
+
` The agent reads your project's backlog and documents`,
|
|
46
|
+
` to understand the tech stack and requirements.`,
|
|
47
|
+
'',
|
|
48
|
+
` ${s.warning('!')} If your working directory differs from the project path,`,
|
|
49
|
+
` you'll see a warning:`,
|
|
50
|
+
'',
|
|
51
|
+
` ${s.warning('Working directory differs from project path!')}`,
|
|
52
|
+
` ${s.muted('cwd: /workspace')}`,
|
|
53
|
+
` ${s.muted('project: /workspace/projects/my-app')}`,
|
|
54
|
+
` ${s.muted('Files will be created in the project path, not cwd.')}`,
|
|
55
|
+
'',
|
|
56
|
+
` This is normal — the agent uses ${s.primaryBold('absolute paths')}.`,
|
|
57
|
+
'',
|
|
58
|
+
],
|
|
59
|
+
},
|
|
60
|
+
// Page 3: Model Recommendation
|
|
61
|
+
{
|
|
62
|
+
title: 'Model Recommendation',
|
|
63
|
+
lines: [
|
|
64
|
+
'',
|
|
65
|
+
` Like ${s.primary('/design')}, scaffolding works best with larger models.`,
|
|
66
|
+
` If you're on a smaller model, you'll see:`,
|
|
67
|
+
'',
|
|
68
|
+
` ${s.warning('! Model Recommendation')}`,
|
|
69
|
+
'',
|
|
70
|
+
` /scaffold works best with larger models.`,
|
|
71
|
+
` Current: ${s.muted('claude-haiku-4-5-20251001 (medium tier)')}`,
|
|
72
|
+
'',
|
|
73
|
+
` ${s.primary('>')} 1. Switch model and continue`,
|
|
74
|
+
` 2. Use /sketch instead`,
|
|
75
|
+
` 3. Continue with current model anyway`,
|
|
76
|
+
'',
|
|
77
|
+
` ${s.secondary('Recommendation:')} Sonnet or Opus will produce better`,
|
|
78
|
+
` folder structures, config files, and initial code.`,
|
|
79
|
+
` Haiku can scaffold but may miss details.`,
|
|
80
|
+
'',
|
|
81
|
+
],
|
|
82
|
+
},
|
|
83
|
+
// Page 4: What Happens
|
|
84
|
+
{
|
|
85
|
+
title: 'What Happens',
|
|
86
|
+
lines: [
|
|
87
|
+
'',
|
|
88
|
+
` After you run ${s.primary('/scaffold')}, the agent:`,
|
|
89
|
+
'',
|
|
90
|
+
` ${s.primary('1.')} Reads project documents and backlog`,
|
|
91
|
+
` ${s.muted('project_document_list → workitem_query')}`,
|
|
92
|
+
'',
|
|
93
|
+
` ${s.primary('2.')} Asks for confirmation of the tech stack`,
|
|
94
|
+
` ${s.muted('e.g., "React + Vite frontend, Node + Express backend?"')}`,
|
|
95
|
+
'',
|
|
96
|
+
` ${s.primary('3.')} Creates a todo plan`,
|
|
97
|
+
` ${s.muted('☐ Create directory structure')}`,
|
|
98
|
+
` ${s.muted('☐ Create frontend scaffold')}`,
|
|
99
|
+
` ${s.muted('☐ Create backend scaffold')}`,
|
|
100
|
+
` ${s.muted('☐ Install dependencies')}`,
|
|
101
|
+
` ${s.muted('☐ Create initial git commit')}`,
|
|
102
|
+
'',
|
|
103
|
+
` ${s.primary('4.')} Generates files, installs deps, verifies build`,
|
|
104
|
+
'',
|
|
105
|
+
` ${s.primary('5.')} Updates backlog (marks scaffold item complete)`,
|
|
106
|
+
'',
|
|
107
|
+
],
|
|
108
|
+
},
|
|
109
|
+
// Page 5: During Execution
|
|
110
|
+
{
|
|
111
|
+
title: 'During Execution',
|
|
112
|
+
lines: [
|
|
113
|
+
'',
|
|
114
|
+
` Scaffolding typically takes ${s.primaryBold('3-5 minutes')} and uses`,
|
|
115
|
+
` ${s.primaryBold('30-40 tool calls')}. You'll see progress in real-time:`,
|
|
116
|
+
'',
|
|
117
|
+
` ${s.muted('● write_file(/my-app/package.json)')}`,
|
|
118
|
+
` ${s.muted('⎿ File written')}`,
|
|
119
|
+
'',
|
|
120
|
+
` ${s.muted('● write_file(/my-app/frontend/tsconfig.json)')}`,
|
|
121
|
+
` ${s.muted('⎿ File written')}`,
|
|
122
|
+
'',
|
|
123
|
+
` ${s.muted('● Bash(npm install)')}`,
|
|
124
|
+
` ${s.muted('⎿ added 245 packages')}`,
|
|
125
|
+
'',
|
|
126
|
+
` The footer shows todo progress as items complete:`,
|
|
127
|
+
'',
|
|
128
|
+
` ${s.success('✓')} Create project directory structure`,
|
|
129
|
+
` ${s.success('✓')} Create frontend (React + Vite) scaffold`,
|
|
130
|
+
` ${s.primary('→')} Create backend (Node.js + Express) scaffold`,
|
|
131
|
+
` ${s.muted('☐')} Install dependencies and verify build`,
|
|
132
|
+
` ${s.muted('☐')} Create initial git commit`,
|
|
133
|
+
'',
|
|
134
|
+
],
|
|
135
|
+
},
|
|
136
|
+
// Page 6: Result
|
|
137
|
+
{
|
|
138
|
+
title: 'Result & Next Steps',
|
|
139
|
+
lines: [
|
|
140
|
+
'',
|
|
141
|
+
` When done, the agent provides a summary showing:`,
|
|
142
|
+
'',
|
|
143
|
+
` ${s.success('✓')} Build status (frontend + backend compile)`,
|
|
144
|
+
` ${s.success('✓')} Lint status (0 errors, 0 warnings)`,
|
|
145
|
+
` ${s.success('✓')} Git commit hash`,
|
|
146
|
+
'',
|
|
147
|
+
` ${s.secondary('What to do next:')}`,
|
|
148
|
+
'',
|
|
149
|
+
` ${s.primary('/backlog')} View your work items`,
|
|
150
|
+
` ${s.primary('/build')} Start implementing a backlog item`,
|
|
151
|
+
` ${s.muted('or just ask')} "Start working on REQ-002"`,
|
|
152
|
+
'',
|
|
153
|
+
` ${s.secondary('The typical workflow:')}`,
|
|
154
|
+
'',
|
|
155
|
+
` ${s.primary('/design')} → ${s.primary('/scaffold')} → ${s.primary('/build')} (repeat per item)`,
|
|
156
|
+
` ${s.muted('plan create implement')}`,
|
|
157
|
+
'',
|
|
158
|
+
` ${s.warning('TIP:')} You can also type "Create project scaffold" in`,
|
|
159
|
+
` normal chat — the ${s.primary('/scaffold')} command is a shortcut.`,
|
|
160
|
+
'',
|
|
161
|
+
],
|
|
162
|
+
},
|
|
163
|
+
],
|
|
164
|
+
});
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Quick Sketch Tutorial
|
|
3
|
+
*
|
|
4
|
+
* Overview of the /sketch command as a lightweight alternative to /design.
|
|
5
|
+
*/
|
|
6
|
+
export const sketchTutorial = (s) => ({
|
|
7
|
+
id: 'sketch',
|
|
8
|
+
title: 'Quick Sketch',
|
|
9
|
+
description: 'Fast planning alternative',
|
|
10
|
+
pages: [
|
|
11
|
+
// Page 1: Introduction
|
|
12
|
+
{
|
|
13
|
+
title: 'Quick Sketch',
|
|
14
|
+
lines: [
|
|
15
|
+
'',
|
|
16
|
+
` The ${s.primary('/sketch')} command is a lightweight alternative`,
|
|
17
|
+
` to ${s.primary('/design')} for fast project planning.`,
|
|
18
|
+
'',
|
|
19
|
+
` ${s.secondary('Key differences from /design:')}`,
|
|
20
|
+
'',
|
|
21
|
+
` ${s.primary('/design')} Multi-phase, batched questions, thorough`,
|
|
22
|
+
` Best with larger models (Sonnet/Opus)`,
|
|
23
|
+
'',
|
|
24
|
+
` ${s.primary('/sketch')} 6 quick questions, one at a time`,
|
|
25
|
+
` Works well with ${s.primaryBold('any model')} (including Haiku)`,
|
|
26
|
+
'',
|
|
27
|
+
` Use ${s.primary('/sketch')} when you want to get started quickly`,
|
|
28
|
+
` without a full requirements gathering session.`,
|
|
29
|
+
'',
|
|
30
|
+
],
|
|
31
|
+
},
|
|
32
|
+
// Page 2: How It Works
|
|
33
|
+
{
|
|
34
|
+
title: 'How It Works',
|
|
35
|
+
lines: [
|
|
36
|
+
'',
|
|
37
|
+
` The agent asks ${s.primaryBold('6 simple questions')}, one at a time:`,
|
|
38
|
+
'',
|
|
39
|
+
` ${s.primary('1.')} What are you building?`,
|
|
40
|
+
` ${s.primary('2.')} Who is the target user?`,
|
|
41
|
+
` ${s.primary('3.')} What are the core features?`,
|
|
42
|
+
` ${s.primary('4.')} What tech stack?`,
|
|
43
|
+
` ${s.primary('5.')} Any constraints or requirements?`,
|
|
44
|
+
` ${s.primary('6.')} What's the MVP scope?`,
|
|
45
|
+
'',
|
|
46
|
+
` Each question appears as a simple dialog — type your`,
|
|
47
|
+
` answer and press Enter to move to the next one.`,
|
|
48
|
+
'',
|
|
49
|
+
` After all questions, the agent generates backlog items`,
|
|
50
|
+
` just like ${s.primary('/design')} does.`,
|
|
51
|
+
'',
|
|
52
|
+
` ${s.warning('TIP:')} For a more thorough planning process, see the`,
|
|
53
|
+
` ${s.primary('Design Workflow')} tutorial in this section.`,
|
|
54
|
+
'',
|
|
55
|
+
],
|
|
56
|
+
},
|
|
57
|
+
],
|
|
58
|
+
});
|
|
@@ -0,0 +1,248 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Anchors & Context Tutorial
|
|
3
|
+
*
|
|
4
|
+
* How to use anchors for persistent information across sessions.
|
|
5
|
+
*/
|
|
6
|
+
export const anchorsTutorial = (s) => ({
|
|
7
|
+
id: 'anchors',
|
|
8
|
+
title: 'Anchors & Context',
|
|
9
|
+
description: 'Persistent notes and context management',
|
|
10
|
+
pages: [
|
|
11
|
+
// Page 1: Introduction
|
|
12
|
+
{
|
|
13
|
+
title: 'What are Anchors?',
|
|
14
|
+
lines: [
|
|
15
|
+
'',
|
|
16
|
+
` Anchors are ${s.primary('persistent notes')} that the AI always sees.`,
|
|
17
|
+
'',
|
|
18
|
+
` Use them for:`,
|
|
19
|
+
'',
|
|
20
|
+
` ${s.muted('•')} Project conventions ${s.muted('("Always use async/await")')}`,
|
|
21
|
+
` ${s.muted('•')} Important decisions ${s.muted('("We chose PostgreSQL because...")')}`,
|
|
22
|
+
` ${s.muted('•')} Safety reminders ${s.muted('("Don\'t modify the auth module")')}`,
|
|
23
|
+
` ${s.muted('•')} Context that should persist ${s.muted('("User prefers tabs over spaces")')}`,
|
|
24
|
+
'',
|
|
25
|
+
` Unlike conversation history, anchors ${s.primary('survive across sessions')}.`,
|
|
26
|
+
'',
|
|
27
|
+
],
|
|
28
|
+
},
|
|
29
|
+
// Page 2: /anchors overlay
|
|
30
|
+
{
|
|
31
|
+
title: 'The /anchors Overlay',
|
|
32
|
+
lines: [
|
|
33
|
+
'',
|
|
34
|
+
` Run ${s.primary('/anchors')} to manage your anchors:`,
|
|
35
|
+
'',
|
|
36
|
+
` ${s.muted('─'.repeat(70))}`,
|
|
37
|
+
` ${s.primaryBold('Anchors')} ${s.muted('[3/3]')}`,
|
|
38
|
+
'',
|
|
39
|
+
` ${s.muted('All')} ${s.muted('Critical')} ${s.muted('Safety')} ${s.muted('Info')} ${s.muted('Global')} ${s.muted('Project')}`,
|
|
40
|
+
'',
|
|
41
|
+
` ${s.primary('❯')} ${s.error('[S]')} ${s.warning('[G]')} Before deleting files, confirm the path...`,
|
|
42
|
+
` ${s.error('[S]')} ${s.warning('[G]')} Before destructive git operations...`,
|
|
43
|
+
` ${s.error('[S]')} ${s.warning('[G]')} Before DROP TABLE, TRUNCATE, or DELETE...`,
|
|
44
|
+
'',
|
|
45
|
+
` ${s.muted('─'.repeat(70))}`,
|
|
46
|
+
'',
|
|
47
|
+
],
|
|
48
|
+
},
|
|
49
|
+
// Page 3: Anchor badges
|
|
50
|
+
{
|
|
51
|
+
title: 'Anchor Badges',
|
|
52
|
+
lines: [
|
|
53
|
+
'',
|
|
54
|
+
` Each anchor shows badges indicating its properties:`,
|
|
55
|
+
'',
|
|
56
|
+
` ${s.secondary('Priority badges:')}`,
|
|
57
|
+
` ${s.error('[C]')} Critical - Highest priority, always shown first`,
|
|
58
|
+
` ${s.error('[S]')} Safety - Safety-related reminders`,
|
|
59
|
+
` ${s.primary('[I]')} Info - General information`,
|
|
60
|
+
'',
|
|
61
|
+
` ${s.secondary('Scope badges:')}`,
|
|
62
|
+
` ${s.warning('[G]')} Global - Applies to all projects`,
|
|
63
|
+
` ${s.primary('[P]')} Project - Only for current project`,
|
|
64
|
+
'',
|
|
65
|
+
` ${s.muted('Example:')} ${s.error('[S]')} ${s.warning('[G]')} = Safety anchor, global scope`,
|
|
66
|
+
'',
|
|
67
|
+
],
|
|
68
|
+
},
|
|
69
|
+
// Page 4: Filtering anchors
|
|
70
|
+
{
|
|
71
|
+
title: 'Filtering Anchors',
|
|
72
|
+
lines: [
|
|
73
|
+
'',
|
|
74
|
+
` Use the tabs to filter anchors:`,
|
|
75
|
+
'',
|
|
76
|
+
` ${s.primary('All')} ${s.muted('Critical')} ${s.muted('Safety')} ${s.muted('Info')} ${s.muted('Global')} ${s.muted('Project')}`,
|
|
77
|
+
'',
|
|
78
|
+
` ${s.primary('All')} Show all anchors`,
|
|
79
|
+
` ${s.primary('Critical')} Only critical priority`,
|
|
80
|
+
` ${s.primary('Safety')} Only safety reminders`,
|
|
81
|
+
` ${s.primary('Info')} Only informational`,
|
|
82
|
+
` ${s.primary('Global')} Anchors for all projects`,
|
|
83
|
+
` ${s.primary('Project')} Anchors for current project only`,
|
|
84
|
+
'',
|
|
85
|
+
` ${s.secondary('Navigation:')}`,
|
|
86
|
+
` ${s.primary('Tab')} or ${s.primary('←/→')} Switch tabs`,
|
|
87
|
+
` ${s.primary('1-6')} Jump to tab by number`,
|
|
88
|
+
'',
|
|
89
|
+
],
|
|
90
|
+
},
|
|
91
|
+
// Page 5: Anchor actions
|
|
92
|
+
{
|
|
93
|
+
title: 'Managing Anchors',
|
|
94
|
+
lines: [
|
|
95
|
+
'',
|
|
96
|
+
` From the ${s.primary('/anchors')} list:`,
|
|
97
|
+
'',
|
|
98
|
+
` ${s.primary('a')} Add new anchor`,
|
|
99
|
+
` ${s.primary('e')} Edit selected anchor`,
|
|
100
|
+
` ${s.primary('d')} Delete anchor`,
|
|
101
|
+
` ${s.primary('/')} Search anchors`,
|
|
102
|
+
'',
|
|
103
|
+
` ${s.secondary('Navigation:')}`,
|
|
104
|
+
'',
|
|
105
|
+
` ${s.primary('↑/↓')} or ${s.primary('j/k')} Move between anchors`,
|
|
106
|
+
` ${s.primary('q')} or ${s.primary('Esc')} Close overlay`,
|
|
107
|
+
'',
|
|
108
|
+
],
|
|
109
|
+
},
|
|
110
|
+
// Page 6: Edit screen
|
|
111
|
+
{
|
|
112
|
+
title: 'Editing an Anchor',
|
|
113
|
+
lines: [
|
|
114
|
+
'',
|
|
115
|
+
` Press ${s.primary('e')} to edit an anchor:`,
|
|
116
|
+
'',
|
|
117
|
+
` ${s.muted('─'.repeat(50))}`,
|
|
118
|
+
` ${s.primaryBold('EDIT ANCHOR')}`,
|
|
119
|
+
'',
|
|
120
|
+
` ID: ${s.muted('builtin-file-safety')}`,
|
|
121
|
+
` Priority: ${s.error('safety')}`,
|
|
122
|
+
` Scope: ${s.warning('global')}`,
|
|
123
|
+
'',
|
|
124
|
+
` ${s.secondary('Content:')}`,
|
|
125
|
+
` ${s.muted('Before deleting files or directories, confirm')}`,
|
|
126
|
+
` ${s.muted('the path is correct and consider if content')}`,
|
|
127
|
+
` ${s.muted('should be backed up...')}`,
|
|
128
|
+
'',
|
|
129
|
+
` ${s.muted('336 chars remaining')}`,
|
|
130
|
+
` ${s.muted('─'.repeat(50))}`,
|
|
131
|
+
` ${s.muted('←→ Navigate · Enter Save · Esc Cancel')}`,
|
|
132
|
+
'',
|
|
133
|
+
],
|
|
134
|
+
},
|
|
135
|
+
// Page 7: Adding via REPL
|
|
136
|
+
{
|
|
137
|
+
title: 'Adding Anchors via Chat',
|
|
138
|
+
lines: [
|
|
139
|
+
'',
|
|
140
|
+
` You can also ask the AI to create anchors:`,
|
|
141
|
+
'',
|
|
142
|
+
` ${s.primary('compilr>')} Remember that we use tabs not spaces`,
|
|
143
|
+
'',
|
|
144
|
+
` ${s.primary('compilr>')} Remember: never modify the auth module`,
|
|
145
|
+
'',
|
|
146
|
+
` ${s.primary('compilr>')} Add an anchor: our API uses REST, not GraphQL`,
|
|
147
|
+
'',
|
|
148
|
+
` The AI will create an anchor for you and confirm.`,
|
|
149
|
+
'',
|
|
150
|
+
` ${s.warning('TIP:')} Be specific! The AI includes your exact wording`,
|
|
151
|
+
` in the anchor content.`,
|
|
152
|
+
'',
|
|
153
|
+
],
|
|
154
|
+
},
|
|
155
|
+
// Page 8: How AI uses anchors
|
|
156
|
+
{
|
|
157
|
+
title: 'How the AI Uses Anchors',
|
|
158
|
+
lines: [
|
|
159
|
+
'',
|
|
160
|
+
` Anchors are included in the AI's ${s.primary('system prompt')}.`,
|
|
161
|
+
'',
|
|
162
|
+
` This means:`,
|
|
163
|
+
'',
|
|
164
|
+
` ${s.success('✓')} AI sees them at the start of every conversation`,
|
|
165
|
+
` ${s.success('✓')} They persist across sessions`,
|
|
166
|
+
` ${s.success('✓')} They're not affected by ${s.primary('/compact')}`,
|
|
167
|
+
` ${s.success('✓')} Critical and safety anchors are prioritized`,
|
|
168
|
+
'',
|
|
169
|
+
` ${s.secondary('Built-in anchors:')}`,
|
|
170
|
+
` The CLI includes default safety anchors for:`,
|
|
171
|
+
` ${s.muted('•')} File deletion safety`,
|
|
172
|
+
` ${s.muted('•')} Git destructive operations`,
|
|
173
|
+
` ${s.muted('•')} Database destructive queries`,
|
|
174
|
+
'',
|
|
175
|
+
],
|
|
176
|
+
},
|
|
177
|
+
// Page 9: The /context command
|
|
178
|
+
{
|
|
179
|
+
title: 'The /context Command',
|
|
180
|
+
lines: [
|
|
181
|
+
'',
|
|
182
|
+
` Run ${s.primary('/context')} to see your context usage:`,
|
|
183
|
+
'',
|
|
184
|
+
` ${s.primaryBold('Context Usage')}`,
|
|
185
|
+
` ${s.muted('─'.repeat(40))}`,
|
|
186
|
+
` Usage: ${s.success('████████')}${s.muted('████████████')} ${s.primary('42.3%')}`,
|
|
187
|
+
` Tokens: ${s.primary('423,456')} / 1,000,000`,
|
|
188
|
+
` Messages: ${s.primary('156')}`,
|
|
189
|
+
` Turns: ${s.primary('78')}`,
|
|
190
|
+
'',
|
|
191
|
+
` ${s.secondary('What each metric means:')}`,
|
|
192
|
+
'',
|
|
193
|
+
` ${s.primary('Usage')} Percentage of context window used`,
|
|
194
|
+
` ${s.primary('Tokens')} Current tokens / maximum allowed`,
|
|
195
|
+
` ${s.primary('Messages')} Total messages in conversation`,
|
|
196
|
+
` ${s.primary('Turns')} Back-and-forth exchanges`,
|
|
197
|
+
'',
|
|
198
|
+
],
|
|
199
|
+
},
|
|
200
|
+
// Page 10: Context with team agents
|
|
201
|
+
{
|
|
202
|
+
title: 'Context with Team Agents',
|
|
203
|
+
lines: [
|
|
204
|
+
'',
|
|
205
|
+
` When using ${s.primary('team agents')}, /context shows per-agent breakdown:`,
|
|
206
|
+
'',
|
|
207
|
+
` ${s.primaryBold('Context Usage')}`,
|
|
208
|
+
` ${s.muted('─'.repeat(40))}`,
|
|
209
|
+
` Usage: ${s.success('██████')}${s.muted('██████████████')} ${s.primary('31.2%')}`,
|
|
210
|
+
` Tokens: ${s.primary('312,400')} / 1,000,000`,
|
|
211
|
+
'',
|
|
212
|
+
` ${s.secondary('By Agent')}`,
|
|
213
|
+
` ${s.muted('─'.repeat(40))}`,
|
|
214
|
+
` ${s.success('●')} ${s.muted('[•_•]')} $default ${s.success('████')}${s.muted('██████')} ${s.primary('12.4%')} (32 msgs)`,
|
|
215
|
+
` ${s.primary('○')} ${s.muted('[▣_▣]')} $pm ${s.primary('███')}${s.muted('███████')} ${s.primary('8.1%')} (18 msgs)`,
|
|
216
|
+
` ${s.primary('○')} ${s.muted('[◈_◈]')} $arch ${s.primary('██')}${s.muted('████████')} ${s.primary('6.2%')} (14 msgs)`,
|
|
217
|
+
` ${s.primary('○')} ${s.muted('[▲_▲]')} $dev ${s.primary('██')}${s.muted('████████')} ${s.primary('4.5%')} (12 msgs)`,
|
|
218
|
+
'',
|
|
219
|
+
` ${s.success('●')} = active agent ${s.primary('○')} = inactive`,
|
|
220
|
+
'',
|
|
221
|
+
],
|
|
222
|
+
},
|
|
223
|
+
// Page 11: Managing context
|
|
224
|
+
{
|
|
225
|
+
title: 'Managing Context',
|
|
226
|
+
lines: [
|
|
227
|
+
'',
|
|
228
|
+
` When context gets full, use ${s.primary('/compact')} to summarize:`,
|
|
229
|
+
'',
|
|
230
|
+
` ${s.primary('compilr>')} /compact`,
|
|
231
|
+
'',
|
|
232
|
+
` ${s.muted('Compacting context...')}`,
|
|
233
|
+
` ${s.success('✓')} Reduced from 892,000 to 45,000 tokens`,
|
|
234
|
+
'',
|
|
235
|
+
` ${s.secondary('What /compact does:')}`,
|
|
236
|
+
'',
|
|
237
|
+
` ${s.muted('•')} Summarizes conversation history`,
|
|
238
|
+
` ${s.muted('•')} Preserves key decisions and context`,
|
|
239
|
+
` ${s.muted('•')} Keeps anchors intact (they're separate)`,
|
|
240
|
+
` ${s.muted('•')} Maintains recent messages for continuity`,
|
|
241
|
+
'',
|
|
242
|
+
` ${s.warning('TIP:')} Run ${s.primary('/compact')} when usage exceeds 80%`,
|
|
243
|
+
` to avoid hitting the context limit mid-conversation.`,
|
|
244
|
+
'',
|
|
245
|
+
],
|
|
246
|
+
},
|
|
247
|
+
],
|
|
248
|
+
});
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Importing an Existing Project Tutorial
|
|
3
|
+
*
|
|
4
|
+
* Detailed walkthrough of the /new wizard's "Add workflow to existing project" flow.
|
|
5
|
+
*/
|
|
6
|
+
import type { TutorialBuilder } from '../../tutorial-types.js';
|
|
7
|
+
export declare const importProjectTutorial: TutorialBuilder;
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Importing an Existing Project Tutorial
|
|
3
|
+
*
|
|
4
|
+
* Detailed walkthrough of the /new wizard's "Add workflow to existing project" flow.
|
|
5
|
+
*/
|
|
6
|
+
export const importProjectTutorial = (s) => ({
|
|
7
|
+
id: 'import-project',
|
|
8
|
+
title: 'Importing an Existing Project',
|
|
9
|
+
description: 'Add compilr workflow to existing code',
|
|
10
|
+
pages: [
|
|
11
|
+
// Page 1: Introduction
|
|
12
|
+
{
|
|
13
|
+
title: 'Importing an Existing Project',
|
|
14
|
+
lines: [
|
|
15
|
+
'',
|
|
16
|
+
` Already have a codebase? You can add compilr workflow tracking`,
|
|
17
|
+
` to any existing project without changing your code.`,
|
|
18
|
+
'',
|
|
19
|
+
` Run ${s.primary('/new')} and select the second option:`,
|
|
20
|
+
'',
|
|
21
|
+
` ${s.primaryBold('Initialize New Project')} ${s.muted('[0/8]')}`,
|
|
22
|
+
'',
|
|
23
|
+
` ${s.primary('What would you like to do?')}`,
|
|
24
|
+
'',
|
|
25
|
+
` 1. Start a new project`,
|
|
26
|
+
` ${s.primary('>')} 2. Add workflow to existing project`,
|
|
27
|
+
'',
|
|
28
|
+
` ${s.muted('Import an existing codebase and add')}`,
|
|
29
|
+
` ${s.muted('compilr workflow tracking.')}`,
|
|
30
|
+
'',
|
|
31
|
+
` ${s.muted('Up/Down Navigate | Enter Select | q/Esc Cancel')}`,
|
|
32
|
+
'',
|
|
33
|
+
],
|
|
34
|
+
},
|
|
35
|
+
// Page 2: Project Path [1/5]
|
|
36
|
+
{
|
|
37
|
+
title: 'Project Path',
|
|
38
|
+
lines: [
|
|
39
|
+
'',
|
|
40
|
+
` ${s.primaryBold('Import Existing Project')} ${s.muted('[1/5]')}`,
|
|
41
|
+
'',
|
|
42
|
+
` ${s.primary('Enter path to existing project')}`,
|
|
43
|
+
'',
|
|
44
|
+
` ${s.primary('>')} my-ext-project${s.muted('|')}`,
|
|
45
|
+
'',
|
|
46
|
+
` ${s.muted('Enter absolute or relative path to project directory')}`,
|
|
47
|
+
` ${s.muted('Tab for autocomplete')}`,
|
|
48
|
+
'',
|
|
49
|
+
` ${s.muted('Enter Confirm | Tab Autocomplete | Esc Cancel')}`,
|
|
50
|
+
'',
|
|
51
|
+
` ${s.warning('TIP:')} Use Tab to autocomplete directory names as you type.`,
|
|
52
|
+
'',
|
|
53
|
+
],
|
|
54
|
+
},
|
|
55
|
+
// Page 3: Detection Results [2/5]
|
|
56
|
+
{
|
|
57
|
+
title: 'Detection Results',
|
|
58
|
+
lines: [
|
|
59
|
+
'',
|
|
60
|
+
` ${s.primaryBold('Import Existing Project')} ${s.muted('[2/5]')}`,
|
|
61
|
+
'',
|
|
62
|
+
` ${s.primary('Project Detection Results')}`,
|
|
63
|
+
'',
|
|
64
|
+
` ${s.success('✓')} Name: My App ${s.muted('(from package.json)')}`,
|
|
65
|
+
` ${s.success('✓')} Language: Node.js / TypeScript`,
|
|
66
|
+
` ${s.muted('-')} Framework: Not detected`,
|
|
67
|
+
` ${s.success('✓')} Git: https://github.com/user/my-app.git`,
|
|
68
|
+
` ${s.success('✓')} COMPILR.md: Found`,
|
|
69
|
+
'',
|
|
70
|
+
` ${s.muted('Press Enter to continue, or Esc to go back')}`,
|
|
71
|
+
'',
|
|
72
|
+
` ${s.muted('Enter Continue | Esc Back')}`,
|
|
73
|
+
'',
|
|
74
|
+
` The wizard auto-detects your project's language, framework,`,
|
|
75
|
+
` git remote, and existing COMPILR.md file.`,
|
|
76
|
+
'',
|
|
77
|
+
],
|
|
78
|
+
},
|
|
79
|
+
// Page 4: Git Remote [3/5]
|
|
80
|
+
{
|
|
81
|
+
title: 'Git Repository Setup',
|
|
82
|
+
lines: [
|
|
83
|
+
'',
|
|
84
|
+
` ${s.primaryBold('Import Existing Project')} ${s.muted('[3/5]')}`,
|
|
85
|
+
'',
|
|
86
|
+
` ${s.primary('Git Repository Setup')}`,
|
|
87
|
+
'',
|
|
88
|
+
` ${s.muted('Detected remote:')} https://github.com/user/my-app.git`,
|
|
89
|
+
'',
|
|
90
|
+
` ${s.primary('>')} Use detected remote`,
|
|
91
|
+
` Enter different remote URL`,
|
|
92
|
+
` Skip git remote (local only)`,
|
|
93
|
+
'',
|
|
94
|
+
` ${s.muted('Up/Down Navigate | Enter Select | Esc Back')}`,
|
|
95
|
+
'',
|
|
96
|
+
` If a git remote is detected, you can use it, change it, or skip.`,
|
|
97
|
+
'',
|
|
98
|
+
],
|
|
99
|
+
},
|
|
100
|
+
// Page 5: Workflow Mode [4/5]
|
|
101
|
+
{
|
|
102
|
+
title: 'Workflow Mode',
|
|
103
|
+
lines: [
|
|
104
|
+
'',
|
|
105
|
+
` ${s.primaryBold('Import Existing Project')} ${s.muted('[4/5]')}`,
|
|
106
|
+
'',
|
|
107
|
+
` ${s.primary('Workflow mode')}`,
|
|
108
|
+
'',
|
|
109
|
+
` ${s.primary('>')} 1. Flexible (user-driven, exploratory) ${s.muted('(recommended)')}`,
|
|
110
|
+
` 2. Guided (structured step-by-step workflow)`,
|
|
111
|
+
'',
|
|
112
|
+
` ${s.muted('Flexible: Work at your own pace, agent responds to requests')}`,
|
|
113
|
+
` ${s.muted('Guided: Agent suggests next steps, tracks work item progress')}`,
|
|
114
|
+
'',
|
|
115
|
+
` ${s.muted('Up/Down Navigate | Enter Select | Esc Back')}`,
|
|
116
|
+
'',
|
|
117
|
+
` ${s.warning('TIP:')} Start with Flexible. Switch to Guided anytime via ${s.primary('/workflow')}.`,
|
|
118
|
+
'',
|
|
119
|
+
],
|
|
120
|
+
},
|
|
121
|
+
// Page 6: Confirmation [5/5]
|
|
122
|
+
{
|
|
123
|
+
title: 'Confirmation',
|
|
124
|
+
lines: [
|
|
125
|
+
'',
|
|
126
|
+
` ${s.primaryBold('Import Existing Project')} ${s.muted('[5/5]')}`,
|
|
127
|
+
'',
|
|
128
|
+
` ${s.primary('Ready to import project?')}`,
|
|
129
|
+
'',
|
|
130
|
+
` Path: ${s.primary('/workspace/my-ext-project')}`,
|
|
131
|
+
` Name: ${s.primary('My App')}`,
|
|
132
|
+
` Language: ${s.primary('Node.js / TypeScript')}`,
|
|
133
|
+
` Git Remote: ${s.primary('https://github.com/user/my-app.git')}`,
|
|
134
|
+
` Workflow: ${s.primary('Flexible (user-driven, exploratory)')}`,
|
|
135
|
+
'',
|
|
136
|
+
` ${s.muted('Will create:')}`,
|
|
137
|
+
` ${s.success('✓')} .compilr/config.json ${s.muted('(local config)')}`,
|
|
138
|
+
` ${s.success('✓')} Database entry ${s.muted('(project tracking)')}`,
|
|
139
|
+
'',
|
|
140
|
+
` ${s.muted('Note: This project is outside your projects folder.')}`,
|
|
141
|
+
` ${s.muted(' It will be tracked at its current location.')}`,
|
|
142
|
+
'',
|
|
143
|
+
` ${s.primary('>')} Import`,
|
|
144
|
+
` Cancel`,
|
|
145
|
+
'',
|
|
146
|
+
` ${s.muted('Up/Down Navigate | Enter Confirm | Esc Back')}`,
|
|
147
|
+
'',
|
|
148
|
+
],
|
|
149
|
+
},
|
|
150
|
+
// Page 7: What Gets Created
|
|
151
|
+
{
|
|
152
|
+
title: 'What Gets Created',
|
|
153
|
+
lines: [
|
|
154
|
+
'',
|
|
155
|
+
` ${s.secondary('After pressing Import, you get:')}`,
|
|
156
|
+
'',
|
|
157
|
+
` ${s.success('✓')} ${s.primary('.compilr/config.json')} - Local project config`,
|
|
158
|
+
` ${s.muted('Added to your existing project directory')}`,
|
|
159
|
+
'',
|
|
160
|
+
` ${s.success('✓')} ${s.primary('Database entry')} - Project tracking`,
|
|
161
|
+
` ${s.muted('The CLI now knows about your project')}`,
|
|
162
|
+
'',
|
|
163
|
+
` ${s.secondary('Your existing code is not modified.')}`,
|
|
164
|
+
` No files are changed, moved, or deleted.`,
|
|
165
|
+
'',
|
|
166
|
+
` You'll return to the Dashboard with your imported project`,
|
|
167
|
+
` selected and ready to use.`,
|
|
168
|
+
'',
|
|
169
|
+
],
|
|
170
|
+
},
|
|
171
|
+
],
|
|
172
|
+
});
|