@compilr-dev/cli 0.5.0 → 0.5.2
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/LICENSE +108 -0
- package/README.md +237 -69
- 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 +61 -4
- package/dist/agent.js +241 -245
- package/dist/anchors/index.d.ts +1 -1
- package/dist/anchors/index.js +1 -1
- package/dist/anchors/project-anchors.d.ts +2 -2
- package/dist/anchors/project-anchors.js +1 -1
- 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-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.js +286 -81
- package/dist/commands-v2/handlers/core.d.ts +1 -0
- package/dist/commands-v2/handlers/core.js +133 -8
- package/dist/commands-v2/handlers/debug.js +18 -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 +13 -0
- package/dist/commands-v2/handlers/index.js +39 -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.js +295 -31
- 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 +2 -0
- package/dist/commands-v2/handlers/settings.js +217 -35
- 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 +3 -2
- package/dist/commands-v2/index.js +4 -1
- package/dist/commands-v2/registry.d.ts +15 -0
- package/dist/commands-v2/registry.js +34 -0
- package/dist/commands-v2/types.d.ts +81 -3
- package/dist/commands.js +13 -0
- 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 +6 -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 +448 -271
- package/dist/input-handlers/memory-handler.d.ts +1 -1
- package/dist/input-handlers/memory-handler.js +2 -1
- 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.js +5 -2
- package/dist/repl-v2.d.ts +401 -2
- package/dist/repl-v2.js +2588 -65
- 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 +133 -13
- package/dist/settings/index.js +329 -24
- package/dist/settings/mcp-config.d.ts +76 -0
- package/dist/settings/mcp-config.js +143 -0
- package/dist/settings/paths.d.ts +4 -0
- package/dist/settings/paths.js +6 -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 -61
- package/dist/templates/config-json.d.ts +1 -25
- package/dist/templates/index.d.ts +2 -0
- package/dist/templates/index.js +34 -73
- package/dist/tool-names.d.ts +113 -0
- package/dist/tool-names.js +239 -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.d.ts +2 -2
- package/dist/tools/backlog.js +1 -1
- package/dist/tools/db-tools.d.ts +13 -61
- package/dist/tools/db-tools.js +12 -13
- 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/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/platform-adapter.d.ts +35 -0
- package/dist/tools/platform-adapter.js +404 -0
- package/dist/tools/project-db.d.ts +5 -73
- package/dist/tools/project-db.js +5 -336
- package/dist/tools.d.ts +67 -2
- package/dist/tools.js +240 -48
- package/dist/ui/autocomplete-controller.d.ts +42 -0
- package/dist/ui/autocomplete-controller.js +384 -0
- package/dist/ui/base/index.d.ts +1 -1
- package/dist/ui/base/index.js +1 -1
- package/dist/ui/base/overlay-base-v2.d.ts +10 -0
- package/dist/ui/base/overlay-base-v2.js +14 -0
- package/dist/ui/base/render-utils.d.ts +19 -0
- package/dist/ui/base/render-utils.js +25 -0
- package/dist/ui/base/tabbed-list-overlay-v2.d.ts +16 -1
- package/dist/ui/base/tabbed-list-overlay-v2.js +19 -1
- package/dist/ui/constants/labels.d.ts +14 -0
- package/dist/ui/constants/labels.js +52 -0
- package/dist/ui/conversation-store.d.ts +55 -0
- package/dist/ui/conversation-store.js +107 -0
- package/dist/ui/conversation.js +11 -13
- package/dist/ui/diff.d.ts +7 -1
- package/dist/ui/diff.js +85 -48
- package/dist/ui/ephemeral.js +3 -9
- 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 +74 -7
- package/dist/ui/footer.js +173 -16
- package/dist/ui/input-controller.d.ts +51 -0
- package/dist/ui/input-controller.js +176 -0
- package/dist/ui/input-prompt.d.ts +19 -0
- package/dist/ui/input-prompt.js +206 -14
- package/dist/ui/keyboard-handler.d.ts +57 -0
- package/dist/ui/keyboard-handler.js +557 -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 +0 -4
- package/dist/ui/live-region.js +6 -14
- package/dist/ui/mascot/renderer.d.ts +1 -1
- package/dist/ui/mascot/renderer.js +37 -2
- 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.js +6 -17
- package/dist/ui/overlay/impl/anchors-overlay-v2.js +30 -64
- 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.js +2 -5
- 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 +4 -1
- package/dist/ui/overlay/impl/backlog-overlay-v2.js +55 -16
- 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.js +4 -6
- package/dist/ui/overlay/impl/config-overlay-v2.d.ts +12 -1
- package/dist/ui/overlay/impl/config-overlay-v2.js +164 -100
- 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 +2 -0
- package/dist/ui/overlay/impl/dashboard-overlay-v2.js +26 -3
- 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.js +12 -9
- package/dist/ui/overlay/impl/document-detail-overlay-v2.d.ts +7 -0
- package/dist/ui/overlay/impl/document-detail-overlay-v2.js +119 -78
- 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/help-overlay-v2.d.ts +26 -3
- package/dist/ui/overlay/impl/help-overlay-v2.js +20 -42
- 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/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 +57 -13
- package/dist/ui/overlay/impl/model-overlay-v2.js +1086 -61
- package/dist/ui/overlay/impl/new-overlay-v2.d.ts +37 -6
- package/dist/ui/overlay/impl/new-overlay-v2.js +715 -65
- 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.js +5 -5
- 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 +1 -0
- package/dist/ui/overlay/impl/projects-overlay-v2.js +278 -44
- 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/tools-overlay-v2.js +3 -7
- package/dist/ui/overlay/impl/tutorial-overlay-v2.d.ts +30 -16
- package/dist/ui/overlay/impl/tutorial-overlay-v2.js +133 -956
- package/dist/ui/overlay/impl/workflow-overlay-v2.d.ts +1 -0
- package/dist/ui/overlay/impl/workflow-overlay-v2.js +10 -4
- package/dist/ui/overlay/index.d.ts +20 -1
- package/dist/ui/overlay/index.js +19 -0
- package/dist/ui/overlay/types.d.ts +5 -0
- package/dist/ui/overlay-manager.d.ts +43 -0
- package/dist/ui/overlay-manager.js +238 -0
- package/dist/ui/overlays.js +4 -16
- package/dist/ui/permission-overlay.js +6 -5
- package/dist/ui/status-bar-controller.d.ts +33 -0
- package/dist/ui/status-bar-controller.js +99 -0
- package/dist/ui/subagent-renderer.js +3 -19
- package/dist/ui/terminal-autocomplete-utils.d.ts +23 -0
- package/dist/ui/terminal-autocomplete-utils.js +83 -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 +7 -8
- package/dist/ui/terminal-renderer.js +7 -8
- package/dist/ui/terminal-types.d.ts +179 -0
- package/dist/ui/terminal-types.js +34 -0
- package/dist/ui/terminal-ui.d.ts +144 -276
- package/dist/ui/terminal-ui.js +384 -1861
- package/dist/ui/todo-zone.d.ts +19 -1
- package/dist/ui/todo-zone.js +71 -13
- package/dist/ui/tool-formatters.js +696 -1
- 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/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 +38 -16
- package/dist/utils/open-browser.d.ts +5 -0
- package/dist/utils/open-browser.js +32 -0
- package/dist/utils/path-safety.js +3 -2
- 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/package.json +27 -13
- package/dist/commands/handler-types.d.ts +0 -68
- package/dist/commands/handler-types.js +0 -8
- package/dist/commands/handlers/agent-commands.d.ts +0 -13
- package/dist/commands/handlers/agent-commands.js +0 -305
- package/dist/commands/handlers/design-commands.d.ts +0 -15
- package/dist/commands/handlers/design-commands.js +0 -334
- package/dist/commands/handlers/index.d.ts +0 -20
- package/dist/commands/handlers/index.js +0 -43
- package/dist/commands/handlers/overlay-commands.d.ts +0 -21
- package/dist/commands/handlers/overlay-commands.js +0 -287
- package/dist/commands/handlers/project-commands.d.ts +0 -11
- package/dist/commands/handlers/project-commands.js +0 -167
- package/dist/commands/handlers/simple-commands.d.ts +0 -19
- package/dist/commands/handlers/simple-commands.js +0 -144
- package/dist/commands/registry.d.ts +0 -50
- package/dist/commands/registry.js +0 -75
- package/dist/index.old.d.ts +0 -7
- package/dist/index.old.js +0 -1014
- package/dist/repl.d.ts +0 -149
- package/dist/repl.js +0 -1151
- 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/tools/anchor-tools.d.ts +0 -31
- package/dist/tools/anchor-tools.js +0 -255
- package/dist/tools/backlog-wrappers.d.ts +0 -54
- package/dist/tools/backlog-wrappers.js +0 -338
- package/dist/tools/document-db.d.ts +0 -43
- package/dist/tools/document-db.js +0 -220
- package/dist/tools/workitem-db.d.ts +0 -103
- package/dist/tools/workitem-db.js +0 -549
- package/dist/ui/agents-overlay-v2.d.ts +0 -43
- package/dist/ui/agents-overlay-v2.js +0 -809
- package/dist/ui/agents-overlay.d.ts +0 -12
- package/dist/ui/agents-overlay.js +0 -863
- package/dist/ui/anchors-overlay.d.ts +0 -12
- package/dist/ui/anchors-overlay.js +0 -775
- package/dist/ui/arch-type-overlay.d.ts +0 -15
- package/dist/ui/arch-type-overlay.js +0 -201
- package/dist/ui/ask-user-overlay-v2.d.ts +0 -26
- package/dist/ui/ask-user-overlay-v2.js +0 -555
- package/dist/ui/ask-user-simple-overlay-v2.d.ts +0 -25
- package/dist/ui/ask-user-simple-overlay-v2.js +0 -215
- package/dist/ui/backlog-overlay.d.ts +0 -32
- package/dist/ui/backlog-overlay.js +0 -652
- package/dist/ui/commands-overlay-v2.d.ts +0 -33
- package/dist/ui/commands-overlay-v2.js +0 -441
- package/dist/ui/commands-overlay.d.ts +0 -16
- package/dist/ui/commands-overlay.js +0 -439
- package/dist/ui/config-overlay.d.ts +0 -35
- package/dist/ui/config-overlay.js +0 -707
- package/dist/ui/docs-overlay.d.ts +0 -17
- package/dist/ui/docs-overlay.js +0 -303
- package/dist/ui/footer-v2.d.ts +0 -222
- package/dist/ui/footer-v2.js +0 -1349
- package/dist/ui/help-overlay-v2.d.ts +0 -34
- package/dist/ui/help-overlay-v2.js +0 -309
- package/dist/ui/help-overlay.d.ts +0 -16
- package/dist/ui/help-overlay.js +0 -316
- package/dist/ui/init-overlay-v2.d.ts +0 -34
- package/dist/ui/init-overlay-v2.js +0 -600
- package/dist/ui/init-overlay.d.ts +0 -34
- package/dist/ui/init-overlay.js +0 -604
- package/dist/ui/input-prompt-v2.d.ts +0 -180
- package/dist/ui/input-prompt-v2.js +0 -999
- package/dist/ui/iteration-limit-overlay-v2.d.ts +0 -21
- package/dist/ui/iteration-limit-overlay-v2.js +0 -114
- package/dist/ui/keys-overlay-v2.d.ts +0 -41
- package/dist/ui/keys-overlay-v2.js +0 -248
- package/dist/ui/mascot-overlay-v2.d.ts +0 -41
- package/dist/ui/mascot-overlay-v2.js +0 -138
- package/dist/ui/mascot-overlay.d.ts +0 -21
- package/dist/ui/mascot-overlay.js +0 -146
- package/dist/ui/model-overlay-v2.d.ts +0 -49
- package/dist/ui/model-overlay-v2.js +0 -118
- package/dist/ui/model-overlay.d.ts +0 -27
- package/dist/ui/model-overlay.js +0 -221
- package/dist/ui/model-warning-overlay.d.ts +0 -30
- package/dist/ui/model-warning-overlay.js +0 -169
- package/dist/ui/new-overlay.d.ts +0 -34
- package/dist/ui/new-overlay.js +0 -604
- package/dist/ui/overlay/impl/init-overlay-v2.d.ts +0 -77
- package/dist/ui/overlay/impl/init-overlay-v2.js +0 -593
- package/dist/ui/overlay/overlay-types.d.ts +0 -128
- package/dist/ui/overlay/overlay-types.js +0 -22
- package/dist/ui/overlays/help-overlay-v2.d.ts +0 -28
- package/dist/ui/overlays/help-overlay-v2.js +0 -198
- package/dist/ui/overlays/index.d.ts +0 -11
- package/dist/ui/overlays/index.js +0 -11
- package/dist/ui/permission-overlay-v2.d.ts +0 -36
- package/dist/ui/permission-overlay-v2.js +0 -380
- package/dist/ui/projects-overlay.d.ts +0 -19
- package/dist/ui/projects-overlay.js +0 -484
- package/dist/ui/theme-overlay-v2.d.ts +0 -42
- package/dist/ui/theme-overlay-v2.js +0 -135
- package/dist/ui/theme-overlay.d.ts +0 -24
- package/dist/ui/theme-overlay.js +0 -127
- package/dist/ui/tools-overlay-v2.d.ts +0 -47
- package/dist/ui/tools-overlay-v2.js +0 -218
- package/dist/ui/tools-overlay.d.ts +0 -34
- package/dist/ui/tools-overlay.js +0 -230
- package/dist/ui/tutorial-overlay-v2.d.ts +0 -31
- package/dist/ui/tutorial-overlay-v2.js +0 -1035
- package/dist/ui/tutorial-overlay.d.ts +0 -11
- package/dist/ui/tutorial-overlay.js +0 -1034
- package/dist/ui/workflow-overlay.d.ts +0 -22
- package/dist/ui/workflow-overlay.js +0 -636
|
@@ -12,4 +12,6 @@ export declare const toolsCommand: CommandHandlerV2;
|
|
|
12
12
|
export declare const keysCommand: CommandHandlerV2;
|
|
13
13
|
export declare const mascotCommand: CommandHandlerV2;
|
|
14
14
|
export declare const agentsCommand: CommandHandlerV2;
|
|
15
|
+
export declare const updateCommand: CommandHandlerV2;
|
|
16
|
+
export declare const permissionsCommand: CommandHandlerV2;
|
|
15
17
|
export declare const settingsCommands: CommandHandlerV2[];
|
|
@@ -3,15 +3,26 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Commands for configuration: theme, config, verbose, model, tools, agents
|
|
5
5
|
*/
|
|
6
|
-
import { ThemeOverlayV2, ModelOverlayV2, ToolsOverlayV2, KeysOverlayV2, MascotOverlayV2, AgentsOverlayV2, ConfigOverlayV2 } from '../../ui/overlay/index.js';
|
|
7
|
-
import { getSetting, getSettings } from '../../settings/index.js';
|
|
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
8
|
import { getToolPermissionInfo } from '../../agent.js';
|
|
9
|
+
import { checkForUpdates, performUpdate } from '../../utils/update-checker.js';
|
|
10
|
+
import { getRegisteredMetaTools, TOOL_NAMES, getToolStats } from '../../tools.js';
|
|
9
11
|
// =============================================================================
|
|
10
12
|
// Theme Command
|
|
11
13
|
// =============================================================================
|
|
12
14
|
export const themeCommand = {
|
|
13
15
|
name: 'theme',
|
|
14
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
|
+
],
|
|
15
26
|
async execute(_args, ctx) {
|
|
16
27
|
const themeOverlay = new ThemeOverlayV2();
|
|
17
28
|
await ctx.ui.showOverlay(themeOverlay);
|
|
@@ -24,23 +35,52 @@ export const themeCommand = {
|
|
|
24
35
|
export const configCommand = {
|
|
25
36
|
name: 'config',
|
|
26
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
|
+
],
|
|
27
46
|
async execute(_args, ctx) {
|
|
28
47
|
// Gather current session info
|
|
29
48
|
const currentModel = getSetting('defaultModel') || 'unknown';
|
|
30
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
|
+
}
|
|
31
68
|
const configOverlay = new ConfigOverlayV2({
|
|
32
69
|
version: ctx.version,
|
|
33
70
|
model: currentModel,
|
|
34
71
|
provider: currentProvider === 'auto' ? 'claude' : currentProvider,
|
|
35
72
|
cwd: process.cwd(),
|
|
36
|
-
toolCount:
|
|
73
|
+
toolCount: totalToolCount,
|
|
74
|
+
directToolCount,
|
|
75
|
+
metaToolCount: metaTools.length,
|
|
76
|
+
hasTeam: ctx.team !== undefined && ctx.team.size > 1,
|
|
37
77
|
startTime: ctx.startTime ?? new Date(),
|
|
38
78
|
inputTokens: ctx.sessionInputTokens ?? 0,
|
|
39
79
|
outputTokens: ctx.sessionOutputTokens ?? 0,
|
|
40
80
|
requests: ctx.sessionRequests ?? 0,
|
|
41
81
|
contextUsed: 0, // TODO: Get from context manager
|
|
42
82
|
contextMax: 200000,
|
|
43
|
-
messageCount
|
|
83
|
+
messageCount,
|
|
44
84
|
});
|
|
45
85
|
const result = await ctx.ui.showOverlay(configOverlay);
|
|
46
86
|
if (result?.settingsChanged) {
|
|
@@ -55,6 +95,8 @@ export const configCommand = {
|
|
|
55
95
|
export const verboseCommand = {
|
|
56
96
|
name: 'verbose',
|
|
57
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' }],
|
|
58
100
|
execute(_args, ctx) {
|
|
59
101
|
const config = ctx.ui.getConfig();
|
|
60
102
|
const newVerbose = !config.verbose;
|
|
@@ -72,6 +114,16 @@ export const verboseCommand = {
|
|
|
72
114
|
export const modelCommand = {
|
|
73
115
|
name: 'model',
|
|
74
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
|
+
],
|
|
75
127
|
async execute(_args, ctx) {
|
|
76
128
|
const currentModel = getSetting('defaultModel') ?? undefined;
|
|
77
129
|
const currentProvider = getSetting('defaultProvider');
|
|
@@ -79,21 +131,9 @@ export const modelCommand = {
|
|
|
79
131
|
currentModel: currentModel ?? undefined,
|
|
80
132
|
currentProvider: currentProvider === 'auto' ? undefined : currentProvider,
|
|
81
133
|
});
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
ctx.ui.print({
|
|
86
|
-
type: 'warning',
|
|
87
|
-
message: `Switched to ${result.provider ?? 'unknown'} provider. Restart required.`,
|
|
88
|
-
});
|
|
89
|
-
}
|
|
90
|
-
else {
|
|
91
|
-
ctx.ui.print({
|
|
92
|
-
type: 'success',
|
|
93
|
-
message: `Model changed to ${result.modelChanged}`,
|
|
94
|
-
});
|
|
95
|
-
}
|
|
96
|
-
}
|
|
134
|
+
await ctx.ui.showOverlay(modelOverlay);
|
|
135
|
+
// Model changes are handled in the detail screen via setSetting()
|
|
136
|
+
// No need to process result here
|
|
97
137
|
return true;
|
|
98
138
|
},
|
|
99
139
|
};
|
|
@@ -103,6 +143,13 @@ export const modelCommand = {
|
|
|
103
143
|
export const toolsCommand = {
|
|
104
144
|
name: 'tools',
|
|
105
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
|
+
],
|
|
106
153
|
async execute(_args, ctx) {
|
|
107
154
|
// Get tools from agent if available, otherwise use fallback list
|
|
108
155
|
const tools = ctx.agent ? getAgentTools(ctx) : getDefaultTools();
|
|
@@ -113,11 +160,18 @@ export const toolsCommand = {
|
|
|
113
160
|
};
|
|
114
161
|
/**
|
|
115
162
|
* Get tool definitions from the agent with full parameter and permission info.
|
|
163
|
+
* Includes both direct tools and meta-registry tools.
|
|
116
164
|
*/
|
|
117
165
|
function getAgentTools(ctx) {
|
|
118
166
|
if (!ctx.agent)
|
|
119
167
|
return getDefaultTools();
|
|
120
|
-
|
|
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) => {
|
|
121
175
|
// Extract parameters from inputSchema
|
|
122
176
|
const parameters = [];
|
|
123
177
|
const props = t.inputSchema.properties;
|
|
@@ -140,9 +194,11 @@ function getAgentTools(ctx) {
|
|
|
140
194
|
if (t.name === 'task' && description.includes('Available agent types:')) {
|
|
141
195
|
description = description.split('Available agent types:')[0].trim();
|
|
142
196
|
}
|
|
197
|
+
// Mark meta-registry tools (not directly callable, use via use_tool)
|
|
198
|
+
const isMeta = metaTools.some(mt => mt.definition.name === t.name);
|
|
143
199
|
return {
|
|
144
200
|
name: t.name,
|
|
145
|
-
description,
|
|
201
|
+
description: isMeta ? `[via use_tool] ${description}` : description,
|
|
146
202
|
parameters,
|
|
147
203
|
permission,
|
|
148
204
|
};
|
|
@@ -150,23 +206,32 @@ function getAgentTools(ctx) {
|
|
|
150
206
|
}
|
|
151
207
|
/**
|
|
152
208
|
* Fallback tool definitions when agent is not available.
|
|
209
|
+
* Uses TOOL_NAMES constants for consistency across the codebase.
|
|
153
210
|
*/
|
|
154
211
|
function getDefaultTools() {
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
{ name:
|
|
158
|
-
{ name:
|
|
159
|
-
{ name:
|
|
160
|
-
{ name:
|
|
161
|
-
{ name:
|
|
162
|
-
{ name:
|
|
163
|
-
{ name:
|
|
164
|
-
{ name:
|
|
165
|
-
{ name:
|
|
166
|
-
{ name:
|
|
167
|
-
{ name:
|
|
168
|
-
{ name:
|
|
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' },
|
|
169
233
|
];
|
|
234
|
+
return [...directTools, ...metaToolsList];
|
|
170
235
|
}
|
|
171
236
|
// =============================================================================
|
|
172
237
|
// Keys Command
|
|
@@ -174,6 +239,14 @@ function getDefaultTools() {
|
|
|
174
239
|
export const keysCommand = {
|
|
175
240
|
name: 'keys',
|
|
176
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
|
+
],
|
|
177
250
|
async execute(_args, ctx) {
|
|
178
251
|
const keysOverlay = new KeysOverlayV2();
|
|
179
252
|
const result = await ctx.ui.showOverlay(keysOverlay);
|
|
@@ -189,6 +262,13 @@ export const keysCommand = {
|
|
|
189
262
|
export const mascotCommand = {
|
|
190
263
|
name: 'mascot',
|
|
191
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
|
+
],
|
|
192
272
|
async execute(_args, ctx) {
|
|
193
273
|
const currentMascot = getSettings().mascot;
|
|
194
274
|
const mascotOverlay = new MascotOverlayV2({ currentMascot });
|
|
@@ -205,6 +285,14 @@ export const mascotCommand = {
|
|
|
205
285
|
export const agentsCommand = {
|
|
206
286
|
name: 'agents',
|
|
207
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
|
+
],
|
|
208
296
|
async execute(_args, ctx) {
|
|
209
297
|
const agentsOverlay = new AgentsOverlayV2();
|
|
210
298
|
const result = await ctx.ui.showOverlay(agentsOverlay);
|
|
@@ -221,6 +309,98 @@ export const agentsCommand = {
|
|
|
221
309
|
},
|
|
222
310
|
};
|
|
223
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
|
+
// =============================================================================
|
|
224
404
|
// Export All Settings Commands
|
|
225
405
|
// =============================================================================
|
|
226
406
|
export const settingsCommands = [
|
|
@@ -232,4 +412,6 @@ export const settingsCommands = [
|
|
|
232
412
|
keysCommand,
|
|
233
413
|
mascotCommand,
|
|
234
414
|
agentsCommand,
|
|
415
|
+
updateCommand,
|
|
416
|
+
permissionsCommand,
|
|
235
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[];
|