@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,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Settings Commands for REPL V2
|
|
3
|
+
*
|
|
4
|
+
* Commands for configuration: theme, config, verbose, model, tools, agents
|
|
5
|
+
*/
|
|
6
|
+
import type { CommandHandlerV2 } from '../types.js';
|
|
7
|
+
export declare const themeCommand: CommandHandlerV2;
|
|
8
|
+
export declare const configCommand: CommandHandlerV2;
|
|
9
|
+
export declare const verboseCommand: CommandHandlerV2;
|
|
10
|
+
export declare const modelCommand: CommandHandlerV2;
|
|
11
|
+
export declare const toolsCommand: CommandHandlerV2;
|
|
12
|
+
export declare const keysCommand: CommandHandlerV2;
|
|
13
|
+
export declare const mascotCommand: CommandHandlerV2;
|
|
14
|
+
export declare const agentsCommand: CommandHandlerV2;
|
|
15
|
+
export declare const updateCommand: CommandHandlerV2;
|
|
16
|
+
export declare const permissionsCommand: CommandHandlerV2;
|
|
17
|
+
export declare const settingsCommands: CommandHandlerV2[];
|
|
@@ -0,0 +1,417 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Settings Commands for REPL V2
|
|
3
|
+
*
|
|
4
|
+
* Commands for configuration: theme, config, verbose, model, tools, agents
|
|
5
|
+
*/
|
|
6
|
+
import { ThemeOverlayV2, ModelOverlayV2, ToolsOverlayV2, KeysOverlayV2, MascotOverlayV2, AgentsOverlayV2, ConfigOverlayV2, PermissionsOverlayV2 } from '../../ui/overlay/index.js';
|
|
7
|
+
import { getSetting, getSettings, recordUpdateCheck, permissionModeToAgentMode } from '../../settings/index.js';
|
|
8
|
+
import { getToolPermissionInfo } from '../../agent.js';
|
|
9
|
+
import { checkForUpdates, performUpdate } from '../../utils/update-checker.js';
|
|
10
|
+
import { getRegisteredMetaTools, TOOL_NAMES, getToolStats } from '../../tools.js';
|
|
11
|
+
// =============================================================================
|
|
12
|
+
// Theme Command
|
|
13
|
+
// =============================================================================
|
|
14
|
+
export const themeCommand = {
|
|
15
|
+
name: 'theme',
|
|
16
|
+
description: 'Change color theme',
|
|
17
|
+
details: 'Opens the theme selector overlay. Browse themes with tabs for Curated, All, Dark, and Light. Themes are terminal color schemes that change the UI appearance.',
|
|
18
|
+
examples: [{ code: '/theme' }],
|
|
19
|
+
interactions: [
|
|
20
|
+
'Tab cycles: Curated → All → Dark → Light',
|
|
21
|
+
'↑/↓ or j/k to navigate, ←/→ for pages',
|
|
22
|
+
'/ to search themes by name',
|
|
23
|
+
'1-9,0 for quick selection (Curated tab)',
|
|
24
|
+
'Enter/Space to select, q/Esc to close',
|
|
25
|
+
],
|
|
26
|
+
async execute(_args, ctx) {
|
|
27
|
+
const themeOverlay = new ThemeOverlayV2();
|
|
28
|
+
await ctx.ui.showOverlay(themeOverlay);
|
|
29
|
+
return true;
|
|
30
|
+
},
|
|
31
|
+
};
|
|
32
|
+
// =============================================================================
|
|
33
|
+
// Config Command
|
|
34
|
+
// =============================================================================
|
|
35
|
+
export const configCommand = {
|
|
36
|
+
name: 'config',
|
|
37
|
+
description: 'Open settings panel',
|
|
38
|
+
details: 'Opens the configuration overlay where you can change model, theme, permissions, and other settings.',
|
|
39
|
+
examples: [{ code: '/config' }],
|
|
40
|
+
interactions: [
|
|
41
|
+
'Tab cycles: Status → Config → Usage → Environment',
|
|
42
|
+
'↑/↓ to navigate in Config tab',
|
|
43
|
+
'Enter/Space to toggle or open submenu',
|
|
44
|
+
'Esc to exit',
|
|
45
|
+
],
|
|
46
|
+
async execute(_args, ctx) {
|
|
47
|
+
// Gather current session info
|
|
48
|
+
const currentModel = getSetting('defaultModel') || 'unknown';
|
|
49
|
+
const currentProvider = getSetting('defaultProvider');
|
|
50
|
+
// Calculate tool counts from actual tool registry
|
|
51
|
+
const toolStats = getToolStats();
|
|
52
|
+
const metaTools = getRegisteredMetaTools();
|
|
53
|
+
// Agent gets: direct tools + 5 additional tools:
|
|
54
|
+
// - list_tools, get_tool_info, use_tool (meta-tool access)
|
|
55
|
+
// - task (subagent spawning)
|
|
56
|
+
// - suggest (next action suggestions)
|
|
57
|
+
const directToolCount = toolStats.directTools + 5;
|
|
58
|
+
// metaTools.length is the actual count from the registry
|
|
59
|
+
const totalToolCount = directToolCount + metaTools.length;
|
|
60
|
+
// Calculate total message count across all team agents if team exists
|
|
61
|
+
let messageCount = ctx.getHistory?.().length ?? 0;
|
|
62
|
+
if (ctx.team) {
|
|
63
|
+
messageCount = 0;
|
|
64
|
+
for (const agent of ctx.team.getAll()) {
|
|
65
|
+
messageCount += agent.getContextStats().messageCount;
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
const configOverlay = new ConfigOverlayV2({
|
|
69
|
+
version: ctx.version,
|
|
70
|
+
model: currentModel,
|
|
71
|
+
provider: currentProvider === 'auto' ? 'claude' : currentProvider,
|
|
72
|
+
cwd: process.cwd(),
|
|
73
|
+
toolCount: totalToolCount,
|
|
74
|
+
directToolCount,
|
|
75
|
+
metaToolCount: metaTools.length,
|
|
76
|
+
hasTeam: ctx.team !== undefined && ctx.team.size > 1,
|
|
77
|
+
startTime: ctx.startTime ?? new Date(),
|
|
78
|
+
inputTokens: ctx.sessionInputTokens ?? 0,
|
|
79
|
+
outputTokens: ctx.sessionOutputTokens ?? 0,
|
|
80
|
+
requests: ctx.sessionRequests ?? 0,
|
|
81
|
+
contextUsed: 0, // TODO: Get from context manager
|
|
82
|
+
contextMax: 200000,
|
|
83
|
+
messageCount,
|
|
84
|
+
});
|
|
85
|
+
const result = await ctx.ui.showOverlay(configOverlay);
|
|
86
|
+
if (result?.settingsChanged) {
|
|
87
|
+
ctx.ui.print({ type: 'info', message: 'Settings updated' });
|
|
88
|
+
}
|
|
89
|
+
return true;
|
|
90
|
+
},
|
|
91
|
+
};
|
|
92
|
+
// =============================================================================
|
|
93
|
+
// Verbose Command
|
|
94
|
+
// =============================================================================
|
|
95
|
+
export const verboseCommand = {
|
|
96
|
+
name: 'verbose',
|
|
97
|
+
description: 'Toggle verbose mode',
|
|
98
|
+
details: 'Toggles verbose mode on or off. When enabled, shows additional debug information during agent execution.',
|
|
99
|
+
examples: [{ code: '/verbose' }],
|
|
100
|
+
execute(_args, ctx) {
|
|
101
|
+
const config = ctx.ui.getConfig();
|
|
102
|
+
const newVerbose = !config.verbose;
|
|
103
|
+
ctx.ui.setConfig({ verbose: newVerbose });
|
|
104
|
+
ctx.ui.print({
|
|
105
|
+
type: 'info',
|
|
106
|
+
message: `Verbose mode: ${newVerbose ? 'ON' : 'OFF'}`,
|
|
107
|
+
});
|
|
108
|
+
return Promise.resolve(true);
|
|
109
|
+
},
|
|
110
|
+
};
|
|
111
|
+
// =============================================================================
|
|
112
|
+
// Model Command
|
|
113
|
+
// =============================================================================
|
|
114
|
+
export const modelCommand = {
|
|
115
|
+
name: 'model',
|
|
116
|
+
description: 'Change AI model',
|
|
117
|
+
details: 'Opens the model selector overlay. Choose from Claude, OpenAI, Gemini, or Ollama models. Changes within the same provider apply immediately; switching providers requires restart.',
|
|
118
|
+
examples: [{ code: '/model' }],
|
|
119
|
+
interactions: [
|
|
120
|
+
'Tab/Shift+Tab to switch providers',
|
|
121
|
+
'1-4 for quick provider selection',
|
|
122
|
+
'↑/↓ or j/k to navigate models',
|
|
123
|
+
'Enter to view model details',
|
|
124
|
+
'In details: e Edit · t Test · a Set Active · d Reset Default',
|
|
125
|
+
'Esc to go back/close',
|
|
126
|
+
],
|
|
127
|
+
async execute(_args, ctx) {
|
|
128
|
+
const currentModel = getSetting('defaultModel') ?? undefined;
|
|
129
|
+
const currentProvider = getSetting('defaultProvider');
|
|
130
|
+
const modelOverlay = new ModelOverlayV2({
|
|
131
|
+
currentModel: currentModel ?? undefined,
|
|
132
|
+
currentProvider: currentProvider === 'auto' ? undefined : currentProvider,
|
|
133
|
+
});
|
|
134
|
+
await ctx.ui.showOverlay(modelOverlay);
|
|
135
|
+
// Model changes are handled in the detail screen via setSetting()
|
|
136
|
+
// No need to process result here
|
|
137
|
+
return true;
|
|
138
|
+
},
|
|
139
|
+
};
|
|
140
|
+
// =============================================================================
|
|
141
|
+
// Tools Command
|
|
142
|
+
// =============================================================================
|
|
143
|
+
export const toolsCommand = {
|
|
144
|
+
name: 'tools',
|
|
145
|
+
description: 'Show available tools',
|
|
146
|
+
details: 'Shows all tools available to the agent including file operations, bash, git, and custom tools. View tool parameters and permission levels.',
|
|
147
|
+
examples: [{ code: '/tools' }],
|
|
148
|
+
interactions: [
|
|
149
|
+
'↑/↓ or j/k to navigate tools',
|
|
150
|
+
'Enter to view tool details',
|
|
151
|
+
'Esc to close',
|
|
152
|
+
],
|
|
153
|
+
async execute(_args, ctx) {
|
|
154
|
+
// Get tools from agent if available, otherwise use fallback list
|
|
155
|
+
const tools = ctx.agent ? getAgentTools(ctx) : getDefaultTools();
|
|
156
|
+
const toolsOverlay = new ToolsOverlayV2({ tools });
|
|
157
|
+
await ctx.ui.showOverlay(toolsOverlay);
|
|
158
|
+
return true;
|
|
159
|
+
},
|
|
160
|
+
};
|
|
161
|
+
/**
|
|
162
|
+
* Get tool definitions from the agent with full parameter and permission info.
|
|
163
|
+
* Includes both direct tools and meta-registry tools.
|
|
164
|
+
*/
|
|
165
|
+
function getAgentTools(ctx) {
|
|
166
|
+
if (!ctx.agent)
|
|
167
|
+
return getDefaultTools();
|
|
168
|
+
// Get direct tools from agent
|
|
169
|
+
const directTools = ctx.agent.getToolDefinitions();
|
|
170
|
+
// Get meta-registry tools
|
|
171
|
+
const metaTools = getRegisteredMetaTools();
|
|
172
|
+
// Combine and map to ToolInfo format
|
|
173
|
+
const allTools = [...directTools, ...metaTools.map(t => t.definition)];
|
|
174
|
+
return allTools.map((t) => {
|
|
175
|
+
// Extract parameters from inputSchema
|
|
176
|
+
const parameters = [];
|
|
177
|
+
const props = t.inputSchema.properties;
|
|
178
|
+
const required = t.inputSchema.required ?? [];
|
|
179
|
+
for (const [name, schema] of Object.entries(props)) {
|
|
180
|
+
parameters.push({
|
|
181
|
+
name,
|
|
182
|
+
type: schema.type ?? 'unknown',
|
|
183
|
+
description: schema.description,
|
|
184
|
+
required: required.includes(name),
|
|
185
|
+
});
|
|
186
|
+
}
|
|
187
|
+
// Look up permission info
|
|
188
|
+
const permissionInfo = getToolPermissionInfo(t.name);
|
|
189
|
+
const permission = permissionInfo
|
|
190
|
+
? { level: permissionInfo.level, description: permissionInfo.description }
|
|
191
|
+
: undefined;
|
|
192
|
+
// For task tool, extract just the intro (before verbose agent types list)
|
|
193
|
+
let description = t.description;
|
|
194
|
+
if (t.name === 'task' && description.includes('Available agent types:')) {
|
|
195
|
+
description = description.split('Available agent types:')[0].trim();
|
|
196
|
+
}
|
|
197
|
+
// Mark meta-registry tools (not directly callable, use via use_tool)
|
|
198
|
+
const isMeta = metaTools.some(mt => mt.definition.name === t.name);
|
|
199
|
+
return {
|
|
200
|
+
name: t.name,
|
|
201
|
+
description: isMeta ? `[via use_tool] ${description}` : description,
|
|
202
|
+
parameters,
|
|
203
|
+
permission,
|
|
204
|
+
};
|
|
205
|
+
});
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* Fallback tool definitions when agent is not available.
|
|
209
|
+
* Uses TOOL_NAMES constants for consistency across the codebase.
|
|
210
|
+
*/
|
|
211
|
+
function getDefaultTools() {
|
|
212
|
+
// Direct tools (always available)
|
|
213
|
+
const directTools = [
|
|
214
|
+
{ name: TOOL_NAMES.READ_FILE, description: 'Read contents of a file' },
|
|
215
|
+
{ name: TOOL_NAMES.WRITE_FILE, description: 'Write contents to a file' },
|
|
216
|
+
{ name: TOOL_NAMES.EDIT, description: 'Edit a file with find/replace' },
|
|
217
|
+
{ name: TOOL_NAMES.GLOB, description: 'Find files matching a pattern' },
|
|
218
|
+
{ name: TOOL_NAMES.GREP, description: 'Search for text in files' },
|
|
219
|
+
{ name: TOOL_NAMES.BASH, description: 'Execute a bash command' },
|
|
220
|
+
{ name: TOOL_NAMES.BASH_OUTPUT, description: 'Get output from background shell' },
|
|
221
|
+
{ name: TOOL_NAMES.KILL_SHELL, description: 'Kill a background shell' },
|
|
222
|
+
{ name: TOOL_NAMES.TODO_WRITE, description: 'Write items to the todo list' },
|
|
223
|
+
{ name: TOOL_NAMES.TODO_READ, description: 'Read the current todo list' },
|
|
224
|
+
{ name: TOOL_NAMES.ASK_USER, description: 'Ask the user a question' },
|
|
225
|
+
{ name: TOOL_NAMES.ASK_USER_SIMPLE, description: 'Ask the user a simple question' },
|
|
226
|
+
{ name: TOOL_NAMES.DELEGATE, description: 'Delegate to a specialist agent' },
|
|
227
|
+
];
|
|
228
|
+
// Meta-tools (for accessing specialized tools)
|
|
229
|
+
const metaToolsList = [
|
|
230
|
+
{ name: TOOL_NAMES.LIST_TOOLS, description: 'List all available specialized tools' },
|
|
231
|
+
{ name: TOOL_NAMES.GET_TOOL_INFO, description: 'Get detailed info about a tool' },
|
|
232
|
+
{ name: TOOL_NAMES.USE_TOOL, description: 'Execute a specialized tool' },
|
|
233
|
+
];
|
|
234
|
+
return [...directTools, ...metaToolsList];
|
|
235
|
+
}
|
|
236
|
+
// =============================================================================
|
|
237
|
+
// Keys Command
|
|
238
|
+
// =============================================================================
|
|
239
|
+
export const keysCommand = {
|
|
240
|
+
name: 'keys',
|
|
241
|
+
description: 'Manage API keys',
|
|
242
|
+
details: 'Opens an interactive overlay to view, set, and delete API keys for LLM providers (Anthropic, OpenAI, Google). Keys are encrypted and stored locally in ~/.compilr-dev/credentials.enc.',
|
|
243
|
+
examples: [{ code: '/keys' }],
|
|
244
|
+
interactions: [
|
|
245
|
+
'↑/↓ to navigate providers',
|
|
246
|
+
'Enter to edit key',
|
|
247
|
+
'd to delete stored key',
|
|
248
|
+
'Esc to close',
|
|
249
|
+
],
|
|
250
|
+
async execute(_args, ctx) {
|
|
251
|
+
const keysOverlay = new KeysOverlayV2();
|
|
252
|
+
const result = await ctx.ui.showOverlay(keysOverlay);
|
|
253
|
+
if (result?.changed) {
|
|
254
|
+
ctx.ui.print({ type: 'success', message: 'API keys updated' });
|
|
255
|
+
}
|
|
256
|
+
return true;
|
|
257
|
+
},
|
|
258
|
+
};
|
|
259
|
+
// =============================================================================
|
|
260
|
+
// Mascot Command
|
|
261
|
+
// =============================================================================
|
|
262
|
+
export const mascotCommand = {
|
|
263
|
+
name: 'mascot',
|
|
264
|
+
description: 'Select mascot expression',
|
|
265
|
+
details: 'Opens the mascot selector overlay. Choose the mascot expression shown in the CLI. Options include various expressions, random (changes each startup), or none.',
|
|
266
|
+
examples: [{ code: '/mascot' }],
|
|
267
|
+
interactions: [
|
|
268
|
+
'↑/↓ or j/k to navigate options',
|
|
269
|
+
'Enter/Space to select mascot',
|
|
270
|
+
'q/Esc to close without changing',
|
|
271
|
+
],
|
|
272
|
+
async execute(_args, ctx) {
|
|
273
|
+
const currentMascot = getSettings().mascot;
|
|
274
|
+
const mascotOverlay = new MascotOverlayV2({ currentMascot });
|
|
275
|
+
const result = await ctx.ui.showOverlay(mascotOverlay);
|
|
276
|
+
if (result?.mascotChanged) {
|
|
277
|
+
ctx.ui.print({ type: 'success', message: `Mascot changed to: ${result.mascotChanged}` });
|
|
278
|
+
}
|
|
279
|
+
return true;
|
|
280
|
+
},
|
|
281
|
+
};
|
|
282
|
+
// =============================================================================
|
|
283
|
+
// Agents Command
|
|
284
|
+
// =============================================================================
|
|
285
|
+
export const agentsCommand = {
|
|
286
|
+
name: 'agents',
|
|
287
|
+
description: 'View and manage agents',
|
|
288
|
+
details: 'View and configure sub-agents that can be spawned for specialized tasks like code review, testing, or exploration.',
|
|
289
|
+
examples: [{ code: '/agents' }],
|
|
290
|
+
interactions: [
|
|
291
|
+
'Tab to switch: built-in ↔ custom',
|
|
292
|
+
'↑/↓ to navigate agents',
|
|
293
|
+
'Enter to select or create new',
|
|
294
|
+
'Esc to close',
|
|
295
|
+
],
|
|
296
|
+
async execute(_args, ctx) {
|
|
297
|
+
const agentsOverlay = new AgentsOverlayV2();
|
|
298
|
+
const result = await ctx.ui.showOverlay(agentsOverlay);
|
|
299
|
+
if (result?.created) {
|
|
300
|
+
ctx.ui.print({ type: 'success', message: `Agent created: ${result.created}` });
|
|
301
|
+
}
|
|
302
|
+
else if (result?.edited) {
|
|
303
|
+
ctx.ui.print({ type: 'success', message: `Agent updated: ${result.edited}` });
|
|
304
|
+
}
|
|
305
|
+
else if (result?.deleted) {
|
|
306
|
+
ctx.ui.print({ type: 'info', message: `Agent deleted: ${result.deleted}` });
|
|
307
|
+
}
|
|
308
|
+
return true;
|
|
309
|
+
},
|
|
310
|
+
};
|
|
311
|
+
// =============================================================================
|
|
312
|
+
// Update Command
|
|
313
|
+
// =============================================================================
|
|
314
|
+
export const updateCommand = {
|
|
315
|
+
name: 'update',
|
|
316
|
+
description: 'Check for CLI updates',
|
|
317
|
+
details: 'Checks npm for new versions of the CLI. Use --install flag to automatically install updates.',
|
|
318
|
+
examples: [
|
|
319
|
+
{ code: '/update', description: 'Check for updates' },
|
|
320
|
+
{ code: '/update --install', description: 'Install available update' },
|
|
321
|
+
],
|
|
322
|
+
async execute(args, ctx) {
|
|
323
|
+
ctx.ui.print({ type: 'info', message: 'Checking for updates...' });
|
|
324
|
+
const updateInfo = await checkForUpdates();
|
|
325
|
+
recordUpdateCheck();
|
|
326
|
+
if (!updateInfo.updateAvailable) {
|
|
327
|
+
ctx.ui.print({
|
|
328
|
+
type: 'success',
|
|
329
|
+
message: `You're on the latest version (v${updateInfo.currentVersion})`,
|
|
330
|
+
});
|
|
331
|
+
return true;
|
|
332
|
+
}
|
|
333
|
+
ctx.ui.print({
|
|
334
|
+
type: 'warning',
|
|
335
|
+
message: `Update available: v${updateInfo.currentVersion} → v${updateInfo.latestVersion}`,
|
|
336
|
+
});
|
|
337
|
+
// If --install flag is passed, perform the update
|
|
338
|
+
if (args.includes('--install') || args.includes('-i')) {
|
|
339
|
+
ctx.ui.print({ type: 'info', message: 'Installing update...' });
|
|
340
|
+
const result = await performUpdate();
|
|
341
|
+
ctx.ui.print({
|
|
342
|
+
type: result.success ? 'success' : 'error',
|
|
343
|
+
message: result.message,
|
|
344
|
+
});
|
|
345
|
+
}
|
|
346
|
+
else {
|
|
347
|
+
ctx.ui.print({
|
|
348
|
+
type: 'info',
|
|
349
|
+
message: 'Run "/update --install" or "npm update -g @compilr-dev/cli" to install',
|
|
350
|
+
});
|
|
351
|
+
}
|
|
352
|
+
return true;
|
|
353
|
+
},
|
|
354
|
+
};
|
|
355
|
+
// =============================================================================
|
|
356
|
+
// Permissions Command
|
|
357
|
+
// =============================================================================
|
|
358
|
+
export const permissionsCommand = {
|
|
359
|
+
name: 'permissions',
|
|
360
|
+
description: 'Manage tool permissions',
|
|
361
|
+
details: 'Opens a 3-tab overlay to manage tool permissions. Configure permission rules with wildcard patterns, set global permission modes, and view/revoke session grants.',
|
|
362
|
+
examples: [{ code: '/permissions' }],
|
|
363
|
+
interactions: [
|
|
364
|
+
'Tab cycles: Rules → Mode → Session',
|
|
365
|
+
'↑/↓ to navigate, ←/→ for pages',
|
|
366
|
+
'a to add rule, e/Enter to edit, d to delete',
|
|
367
|
+
'r to reset to defaults (Rules tab)',
|
|
368
|
+
'Enter/Space to select mode (Mode tab)',
|
|
369
|
+
'r to revoke, c to clear all (Session tab)',
|
|
370
|
+
],
|
|
371
|
+
async execute(_args, ctx) {
|
|
372
|
+
// Get session grants from agent and convert to Map<string, Date>
|
|
373
|
+
// The overlay expects timestamps, but PermissionManager only stores names
|
|
374
|
+
// Use current time as placeholder for all grants
|
|
375
|
+
const sessionGrants = new Map();
|
|
376
|
+
if (ctx.agent) {
|
|
377
|
+
const grants = ctx.agent.getSessionPermissions();
|
|
378
|
+
const now = new Date();
|
|
379
|
+
for (const toolName of grants) {
|
|
380
|
+
sessionGrants.set(toolName, now);
|
|
381
|
+
}
|
|
382
|
+
}
|
|
383
|
+
// Create callbacks that capture the agent reference
|
|
384
|
+
const agent = ctx.agent;
|
|
385
|
+
const permissionsOverlay = new PermissionsOverlayV2({
|
|
386
|
+
sessionGrants,
|
|
387
|
+
onRevokeGrant: agent
|
|
388
|
+
? (toolName) => agent.revokeSessionPermission(toolName)
|
|
389
|
+
: undefined,
|
|
390
|
+
onClearGrants: agent
|
|
391
|
+
? () => { agent.clearSessionPermissions(); }
|
|
392
|
+
: undefined,
|
|
393
|
+
onModeChange: (newMode) => {
|
|
394
|
+
// Sync UI mode when permission mode changes in overlay
|
|
395
|
+
const uiMode = permissionModeToAgentMode(newMode);
|
|
396
|
+
ctx.ui.setMode(uiMode);
|
|
397
|
+
},
|
|
398
|
+
});
|
|
399
|
+
await ctx.ui.showOverlay(permissionsOverlay);
|
|
400
|
+
return true;
|
|
401
|
+
},
|
|
402
|
+
};
|
|
403
|
+
// =============================================================================
|
|
404
|
+
// Export All Settings Commands
|
|
405
|
+
// =============================================================================
|
|
406
|
+
export const settingsCommands = [
|
|
407
|
+
themeCommand,
|
|
408
|
+
configCommand,
|
|
409
|
+
verboseCommand,
|
|
410
|
+
modelCommand,
|
|
411
|
+
toolsCommand,
|
|
412
|
+
keysCommand,
|
|
413
|
+
mascotCommand,
|
|
414
|
+
agentsCommand,
|
|
415
|
+
updateCommand,
|
|
416
|
+
permissionsCommand,
|
|
417
|
+
];
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tasks Command Handler - View and manage background shell tasks
|
|
3
|
+
*/
|
|
4
|
+
import { TasksOverlayV2 } from '../../ui/overlay/impl/tasks-overlay-v2.js';
|
|
5
|
+
export const tasksCommand = {
|
|
6
|
+
name: 'tasks',
|
|
7
|
+
aliases: ['bg', 'background'],
|
|
8
|
+
description: 'View and manage background shell tasks',
|
|
9
|
+
details: `
|
|
10
|
+
Shows background shell processes started via the bash tool with run_in_background=true.
|
|
11
|
+
|
|
12
|
+
From the overlay you can:
|
|
13
|
+
- View running and completed tasks
|
|
14
|
+
- See task output
|
|
15
|
+
- Kill running tasks
|
|
16
|
+
- Clear completed tasks
|
|
17
|
+
|
|
18
|
+
Keyboard shortcut: Ctrl+B opens this overlay.
|
|
19
|
+
`.trim(),
|
|
20
|
+
examples: [
|
|
21
|
+
{ code: '/tasks', description: 'Open background tasks overlay' },
|
|
22
|
+
{ code: '/bg', description: 'Alias for /tasks' },
|
|
23
|
+
],
|
|
24
|
+
interactions: [
|
|
25
|
+
'↑↓ or j/k to navigate task list',
|
|
26
|
+
'Enter to view task output',
|
|
27
|
+
'x to kill running task',
|
|
28
|
+
'c to clear completed tasks',
|
|
29
|
+
'r to refresh output (in detail view)',
|
|
30
|
+
],
|
|
31
|
+
async execute(_args, ctx) {
|
|
32
|
+
const overlay = new TasksOverlayV2();
|
|
33
|
+
await ctx.ui.showOverlay(overlay);
|
|
34
|
+
return true;
|
|
35
|
+
},
|
|
36
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Team Commands for REPL V2
|
|
3
|
+
*
|
|
4
|
+
* Commands for managing multi-agent teams.
|
|
5
|
+
*/
|
|
6
|
+
import type { CommandHandlerV2 } from '../types.js';
|
|
7
|
+
export declare const teamCommand: CommandHandlerV2;
|
|
8
|
+
export declare const artifactCommand: CommandHandlerV2;
|
|
9
|
+
export declare const teamCommands: CommandHandlerV2[];
|