@compilr-dev/cli 0.5.0 → 0.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +236 -68
- package/dist/.tsbuildinfo.app +1 -0
- package/dist/.tsbuildinfo.data +1 -0
- package/dist/.tsbuildinfo.domain +1 -0
- package/dist/.tsbuildinfo.foundation +1 -0
- package/dist/agent.d.ts +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 +266 -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 +244 -23
- 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 +5 -1
- package/dist/db/repositories/index.d.ts +2 -0
- package/dist/db/repositories/index.js +1 -0
- package/dist/db/repositories/plan-repository.d.ts +101 -0
- package/dist/db/repositories/plan-repository.js +275 -0
- package/dist/db/repositories/project-repository.d.ts +6 -0
- package/dist/db/repositories/project-repository.js +41 -0
- package/dist/db/repositories/work-item-repository.d.ts +15 -0
- package/dist/db/repositories/work-item-repository.js +69 -4
- package/dist/db/schema.d.ts +40 -3
- package/dist/db/schema.js +66 -3
- package/dist/episodes/index.d.ts +20 -0
- package/dist/episodes/index.js +27 -0
- package/dist/episodes/recorder.d.ts +51 -0
- package/dist/episodes/recorder.js +195 -0
- package/dist/episodes/significant-work.d.ts +21 -0
- package/dist/episodes/significant-work.js +56 -0
- package/dist/episodes/store.d.ts +38 -0
- package/dist/episodes/store.js +199 -0
- package/dist/episodes/types.d.ts +35 -0
- package/dist/episodes/types.js +6 -0
- package/dist/episodes/work-at-risk.d.ts +12 -0
- package/dist/episodes/work-at-risk.js +38 -0
- package/dist/episodes/work-summary-anchor.d.ts +23 -0
- package/dist/episodes/work-summary-anchor.js +73 -0
- package/dist/games/coins.d.ts +66 -0
- package/dist/games/coins.js +165 -0
- package/dist/games/game-base.d.ts +84 -0
- package/dist/games/game-base.js +204 -0
- package/dist/games/index.d.ts +16 -0
- package/dist/games/index.js +49 -0
- package/dist/games/scores.d.ts +69 -0
- package/dist/games/scores.js +191 -0
- package/dist/games/tetris/board.d.ts +59 -0
- package/dist/games/tetris/board.js +170 -0
- package/dist/games/tetris/index.d.ts +109 -0
- package/dist/games/tetris/index.js +610 -0
- package/dist/games/tetris/pieces.d.ts +44 -0
- package/dist/games/tetris/pieces.js +271 -0
- package/dist/games/tetris/renderer.d.ts +26 -0
- package/dist/games/tetris/renderer.js +77 -0
- package/dist/guide/guide-content.d.ts +23 -0
- package/dist/guide/guide-content.js +196 -0
- package/dist/guide/index.d.ts +8 -0
- package/dist/guide/index.js +7 -0
- package/dist/guide/shared-content.d.ts +37 -0
- package/dist/guide/shared-content.js +1272 -0
- package/dist/guide/tutorial-helpers.d.ts +57 -0
- package/dist/guide/tutorial-helpers.js +147 -0
- package/dist/handlers/ask-user-handlers.d.ts +32 -0
- package/dist/handlers/ask-user-handlers.js +104 -0
- package/dist/handlers/delegation-handlers.d.ts +34 -0
- package/dist/handlers/delegation-handlers.js +291 -0
- package/dist/handlers/permission-handler.d.ts +30 -0
- package/dist/handlers/permission-handler.js +205 -0
- package/dist/index.d.ts +11 -1
- package/dist/index.js +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 +3 -2
- package/dist/repl-v2.d.ts +401 -2
- package/dist/repl-v2.js +2577 -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 +108 -0
- package/dist/tool-names.js +227 -0
- package/dist/tools/anchor-tools.d.ts +4 -4
- package/dist/tools/anchor-tools.js +1 -1
- package/dist/tools/artifact-tools.d.ts +42 -0
- package/dist/tools/artifact-tools.js +328 -0
- package/dist/tools/ask-user-simple.d.ts +1 -1
- package/dist/tools/ask-user-simple.js +2 -1
- package/dist/tools/ask-user.d.ts +1 -1
- package/dist/tools/ask-user.js +2 -1
- package/dist/tools/backlog-wrappers.d.ts +5 -3
- package/dist/tools/backlog-wrappers.js +16 -1
- package/dist/tools/backlog.d.ts +2 -2
- package/dist/tools/backlog.js +1 -1
- package/dist/tools/db-tools.d.ts +8 -61
- package/dist/tools/db-tools.js +8 -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/document-db.d.ts +5 -5
- package/dist/tools/document-db.js +1 -1
- package/dist/tools/guide-tool.d.ts +12 -0
- package/dist/tools/guide-tool.js +59 -0
- package/dist/tools/handoff.d.ts +25 -0
- package/dist/tools/handoff.js +99 -0
- package/dist/tools/meta-tools.d.ts +26 -0
- package/dist/tools/meta-tools.js +47 -0
- package/dist/tools/plan-tools.d.ts +54 -0
- package/dist/tools/plan-tools.js +338 -0
- package/dist/tools/platform-adapter.d.ts +29 -0
- package/dist/tools/platform-adapter.js +394 -0
- package/dist/tools/project-db.d.ts +5 -73
- package/dist/tools/project-db.js +5 -336
- package/dist/tools/recall-work-tool.d.ts +18 -0
- package/dist/tools/recall-work-tool.js +82 -0
- package/dist/tools/workitem-db.d.ts +43 -11
- package/dist/tools/workitem-db.js +186 -5
- package/dist/tools.d.ts +67 -2
- package/dist/tools.js +237 -47
- 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 +51 -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.js +5 -1
- 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 +512 -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 +25 -12
- 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/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/project-db.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Project
|
|
2
|
+
* Project State Management
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
4
|
+
* Runtime state for the current working project.
|
|
5
|
+
* Used by ~15+ CLI files for project context.
|
|
6
|
+
*
|
|
7
|
+
* Tool definitions have moved to the SDK (via platform-adapter.ts).
|
|
6
8
|
*/
|
|
7
|
-
import { defineTool, createSuccessResult, createErrorResult } from '@compilr-dev/agents';
|
|
8
|
-
import { projectRepository } from '../db/repositories/index.js';
|
|
9
9
|
import { setLastProjectId } from '../settings/index.js';
|
|
10
10
|
// Current project state (runtime, not persisted)
|
|
11
11
|
// This is the project the user is currently working on
|
|
@@ -37,334 +37,3 @@ export function clearCurrentProject() {
|
|
|
37
37
|
export const getActiveProject = getCurrentProject;
|
|
38
38
|
export const setActiveProject = setCurrentProject;
|
|
39
39
|
export const clearActiveProject = clearCurrentProject;
|
|
40
|
-
/**
|
|
41
|
-
* project_get - Get project for current directory or by ID
|
|
42
|
-
*/
|
|
43
|
-
export const projectGetTool = defineTool({
|
|
44
|
-
name: 'project_get',
|
|
45
|
-
description: 'Get the active project for the current directory, or get a project by ID/name. Returns project details including metadata, workflow state, and last context.',
|
|
46
|
-
inputSchema: {
|
|
47
|
-
type: 'object',
|
|
48
|
-
properties: {
|
|
49
|
-
project_id: {
|
|
50
|
-
type: 'number',
|
|
51
|
-
description: 'Project ID to look up (optional - uses active project or cwd detection if not provided)',
|
|
52
|
-
},
|
|
53
|
-
name: {
|
|
54
|
-
type: 'string',
|
|
55
|
-
description: 'Project name to look up (optional)',
|
|
56
|
-
},
|
|
57
|
-
path: {
|
|
58
|
-
type: 'string',
|
|
59
|
-
description: 'Path to check for project (optional - defaults to cwd)',
|
|
60
|
-
},
|
|
61
|
-
},
|
|
62
|
-
required: [],
|
|
63
|
-
},
|
|
64
|
-
execute: async (input) => {
|
|
65
|
-
await Promise.resolve(); // Required for async type signature
|
|
66
|
-
try {
|
|
67
|
-
let project = null;
|
|
68
|
-
// Priority: ID > name > active > path detection
|
|
69
|
-
if (input.project_id) {
|
|
70
|
-
project = projectRepository.getById(input.project_id);
|
|
71
|
-
}
|
|
72
|
-
else if (input.name) {
|
|
73
|
-
project = projectRepository.getByName(input.name);
|
|
74
|
-
}
|
|
75
|
-
else if (currentProject) {
|
|
76
|
-
project = projectRepository.getById(currentProject.id);
|
|
77
|
-
}
|
|
78
|
-
else if (input.path) {
|
|
79
|
-
project = projectRepository.findByPath(input.path);
|
|
80
|
-
}
|
|
81
|
-
else {
|
|
82
|
-
// Try to find project by cwd
|
|
83
|
-
const cwd = process.cwd();
|
|
84
|
-
project = projectRepository.findByPath(cwd);
|
|
85
|
-
}
|
|
86
|
-
if (!project) {
|
|
87
|
-
return createSuccessResult({
|
|
88
|
-
success: true,
|
|
89
|
-
project: null,
|
|
90
|
-
message: 'No project found. Use project_create to create a new project, or /projects to select one.',
|
|
91
|
-
});
|
|
92
|
-
}
|
|
93
|
-
// Update current project
|
|
94
|
-
setCurrentProject({ id: project.id, name: project.name, displayName: project.displayName, path: project.path });
|
|
95
|
-
return createSuccessResult({
|
|
96
|
-
success: true,
|
|
97
|
-
project: {
|
|
98
|
-
id: project.id,
|
|
99
|
-
name: project.name,
|
|
100
|
-
displayName: project.displayName,
|
|
101
|
-
description: project.description,
|
|
102
|
-
type: project.type,
|
|
103
|
-
status: project.status,
|
|
104
|
-
path: project.path,
|
|
105
|
-
docsPath: project.docsPath,
|
|
106
|
-
repoPattern: project.repoPattern,
|
|
107
|
-
language: project.language,
|
|
108
|
-
framework: project.framework,
|
|
109
|
-
packageManager: project.packageManager,
|
|
110
|
-
runtimeVersion: project.runtimeVersion,
|
|
111
|
-
commands: project.commands,
|
|
112
|
-
gitRemote: project.gitRemote,
|
|
113
|
-
gitBranch: project.gitBranch,
|
|
114
|
-
workflowMode: project.workflowMode,
|
|
115
|
-
lifecycleState: project.lifecycleState,
|
|
116
|
-
currentItemId: project.currentItemId,
|
|
117
|
-
lastContext: project.lastContext,
|
|
118
|
-
createdAt: project.createdAt.toISOString(),
|
|
119
|
-
updatedAt: project.updatedAt.toISOString(),
|
|
120
|
-
lastActivityAt: project.lastActivityAt?.toISOString(),
|
|
121
|
-
},
|
|
122
|
-
});
|
|
123
|
-
}
|
|
124
|
-
catch (error) {
|
|
125
|
-
return createErrorResult(`Failed to get project: ${error instanceof Error ? error.message : String(error)}`);
|
|
126
|
-
}
|
|
127
|
-
},
|
|
128
|
-
});
|
|
129
|
-
/**
|
|
130
|
-
* project_create - Create a new project
|
|
131
|
-
*/
|
|
132
|
-
export const projectCreateTool = defineTool({
|
|
133
|
-
name: 'project_create',
|
|
134
|
-
description: 'Create a new tracked project. This promotes a directory to a tracked project with workflow support.',
|
|
135
|
-
inputSchema: {
|
|
136
|
-
type: 'object',
|
|
137
|
-
properties: {
|
|
138
|
-
name: {
|
|
139
|
-
type: 'string',
|
|
140
|
-
description: 'Filesystem-safe project name (e.g., "my-api-project")',
|
|
141
|
-
},
|
|
142
|
-
display_name: {
|
|
143
|
-
type: 'string',
|
|
144
|
-
description: 'Human-friendly display name (e.g., "My API Project")',
|
|
145
|
-
},
|
|
146
|
-
description: {
|
|
147
|
-
type: 'string',
|
|
148
|
-
description: 'Project description',
|
|
149
|
-
},
|
|
150
|
-
path: {
|
|
151
|
-
type: 'string',
|
|
152
|
-
description: 'Project path (defaults to cwd)',
|
|
153
|
-
},
|
|
154
|
-
type: {
|
|
155
|
-
type: 'string',
|
|
156
|
-
enum: ['general', 'web', 'cli', 'library', 'api'],
|
|
157
|
-
description: 'Project type',
|
|
158
|
-
},
|
|
159
|
-
workflow_mode: {
|
|
160
|
-
type: 'string',
|
|
161
|
-
enum: ['flexible', 'guided'],
|
|
162
|
-
description: 'Workflow mode: flexible (default) or guided',
|
|
163
|
-
},
|
|
164
|
-
language: {
|
|
165
|
-
type: 'string',
|
|
166
|
-
description: 'Programming language (e.g., "typescript", "python")',
|
|
167
|
-
},
|
|
168
|
-
framework: {
|
|
169
|
-
type: 'string',
|
|
170
|
-
description: 'Framework (e.g., "react", "express")',
|
|
171
|
-
},
|
|
172
|
-
package_manager: {
|
|
173
|
-
type: 'string',
|
|
174
|
-
description: 'Package manager (e.g., "npm", "yarn", "pnpm")',
|
|
175
|
-
},
|
|
176
|
-
},
|
|
177
|
-
required: ['name', 'display_name'],
|
|
178
|
-
},
|
|
179
|
-
execute: async (input) => {
|
|
180
|
-
await Promise.resolve(); // Required for async type signature
|
|
181
|
-
try {
|
|
182
|
-
// Check if project with this name already exists
|
|
183
|
-
const existing = projectRepository.getByName(input.name);
|
|
184
|
-
if (existing) {
|
|
185
|
-
return createErrorResult(`Project with name "${input.name}" already exists`);
|
|
186
|
-
}
|
|
187
|
-
// Check if a project exists at this path
|
|
188
|
-
const projectPath = input.path || process.cwd();
|
|
189
|
-
const existingByPath = projectRepository.findByPath(projectPath);
|
|
190
|
-
if (existingByPath) {
|
|
191
|
-
return createErrorResult(`A project already exists at path "${projectPath}": ${existingByPath.name}`);
|
|
192
|
-
}
|
|
193
|
-
const createInput = {
|
|
194
|
-
name: input.name,
|
|
195
|
-
display_name: input.display_name,
|
|
196
|
-
description: input.description,
|
|
197
|
-
path: projectPath,
|
|
198
|
-
type: input.type ? input.type : 'general',
|
|
199
|
-
workflow_mode: input.workflow_mode ? input.workflow_mode : 'flexible',
|
|
200
|
-
language: input.language,
|
|
201
|
-
framework: input.framework,
|
|
202
|
-
package_manager: input.package_manager,
|
|
203
|
-
};
|
|
204
|
-
const project = projectRepository.create(createInput);
|
|
205
|
-
// Set as current project
|
|
206
|
-
setCurrentProject({ id: project.id, name: project.name, displayName: project.displayName, path: project.path });
|
|
207
|
-
return createSuccessResult({
|
|
208
|
-
success: true,
|
|
209
|
-
message: `Project "${project.displayName}" created successfully`,
|
|
210
|
-
project: {
|
|
211
|
-
id: project.id,
|
|
212
|
-
name: project.name,
|
|
213
|
-
displayName: project.displayName,
|
|
214
|
-
type: project.type,
|
|
215
|
-
workflowMode: project.workflowMode,
|
|
216
|
-
path: project.path,
|
|
217
|
-
},
|
|
218
|
-
});
|
|
219
|
-
}
|
|
220
|
-
catch (error) {
|
|
221
|
-
return createErrorResult(`Failed to create project: ${error instanceof Error ? error.message : String(error)}`);
|
|
222
|
-
}
|
|
223
|
-
},
|
|
224
|
-
});
|
|
225
|
-
/**
|
|
226
|
-
* project_update - Update an existing project
|
|
227
|
-
*/
|
|
228
|
-
export const projectUpdateTool = defineTool({
|
|
229
|
-
name: 'project_update',
|
|
230
|
-
description: 'Update an existing project. Can update status, description, workflow mode, lifecycle state, and other fields.',
|
|
231
|
-
inputSchema: {
|
|
232
|
-
type: 'object',
|
|
233
|
-
properties: {
|
|
234
|
-
project_id: {
|
|
235
|
-
type: 'number',
|
|
236
|
-
description: 'Project ID to update (uses active project if not provided)',
|
|
237
|
-
},
|
|
238
|
-
status: {
|
|
239
|
-
type: 'string',
|
|
240
|
-
enum: ['active', 'paused', 'completed', 'archived'],
|
|
241
|
-
description: 'Project status',
|
|
242
|
-
},
|
|
243
|
-
description: {
|
|
244
|
-
type: 'string',
|
|
245
|
-
description: 'Project description',
|
|
246
|
-
},
|
|
247
|
-
workflow_mode: {
|
|
248
|
-
type: 'string',
|
|
249
|
-
enum: ['flexible', 'guided'],
|
|
250
|
-
description: 'Workflow mode',
|
|
251
|
-
},
|
|
252
|
-
lifecycle_state: {
|
|
253
|
-
type: 'string',
|
|
254
|
-
enum: ['setup', 'active', 'maintenance', 'complete'],
|
|
255
|
-
description: 'Project lifecycle state',
|
|
256
|
-
},
|
|
257
|
-
current_item_id: {
|
|
258
|
-
type: 'string',
|
|
259
|
-
description: 'Currently focused work item ID (e.g., "REQ-003")',
|
|
260
|
-
},
|
|
261
|
-
last_context: {
|
|
262
|
-
type: 'object',
|
|
263
|
-
description: 'Context for session resumption',
|
|
264
|
-
},
|
|
265
|
-
},
|
|
266
|
-
required: [],
|
|
267
|
-
},
|
|
268
|
-
execute: async (input) => {
|
|
269
|
-
await Promise.resolve(); // Required for async type signature
|
|
270
|
-
try {
|
|
271
|
-
const projectId = input.project_id || currentProject?.id;
|
|
272
|
-
if (!projectId) {
|
|
273
|
-
return createErrorResult('No project specified and no active project. Use project_get or /projects to select a project.');
|
|
274
|
-
}
|
|
275
|
-
const updateInput = {};
|
|
276
|
-
if (input.status)
|
|
277
|
-
updateInput.status = input.status;
|
|
278
|
-
if (input.description !== undefined)
|
|
279
|
-
updateInput.description = input.description;
|
|
280
|
-
if (input.workflow_mode)
|
|
281
|
-
updateInput.workflow_mode = input.workflow_mode;
|
|
282
|
-
if (input.lifecycle_state)
|
|
283
|
-
updateInput.lifecycle_state = input.lifecycle_state;
|
|
284
|
-
if (input.current_item_id !== undefined)
|
|
285
|
-
updateInput.current_item_id = input.current_item_id;
|
|
286
|
-
if (input.last_context)
|
|
287
|
-
updateInput.last_context = input.last_context;
|
|
288
|
-
const project = projectRepository.update(projectId, updateInput);
|
|
289
|
-
if (!project) {
|
|
290
|
-
return createErrorResult(`Project with ID ${String(projectId)} not found`);
|
|
291
|
-
}
|
|
292
|
-
return createSuccessResult({
|
|
293
|
-
success: true,
|
|
294
|
-
message: `Project "${project.displayName}" updated`,
|
|
295
|
-
project: {
|
|
296
|
-
id: project.id,
|
|
297
|
-
name: project.name,
|
|
298
|
-
displayName: project.displayName,
|
|
299
|
-
status: project.status,
|
|
300
|
-
workflowMode: project.workflowMode,
|
|
301
|
-
lifecycleState: project.lifecycleState,
|
|
302
|
-
currentItemId: project.currentItemId,
|
|
303
|
-
},
|
|
304
|
-
});
|
|
305
|
-
}
|
|
306
|
-
catch (error) {
|
|
307
|
-
return createErrorResult(`Failed to update project: ${error instanceof Error ? error.message : String(error)}`);
|
|
308
|
-
}
|
|
309
|
-
},
|
|
310
|
-
});
|
|
311
|
-
/**
|
|
312
|
-
* project_list - List projects
|
|
313
|
-
*/
|
|
314
|
-
export const projectListTool = defineTool({
|
|
315
|
-
name: 'project_list',
|
|
316
|
-
description: 'List all tracked projects, optionally filtered by status.',
|
|
317
|
-
inputSchema: {
|
|
318
|
-
type: 'object',
|
|
319
|
-
properties: {
|
|
320
|
-
status: {
|
|
321
|
-
type: 'string',
|
|
322
|
-
enum: ['active', 'paused', 'completed', 'archived', 'all'],
|
|
323
|
-
description: 'Filter by status (default: all)',
|
|
324
|
-
},
|
|
325
|
-
limit: {
|
|
326
|
-
type: 'number',
|
|
327
|
-
description: 'Maximum number of projects to return (default: 20)',
|
|
328
|
-
},
|
|
329
|
-
},
|
|
330
|
-
required: [],
|
|
331
|
-
},
|
|
332
|
-
execute: async (input) => {
|
|
333
|
-
await Promise.resolve(); // Required for async type signature
|
|
334
|
-
try {
|
|
335
|
-
const result = projectRepository.list({
|
|
336
|
-
status: input.status,
|
|
337
|
-
limit: input.limit || 20,
|
|
338
|
-
});
|
|
339
|
-
const projects = result.projects.map((p) => ({
|
|
340
|
-
id: p.id,
|
|
341
|
-
name: p.name,
|
|
342
|
-
displayName: p.displayName,
|
|
343
|
-
type: p.type,
|
|
344
|
-
status: p.status,
|
|
345
|
-
path: p.path,
|
|
346
|
-
workflowMode: p.workflowMode,
|
|
347
|
-
lifecycleState: p.lifecycleState,
|
|
348
|
-
lastActivityAt: p.lastActivityAt?.toISOString(),
|
|
349
|
-
}));
|
|
350
|
-
return createSuccessResult({
|
|
351
|
-
success: true,
|
|
352
|
-
projects,
|
|
353
|
-
total: result.total,
|
|
354
|
-
currentProjectId: currentProject?.id,
|
|
355
|
-
});
|
|
356
|
-
}
|
|
357
|
-
catch (error) {
|
|
358
|
-
return createErrorResult(`Failed to list projects: ${error instanceof Error ? error.message : String(error)}`);
|
|
359
|
-
}
|
|
360
|
-
},
|
|
361
|
-
});
|
|
362
|
-
/**
|
|
363
|
-
* All project tools
|
|
364
|
-
*/
|
|
365
|
-
export const projectDbTools = [
|
|
366
|
-
projectGetTool,
|
|
367
|
-
projectCreateTool,
|
|
368
|
-
projectUpdateTool,
|
|
369
|
-
projectListTool,
|
|
370
|
-
];
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* recall_work Tool — Query Work History
|
|
3
|
+
*
|
|
4
|
+
* Lets agents proactively query episodic work history.
|
|
5
|
+
* Returns episodes with agent attribution, effort level, and affected files.
|
|
6
|
+
*/
|
|
7
|
+
interface RecallWorkInput {
|
|
8
|
+
/** Filter by file paths (returns episodes touching any of these files) */
|
|
9
|
+
files?: string[];
|
|
10
|
+
/** Filter by agent ID */
|
|
11
|
+
agentId?: string;
|
|
12
|
+
/** Filter by session ID */
|
|
13
|
+
sessionId?: string;
|
|
14
|
+
/** Return N most recent episodes (default: 20) */
|
|
15
|
+
recent?: number;
|
|
16
|
+
}
|
|
17
|
+
export declare const recallWorkTool: import("@compilr-dev/sdk").Tool<RecallWorkInput>;
|
|
18
|
+
export {};
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* recall_work Tool — Query Work History
|
|
3
|
+
*
|
|
4
|
+
* Lets agents proactively query episodic work history.
|
|
5
|
+
* Returns episodes with agent attribution, effort level, and affected files.
|
|
6
|
+
*/
|
|
7
|
+
import { defineTool } from '@compilr-dev/sdk';
|
|
8
|
+
import { getGlobalEpisodeStore } from '../episodes/index.js';
|
|
9
|
+
// =============================================================================
|
|
10
|
+
// Tool Definition
|
|
11
|
+
// =============================================================================
|
|
12
|
+
export const recallWorkTool = defineTool({
|
|
13
|
+
name: 'recall_work',
|
|
14
|
+
description: 'Query work history — episodes of what agents have done in this project. ' +
|
|
15
|
+
'Returns episodes with agent attribution, effort level, and affected files. ' +
|
|
16
|
+
'Use before destructive operations to check what work would be affected. ' +
|
|
17
|
+
'Use to understand what has been done in this session or by other agents.',
|
|
18
|
+
inputSchema: {
|
|
19
|
+
type: 'object',
|
|
20
|
+
properties: {
|
|
21
|
+
files: {
|
|
22
|
+
type: 'array',
|
|
23
|
+
items: { type: 'string' },
|
|
24
|
+
description: 'Filter by file paths — returns episodes touching any of these files',
|
|
25
|
+
},
|
|
26
|
+
agentId: {
|
|
27
|
+
type: 'string',
|
|
28
|
+
description: 'Filter by agent ID (e.g., "default", "backend")',
|
|
29
|
+
},
|
|
30
|
+
sessionId: {
|
|
31
|
+
type: 'string',
|
|
32
|
+
description: 'Filter by session ID',
|
|
33
|
+
},
|
|
34
|
+
recent: {
|
|
35
|
+
type: 'number',
|
|
36
|
+
description: 'Return N most recent episodes (default: 20)',
|
|
37
|
+
},
|
|
38
|
+
},
|
|
39
|
+
},
|
|
40
|
+
execute: (input) => {
|
|
41
|
+
const store = getGlobalEpisodeStore();
|
|
42
|
+
if (!store) {
|
|
43
|
+
return Promise.resolve({
|
|
44
|
+
success: false,
|
|
45
|
+
error: 'No episode store available (no active project)',
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
let episodes;
|
|
49
|
+
if (input.files && input.files.length > 0) {
|
|
50
|
+
episodes = store.getByFiles(input.files);
|
|
51
|
+
}
|
|
52
|
+
else if (input.agentId) {
|
|
53
|
+
episodes = store.getByAgent(input.agentId);
|
|
54
|
+
}
|
|
55
|
+
else if (input.sessionId) {
|
|
56
|
+
episodes = store.getBySession(input.sessionId);
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
episodes = store.getRecent(input.recent ?? 20);
|
|
60
|
+
}
|
|
61
|
+
const summary = store.getWorkSummary();
|
|
62
|
+
return Promise.resolve({
|
|
63
|
+
success: true,
|
|
64
|
+
result: {
|
|
65
|
+
episodes: episodes.map(ep => ({
|
|
66
|
+
id: ep.id,
|
|
67
|
+
agentId: ep.agentId,
|
|
68
|
+
terminalPrefix: ep.terminalPrefix,
|
|
69
|
+
action: ep.action,
|
|
70
|
+
summary: ep.summary,
|
|
71
|
+
files: ep.files,
|
|
72
|
+
effort: ep.effort,
|
|
73
|
+
timestamp: ep.timestamp,
|
|
74
|
+
toolCalls: ep.toolCalls,
|
|
75
|
+
})),
|
|
76
|
+
totalEpisodes: summary.episodeCount,
|
|
77
|
+
totalEffort: summary.totalEffort,
|
|
78
|
+
uncommittedCount: summary.uncommittedWork.length,
|
|
79
|
+
},
|
|
80
|
+
});
|
|
81
|
+
},
|
|
82
|
+
});
|
|
@@ -6,11 +6,12 @@
|
|
|
6
6
|
/**
|
|
7
7
|
* workitem_query - Query work items with filters
|
|
8
8
|
*/
|
|
9
|
-
export declare const workitemQueryTool: import("@compilr-dev/
|
|
9
|
+
export declare const workitemQueryTool: import("@compilr-dev/sdk").Tool<{
|
|
10
10
|
project_id?: number;
|
|
11
11
|
status?: string;
|
|
12
12
|
type?: string;
|
|
13
13
|
priority?: string;
|
|
14
|
+
owner?: string;
|
|
14
15
|
search?: string;
|
|
15
16
|
limit?: number;
|
|
16
17
|
offset?: number;
|
|
@@ -18,22 +19,24 @@ export declare const workitemQueryTool: import("@compilr-dev/agents").Tool<{
|
|
|
18
19
|
/**
|
|
19
20
|
* workitem_add - Add a new work item
|
|
20
21
|
*/
|
|
21
|
-
export declare const workitemAddTool: import("@compilr-dev/
|
|
22
|
+
export declare const workitemAddTool: import("@compilr-dev/sdk").Tool<{
|
|
22
23
|
project_id?: number;
|
|
23
24
|
type: string;
|
|
24
25
|
title: string;
|
|
25
26
|
description?: string;
|
|
26
27
|
priority?: string;
|
|
27
28
|
estimated_effort?: string;
|
|
29
|
+
owner?: string;
|
|
28
30
|
}>;
|
|
29
31
|
/**
|
|
30
32
|
* workitem_update - Update a work item
|
|
31
33
|
*/
|
|
32
|
-
export declare const workitemUpdateTool: import("@compilr-dev/
|
|
34
|
+
export declare const workitemUpdateTool: import("@compilr-dev/sdk").Tool<{
|
|
33
35
|
item_id: string;
|
|
34
36
|
project_id?: number;
|
|
35
37
|
status?: string;
|
|
36
38
|
priority?: string;
|
|
39
|
+
owner?: string;
|
|
37
40
|
guided_step?: string;
|
|
38
41
|
title?: string;
|
|
39
42
|
description?: string;
|
|
@@ -42,62 +45,91 @@ export declare const workitemUpdateTool: import("@compilr-dev/agents").Tool<{
|
|
|
42
45
|
/**
|
|
43
46
|
* workitem_next - Get the next work item to work on
|
|
44
47
|
*/
|
|
45
|
-
export declare const workitemNextTool: import("@compilr-dev/
|
|
48
|
+
export declare const workitemNextTool: import("@compilr-dev/sdk").Tool<{
|
|
46
49
|
project_id?: number;
|
|
47
50
|
type?: string;
|
|
48
51
|
}>;
|
|
49
52
|
/**
|
|
50
53
|
* workitem_delete - Delete a work item
|
|
51
54
|
*/
|
|
52
|
-
export declare const workitemDeleteTool: import("@compilr-dev/
|
|
55
|
+
export declare const workitemDeleteTool: import("@compilr-dev/sdk").Tool<{
|
|
53
56
|
item_id: string;
|
|
54
57
|
project_id?: number;
|
|
55
58
|
}>;
|
|
56
59
|
/**
|
|
57
60
|
* workitem_status_counts - Get work item counts by status
|
|
58
61
|
*/
|
|
59
|
-
export declare const workitemStatusCountsTool: import("@compilr-dev/
|
|
62
|
+
export declare const workitemStatusCountsTool: import("@compilr-dev/sdk").Tool<{
|
|
60
63
|
project_id?: number;
|
|
61
64
|
}>;
|
|
62
65
|
/**
|
|
63
66
|
* workitem_advance_step - Advance to the next guided workflow step
|
|
64
67
|
*/
|
|
65
|
-
export declare const workitemAdvanceStepTool: import("@compilr-dev/
|
|
68
|
+
export declare const workitemAdvanceStepTool: import("@compilr-dev/sdk").Tool<{
|
|
66
69
|
item_id: string;
|
|
67
70
|
reason: string;
|
|
68
71
|
force?: boolean;
|
|
69
72
|
project_id?: number;
|
|
70
73
|
}>;
|
|
74
|
+
/**
|
|
75
|
+
* workitem_claim - Claim an unassigned work item
|
|
76
|
+
*/
|
|
77
|
+
export declare const workitemClaimTool: import("@compilr-dev/sdk").Tool<{
|
|
78
|
+
item_id: string;
|
|
79
|
+
agent_id: string;
|
|
80
|
+
project_id?: number;
|
|
81
|
+
}>;
|
|
82
|
+
/**
|
|
83
|
+
* workitem_handoff - Hand off a work item to another agent
|
|
84
|
+
*/
|
|
85
|
+
export declare const workitemHandoffTool: import("@compilr-dev/sdk").Tool<{
|
|
86
|
+
item_id: string;
|
|
87
|
+
to_agent_id: string;
|
|
88
|
+
notes?: string;
|
|
89
|
+
project_id?: number;
|
|
90
|
+
}>;
|
|
71
91
|
/**
|
|
72
92
|
* All work item tools
|
|
73
93
|
*/
|
|
74
|
-
export declare const workitemDbTools: (import("@compilr-dev/
|
|
94
|
+
export declare const workitemDbTools: (import("@compilr-dev/sdk").Tool<{
|
|
75
95
|
project_id?: number;
|
|
76
96
|
status?: string;
|
|
77
97
|
type?: string;
|
|
78
98
|
priority?: string;
|
|
99
|
+
owner?: string;
|
|
79
100
|
search?: string;
|
|
80
101
|
limit?: number;
|
|
81
102
|
offset?: number;
|
|
82
|
-
}> | import("@compilr-dev/
|
|
103
|
+
}> | import("@compilr-dev/sdk").Tool<{
|
|
83
104
|
project_id?: number;
|
|
84
105
|
type: string;
|
|
85
106
|
title: string;
|
|
86
107
|
description?: string;
|
|
87
108
|
priority?: string;
|
|
88
109
|
estimated_effort?: string;
|
|
89
|
-
|
|
110
|
+
owner?: string;
|
|
111
|
+
}> | import("@compilr-dev/sdk").Tool<{
|
|
90
112
|
item_id: string;
|
|
91
113
|
project_id?: number;
|
|
92
114
|
status?: string;
|
|
93
115
|
priority?: string;
|
|
116
|
+
owner?: string;
|
|
94
117
|
guided_step?: string;
|
|
95
118
|
title?: string;
|
|
96
119
|
description?: string;
|
|
97
120
|
commit_hash?: string;
|
|
98
|
-
}> | import("@compilr-dev/
|
|
121
|
+
}> | import("@compilr-dev/sdk").Tool<{
|
|
99
122
|
item_id: string;
|
|
100
123
|
reason: string;
|
|
101
124
|
force?: boolean;
|
|
102
125
|
project_id?: number;
|
|
126
|
+
}> | import("@compilr-dev/sdk").Tool<{
|
|
127
|
+
item_id: string;
|
|
128
|
+
agent_id: string;
|
|
129
|
+
project_id?: number;
|
|
130
|
+
}> | import("@compilr-dev/sdk").Tool<{
|
|
131
|
+
item_id: string;
|
|
132
|
+
to_agent_id: string;
|
|
133
|
+
notes?: string;
|
|
134
|
+
project_id?: number;
|
|
103
135
|
}>)[];
|