@compilr-dev/cli 0.4.0 → 0.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +254 -68
- package/dist/.tsbuildinfo.app +1 -0
- package/dist/.tsbuildinfo.data +1 -0
- package/dist/.tsbuildinfo.domain +1 -0
- package/dist/.tsbuildinfo.foundation +1 -0
- package/dist/agent.d.ts +134 -4
- package/dist/agent.js +345 -166
- package/dist/anchors/index.d.ts +9 -0
- package/dist/anchors/index.js +9 -0
- package/dist/anchors/project-anchors.d.ts +79 -0
- package/dist/anchors/project-anchors.js +202 -0
- package/dist/auth/api-client.d.ts +124 -0
- package/dist/auth/api-client.js +261 -0
- package/dist/auth/index.d.ts +172 -0
- package/dist/auth/index.js +545 -0
- package/dist/auth/storage.d.ts +52 -0
- package/dist/auth/storage.js +118 -0
- package/dist/changelog/index.d.ts +16 -0
- package/dist/changelog/index.js +24 -0
- package/dist/changelog/releases.d.ts +17 -0
- package/dist/changelog/releases.js +63 -0
- package/dist/commands/index.d.ts +2 -1
- package/dist/commands-v2/handlers/auth.d.ts +10 -0
- package/dist/commands-v2/handlers/auth.js +118 -0
- package/dist/commands-v2/handlers/background.d.ts +14 -0
- package/dist/commands-v2/handlers/background.js +276 -0
- package/dist/commands-v2/handlers/context.d.ts +13 -0
- package/dist/commands-v2/handlers/context.js +533 -0
- package/dist/commands-v2/handlers/core.d.ts +14 -0
- package/dist/commands-v2/handlers/core.js +290 -0
- package/dist/commands-v2/handlers/debug.d.ts +11 -0
- package/dist/commands-v2/handlers/debug.js +177 -0
- package/dist/commands-v2/handlers/delegations.d.ts +8 -0
- package/dist/commands-v2/handlers/delegations.js +29 -0
- package/dist/commands-v2/handlers/files.d.ts +8 -0
- package/dist/commands-v2/handlers/files.js +162 -0
- package/dist/commands-v2/handlers/filter.d.ts +9 -0
- package/dist/commands-v2/handlers/filter.js +130 -0
- package/dist/commands-v2/handlers/games.d.ts +7 -0
- package/dist/commands-v2/handlers/games.js +57 -0
- package/dist/commands-v2/handlers/index.d.ts +25 -0
- package/dist/commands-v2/handlers/index.js +63 -0
- package/dist/commands-v2/handlers/mcp.d.ts +8 -0
- package/dist/commands-v2/handlers/mcp.js +39 -0
- package/dist/commands-v2/handlers/notifications.d.ts +9 -0
- package/dist/commands-v2/handlers/notifications.js +34 -0
- package/dist/commands-v2/handlers/project.d.ts +22 -0
- package/dist/commands-v2/handlers/project.js +1035 -0
- package/dist/commands-v2/handlers/reset.d.ts +11 -0
- package/dist/commands-v2/handlers/reset.js +118 -0
- package/dist/commands-v2/handlers/session.d.ts +161 -0
- package/dist/commands-v2/handlers/session.js +805 -0
- package/dist/commands-v2/handlers/settings.d.ts +17 -0
- package/dist/commands-v2/handlers/settings.js +417 -0
- package/dist/commands-v2/handlers/tasks.d.ts +5 -0
- package/dist/commands-v2/handlers/tasks.js +36 -0
- package/dist/commands-v2/handlers/team.d.ts +9 -0
- package/dist/commands-v2/handlers/team.js +549 -0
- package/dist/commands-v2/handlers/terminals.d.ts +9 -0
- package/dist/commands-v2/handlers/terminals.js +34 -0
- package/dist/commands-v2/index.d.ts +14 -0
- package/dist/commands-v2/index.js +18 -0
- package/dist/commands-v2/registry.d.ts +52 -0
- package/dist/commands-v2/registry.js +114 -0
- package/dist/commands-v2/types.d.ts +153 -0
- package/dist/commands-v2/types.js +7 -0
- package/dist/commands.js +123 -7
- package/dist/compilr-diff-companion.vsix +0 -0
- package/dist/db/index.js +98 -4
- package/dist/db/repositories/document-repository.d.ts +2 -0
- package/dist/db/repositories/document-repository.js +5 -1
- package/dist/db/repositories/index.d.ts +2 -0
- package/dist/db/repositories/index.js +1 -0
- package/dist/db/repositories/plan-repository.d.ts +101 -0
- package/dist/db/repositories/plan-repository.js +275 -0
- package/dist/db/repositories/project-repository.d.ts +6 -0
- package/dist/db/repositories/project-repository.js +41 -0
- package/dist/db/repositories/work-item-repository.d.ts +15 -0
- package/dist/db/repositories/work-item-repository.js +69 -4
- package/dist/db/schema.d.ts +40 -3
- package/dist/db/schema.js +66 -3
- package/dist/episodes/index.d.ts +20 -0
- package/dist/episodes/index.js +27 -0
- package/dist/episodes/recorder.d.ts +51 -0
- package/dist/episodes/recorder.js +195 -0
- package/dist/episodes/significant-work.d.ts +21 -0
- package/dist/episodes/significant-work.js +56 -0
- package/dist/episodes/store.d.ts +38 -0
- package/dist/episodes/store.js +199 -0
- package/dist/episodes/types.d.ts +35 -0
- package/dist/episodes/types.js +6 -0
- package/dist/episodes/work-at-risk.d.ts +12 -0
- package/dist/episodes/work-at-risk.js +38 -0
- package/dist/episodes/work-summary-anchor.d.ts +23 -0
- package/dist/episodes/work-summary-anchor.js +73 -0
- package/dist/games/coins.d.ts +66 -0
- package/dist/games/coins.js +165 -0
- package/dist/games/game-base.d.ts +84 -0
- package/dist/games/game-base.js +204 -0
- package/dist/games/index.d.ts +16 -0
- package/dist/games/index.js +49 -0
- package/dist/games/scores.d.ts +69 -0
- package/dist/games/scores.js +191 -0
- package/dist/games/tetris/board.d.ts +59 -0
- package/dist/games/tetris/board.js +170 -0
- package/dist/games/tetris/index.d.ts +109 -0
- package/dist/games/tetris/index.js +610 -0
- package/dist/games/tetris/pieces.d.ts +44 -0
- package/dist/games/tetris/pieces.js +271 -0
- package/dist/games/tetris/renderer.d.ts +26 -0
- package/dist/games/tetris/renderer.js +77 -0
- package/dist/guide/guide-content.d.ts +23 -0
- package/dist/guide/guide-content.js +196 -0
- package/dist/guide/index.d.ts +8 -0
- package/dist/guide/index.js +7 -0
- package/dist/guide/shared-content.d.ts +37 -0
- package/dist/guide/shared-content.js +1272 -0
- package/dist/guide/tutorial-helpers.d.ts +57 -0
- package/dist/guide/tutorial-helpers.js +147 -0
- package/dist/handlers/ask-user-handlers.d.ts +32 -0
- package/dist/handlers/ask-user-handlers.js +104 -0
- package/dist/handlers/delegation-handlers.d.ts +34 -0
- package/dist/handlers/delegation-handlers.js +291 -0
- package/dist/handlers/permission-handler.d.ts +30 -0
- package/dist/handlers/permission-handler.js +205 -0
- package/dist/index.d.ts +11 -1
- package/dist/index.js +615 -179
- package/dist/input-handlers/index.d.ts +7 -0
- package/dist/input-handlers/index.js +7 -0
- package/dist/input-handlers/memory-handler.d.ts +26 -0
- package/dist/input-handlers/memory-handler.js +69 -0
- package/dist/models/index.d.ts +10 -0
- package/dist/models/index.js +12 -0
- package/dist/models/model-registry.d.ts +38 -0
- package/dist/models/model-registry.js +69 -0
- package/dist/models/model-tiers.d.ts +28 -0
- package/dist/models/model-tiers.js +71 -0
- package/dist/models/model-validation.d.ts +25 -0
- package/dist/models/model-validation.js +291 -0
- package/dist/models/ollama-models.d.ts +73 -0
- package/dist/models/ollama-models.js +178 -0
- package/dist/models/provider-types.d.ts +6 -0
- package/dist/models/provider-types.js +1 -0
- package/dist/models/providers.d.ts +35 -0
- package/dist/models/providers.js +58 -0
- package/dist/models/types.d.ts +4 -0
- package/dist/models/types.js +4 -0
- package/dist/multi-agent/activity.d.ts +21 -0
- package/dist/multi-agent/activity.js +34 -0
- package/dist/multi-agent/agent-selection.d.ts +55 -0
- package/dist/multi-agent/agent-selection.js +90 -0
- package/dist/multi-agent/artifacts.d.ts +197 -0
- package/dist/multi-agent/artifacts.js +379 -0
- package/dist/multi-agent/checkpointer.d.ts +138 -0
- package/dist/multi-agent/checkpointer.js +471 -0
- package/dist/multi-agent/collision-utils.d.ts +16 -0
- package/dist/multi-agent/collision-utils.js +28 -0
- package/dist/multi-agent/context-resolver.d.ts +97 -0
- package/dist/multi-agent/context-resolver.js +316 -0
- package/dist/multi-agent/custom-agents.d.ts +83 -0
- package/dist/multi-agent/custom-agents.js +227 -0
- package/dist/multi-agent/delegation-tracker.d.ts +157 -0
- package/dist/multi-agent/delegation-tracker.js +243 -0
- package/dist/multi-agent/file-lock-hook.d.ts +29 -0
- package/dist/multi-agent/file-lock-hook.js +97 -0
- package/dist/multi-agent/file-locks.d.ts +58 -0
- package/dist/multi-agent/file-locks.js +194 -0
- package/dist/multi-agent/index.d.ts +24 -0
- package/dist/multi-agent/index.js +30 -0
- package/dist/multi-agent/mention-parser.d.ts +64 -0
- package/dist/multi-agent/mention-parser.js +146 -0
- package/dist/multi-agent/notification-manager.d.ts +84 -0
- package/dist/multi-agent/notification-manager.js +224 -0
- package/dist/multi-agent/pending-requests.d.ts +122 -0
- package/dist/multi-agent/pending-requests.js +155 -0
- package/dist/multi-agent/session-registry.d.ts +139 -0
- package/dist/multi-agent/session-registry.js +514 -0
- package/dist/multi-agent/shared-context.d.ts +293 -0
- package/dist/multi-agent/shared-context.js +671 -0
- package/dist/multi-agent/skill-requirements.d.ts +66 -0
- package/dist/multi-agent/skill-requirements.js +178 -0
- package/dist/multi-agent/task-assignment.d.ts +69 -0
- package/dist/multi-agent/task-assignment.js +123 -0
- package/dist/multi-agent/task-suggestion.d.ts +31 -0
- package/dist/multi-agent/task-suggestion.js +72 -0
- package/dist/multi-agent/team-agent.d.ts +201 -0
- package/dist/multi-agent/team-agent.js +488 -0
- package/dist/multi-agent/team.d.ts +286 -0
- package/dist/multi-agent/team.js +610 -0
- package/dist/multi-agent/tool-config.d.ts +110 -0
- package/dist/multi-agent/tool-config.js +661 -0
- package/dist/multi-agent/types.d.ts +211 -0
- package/dist/multi-agent/types.js +617 -0
- package/dist/prompts/plan-mode-prompt.d.ts +11 -0
- package/dist/prompts/plan-mode-prompt.js +95 -0
- package/dist/repl-helpers.d.ts +63 -0
- package/dist/repl-helpers.js +319 -0
- package/dist/repl-v2.d.ts +554 -0
- package/dist/repl-v2.js +3286 -0
- package/dist/session/index.d.ts +6 -0
- package/dist/session/index.js +6 -0
- package/dist/session/project-session-manager.d.ts +158 -0
- package/dist/session/project-session-manager.js +650 -0
- package/dist/settings/index.d.ts +156 -13
- package/dist/settings/index.js +377 -24
- package/dist/settings/mcp-config.d.ts +76 -0
- package/dist/settings/mcp-config.js +143 -0
- package/dist/settings/paths.d.ts +114 -0
- package/dist/settings/paths.js +270 -0
- package/dist/shared-handlers.d.ts +62 -0
- package/dist/shared-handlers.js +48 -0
- package/dist/system-prompt/builder.d.ts +5 -0
- package/dist/system-prompt/builder.js +4 -0
- package/dist/system-prompt/index.d.ts +18 -0
- package/dist/system-prompt/index.js +18 -0
- package/dist/system-prompt/modules.d.ts +5 -0
- package/dist/system-prompt/modules.js +4 -0
- package/dist/tabbed-menu.js +2 -1
- package/dist/templates/compilr-md-import.d.ts +16 -0
- package/dist/templates/compilr-md-import.js +241 -0
- package/dist/templates/compilr-md.js +10 -58
- package/dist/templates/config-json.d.ts +1 -25
- package/dist/templates/index.d.ts +2 -0
- package/dist/templates/index.js +35 -75
- package/dist/themes/colors.js +3 -1
- package/dist/themes/registry.d.ts +5 -36
- package/dist/themes/registry.js +11 -95
- package/dist/themes/types.d.ts +3 -38
- package/dist/themes/types.js +2 -2
- package/dist/tool-names.d.ts +108 -0
- package/dist/tool-names.js +227 -0
- package/dist/tools/anchor-tools.d.ts +31 -0
- package/dist/tools/anchor-tools.js +255 -0
- package/dist/tools/artifact-tools.d.ts +42 -0
- package/dist/tools/artifact-tools.js +328 -0
- package/dist/tools/ask-user-simple.d.ts +1 -1
- package/dist/tools/ask-user-simple.js +2 -1
- package/dist/tools/ask-user.d.ts +1 -1
- package/dist/tools/ask-user.js +2 -1
- package/dist/tools/backlog-wrappers.d.ts +56 -0
- package/dist/tools/backlog-wrappers.js +353 -0
- package/dist/tools/backlog.d.ts +2 -2
- package/dist/tools/backlog.js +2 -2
- package/dist/tools/db-tools.d.ts +12 -0
- package/dist/tools/db-tools.js +14 -0
- package/dist/tools/delegate-background.d.ts +27 -0
- package/dist/tools/delegate-background.js +115 -0
- package/dist/tools/delegate.d.ts +22 -0
- package/dist/tools/delegate.js +97 -0
- package/dist/tools/delegation-status.d.ts +16 -0
- package/dist/tools/delegation-status.js +128 -0
- package/dist/tools/document-db.d.ts +43 -0
- package/dist/tools/document-db.js +220 -0
- package/dist/tools/guide-tool.d.ts +12 -0
- package/dist/tools/guide-tool.js +59 -0
- package/dist/tools/handoff.d.ts +25 -0
- package/dist/tools/handoff.js +99 -0
- package/dist/tools/meta-tools.d.ts +26 -0
- package/dist/tools/meta-tools.js +47 -0
- package/dist/tools/plan-tools.d.ts +54 -0
- package/dist/tools/plan-tools.js +338 -0
- package/dist/tools/platform-adapter.d.ts +29 -0
- package/dist/tools/platform-adapter.js +394 -0
- package/dist/tools/project-db.d.ts +34 -0
- package/dist/tools/project-db.js +39 -0
- package/dist/tools/recall-work-tool.d.ts +18 -0
- package/dist/tools/recall-work-tool.js +82 -0
- package/dist/tools/workitem-db.d.ts +135 -0
- package/dist/tools/workitem-db.js +730 -0
- package/dist/tools.d.ts +67 -2
- package/dist/tools.js +238 -38
- package/dist/ui/ask-user-overlay.d.ts +2 -2
- package/dist/ui/ask-user-overlay.js +443 -535
- package/dist/ui/ask-user-simple-overlay.d.ts +2 -2
- package/dist/ui/ask-user-simple-overlay.js +182 -209
- package/dist/ui/autocomplete-controller.d.ts +42 -0
- package/dist/ui/autocomplete-controller.js +384 -0
- package/dist/ui/base/index.d.ts +26 -0
- package/dist/ui/base/index.js +33 -0
- package/dist/ui/base/inline-overlay-utils.d.ts +217 -0
- package/dist/ui/base/inline-overlay-utils.js +320 -0
- package/dist/ui/base/inline-overlay.d.ts +159 -0
- package/dist/ui/base/inline-overlay.js +257 -0
- package/dist/ui/base/key-utils.d.ts +15 -0
- package/dist/ui/base/key-utils.js +30 -0
- package/dist/ui/base/overlay-base-v2.d.ts +203 -0
- package/dist/ui/base/overlay-base-v2.js +260 -0
- package/dist/ui/base/overlay-base.d.ts +156 -0
- package/dist/ui/base/overlay-base.js +238 -0
- package/dist/ui/base/overlay-lifecycle.d.ts +65 -0
- package/dist/ui/base/overlay-lifecycle.js +159 -0
- package/dist/ui/base/overlay-types.d.ts +185 -0
- package/dist/ui/base/overlay-types.js +7 -0
- package/dist/ui/base/render-utils.d.ts +27 -0
- package/dist/ui/base/render-utils.js +36 -0
- package/dist/ui/base/screen-stack.d.ts +148 -0
- package/dist/ui/base/screen-stack.js +184 -0
- package/dist/ui/base/tabbed-list-overlay-v2.d.ts +118 -0
- package/dist/ui/base/tabbed-list-overlay-v2.js +335 -0
- package/dist/ui/base/tabbed-list-overlay.d.ts +153 -0
- package/dist/ui/base/tabbed-list-overlay.js +369 -0
- package/dist/ui/constants/labels.d.ts +14 -0
- package/dist/ui/constants/labels.js +51 -0
- package/dist/ui/conversation-store.d.ts +55 -0
- package/dist/ui/conversation-store.js +107 -0
- package/dist/ui/conversation.d.ts +75 -4
- package/dist/ui/conversation.js +376 -165
- package/dist/ui/diff.d.ts +7 -1
- package/dist/ui/diff.js +85 -48
- package/dist/ui/ephemeral.d.ts +1 -1
- package/dist/ui/ephemeral.js +4 -10
- package/dist/ui/features/index.d.ts +34 -0
- package/dist/ui/features/index.js +34 -0
- package/dist/ui/features/input-feature.d.ts +85 -0
- package/dist/ui/features/input-feature.js +238 -0
- package/dist/ui/features/list-feature.d.ts +155 -0
- package/dist/ui/features/list-feature.js +244 -0
- package/dist/ui/features/pagination-feature.d.ts +154 -0
- package/dist/ui/features/pagination-feature.js +238 -0
- package/dist/ui/features/search-feature.d.ts +148 -0
- package/dist/ui/features/search-feature.js +185 -0
- package/dist/ui/features/tab-feature.d.ts +194 -0
- package/dist/ui/features/tab-feature.js +307 -0
- package/dist/ui/file-autocomplete.d.ts +24 -0
- package/dist/ui/file-autocomplete.js +56 -0
- package/dist/ui/footer-renderer.d.ts +69 -0
- package/dist/ui/footer-renderer.js +431 -0
- package/dist/ui/footer.d.ts +181 -7
- package/dist/ui/footer.js +523 -74
- package/dist/ui/guardrail-overlay.d.ts +29 -0
- package/dist/ui/guardrail-overlay.js +145 -0
- package/dist/ui/index.d.ts +1 -1
- package/dist/ui/index.js +1 -3
- package/dist/ui/input-controller.d.ts +51 -0
- package/dist/ui/input-controller.js +176 -0
- package/dist/ui/input-prompt.d.ts +135 -33
- package/dist/ui/input-prompt.js +728 -337
- package/dist/ui/iteration-limit-overlay.d.ts +2 -2
- package/dist/ui/iteration-limit-overlay.js +92 -128
- package/dist/ui/keyboard-handler.d.ts +57 -0
- package/dist/ui/keyboard-handler.js +557 -0
- package/dist/ui/keys-overlay.d.ts +1 -0
- package/dist/ui/keys-overlay.js +203 -141
- package/dist/ui/line-utils.d.ts +88 -0
- package/dist/ui/line-utils.js +150 -0
- package/dist/ui/live-region-facade.d.ts +42 -0
- package/dist/ui/live-region-facade.js +205 -0
- package/dist/ui/live-region.d.ts +157 -0
- package/dist/ui/live-region.js +379 -0
- package/dist/ui/mascot/expressions.d.ts +32 -0
- package/dist/ui/mascot/expressions.js +213 -0
- package/dist/ui/mascot/index.d.ts +8 -0
- package/dist/ui/mascot/index.js +8 -0
- package/dist/ui/mascot/renderer.d.ts +19 -0
- package/dist/ui/mascot/renderer.js +132 -0
- package/dist/ui/overlay/data/tutorial-content.d.ts +9 -0
- package/dist/ui/overlay/data/tutorial-content.js +9 -0
- package/dist/ui/overlay/data/tutorial-registry.d.ts +12 -0
- package/dist/ui/overlay/data/tutorial-registry.js +116 -0
- package/dist/ui/overlay/data/tutorial-types.d.ts +35 -0
- package/dist/ui/overlay/data/tutorial-types.js +6 -0
- package/dist/ui/overlay/data/tutorials/basics/first-conversation.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/basics/first-conversation.js +220 -0
- package/dist/ui/overlay/data/tutorials/basics/first-project.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/basics/first-project.js +284 -0
- package/dist/ui/overlay/data/tutorials/basics/navigation.d.ts +8 -0
- package/dist/ui/overlay/data/tutorials/basics/navigation.js +22 -0
- package/dist/ui/overlay/data/tutorials/basics/welcome.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/basics/welcome.js +174 -0
- package/dist/ui/overlay/data/tutorials/config/context-management.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/config/context-management.js +158 -0
- package/dist/ui/overlay/data/tutorials/config/mcp-servers.d.ts +8 -0
- package/dist/ui/overlay/data/tutorials/config/mcp-servers.js +155 -0
- package/dist/ui/overlay/data/tutorials/config/model-selection.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/config/model-selection.js +162 -0
- package/dist/ui/overlay/data/tutorials/config/permissions-safety.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/config/permissions-safety.js +163 -0
- package/dist/ui/overlay/data/tutorials/config/settings-config.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/config/settings-config.js +166 -0
- package/dist/ui/overlay/data/tutorials/planning/arch.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/planning/arch.js +168 -0
- package/dist/ui/overlay/data/tutorials/planning/backlog.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/planning/backlog.js +103 -0
- package/dist/ui/overlay/data/tutorials/planning/build.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/planning/build.js +173 -0
- package/dist/ui/overlay/data/tutorials/planning/design.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/planning/design.js +205 -0
- package/dist/ui/overlay/data/tutorials/planning/docs.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/planning/docs.js +143 -0
- package/dist/ui/overlay/data/tutorials/planning/prd.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/planning/prd.js +173 -0
- package/dist/ui/overlay/data/tutorials/planning/scaffold.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/planning/scaffold.js +164 -0
- package/dist/ui/overlay/data/tutorials/planning/sketch.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/planning/sketch.js +58 -0
- package/dist/ui/overlay/data/tutorials/projects/anchors.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/projects/anchors.js +248 -0
- package/dist/ui/overlay/data/tutorials/projects/import-project.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/projects/import-project.js +172 -0
- package/dist/ui/overlay/data/tutorials/projects/managing-projects.d.ts +8 -0
- package/dist/ui/overlay/data/tutorials/projects/managing-projects.js +212 -0
- package/dist/ui/overlay/data/tutorials/projects/new-project.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/projects/new-project.js +251 -0
- package/dist/ui/overlay/data/tutorials/projects/session-management.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/projects/session-management.js +169 -0
- package/dist/ui/overlay/data/tutorials/teams/background-execution.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/teams/background-execution.js +171 -0
- package/dist/ui/overlay/data/tutorials/teams/multi-terminal.d.ts +8 -0
- package/dist/ui/overlay/data/tutorials/teams/multi-terminal.js +147 -0
- package/dist/ui/overlay/data/tutorials/teams/task-assignment.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/teams/task-assignment.js +204 -0
- package/dist/ui/overlay/data/tutorials/teams/team-overview.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/teams/team-overview.js +165 -0
- package/dist/ui/overlay/data/tutorials/teams/working-with-agents.d.ts +7 -0
- package/dist/ui/overlay/data/tutorials/teams/working-with-agents.js +172 -0
- package/dist/ui/overlay/impl/agents-overlay-v2.d.ts +45 -0
- package/dist/ui/overlay/impl/agents-overlay-v2.js +814 -0
- package/dist/ui/overlay/impl/anchors-overlay-v2.d.ts +47 -0
- package/dist/ui/overlay/impl/anchors-overlay-v2.js +749 -0
- package/dist/ui/overlay/impl/arch-type-overlay-v2.d.ts +37 -0
- package/dist/ui/overlay/impl/arch-type-overlay-v2.js +240 -0
- package/dist/ui/overlay/impl/artifact-detail-overlay-v2.d.ts +43 -0
- package/dist/ui/overlay/impl/artifact-detail-overlay-v2.js +232 -0
- package/dist/ui/overlay/impl/artifact-overlay-v2.d.ts +40 -0
- package/dist/ui/overlay/impl/artifact-overlay-v2.js +115 -0
- package/dist/ui/overlay/impl/ask-user-overlay-v2.d.ts +72 -0
- package/dist/ui/overlay/impl/ask-user-overlay-v2.js +581 -0
- package/dist/ui/overlay/impl/ask-user-simple-overlay-v2.d.ts +46 -0
- package/dist/ui/overlay/impl/ask-user-simple-overlay-v2.js +204 -0
- package/dist/ui/overlay/impl/background-overlay-v2.d.ts +40 -0
- package/dist/ui/overlay/impl/background-overlay-v2.js +147 -0
- package/dist/ui/overlay/impl/backlog-overlay-v2.d.ts +52 -0
- package/dist/ui/overlay/impl/backlog-overlay-v2.js +681 -0
- package/dist/ui/overlay/impl/changelog-overlay-v2.d.ts +44 -0
- package/dist/ui/overlay/impl/changelog-overlay-v2.js +165 -0
- package/dist/ui/overlay/impl/commands-overlay-v2.d.ts +33 -0
- package/dist/ui/overlay/impl/commands-overlay-v2.js +439 -0
- package/dist/ui/overlay/impl/config-overlay-v2.d.ts +111 -0
- package/dist/ui/overlay/impl/config-overlay-v2.js +718 -0
- package/dist/ui/overlay/impl/custom-agent-form-overlay-v2.d.ts +83 -0
- package/dist/ui/overlay/impl/custom-agent-form-overlay-v2.js +711 -0
- package/dist/ui/overlay/impl/dashboard-overlay-v2.d.ts +57 -0
- package/dist/ui/overlay/impl/dashboard-overlay-v2.js +382 -0
- package/dist/ui/overlay/impl/delegations-overlay-v2.d.ts +28 -0
- package/dist/ui/overlay/impl/delegations-overlay-v2.js +279 -0
- package/dist/ui/overlay/impl/docs-overlay-v2.d.ts +45 -0
- package/dist/ui/overlay/impl/docs-overlay-v2.js +117 -0
- package/dist/ui/overlay/impl/document-detail-overlay-v2.d.ts +84 -0
- package/dist/ui/overlay/impl/document-detail-overlay-v2.js +1112 -0
- package/dist/ui/overlay/impl/filter-overlay-v2.d.ts +41 -0
- package/dist/ui/overlay/impl/filter-overlay-v2.js +110 -0
- package/dist/ui/overlay/impl/games-overlay-v2.d.ts +31 -0
- package/dist/ui/overlay/impl/games-overlay-v2.js +135 -0
- package/dist/ui/overlay/impl/guardrail-overlay-v2.d.ts +43 -0
- package/dist/ui/overlay/impl/guardrail-overlay-v2.js +114 -0
- package/dist/ui/overlay/impl/help-overlay-v2.d.ts +57 -0
- package/dist/ui/overlay/impl/help-overlay-v2.js +287 -0
- package/dist/ui/overlay/impl/init-setup-overlay-v2.d.ts +25 -0
- package/dist/ui/overlay/impl/init-setup-overlay-v2.js +97 -0
- package/dist/ui/overlay/impl/iteration-limit-overlay-v2.d.ts +35 -0
- package/dist/ui/overlay/impl/iteration-limit-overlay-v2.js +105 -0
- package/dist/ui/overlay/impl/keys-overlay-v2.d.ts +41 -0
- package/dist/ui/overlay/impl/keys-overlay-v2.js +248 -0
- package/dist/ui/overlay/impl/login-overlay-v2.d.ts +49 -0
- package/dist/ui/overlay/impl/login-overlay-v2.js +277 -0
- package/dist/ui/overlay/impl/mascot-overlay-v2.d.ts +41 -0
- package/dist/ui/overlay/impl/mascot-overlay-v2.js +138 -0
- package/dist/ui/overlay/impl/mcp-overlay-v2.d.ts +63 -0
- package/dist/ui/overlay/impl/mcp-overlay-v2.js +907 -0
- package/dist/ui/overlay/impl/model-overlay-v2.d.ts +93 -0
- package/dist/ui/overlay/impl/model-overlay-v2.js +1143 -0
- package/dist/ui/overlay/impl/model-warning-overlay-v2.d.ts +46 -0
- package/dist/ui/overlay/impl/model-warning-overlay-v2.js +132 -0
- package/dist/ui/overlay/impl/new-overlay-v2.d.ts +108 -0
- package/dist/ui/overlay/impl/new-overlay-v2.js +1243 -0
- package/dist/ui/overlay/impl/notifications-overlay-v2.d.ts +20 -0
- package/dist/ui/overlay/impl/notifications-overlay-v2.js +116 -0
- package/dist/ui/overlay/impl/onboarding-wizard-overlay-v2.d.ts +76 -0
- package/dist/ui/overlay/impl/onboarding-wizard-overlay-v2.js +728 -0
- package/dist/ui/overlay/impl/pending-overlay-v2.d.ts +51 -0
- package/dist/ui/overlay/impl/pending-overlay-v2.js +445 -0
- package/dist/ui/overlay/impl/permission-overlay-v2.d.ts +36 -0
- package/dist/ui/overlay/impl/permission-overlay-v2.js +380 -0
- package/dist/ui/overlay/impl/permissions-overlay-v2.d.ts +85 -0
- package/dist/ui/overlay/impl/permissions-overlay-v2.js +820 -0
- package/dist/ui/overlay/impl/plan-approval-overlay-v2.d.ts +35 -0
- package/dist/ui/overlay/impl/plan-approval-overlay-v2.js +181 -0
- package/dist/ui/overlay/impl/project-edit-overlay-v2.d.ts +36 -0
- package/dist/ui/overlay/impl/project-edit-overlay-v2.js +195 -0
- package/dist/ui/overlay/impl/projects-overlay-v2.d.ts +37 -0
- package/dist/ui/overlay/impl/projects-overlay-v2.js +733 -0
- package/dist/ui/overlay/impl/reset-overlay-v2.d.ts +39 -0
- package/dist/ui/overlay/impl/reset-overlay-v2.js +107 -0
- package/dist/ui/overlay/impl/resume-overlay-v2.d.ts +60 -0
- package/dist/ui/overlay/impl/resume-overlay-v2.js +414 -0
- package/dist/ui/overlay/impl/session-mode-overlay-v2.d.ts +43 -0
- package/dist/ui/overlay/impl/session-mode-overlay-v2.js +124 -0
- package/dist/ui/overlay/impl/tasks-overlay-v2.d.ts +28 -0
- package/dist/ui/overlay/impl/tasks-overlay-v2.js +283 -0
- package/dist/ui/overlay/impl/team-overlay-v2.d.ts +86 -0
- package/dist/ui/overlay/impl/team-overlay-v2.js +692 -0
- package/dist/ui/overlay/impl/terminals-overlay-v2.d.ts +26 -0
- package/dist/ui/overlay/impl/terminals-overlay-v2.js +217 -0
- package/dist/ui/overlay/impl/theme-overlay-v2.d.ts +42 -0
- package/dist/ui/overlay/impl/theme-overlay-v2.js +135 -0
- package/dist/ui/overlay/impl/tools-overlay-v2.d.ts +47 -0
- package/dist/ui/overlay/impl/tools-overlay-v2.js +214 -0
- package/dist/ui/overlay/impl/tutorial-overlay-v2.d.ts +45 -0
- package/dist/ui/overlay/impl/tutorial-overlay-v2.js +212 -0
- package/dist/ui/overlay/impl/workflow-overlay-v2.d.ts +80 -0
- package/dist/ui/overlay/impl/workflow-overlay-v2.js +641 -0
- package/dist/ui/overlay/index.d.ts +52 -0
- package/dist/ui/overlay/index.js +54 -0
- package/dist/ui/overlay/key-utils.d.ts +6 -0
- package/dist/ui/overlay/key-utils.js +6 -0
- package/dist/ui/overlay/types.d.ts +140 -0
- package/dist/ui/overlay/types.js +22 -0
- package/dist/ui/overlay-manager.d.ts +43 -0
- package/dist/ui/overlay-manager.js +238 -0
- package/dist/ui/overlays.d.ts +0 -4
- package/dist/ui/overlays.js +4 -460
- package/dist/ui/permission-overlay.d.ts +1 -1
- package/dist/ui/permission-overlay.js +189 -300
- package/dist/ui/providers/types.d.ts +178 -0
- package/dist/ui/providers/types.js +9 -0
- package/dist/ui/render-modes.d.ts +36 -0
- package/dist/ui/render-modes.js +44 -0
- package/dist/ui/startup-menu.d.ts +36 -0
- package/dist/ui/startup-menu.js +236 -0
- package/dist/ui/status-bar-controller.d.ts +33 -0
- package/dist/ui/status-bar-controller.js +99 -0
- package/dist/ui/subagent-renderer.d.ts +117 -0
- package/dist/ui/subagent-renderer.js +318 -0
- package/dist/ui/terminal-autocomplete-utils.d.ts +23 -0
- package/dist/ui/terminal-autocomplete-utils.js +83 -0
- package/dist/ui/terminal-codes.d.ts +94 -0
- package/dist/ui/terminal-codes.js +124 -0
- package/dist/ui/terminal-line-builders.d.ts +17 -0
- package/dist/ui/terminal-line-builders.js +42 -0
- package/dist/ui/terminal-render-item.d.ts +16 -0
- package/dist/ui/terminal-render-item.js +267 -0
- package/dist/ui/terminal-renderer.d.ts +220 -0
- package/dist/ui/terminal-renderer.js +750 -0
- package/dist/ui/terminal-types.d.ts +179 -0
- package/dist/ui/terminal-types.js +34 -0
- package/dist/ui/terminal-ui.d.ts +331 -0
- package/dist/ui/terminal-ui.js +819 -0
- package/dist/ui/terminal.d.ts +20 -0
- package/dist/ui/terminal.js +72 -0
- package/dist/ui/todo-zone.d.ts +19 -1
- package/dist/ui/todo-zone.js +124 -38
- package/dist/ui/tool-formatters.d.ts +16 -0
- package/dist/ui/tool-formatters.js +1027 -0
- package/dist/ui/turn-metrics.d.ts +56 -0
- package/dist/ui/turn-metrics.js +75 -0
- package/dist/ui/types.d.ts +28 -0
- package/dist/ui/types.js +1 -0
- package/dist/ui/vscode-diff-ipc.d.ts +102 -0
- package/dist/ui/vscode-diff-ipc.js +385 -0
- package/dist/utils/credentials.d.ts +24 -5
- package/dist/utils/credentials.js +123 -9
- package/dist/utils/debug-log.d.ts +28 -0
- package/dist/utils/debug-log.js +57 -0
- package/dist/utils/format-tokens.d.ts +13 -0
- package/dist/utils/format-tokens.js +18 -0
- package/dist/utils/git-config.d.ts +26 -0
- package/dist/utils/git-config.js +54 -0
- package/dist/utils/message-utils.d.ts +61 -0
- package/dist/utils/message-utils.js +72 -0
- package/dist/utils/model-tiers.d.ts +8 -1
- package/dist/utils/model-tiers.js +39 -17
- package/dist/utils/open-browser.d.ts +5 -0
- package/dist/utils/open-browser.js +32 -0
- package/dist/utils/path-safety.d.ts +56 -0
- package/dist/utils/path-safety.js +240 -0
- package/dist/utils/project-detection.d.ts +58 -0
- package/dist/utils/project-detection.js +424 -0
- package/dist/utils/project-memory.js +2 -1
- package/dist/utils/project-status.d.ts +2 -2
- package/dist/utils/startup-perf.d.ts +18 -0
- package/dist/utils/startup-perf.js +60 -0
- package/dist/utils/token-tracker.d.ts +62 -0
- package/dist/utils/token-tracker.js +150 -0
- package/dist/utils/token-types.d.ts +23 -0
- package/dist/utils/token-types.js +18 -0
- package/dist/utils/types/config-types.d.ts +32 -0
- package/dist/utils/types/config-types.js +8 -0
- package/dist/utils/update-checker.d.ts +28 -0
- package/dist/utils/update-checker.js +106 -0
- package/dist/utils/version.d.ts +7 -0
- package/dist/utils/version.js +10 -0
- package/dist/utils/vscode-detect.d.ts +39 -0
- package/dist/utils/vscode-detect.js +137 -0
- package/dist/workflow/guided-mode-injector.d.ts +42 -0
- package/dist/workflow/guided-mode-injector.js +191 -0
- package/dist/workflow/index.d.ts +8 -0
- package/dist/workflow/index.js +8 -0
- package/dist/workflow/step-criteria.d.ts +62 -0
- package/dist/workflow/step-criteria.js +150 -0
- package/dist/workflow/step-tracker.d.ts +92 -0
- package/dist/workflow/step-tracker.js +141 -0
- package/package.json +32 -12
- package/dist/index.old.d.ts +0 -7
- package/dist/index.old.js +0 -1014
- package/dist/repl.d.ts +0 -121
- package/dist/repl.js +0 -1878
- package/dist/templates/claude-md.d.ts +0 -7
- package/dist/templates/claude-md.js +0 -189
- package/dist/test-autocomplete.d.ts +0 -7
- package/dist/test-autocomplete.js +0 -85
- package/dist/test-tabbed-menu.d.ts +0 -7
- package/dist/test-tabbed-menu.js +0 -25
- package/dist/tool-selector.d.ts +0 -71
- package/dist/tool-selector.js +0 -184
- package/dist/ui/agents-overlay.d.ts +0 -12
- package/dist/ui/agents-overlay.js +0 -501
- package/dist/ui/arch-type-overlay.d.ts +0 -20
- package/dist/ui/arch-type-overlay.js +0 -229
- package/dist/ui/backlog-overlay.d.ts +0 -17
- package/dist/ui/backlog-overlay.js +0 -786
- package/dist/ui/commands-overlay.d.ts +0 -11
- package/dist/ui/commands-overlay.js +0 -410
- package/dist/ui/config-overlay.d.ts +0 -34
- package/dist/ui/config-overlay.js +0 -977
- package/dist/ui/init-overlay.d.ts +0 -24
- package/dist/ui/init-overlay.js +0 -525
- package/dist/ui/input-prompt-v2.d.ts +0 -179
- package/dist/ui/input-prompt-v2.js +0 -991
- package/dist/ui/model-warning-overlay.d.ts +0 -30
- package/dist/ui/model-warning-overlay.js +0 -171
- package/dist/ui/tools-overlay.d.ts +0 -26
- package/dist/ui/tools-overlay.js +0 -278
- package/dist/ui/tutorial-overlay.d.ts +0 -10
- package/dist/ui/tutorial-overlay.js +0 -936
|
@@ -0,0 +1,554 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* REPL V2 - New Terminal UI based REPL
|
|
3
|
+
*
|
|
4
|
+
* Uses TerminalUI with:
|
|
5
|
+
* - Persistent footer (todo list + input prompt)
|
|
6
|
+
* - Overlay system for commands
|
|
7
|
+
* - Real agent integration (or simulation mode for testing)
|
|
8
|
+
*
|
|
9
|
+
* Can be run standalone: npx tsx src/repl-v2.ts
|
|
10
|
+
* Or imported and used with a real agent from index.ts
|
|
11
|
+
*/
|
|
12
|
+
import type { Agent } from '@compilr-dev/sdk';
|
|
13
|
+
import type { AgentTeam } from './multi-agent/index.js';
|
|
14
|
+
import { type PermissionResult, type PermissionOverlayV2Options } from './ui/overlay/impl/permission-overlay-v2.js';
|
|
15
|
+
import { type AskUserSimpleOptionsV2, type AskUserSimpleResultV2 } from './ui/overlay/impl/ask-user-simple-overlay-v2.js';
|
|
16
|
+
import { type GuardrailConfirmOptionsV2, type GuardrailConfirmResultV2 } from './ui/overlay/impl/guardrail-overlay-v2.js';
|
|
17
|
+
import { type AskUserOptionsV2, type AskUserResultV2 } from './ui/overlay/impl/ask-user-overlay-v2.js';
|
|
18
|
+
import { type IterationLimitOptionsV2, type IterationLimitResultV2 } from './ui/overlay/impl/iteration-limit-overlay-v2.js';
|
|
19
|
+
export interface DelegateOverlayOptions {
|
|
20
|
+
agentId: string;
|
|
21
|
+
agentDisplayName: string;
|
|
22
|
+
task: string;
|
|
23
|
+
reason?: string;
|
|
24
|
+
}
|
|
25
|
+
export interface DelegateOverlayResult {
|
|
26
|
+
approved: boolean;
|
|
27
|
+
}
|
|
28
|
+
export interface ReplV2Options {
|
|
29
|
+
/** Agent instance (optional - uses simulation if not provided) */
|
|
30
|
+
agent?: Agent;
|
|
31
|
+
/** Multi-agent team (optional - for team management) */
|
|
32
|
+
team?: AgentTeam;
|
|
33
|
+
/** Agent factory function for creating new agents (for team switching) */
|
|
34
|
+
agentFactory?: (config: Record<string, unknown>, systemPromptAddition?: string, useMinimalSystemPrompt?: boolean, noTools?: boolean) => Promise<Agent>;
|
|
35
|
+
/** Current model ID */
|
|
36
|
+
model?: string;
|
|
37
|
+
/** Current provider */
|
|
38
|
+
provider?: string;
|
|
39
|
+
/** CLI version */
|
|
40
|
+
version?: string;
|
|
41
|
+
/** Update available info (if any) */
|
|
42
|
+
updateAvailable?: {
|
|
43
|
+
current: string;
|
|
44
|
+
latest: string;
|
|
45
|
+
} | null;
|
|
46
|
+
/** Initial project name */
|
|
47
|
+
projectName?: string;
|
|
48
|
+
/**
|
|
49
|
+
* Callback invoked when TerminalUI is ready.
|
|
50
|
+
* Allows index.ts to set up permission overlay callback.
|
|
51
|
+
*/
|
|
52
|
+
onUIReady?: (showPermissionOverlay: (options: PermissionOverlayV2Options) => Promise<PermissionResult | null>) => void;
|
|
53
|
+
/**
|
|
54
|
+
* Callback invoked when text buffer flush function is ready.
|
|
55
|
+
* Allows index.ts to flush accumulated agent text before showing overlays.
|
|
56
|
+
*/
|
|
57
|
+
onTextBufferReady?: (flushTextBuffer: () => void) => void;
|
|
58
|
+
/**
|
|
59
|
+
* Callback invoked when ask_user_simple overlay is ready.
|
|
60
|
+
* Allows index.ts to use V2 overlay for agent questions.
|
|
61
|
+
*/
|
|
62
|
+
onAskUserSimpleReady?: (showOverlay: (options: AskUserSimpleOptionsV2) => Promise<AskUserSimpleResultV2>) => void;
|
|
63
|
+
/**
|
|
64
|
+
* Callback invoked when guardrail overlay is ready.
|
|
65
|
+
* Allows index.ts to use V2 overlay for guardrail confirmations.
|
|
66
|
+
*/
|
|
67
|
+
onGuardrailReady?: (showOverlay: (options: GuardrailConfirmOptionsV2) => Promise<GuardrailConfirmResultV2>) => void;
|
|
68
|
+
/**
|
|
69
|
+
* Callback invoked when ask_user overlay is ready.
|
|
70
|
+
* Allows index.ts to use V2 overlay for multi-question forms.
|
|
71
|
+
*/
|
|
72
|
+
onAskUserReady?: (showOverlay: (options: AskUserOptionsV2) => Promise<AskUserResultV2>) => void;
|
|
73
|
+
/**
|
|
74
|
+
* Callback invoked when iteration_limit overlay is ready.
|
|
75
|
+
* Allows index.ts to use V2 overlay for iteration limit prompts.
|
|
76
|
+
*/
|
|
77
|
+
onIterationLimitReady?: (showOverlay: (options: IterationLimitOptionsV2) => Promise<IterationLimitResultV2>) => void;
|
|
78
|
+
/**
|
|
79
|
+
* Callback invoked when agent finishes processing.
|
|
80
|
+
* Allows index.ts to apply deferred actions like suggestions.
|
|
81
|
+
*/
|
|
82
|
+
onAgentFinish?: () => void;
|
|
83
|
+
/**
|
|
84
|
+
* Callback invoked when suggestion setter is ready.
|
|
85
|
+
* Allows index.ts to set suggestions on the V2 UI.
|
|
86
|
+
*/
|
|
87
|
+
onSuggestionReady?: (setSuggestion: (action: string | null) => void) => void;
|
|
88
|
+
/**
|
|
89
|
+
* Callback invoked when subagent tracking is ready.
|
|
90
|
+
* Allows index.ts to forward subagent events to LiveRegion for live rendering.
|
|
91
|
+
* Now uses toolUseId for direct correlation (no more FIFO queue matching).
|
|
92
|
+
*/
|
|
93
|
+
onSubagentReady?: (callbacks: {
|
|
94
|
+
onStart: (toolUseId: string, agentType: string, description: string) => void;
|
|
95
|
+
onToolUse: (toolUseId: string, toolName: string, summary?: string) => void;
|
|
96
|
+
onEnd: (toolUseId: string, success: boolean, tokenCount: number, error?: string) => void;
|
|
97
|
+
}) => void;
|
|
98
|
+
/**
|
|
99
|
+
* Function to clear subagent tracking state in agent.ts between runs.
|
|
100
|
+
* Called at the start of each agent run to prevent stale data.
|
|
101
|
+
*/
|
|
102
|
+
clearSubagentTracking?: () => void;
|
|
103
|
+
/**
|
|
104
|
+
* Whether to show the onboarding wizard on startup.
|
|
105
|
+
* Set to true for first-run experience.
|
|
106
|
+
*/
|
|
107
|
+
showOnboarding?: boolean;
|
|
108
|
+
/**
|
|
109
|
+
* Whether to show the login overlay on startup.
|
|
110
|
+
* Set to true when user is not authenticated.
|
|
111
|
+
*/
|
|
112
|
+
showLogin?: boolean;
|
|
113
|
+
/**
|
|
114
|
+
* Callback invoked when delegate overlay is ready.
|
|
115
|
+
* Allows index.ts to use V2 overlay for delegation approval.
|
|
116
|
+
*/
|
|
117
|
+
onDelegateReady?: (showOverlay: (options: DelegateOverlayOptions) => Promise<DelegateOverlayResult>) => void;
|
|
118
|
+
/**
|
|
119
|
+
* Callback to get and clear pending delegation.
|
|
120
|
+
* Returns the pending delegation info if any, and clears it.
|
|
121
|
+
*/
|
|
122
|
+
onPendingDelegation?: () => {
|
|
123
|
+
agentId: string;
|
|
124
|
+
task: string;
|
|
125
|
+
} | null;
|
|
126
|
+
/**
|
|
127
|
+
* Callback invoked when background agent tracking is ready.
|
|
128
|
+
* Allows index.ts to check if an agent is running in background and route
|
|
129
|
+
* permission requests to the pending requests queue.
|
|
130
|
+
*
|
|
131
|
+
* Phase 3b: Background Agents
|
|
132
|
+
*/
|
|
133
|
+
onBackgroundAgentReady?: (callbacks: {
|
|
134
|
+
isBackgroundAgent: (agentId?: string) => boolean;
|
|
135
|
+
getActiveBackgroundAgentId: () => string | null;
|
|
136
|
+
getBackgroundAgentInfo: (agentId: string) => {
|
|
137
|
+
mascot: string;
|
|
138
|
+
} | null;
|
|
139
|
+
}) => void;
|
|
140
|
+
/**
|
|
141
|
+
* Auth-only mode: Only allow /login, /logout, /exit commands.
|
|
142
|
+
* Used when user is not authenticated.
|
|
143
|
+
*/
|
|
144
|
+
authOnly?: boolean;
|
|
145
|
+
/**
|
|
146
|
+
* Callback invoked when background delegation support is ready.
|
|
147
|
+
* Allows index.ts to run background delegations via the REPL.
|
|
148
|
+
*
|
|
149
|
+
* Phase 3d-beta: Coordinator Mode
|
|
150
|
+
*/
|
|
151
|
+
onBackgroundDelegationReady?: (runDelegation: (agentId: string, message: string) => 'running' | 'queued' | null) => void;
|
|
152
|
+
/**
|
|
153
|
+
* Callback invoked when terminal session is registered.
|
|
154
|
+
* Passes the session ID so index.ts can set sessionPrefix for IPC.
|
|
155
|
+
*/
|
|
156
|
+
onSessionRegistered?: (sessionId: string) => void;
|
|
157
|
+
/**
|
|
158
|
+
* Callback invoked when the team is replaced during session restore.
|
|
159
|
+
* Allows index.ts to update sharedState.team so delegation handlers
|
|
160
|
+
* see the restored team (with all agents) instead of the initial one.
|
|
161
|
+
*/
|
|
162
|
+
onTeamReplaced?: (newTeam: AgentTeam) => void;
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* Options for switchAgent().
|
|
166
|
+
* Controls which operations are performed during a switch.
|
|
167
|
+
*/
|
|
168
|
+
export interface SwitchAgentOptions {
|
|
169
|
+
/** Demote current foreground agent to background if busy (default: true) */
|
|
170
|
+
demoteCurrentIfBusy?: boolean;
|
|
171
|
+
/** Update foreground session tracking (default: true) */
|
|
172
|
+
trackSession?: boolean;
|
|
173
|
+
/** Record agent switch in telemetry (default: true) */
|
|
174
|
+
recordTelemetry?: boolean;
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* Result of a switchAgent() call.
|
|
178
|
+
*/
|
|
179
|
+
export interface SwitchAgentResult {
|
|
180
|
+
/** The team agent that was switched to */
|
|
181
|
+
teamAgent: {
|
|
182
|
+
id: string;
|
|
183
|
+
displayName: string;
|
|
184
|
+
mascot: string;
|
|
185
|
+
agent: Agent | null;
|
|
186
|
+
toolFilter?: string[] | null;
|
|
187
|
+
};
|
|
188
|
+
/** The agent ID that was demoted to background, or null */
|
|
189
|
+
demotedAgentId: string | null;
|
|
190
|
+
}
|
|
191
|
+
export declare class ReplV2 {
|
|
192
|
+
private agent?;
|
|
193
|
+
private team?;
|
|
194
|
+
private readonly agentFactory?;
|
|
195
|
+
private readonly model;
|
|
196
|
+
private readonly provider;
|
|
197
|
+
private readonly version;
|
|
198
|
+
private readonly updateAvailable;
|
|
199
|
+
private readonly projectName;
|
|
200
|
+
private readonly sessions;
|
|
201
|
+
private foregroundAgentId;
|
|
202
|
+
private readonly agentMessageQueues;
|
|
203
|
+
private currentSession;
|
|
204
|
+
private ui;
|
|
205
|
+
private readonly onUIReady?;
|
|
206
|
+
private readonly onTextBufferReady?;
|
|
207
|
+
private readonly onAskUserSimpleReady?;
|
|
208
|
+
private readonly onGuardrailReady?;
|
|
209
|
+
private readonly onAskUserReady?;
|
|
210
|
+
private readonly onIterationLimitReady?;
|
|
211
|
+
private readonly onAgentFinish?;
|
|
212
|
+
private readonly onSuggestionReady?;
|
|
213
|
+
private readonly onSubagentReady?;
|
|
214
|
+
private readonly clearSubagentTracking?;
|
|
215
|
+
private readonly showOnboarding;
|
|
216
|
+
private readonly showLogin;
|
|
217
|
+
private readonly onDelegateReady?;
|
|
218
|
+
private readonly onPendingDelegation?;
|
|
219
|
+
private readonly onBackgroundAgentReady?;
|
|
220
|
+
private readonly onBackgroundDelegationReady?;
|
|
221
|
+
private readonly onSessionRegistered?;
|
|
222
|
+
private readonly onTeamReplaced?;
|
|
223
|
+
private readonly authOnly;
|
|
224
|
+
private restoredSessionInfo;
|
|
225
|
+
private currentExecutingBackgroundAgentId;
|
|
226
|
+
private readonly startTime;
|
|
227
|
+
private sessionInputTokens;
|
|
228
|
+
private sessionOutputTokens;
|
|
229
|
+
private sessionRequests;
|
|
230
|
+
private textAccumulator;
|
|
231
|
+
private readonly bashAbortControllers;
|
|
232
|
+
constructor(options?: ReplV2Options);
|
|
233
|
+
/**
|
|
234
|
+
* Flush accumulated agent text to the UI.
|
|
235
|
+
* Called externally (e.g., before showing permission overlay) to ensure
|
|
236
|
+
* agent's "I'll do X" message appears before the overlay.
|
|
237
|
+
*/
|
|
238
|
+
private flushTextBuffer;
|
|
239
|
+
/**
|
|
240
|
+
* Get the mascot expression for the currently active agent.
|
|
241
|
+
* Returns the team agent's mascot if active, otherwise default neutral.
|
|
242
|
+
*/
|
|
243
|
+
private getActiveAgentMascot;
|
|
244
|
+
/**
|
|
245
|
+
* Start a new agent session (foreground or background).
|
|
246
|
+
* For foreground: sets currentSession and foregroundAgentId
|
|
247
|
+
* For background: only adds to sessions map
|
|
248
|
+
*/
|
|
249
|
+
private startSession;
|
|
250
|
+
/**
|
|
251
|
+
* End an agent session.
|
|
252
|
+
* Removes from sessions map, clears currentSession if foreground,
|
|
253
|
+
* and processes any queued messages for this agent.
|
|
254
|
+
*/
|
|
255
|
+
private endSession;
|
|
256
|
+
/**
|
|
257
|
+
* Get a session by agent ID.
|
|
258
|
+
*/
|
|
259
|
+
private getSession;
|
|
260
|
+
/**
|
|
261
|
+
* Get all background sessions (non-foreground).
|
|
262
|
+
*/
|
|
263
|
+
private getBackgroundSessions;
|
|
264
|
+
/**
|
|
265
|
+
* Check if an agent has a running session.
|
|
266
|
+
*/
|
|
267
|
+
private hasActiveSession;
|
|
268
|
+
/**
|
|
269
|
+
* Check if any background agents are running.
|
|
270
|
+
*/
|
|
271
|
+
private hasBackgroundAgents;
|
|
272
|
+
/**
|
|
273
|
+
* Queue a message for an agent that is currently busy.
|
|
274
|
+
* Returns the queue position (1-based).
|
|
275
|
+
*/
|
|
276
|
+
private queueMessage;
|
|
277
|
+
/**
|
|
278
|
+
* Get the number of messages queued for an agent.
|
|
279
|
+
*/
|
|
280
|
+
private getQueueLength;
|
|
281
|
+
/**
|
|
282
|
+
* Clear all queued messages for an agent.
|
|
283
|
+
* Returns the number of messages that were cleared.
|
|
284
|
+
*/
|
|
285
|
+
private clearQueue;
|
|
286
|
+
/**
|
|
287
|
+
* Clear all message queues for all agents.
|
|
288
|
+
* Returns the total number of messages cleared.
|
|
289
|
+
*/
|
|
290
|
+
private clearAllQueues;
|
|
291
|
+
/**
|
|
292
|
+
* Process the next message in an agent's queue.
|
|
293
|
+
* Called after an agent completes a task.
|
|
294
|
+
*/
|
|
295
|
+
private processAgentQueue;
|
|
296
|
+
/**
|
|
297
|
+
* Get detailed info about background sessions (for /bg overlay).
|
|
298
|
+
* Phase 3c: Background Status & Control
|
|
299
|
+
*/
|
|
300
|
+
private getBackgroundSessionsInfo;
|
|
301
|
+
/**
|
|
302
|
+
* Send the current foreground agent to background without aborting it.
|
|
303
|
+
* The agent continues running; the user regains the input prompt.
|
|
304
|
+
* Returns the agent ID that was sent to background, or null if no foreground session.
|
|
305
|
+
*/
|
|
306
|
+
private sendForegroundToBackground;
|
|
307
|
+
/**
|
|
308
|
+
* Consolidated agent-switching method.
|
|
309
|
+
*
|
|
310
|
+
* Performs ALL operations needed to switch the foreground to a different agent:
|
|
311
|
+
* 1. Demote current foreground agent to background (if busy + different agent)
|
|
312
|
+
* 2. team.switchTo(agentId)
|
|
313
|
+
* 3. Update this.agent reference
|
|
314
|
+
* 4. Update meta-tool filter
|
|
315
|
+
* 5. Update footer UI
|
|
316
|
+
* 6. Update foreground session tracking (restore agentRunning/spinner)
|
|
317
|
+
* 7. Record telemetry
|
|
318
|
+
*
|
|
319
|
+
* Callers handle their own messaging (different styles/wording per context).
|
|
320
|
+
*/
|
|
321
|
+
private switchAgent;
|
|
322
|
+
/**
|
|
323
|
+
* Bring a background agent to foreground.
|
|
324
|
+
* Validates the agent has a background session, then delegates to switchAgent().
|
|
325
|
+
* Phase 3c: Background Status & Control
|
|
326
|
+
*/
|
|
327
|
+
private bringAgentToForeground;
|
|
328
|
+
/**
|
|
329
|
+
* Kill/cancel a background agent.
|
|
330
|
+
* Phase 3c: Background Status & Control
|
|
331
|
+
*/
|
|
332
|
+
private killAgent;
|
|
333
|
+
/**
|
|
334
|
+
* Get mascot label for an agent (for output labeling).
|
|
335
|
+
* Format: "[◈_◈] $arch" - mascot followed by agent reference
|
|
336
|
+
*/
|
|
337
|
+
private getAgentMascotLabel;
|
|
338
|
+
/**
|
|
339
|
+
* Auto-expand conversation filter if user is sending to an agent not in the filter.
|
|
340
|
+
* Shows info message when filter is expanded.
|
|
341
|
+
* @returns true if filter was expanded, false otherwise
|
|
342
|
+
*/
|
|
343
|
+
private autoExpandFilterIfNeeded;
|
|
344
|
+
/**
|
|
345
|
+
* Regex to detect PLAN_READY marker in agent text.
|
|
346
|
+
* Format: [PLAN_READY:plan_id:plan_name]
|
|
347
|
+
*/
|
|
348
|
+
private static readonly PLAN_READY_REGEX;
|
|
349
|
+
/**
|
|
350
|
+
* Check if text contains PLAN_READY marker and extract plan info.
|
|
351
|
+
*/
|
|
352
|
+
private detectPlanReady;
|
|
353
|
+
/**
|
|
354
|
+
* Handle plan approval flow.
|
|
355
|
+
* Shows the approval overlay and handles the user's choice.
|
|
356
|
+
*/
|
|
357
|
+
private handlePlanApproval;
|
|
358
|
+
/**
|
|
359
|
+
* Restore the agent from a previous state.
|
|
360
|
+
* Called by /resume command to swap in a restored agent.
|
|
361
|
+
*/
|
|
362
|
+
restoreAgent(newAgent: Agent): void;
|
|
363
|
+
/**
|
|
364
|
+
* Get the current agent instance.
|
|
365
|
+
* Used by commands that need to serialize/checkpoint the agent state.
|
|
366
|
+
*/
|
|
367
|
+
getAgent(): Agent | undefined;
|
|
368
|
+
/**
|
|
369
|
+
* Start the REPL.
|
|
370
|
+
*/
|
|
371
|
+
start(): void;
|
|
372
|
+
/**
|
|
373
|
+
* Handle login flow: show branded login overlay, then continue to onboarding or normal startup.
|
|
374
|
+
*/
|
|
375
|
+
private handleLoginFlow;
|
|
376
|
+
/**
|
|
377
|
+
* Handle startup sequence: session restoration first, then menu if applicable.
|
|
378
|
+
* This ensures proper ordering of startup overlays.
|
|
379
|
+
*/
|
|
380
|
+
private handleStartupSequence;
|
|
381
|
+
/**
|
|
382
|
+
* Restore a persisted team for a given terminal prefix.
|
|
383
|
+
* Replaces the current (fresh) team with the one from disk.
|
|
384
|
+
* Returns true if a team was restored.
|
|
385
|
+
*/
|
|
386
|
+
private restoreTeamForPrefix;
|
|
387
|
+
/**
|
|
388
|
+
* Auto-restore session silently (for 'auto' mode).
|
|
389
|
+
* Restores both conversation history AND team roster.
|
|
390
|
+
* Called at startup when projectSessionMode='auto'.
|
|
391
|
+
*
|
|
392
|
+
* Behavior depends on whether other terminals are active on the same project:
|
|
393
|
+
* - Single terminal: silently restore the most recent available session + claim it
|
|
394
|
+
* - Multiple terminals: fall back to 'ask' mode (show overlay)
|
|
395
|
+
*/
|
|
396
|
+
private autoRestoreSession;
|
|
397
|
+
/**
|
|
398
|
+
* When this terminal has no session but other terminals do, show the resume
|
|
399
|
+
* overlay so the user can pick one or start fresh.
|
|
400
|
+
*/
|
|
401
|
+
private offerOtherTerminalSessions;
|
|
402
|
+
/**
|
|
403
|
+
* Parse session ID format for startup flow (duplicates session handler logic
|
|
404
|
+
* to avoid circular import).
|
|
405
|
+
*/
|
|
406
|
+
private parseCurrentSessionIdForStartup;
|
|
407
|
+
/**
|
|
408
|
+
* Handle session mode prompt at startup when projectSessionMode='ask'.
|
|
409
|
+
* Shows overlay to let user choose how to handle existing session.
|
|
410
|
+
*/
|
|
411
|
+
private handleSessionModePrompt;
|
|
412
|
+
/**
|
|
413
|
+
* Apply the user's session mode choice.
|
|
414
|
+
*/
|
|
415
|
+
private handleSessionModeResult;
|
|
416
|
+
/**
|
|
417
|
+
* Show the onboarding wizard for first-time users.
|
|
418
|
+
* Called on first run, or manually via /init command.
|
|
419
|
+
*/
|
|
420
|
+
private showOnboardingWizard;
|
|
421
|
+
/**
|
|
422
|
+
* Stop the REPL.
|
|
423
|
+
* Aborts all running sessions (foreground and background).
|
|
424
|
+
*/
|
|
425
|
+
/** Set MCP loading state on the footer status bar. */
|
|
426
|
+
setMCPLoading(loading: boolean, toolCount?: number): void;
|
|
427
|
+
stop(): void;
|
|
428
|
+
/**
|
|
429
|
+
* Print just the logo to the scrolling area.
|
|
430
|
+
* Used for dashboard mode where hints are not needed.
|
|
431
|
+
*/
|
|
432
|
+
private printLogo;
|
|
433
|
+
/**
|
|
434
|
+
* Print full welcome message for REPL mode.
|
|
435
|
+
*/
|
|
436
|
+
private printWelcome;
|
|
437
|
+
private createCommandContext;
|
|
438
|
+
private handleCommand;
|
|
439
|
+
/**
|
|
440
|
+
* Process queued agent messages.
|
|
441
|
+
* Commands can queue messages to invoke the agent programmatically.
|
|
442
|
+
*/
|
|
443
|
+
private processAgentMessageQueue;
|
|
444
|
+
private processInput;
|
|
445
|
+
/**
|
|
446
|
+
* Process input in background mode.
|
|
447
|
+
* Starts the agent without blocking, allowing user to continue with foreground work.
|
|
448
|
+
*
|
|
449
|
+
* @param agentId - The agent to run in background
|
|
450
|
+
* @param input - The message to send to the agent
|
|
451
|
+
*/
|
|
452
|
+
private processInputBackground;
|
|
453
|
+
/**
|
|
454
|
+
* Parse $name prefix from input.
|
|
455
|
+
* Returns the agent ID, remaining input, and whether this is a background request.
|
|
456
|
+
* Returns null if the agent doesn't exist.
|
|
457
|
+
*
|
|
458
|
+
* Examples:
|
|
459
|
+
* "$arch Design the API" → { agentId: 'arch', remainingInput: 'Design the API', isBackground: false }
|
|
460
|
+
* "$arch Design the API &" → { agentId: 'arch', remainingInput: 'Design the API', isBackground: true }
|
|
461
|
+
* "$pm /backlog" → { agentId: 'pm', remainingInput: '/backlog', isBackground: false }
|
|
462
|
+
* "$arch" → { agentId: 'arch', remainingInput: '', isBackground: false }
|
|
463
|
+
*/
|
|
464
|
+
private parseAgentPrefix;
|
|
465
|
+
/**
|
|
466
|
+
* Resolve $agent mention references in input and inject context.
|
|
467
|
+
*
|
|
468
|
+
* This handles mid-sentence mentions like:
|
|
469
|
+
* "What did $arch propose for the API?"
|
|
470
|
+
* "Based on $pm's plan, estimate the timeline"
|
|
471
|
+
*
|
|
472
|
+
* The resolved context is prepended to the message before sending to the agent.
|
|
473
|
+
*/
|
|
474
|
+
private resolveAndInjectMentions;
|
|
475
|
+
/**
|
|
476
|
+
* Handle memory note input ("# note") - V2 compatible version
|
|
477
|
+
*/
|
|
478
|
+
private handleMemoryInputV2;
|
|
479
|
+
/**
|
|
480
|
+
* Handle bash command ("!ls", "!git status", etc.)
|
|
481
|
+
* Runs the command directly and displays output.
|
|
482
|
+
* Special handling for 'cd' to change the CLI's working directory.
|
|
483
|
+
*/
|
|
484
|
+
private handleBashCommand;
|
|
485
|
+
private processQueue;
|
|
486
|
+
private runAgentReal;
|
|
487
|
+
/**
|
|
488
|
+
* Format completion events into a structured message for the coordinator.
|
|
489
|
+
* Groups events by agent and includes task, result summary, and artifact info.
|
|
490
|
+
*/
|
|
491
|
+
private formatCompletionMessage;
|
|
492
|
+
/**
|
|
493
|
+
* Check and process delegation completions for an agent that just finished.
|
|
494
|
+
* Marks all running delegations for this agent as completed or failed,
|
|
495
|
+
* then attempts to auto-resume the coordinator if idle.
|
|
496
|
+
*
|
|
497
|
+
* @param agentId - The agent that just finished
|
|
498
|
+
* @param error - If present, the agent failed with this error
|
|
499
|
+
*/
|
|
500
|
+
private checkDelegationCompletion;
|
|
501
|
+
/**
|
|
502
|
+
* Auto-resume the coordinator if it's idle and there are pending completion events.
|
|
503
|
+
* If the coordinator is busy, events stay in queue for deferred delivery.
|
|
504
|
+
*
|
|
505
|
+
* Must be async to properly await switchAgent before running the coordinator.
|
|
506
|
+
* Called fire-and-forget from checkDelegationCompletion — this ensures the
|
|
507
|
+
* background agent's endSession() runs independently (no session conflicts).
|
|
508
|
+
*/
|
|
509
|
+
private maybeResumeCoordinator;
|
|
510
|
+
/**
|
|
511
|
+
* Run an agent in background (Phase 3 - Background Agents).
|
|
512
|
+
* Similar to runAgentReal but:
|
|
513
|
+
* - Creates a background session (isBackground: true)
|
|
514
|
+
* - Labels all output with agent mascot
|
|
515
|
+
* - Doesn't block the caller
|
|
516
|
+
* - Shows completion notification when done
|
|
517
|
+
*
|
|
518
|
+
* @param agentId - The agent ID to run
|
|
519
|
+
* @param userMessage - The message to send to the agent
|
|
520
|
+
*/
|
|
521
|
+
private runAgentBackground;
|
|
522
|
+
/**
|
|
523
|
+
* Handle pending delegation after agent finishes.
|
|
524
|
+
* If a delegation was approved during the agent run, switch to the
|
|
525
|
+
* target agent and inject the task as a user message.
|
|
526
|
+
*/
|
|
527
|
+
private handlePendingDelegation;
|
|
528
|
+
/**
|
|
529
|
+
* Auto-save the current session and team state.
|
|
530
|
+
* Called after each successful agent response.
|
|
531
|
+
*
|
|
532
|
+
* Saves two things:
|
|
533
|
+
* 1. Default agent's session state (for /resume - conversation history)
|
|
534
|
+
* 2. Team state (for team persistence - all agent states including roles)
|
|
535
|
+
*/
|
|
536
|
+
private autoSaveSession;
|
|
537
|
+
private formatToolParams;
|
|
538
|
+
/**
|
|
539
|
+
* Extract content and summary from tool result.
|
|
540
|
+
* Delegates to tool-formatters module.
|
|
541
|
+
*/
|
|
542
|
+
private extractToolResult;
|
|
543
|
+
private runAgentSimulation;
|
|
544
|
+
private sleep;
|
|
545
|
+
/**
|
|
546
|
+
* Print per-turn summary (tokens, duration, tool calls)
|
|
547
|
+
*/
|
|
548
|
+
private printTurnSummary;
|
|
549
|
+
/**
|
|
550
|
+
* Cancel the foreground session.
|
|
551
|
+
* Background agents continue running.
|
|
552
|
+
*/
|
|
553
|
+
private cancelSession;
|
|
554
|
+
}
|