@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
package/dist/tools.js
CHANGED
|
@@ -1,14 +1,39 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Tool Registry Setup
|
|
3
3
|
*
|
|
4
|
-
* Configures all available tools from @compilr-dev/
|
|
5
|
-
* and @compilr-dev/agents-coding
|
|
4
|
+
* Configures all available tools from @compilr-dev/sdk
|
|
5
|
+
* (which re-exports from @compilr-dev/agents and @compilr-dev/agents-coding).
|
|
6
|
+
*
|
|
7
|
+
* ARCHITECTURE (Meta-Tools):
|
|
8
|
+
* - DIRECT TOOLS: Always available, called by name (most common operations)
|
|
9
|
+
* - META-REGISTRY TOOLS: Available via use_tool() (specialized operations)
|
|
10
|
+
*
|
|
11
|
+
* This reduces token overhead from ~15K to ~2K per request.
|
|
12
|
+
*
|
|
13
|
+
* SINGLE SOURCE OF TRUTH:
|
|
14
|
+
* Tool names are defined in tool-names.ts (a dependency-free module).
|
|
15
|
+
* This file re-exports them for convenience. Import from here or tool-names.ts.
|
|
6
16
|
*/
|
|
7
|
-
|
|
17
|
+
// Re-export tool names from the dependency-free module
|
|
18
|
+
// This breaks circular dependencies while maintaining a single source of truth
|
|
19
|
+
export { TOOL_NAMES, DIRECT_TOOL_NAMES, META_TOOL_NAMES, META_REGISTRY_TOOL_NAMES, getAllToolNames, } from './tool-names.js';
|
|
20
|
+
// =============================================================================
|
|
21
|
+
// TOOL IMPORTS
|
|
22
|
+
// =============================================================================
|
|
23
|
+
import { readFileTool, writeFileTool, createBashTool, bashOutputTool, killShellTool, grepTool, globTool, editTool, createTodoTools, defineTool, } from '@compilr-dev/sdk';
|
|
24
|
+
// Create todo tools with shared store (includes claim/handoff)
|
|
25
|
+
const todoToolsResult = createTodoTools();
|
|
26
|
+
const originalTodoWriteTool = todoToolsResult.todoWrite;
|
|
27
|
+
const todoReadTool = todoToolsResult.todoRead;
|
|
28
|
+
const todoClaimTool = todoToolsResult.todoClaim;
|
|
29
|
+
const todoHandoffTool = todoToolsResult.todoHandoff;
|
|
30
|
+
// Explicit type annotation avoids TS2742 when importing createTodoTools via @compilr-dev/sdk
|
|
31
|
+
export const todoStore = todoToolsResult.store;
|
|
8
32
|
const todoWriteTool = defineTool({
|
|
9
33
|
name: 'todo_write',
|
|
10
|
-
description: 'Update the
|
|
11
|
-
'
|
|
34
|
+
description: 'Update the SESSION todo list (shown in footer). These are ephemeral tasks for the current session only. ' +
|
|
35
|
+
'For persistent project backlog items, use workitem_* tools instead. ' +
|
|
36
|
+
'Provide the complete list of todos to replace the current list.',
|
|
12
37
|
inputSchema: {
|
|
13
38
|
type: 'object',
|
|
14
39
|
properties: {
|
|
@@ -35,6 +60,15 @@ const todoWriteTool = defineTool({
|
|
|
35
60
|
type: 'number',
|
|
36
61
|
description: 'Priority (higher = more important)',
|
|
37
62
|
},
|
|
63
|
+
owner: {
|
|
64
|
+
type: 'string',
|
|
65
|
+
description: 'Owner agent ID (e.g., "dev", "pm", "arch"). Omit for unassigned.',
|
|
66
|
+
},
|
|
67
|
+
blockedBy: {
|
|
68
|
+
type: 'array',
|
|
69
|
+
items: { type: 'number' },
|
|
70
|
+
description: 'Array of 1-based task numbers this task depends on (e.g., [3, 4] means blocked by task #3 and #4)',
|
|
71
|
+
},
|
|
38
72
|
},
|
|
39
73
|
required: ['content', 'status'],
|
|
40
74
|
},
|
|
@@ -49,73 +83,153 @@ const todoWriteTool = defineTool({
|
|
|
49
83
|
status: todo.status,
|
|
50
84
|
activeForm: todo.activeForm,
|
|
51
85
|
priority: todo.priority,
|
|
86
|
+
owner: todo.owner,
|
|
87
|
+
blockedBy: todo.blockedBy,
|
|
52
88
|
}));
|
|
53
89
|
// Filter out empty todos and provide fallback
|
|
54
90
|
const validTodos = normalizedTodos.map((todo) => ({
|
|
55
91
|
...todo,
|
|
56
92
|
content: todo.content || 'Untitled task',
|
|
57
93
|
}));
|
|
58
|
-
// Debug: log what we're sending (can be removed later)
|
|
59
|
-
// console.error('[DEBUG todo_write] Input:', JSON.stringify(input, null, 2));
|
|
60
|
-
// console.error('[DEBUG todo_write] Normalized:', JSON.stringify(validTodos, null, 2));
|
|
61
94
|
// Call the original tool with normalized input
|
|
62
95
|
const result = await originalTodoWriteTool.execute({ todos: validTodos });
|
|
63
|
-
// Debug: log result
|
|
64
|
-
// console.error('[DEBUG todo_write] Result:', JSON.stringify(result, null, 2));
|
|
65
96
|
return result;
|
|
66
97
|
},
|
|
98
|
+
silent: true,
|
|
67
99
|
});
|
|
68
100
|
// Create bash tool with longer timeout (2 minutes instead of 30 seconds)
|
|
69
101
|
const bashTool = createBashTool({
|
|
70
102
|
timeout: 120000, // 2 minutes
|
|
71
103
|
});
|
|
72
|
-
import {
|
|
104
|
+
import {
|
|
105
|
+
// Git tools (basic)
|
|
106
|
+
gitStatusTool, gitDiffTool, gitLogTool, gitCommitTool, gitBranchTool,
|
|
107
|
+
// Git tools (advanced)
|
|
108
|
+
gitStashTool, gitBlameTool, gitFileHistoryTool,
|
|
109
|
+
// Project detection
|
|
110
|
+
detectProjectTool, findProjectRootTool,
|
|
111
|
+
// Smart runners
|
|
112
|
+
runTestsTool, runLintTool, runBuildTool, runFormatTool,
|
|
113
|
+
// Code search
|
|
114
|
+
findDefinitionTool, findReferencesTool, findTodosTool,
|
|
115
|
+
// Dependency analysis
|
|
116
|
+
checkOutdatedTool, findVulnerabilitiesTool,
|
|
117
|
+
// Testing analysis
|
|
118
|
+
analyzeTestCoverageTool,
|
|
119
|
+
// Unified analysis (auto-detect language)
|
|
120
|
+
getFileStructureTool, getComplexityTool, } from '@compilr-dev/sdk';
|
|
73
121
|
// Local tools
|
|
74
122
|
import { askUserTool } from './tools/ask-user.js';
|
|
75
123
|
import { askUserSimpleTool } from './tools/ask-user-simple.js';
|
|
76
|
-
|
|
77
|
-
import {
|
|
78
|
-
|
|
79
|
-
import {
|
|
80
|
-
|
|
81
|
-
|
|
124
|
+
import { delegateTool } from './tools/delegate.js';
|
|
125
|
+
import { delegateBackgroundTool } from './tools/delegate-background.js';
|
|
126
|
+
import { delegationStatusTool } from './tools/delegation-status.js';
|
|
127
|
+
import { handoffTool } from './tools/handoff.js';
|
|
128
|
+
import { guideTool } from './tools/guide-tool.js';
|
|
129
|
+
// DB tools for project, work item, document, plan, backlog, anchor, artifact, and episode management
|
|
130
|
+
import { allDbTools, allFactoryTools } from './tools/db-tools.js';
|
|
131
|
+
// Meta-tools for dynamic tool loading
|
|
132
|
+
import { initializeMetaToolRegistry, generateToolIndex, getMetaToolCount, META_TOOLS_SYSTEM_PROMPT_PREFIX, setMetaToolFilter, getRegisteredMetaTools, createMetaToolFallback, getToolInfoTool, } from './tools/meta-tools.js';
|
|
133
|
+
// Re-export for use in agent.ts
|
|
134
|
+
export { setMetaToolFilter, getRegisteredMetaTools };
|
|
135
|
+
// =============================================================================
|
|
136
|
+
// DIRECT TOOLS - Always available, called by name
|
|
137
|
+
// =============================================================================
|
|
138
|
+
/**
|
|
139
|
+
* Direct tools are the most frequently used tools.
|
|
140
|
+
* These are always available and can be called directly by name.
|
|
141
|
+
* Estimated: ~3,500 tokens for definitions
|
|
142
|
+
*/
|
|
143
|
+
const DIRECT_TOOLS = [
|
|
144
|
+
// File operations (most common)
|
|
145
|
+
readFileTool,
|
|
146
|
+
writeFileTool,
|
|
147
|
+
editTool,
|
|
148
|
+
// Shell (very common)
|
|
149
|
+
bashTool,
|
|
150
|
+
bashOutputTool,
|
|
151
|
+
killShellTool,
|
|
152
|
+
// Search (very common)
|
|
153
|
+
globTool,
|
|
154
|
+
grepTool,
|
|
155
|
+
// Task tracking (always needed)
|
|
156
|
+
todoWriteTool,
|
|
157
|
+
todoReadTool,
|
|
158
|
+
todoClaimTool,
|
|
159
|
+
todoHandoffTool,
|
|
160
|
+
// User interaction (always needed)
|
|
161
|
+
askUserTool,
|
|
162
|
+
askUserSimpleTool,
|
|
163
|
+
// Delegation (coordinator only)
|
|
164
|
+
delegateTool,
|
|
165
|
+
// Background delegation (coordinator mode)
|
|
166
|
+
delegateBackgroundTool,
|
|
167
|
+
// Handoff (specialist-to-specialist)
|
|
168
|
+
handoffTool,
|
|
169
|
+
// CLI documentation (always available)
|
|
170
|
+
guideTool,
|
|
171
|
+
];
|
|
172
|
+
// =============================================================================
|
|
173
|
+
// META-REGISTRY TOOLS - Available via use_tool()
|
|
174
|
+
// =============================================================================
|
|
175
|
+
/**
|
|
176
|
+
* Meta-registry tools are specialized tools available via use_tool().
|
|
177
|
+
* Instead of declaring their full schemas (~12K tokens), we:
|
|
178
|
+
* 1. Add them to a registry
|
|
179
|
+
* 2. Generate a tool index for the system prompt (~800 tokens)
|
|
180
|
+
* 3. Let the agent call them via use_tool("tool_name", {args})
|
|
181
|
+
*/
|
|
182
|
+
const META_REGISTRY_TOOLS = [
|
|
183
|
+
// Git operations (basic)
|
|
184
|
+
gitStatusTool,
|
|
185
|
+
gitDiffTool,
|
|
186
|
+
gitLogTool,
|
|
187
|
+
gitCommitTool,
|
|
188
|
+
gitBranchTool,
|
|
189
|
+
// Git operations (advanced)
|
|
190
|
+
gitStashTool,
|
|
191
|
+
gitBlameTool,
|
|
192
|
+
gitFileHistoryTool,
|
|
193
|
+
// Project detection
|
|
194
|
+
detectProjectTool,
|
|
195
|
+
findProjectRootTool,
|
|
196
|
+
// Smart runners
|
|
197
|
+
runTestsTool,
|
|
198
|
+
runLintTool,
|
|
199
|
+
runBuildTool,
|
|
200
|
+
runFormatTool,
|
|
201
|
+
// Code search (language-agnostic)
|
|
202
|
+
findDefinitionTool,
|
|
203
|
+
findReferencesTool,
|
|
204
|
+
findTodosTool,
|
|
205
|
+
// Dependency analysis
|
|
206
|
+
checkOutdatedTool,
|
|
207
|
+
findVulnerabilitiesTool,
|
|
208
|
+
// Testing analysis
|
|
209
|
+
analyzeTestCoverageTool,
|
|
210
|
+
// Unified analysis (auto-detect language: TS/JS/Python/Go)
|
|
211
|
+
getFileStructureTool,
|
|
212
|
+
getComplexityTool,
|
|
213
|
+
// DB tools (project, workitem, document, plan, backlog, anchor, artifact, episode)
|
|
214
|
+
...allDbTools,
|
|
215
|
+
// Factory tools (app_model_get, app_model_update, app_model_validate, factory_scaffold, factory_list_toolkits)
|
|
216
|
+
...allFactoryTools,
|
|
217
|
+
// Delegation status (coordinator query)
|
|
218
|
+
delegationStatusTool,
|
|
219
|
+
];
|
|
220
|
+
// =============================================================================
|
|
221
|
+
// LEGACY API (for backwards compatibility)
|
|
222
|
+
// =============================================================================
|
|
82
223
|
/**
|
|
83
224
|
* Creates the tool registry with all available tools.
|
|
84
225
|
* Returns tools as-is - the Agent.registerTools() method handles typing.
|
|
226
|
+
*
|
|
227
|
+
* @deprecated Use createDirectToolRegistry() + initializeMetaTools() instead
|
|
85
228
|
*/
|
|
86
229
|
export function createToolRegistry() {
|
|
87
230
|
return [
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
writeFileTool,
|
|
91
|
-
bashTool,
|
|
92
|
-
bashOutputTool, // Monitor background processes
|
|
93
|
-
killShellTool, // Terminate background processes
|
|
94
|
-
grepTool,
|
|
95
|
-
globTool,
|
|
96
|
-
editTool,
|
|
97
|
-
todoWriteTool,
|
|
98
|
-
todoReadTool,
|
|
99
|
-
// Coding tools from @compilr-dev/agents-coding
|
|
100
|
-
gitStatusTool,
|
|
101
|
-
gitDiffTool,
|
|
102
|
-
gitLogTool,
|
|
103
|
-
gitCommitTool,
|
|
104
|
-
gitBranchTool,
|
|
105
|
-
detectProjectTool,
|
|
106
|
-
findProjectRootTool,
|
|
107
|
-
runTestsTool,
|
|
108
|
-
runLintTool,
|
|
109
|
-
// Local tools
|
|
110
|
-
askUserTool,
|
|
111
|
-
askUserSimpleTool,
|
|
112
|
-
// Backlog wrapper tools - provide backlog_read/backlog_write for library skills
|
|
113
|
-
// These delegate to workitem_* DB tools internally
|
|
114
|
-
...backlogWrapperTools,
|
|
115
|
-
// DB tools for project/work item/document management
|
|
116
|
-
...allDbTools,
|
|
117
|
-
// Anchor tools for managing persistent context
|
|
118
|
-
...allAnchorTools,
|
|
231
|
+
...DIRECT_TOOLS,
|
|
232
|
+
...META_REGISTRY_TOOLS,
|
|
119
233
|
];
|
|
120
234
|
}
|
|
121
235
|
/**
|
|
@@ -129,3 +243,81 @@ export function createMinimalToolRegistry() {
|
|
|
129
243
|
globTool,
|
|
130
244
|
];
|
|
131
245
|
}
|
|
246
|
+
// =============================================================================
|
|
247
|
+
// META-TOOLS API (new architecture)
|
|
248
|
+
// =============================================================================
|
|
249
|
+
/**
|
|
250
|
+
* Get direct tools that are always available.
|
|
251
|
+
* These are declared normally and can be called by name.
|
|
252
|
+
*/
|
|
253
|
+
export function getDirectTools() {
|
|
254
|
+
return DIRECT_TOOLS;
|
|
255
|
+
}
|
|
256
|
+
/**
|
|
257
|
+
* Get meta-tools for agent registration.
|
|
258
|
+
* Only get_tool_info is kept as a direct tool — use_tool and list_tools
|
|
259
|
+
* are no longer needed since the fallback handler routes calls transparently.
|
|
260
|
+
*/
|
|
261
|
+
export function getMetaTools() {
|
|
262
|
+
return [getToolInfoTool];
|
|
263
|
+
}
|
|
264
|
+
/**
|
|
265
|
+
* Create a fallback handler for the tool registry.
|
|
266
|
+
* When the agent calls a tool not in the direct registry, this handler
|
|
267
|
+
* checks the meta-registry and executes it transparently.
|
|
268
|
+
*/
|
|
269
|
+
export function createToolFallback() {
|
|
270
|
+
return createMetaToolFallback();
|
|
271
|
+
}
|
|
272
|
+
/**
|
|
273
|
+
* Initialize the meta-tool registry with specialized tools.
|
|
274
|
+
* Call this once at startup.
|
|
275
|
+
*/
|
|
276
|
+
export function initializeMetaTools() {
|
|
277
|
+
initializeMetaToolRegistry(META_REGISTRY_TOOLS);
|
|
278
|
+
}
|
|
279
|
+
/**
|
|
280
|
+
* Get the tool index for the system prompt.
|
|
281
|
+
* This lists all meta-registry tools with their signatures.
|
|
282
|
+
*/
|
|
283
|
+
export function getToolIndexForSystemPrompt() {
|
|
284
|
+
return META_TOOLS_SYSTEM_PROMPT_PREFIX + generateToolIndex();
|
|
285
|
+
}
|
|
286
|
+
/**
|
|
287
|
+
* Get count of meta-registry tools.
|
|
288
|
+
*/
|
|
289
|
+
export function getMetaToolsCount() {
|
|
290
|
+
return getMetaToolCount();
|
|
291
|
+
}
|
|
292
|
+
/**
|
|
293
|
+
* Check if meta-tools mode is enabled.
|
|
294
|
+
* Returns true if the meta-tool registry has been initialized.
|
|
295
|
+
*/
|
|
296
|
+
export function isMetaToolsEnabled() {
|
|
297
|
+
return getMetaToolCount() > 0;
|
|
298
|
+
}
|
|
299
|
+
// =============================================================================
|
|
300
|
+
// STATISTICS
|
|
301
|
+
// =============================================================================
|
|
302
|
+
/**
|
|
303
|
+
* Get tool statistics for debugging/display.
|
|
304
|
+
*/
|
|
305
|
+
export function getToolStats() {
|
|
306
|
+
const directCount = DIRECT_TOOLS.length;
|
|
307
|
+
const metaCount = META_REGISTRY_TOOLS.length;
|
|
308
|
+
const totalCount = directCount + metaCount;
|
|
309
|
+
// Rough estimates: ~300 tokens per tool definition
|
|
310
|
+
const tokensPerTool = 300;
|
|
311
|
+
const estimatedDirectTokens = directCount * tokensPerTool;
|
|
312
|
+
const estimatedMetaTokens = 800; // Tool index + meta-tool definitions
|
|
313
|
+
const estimatedLegacyTokens = totalCount * tokensPerTool;
|
|
314
|
+
return {
|
|
315
|
+
directTools: directCount,
|
|
316
|
+
metaRegistryTools: metaCount,
|
|
317
|
+
totalTools: totalCount,
|
|
318
|
+
estimatedDirectTokens,
|
|
319
|
+
estimatedMetaTokens,
|
|
320
|
+
estimatedLegacyTokens,
|
|
321
|
+
tokenSavings: estimatedLegacyTokens - estimatedDirectTokens - estimatedMetaTokens,
|
|
322
|
+
};
|
|
323
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Autocomplete controller for command, file, and agent autocomplete.
|
|
3
|
+
*
|
|
4
|
+
* Extracted from TerminalUI — owns all three autocomplete states and their
|
|
5
|
+
* management methods. Input state is passed in as parameters; accept() returns
|
|
6
|
+
* new input state instead of mutating directly.
|
|
7
|
+
*/
|
|
8
|
+
import type { AutocompleteState, FileAutocompleteState, AgentAutocompleteState, AgentSuggestion } from './terminal-types.js';
|
|
9
|
+
import type { CommandOption } from './types.js';
|
|
10
|
+
/** Return value from accept() — new input state to apply. */
|
|
11
|
+
export interface AcceptResult {
|
|
12
|
+
lines: string[];
|
|
13
|
+
currentLine: number;
|
|
14
|
+
cursorPos: number;
|
|
15
|
+
}
|
|
16
|
+
export declare class AutocompleteController {
|
|
17
|
+
readonly command: AutocompleteState;
|
|
18
|
+
readonly file: FileAutocompleteState;
|
|
19
|
+
readonly agent: AgentAutocompleteState;
|
|
20
|
+
getAgentSuggestions?: () => AgentSuggestion[];
|
|
21
|
+
getCommands?: () => CommandOption[];
|
|
22
|
+
/** Whether any autocomplete is currently active. */
|
|
23
|
+
isActive(): boolean;
|
|
24
|
+
/**
|
|
25
|
+
* Detect and activate autocomplete based on current input state.
|
|
26
|
+
* Priority: @ file > $ agent > / command
|
|
27
|
+
*/
|
|
28
|
+
update(lines: string[], currentLine: number, cursorPos: number): void;
|
|
29
|
+
/**
|
|
30
|
+
* Apply the selected autocomplete match.
|
|
31
|
+
* Returns new input state if something was accepted, null otherwise.
|
|
32
|
+
* Caller must also call update() after applying the result for file autocomplete
|
|
33
|
+
* (directory selection may trigger continued autocomplete).
|
|
34
|
+
*/
|
|
35
|
+
accept(lines: string[], currentLine: number, cursorPos: number): AcceptResult | null;
|
|
36
|
+
close(): void;
|
|
37
|
+
navigateUp(): boolean;
|
|
38
|
+
navigateDown(): boolean;
|
|
39
|
+
buildCommandLines(termWidth: number): string[];
|
|
40
|
+
buildFileLines(termWidth: number): string[];
|
|
41
|
+
buildAgentLines(termWidth: number): string[];
|
|
42
|
+
}
|