@wrongstack/cli 0.284.1 → 0.285.0
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 +4 -4
- package/dist/acp-registry-cache.d.ts +33 -0
- package/dist/acp-registry-cache.d.ts.map +1 -0
- package/dist/acp-server-agent.d.ts +66 -0
- package/dist/acp-server-agent.d.ts.map +1 -0
- package/dist/arg-parser.d.ts +41 -0
- package/dist/arg-parser.d.ts.map +1 -0
- package/dist/auth-menu/add-provider.d.ts +15 -0
- package/dist/auth-menu/add-provider.d.ts.map +1 -0
- package/dist/auth-menu/anthropic-oauth.d.ts +43 -0
- package/dist/auth-menu/anthropic-oauth.d.ts.map +1 -0
- package/dist/auth-menu/auth-menu-audit.d.ts +175 -0
- package/dist/auth-menu/auth-menu-audit.d.ts.map +1 -0
- package/dist/auth-menu/direct.d.ts +15 -0
- package/dist/auth-menu/direct.d.ts.map +1 -0
- package/dist/auth-menu/github-copilot-oauth.d.ts +73 -0
- package/dist/auth-menu/github-copilot-oauth.d.ts.map +1 -0
- package/dist/auth-menu/helpers.d.ts +7 -0
- package/dist/auth-menu/helpers.d.ts.map +1 -0
- package/dist/auth-menu/index.d.ts +8 -0
- package/dist/auth-menu/index.d.ts.map +1 -0
- package/dist/auth-menu/local-presets.d.ts +36 -0
- package/dist/auth-menu/local-presets.d.ts.map +1 -0
- package/dist/auth-menu/local.d.ts +138 -0
- package/dist/auth-menu/local.d.ts.map +1 -0
- package/dist/auth-menu/oauth-menu.d.ts +10 -0
- package/dist/auth-menu/oauth-menu.d.ts.map +1 -0
- package/dist/auth-menu/openai-codex-oauth.d.ts +167 -0
- package/dist/auth-menu/openai-codex-oauth.d.ts.map +1 -0
- package/dist/auth-menu/panel-service.d.ts +32 -0
- package/dist/auth-menu/panel-service.d.ts.map +1 -0
- package/dist/auth-menu/provider-menu.d.ts +7 -0
- package/dist/auth-menu/provider-menu.d.ts.map +1 -0
- package/dist/auth-menu/shared.d.ts +32 -0
- package/dist/auth-menu/shared.d.ts.map +1 -0
- package/dist/auth-menu/top-menu.d.ts +11 -0
- package/dist/auth-menu/top-menu.d.ts.map +1 -0
- package/dist/auth-menu/types.d.ts +42 -0
- package/dist/auth-menu/types.d.ts.map +1 -0
- package/dist/auth-menu.d.ts +7 -0
- package/dist/auth-menu.d.ts.map +1 -0
- package/dist/autophase-host.d.ts +103 -0
- package/dist/autophase-host.d.ts.map +1 -0
- package/dist/boot/auto-discover-providers.d.ts +20 -0
- package/dist/boot/auto-discover-providers.d.ts.map +1 -0
- package/dist/boot/brain-decision-log.d.ts +38 -0
- package/dist/boot/brain-decision-log.d.ts.map +1 -0
- package/dist/boot/container-wiring.d.ts +34 -0
- package/dist/boot/container-wiring.d.ts.map +1 -0
- package/dist/boot/dispatch-singleshot.d.ts +35 -0
- package/dist/boot/dispatch-singleshot.d.ts.map +1 -0
- package/dist/boot/dispatch-webui.d.ts +82 -0
- package/dist/boot/dispatch-webui.d.ts.map +1 -0
- package/dist/boot/event-wiring.d.ts +22 -0
- package/dist/boot/event-wiring.d.ts.map +1 -0
- package/dist/boot/short-circuit-desktop.d.ts +3 -0
- package/dist/boot/short-circuit-desktop.d.ts.map +1 -0
- package/dist/boot/short-circuit-flags.d.ts +9 -0
- package/dist/boot/short-circuit-flags.d.ts.map +1 -0
- package/dist/boot/short-circuit-hq.d.ts +16 -0
- package/dist/boot/short-circuit-hq.d.ts.map +1 -0
- package/dist/boot/system-prompt-builder.d.ts +91 -0
- package/dist/boot/system-prompt-builder.d.ts.map +1 -0
- package/dist/boot/system-prompt.d.ts +66 -0
- package/dist/boot/system-prompt.d.ts.map +1 -0
- package/dist/boot/tool-registry.d.ts +42 -0
- package/dist/boot/tool-registry.d.ts.map +1 -0
- package/dist/boot/tui-autophase-wiring.d.ts +23 -0
- package/dist/boot/tui-autophase-wiring.d.ts.map +1 -0
- package/dist/boot/tui-coordinator-setup.d.ts +38 -0
- package/dist/boot/tui-coordinator-setup.d.ts.map +1 -0
- package/dist/boot/tui-debug-stream.d.ts +18 -0
- package/dist/boot/tui-debug-stream.d.ts.map +1 -0
- package/dist/boot/tui-live-sessions.d.ts +39 -0
- package/dist/boot/tui-live-sessions.d.ts.map +1 -0
- package/dist/boot/tui-project-picker-callback.d.ts +30 -0
- package/dist/boot/tui-project-picker-callback.d.ts.map +1 -0
- package/dist/boot/tui-project-spawn.d.ts +19 -0
- package/dist/boot/tui-project-spawn.d.ts.map +1 -0
- package/dist/boot/tui-project-switch.d.ts +26 -0
- package/dist/boot/tui-project-switch.d.ts.map +1 -0
- package/dist/boot/tui-runtime-state.d.ts +83 -0
- package/dist/boot/tui-runtime-state.d.ts.map +1 -0
- package/dist/boot/tui-sdd-callback.d.ts +20 -0
- package/dist/boot/tui-sdd-callback.d.ts.map +1 -0
- package/dist/boot/tui-session-resume.d.ts +21 -0
- package/dist/boot/tui-session-resume.d.ts.map +1 -0
- package/dist/boot/tui-settings-adapter.d.ts +23 -0
- package/dist/boot/tui-settings-adapter.d.ts.map +1 -0
- package/dist/boot-config.d.ts +26 -0
- package/dist/boot-config.d.ts.map +1 -0
- package/dist/boot.d.ts +30 -0
- package/dist/boot.d.ts.map +1 -0
- package/dist/cli-bundled-prompts.d.ts +12 -0
- package/dist/cli-bundled-prompts.d.ts.map +1 -0
- package/dist/cli-bundled-skills.d.ts +13 -0
- package/dist/cli-bundled-skills.d.ts.map +1 -0
- package/dist/cli-context.d.ts +30 -0
- package/dist/cli-context.d.ts.map +1 -0
- package/dist/cli-entry-point.d.ts +2 -0
- package/dist/cli-entry-point.d.ts.map +1 -0
- package/dist/cli-eternal-flag.d.ts +66 -0
- package/dist/cli-eternal-flag.d.ts.map +1 -0
- package/dist/cli-main.d.ts +13 -0
- package/dist/cli-main.d.ts.map +1 -0
- package/dist/cli-recovery-prompt.d.ts +19 -0
- package/dist/cli-recovery-prompt.d.ts.map +1 -0
- package/dist/cli-update-notice.d.ts +3 -0
- package/dist/cli-update-notice.d.ts.map +1 -0
- package/dist/config-doctor.d.ts +39 -0
- package/dist/config-doctor.d.ts.map +1 -0
- package/dist/config-history.d.ts +54 -0
- package/dist/config-history.d.ts.map +1 -0
- package/dist/context-limit.d.ts +51 -0
- package/dist/context-limit.d.ts.map +1 -0
- package/dist/context-overflow-diagnostic.d.ts +3 -0
- package/dist/context-overflow-diagnostic.d.ts.map +1 -0
- package/dist/diff-renderer.d.ts +2 -0
- package/dist/diff-renderer.d.ts.map +1 -0
- package/dist/execute-deps.d.ts +239 -0
- package/dist/execute-deps.d.ts.map +1 -0
- package/dist/execution.d.ts +99 -0
- package/dist/execution.d.ts.map +1 -0
- package/dist/first-run-auth-gate.d.ts +18 -0
- package/dist/first-run-auth-gate.d.ts.map +1 -0
- package/dist/fleet/host.d.ts +533 -0
- package/dist/fleet/host.d.ts.map +1 -0
- package/dist/fleet/routing.d.ts +8 -0
- package/dist/fleet/routing.d.ts.map +1 -0
- package/dist/fleet/status-broadcast.d.ts +42 -0
- package/dist/fleet/status-broadcast.d.ts.map +1 -0
- package/dist/fleet/supervisor-registry.d.ts +16 -0
- package/dist/fleet/supervisor-registry.d.ts.map +1 -0
- package/dist/fleet-statusline.d.ts +71 -0
- package/dist/fleet-statusline.d.ts.map +1 -0
- package/dist/hooks-wiring.d.ts +26 -0
- package/dist/hooks-wiring.d.ts.map +1 -0
- package/dist/hq-command-controller.d.ts +52 -0
- package/dist/hq-command-controller.d.ts.map +1 -0
- package/dist/hq-dashboard-html.d.ts +2 -0
- package/dist/hq-dashboard-html.d.ts.map +1 -0
- package/dist/hq-publisher.d.ts +16 -0
- package/dist/hq-publisher.d.ts.map +1 -0
- package/dist/hq-server.d.ts +56 -0
- package/dist/hq-server.d.ts.map +1 -0
- package/dist/hq-static-serve.d.ts +26 -0
- package/dist/hq-static-serve.d.ts.map +1 -0
- package/dist/index.d.ts +3 -5
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +6025 -3952
- package/dist/index.js.map +7 -1
- package/dist/input-reader.d.ts +45 -0
- package/dist/input-reader.d.ts.map +1 -0
- package/dist/launch-hints.d.ts +46 -0
- package/dist/launch-hints.d.ts.map +1 -0
- package/dist/mailbox-bridge-bootstrap.d.ts +85 -0
- package/dist/mailbox-bridge-bootstrap.d.ts.map +1 -0
- package/dist/mcp-serve.d.ts +23 -0
- package/dist/mcp-serve.d.ts.map +1 -0
- package/dist/multi-agent.d.ts +4 -0
- package/dist/multi-agent.d.ts.map +1 -0
- package/dist/next-task-predictor.d.ts +45 -0
- package/dist/next-task-predictor.d.ts.map +1 -0
- package/dist/permission-prompt.d.ts +11 -0
- package/dist/permission-prompt.d.ts.map +1 -0
- package/dist/picker.d.ts +86 -0
- package/dist/picker.d.ts.map +1 -0
- package/dist/plugin-api-factory.d.ts +3 -0
- package/dist/plugin-api-factory.d.ts.map +1 -0
- package/dist/plugin-management.d.ts +43 -0
- package/dist/plugin-management.d.ts.map +1 -0
- package/dist/pre-launch/indexing-question.d.ts +28 -0
- package/dist/pre-launch/indexing-question.d.ts.map +1 -0
- package/dist/pre-launch/launch-prompts.d.ts +52 -0
- package/dist/pre-launch/launch-prompts.d.ts.map +1 -0
- package/dist/pre-launch/project-check.d.ts +25 -0
- package/dist/pre-launch/project-check.d.ts.map +1 -0
- package/dist/pre-launch.d.ts +4 -0
- package/dist/pre-launch.d.ts.map +1 -0
- package/dist/preflight.d.ts +58 -0
- package/dist/preflight.d.ts.map +1 -0
- package/dist/project-picker.d.ts +56 -0
- package/dist/project-picker.d.ts.map +1 -0
- package/dist/provider-config-utils.d.ts +58 -0
- package/dist/provider-config-utils.d.ts.map +1 -0
- package/dist/provider-helpers.d.ts +53 -0
- package/dist/provider-helpers.d.ts.map +1 -0
- package/dist/renderer.d.ts +76 -0
- package/dist/renderer.d.ts.map +1 -0
- package/dist/repl.d.ts +162 -0
- package/dist/repl.d.ts.map +1 -0
- package/dist/services/project-facts.d.ts +17 -0
- package/dist/services/project-facts.d.ts.map +1 -0
- package/dist/session-event-wiring.d.ts +48 -0
- package/dist/session-event-wiring.d.ts.map +1 -0
- package/dist/session-stats.d.ts +38 -0
- package/dist/session-stats.d.ts.map +1 -0
- package/dist/settings-menu.d.ts +87 -0
- package/dist/settings-menu.d.ts.map +1 -0
- package/dist/shutdown-cleanup.d.ts +44 -0
- package/dist/shutdown-cleanup.d.ts.map +1 -0
- package/dist/slash-commands/acp.d.ts +23 -0
- package/dist/slash-commands/acp.d.ts.map +1 -0
- package/dist/slash-commands/agents.d.ts +16 -0
- package/dist/slash-commands/agents.d.ts.map +1 -0
- package/dist/slash-commands/audit.d.ts +11 -0
- package/dist/slash-commands/audit.d.ts.map +1 -0
- package/dist/slash-commands/auth.d.ts +20 -0
- package/dist/slash-commands/auth.d.ts.map +1 -0
- package/dist/slash-commands/autonomy.d.ts +5 -0
- package/dist/slash-commands/autonomy.d.ts.map +1 -0
- package/dist/slash-commands/autophase.d.ts +13 -0
- package/dist/slash-commands/autophase.d.ts.map +1 -0
- package/dist/slash-commands/brain.d.ts +4 -0
- package/dist/slash-commands/brain.d.ts.map +1 -0
- package/dist/slash-commands/btw.d.ts +13 -0
- package/dist/slash-commands/btw.d.ts.map +1 -0
- package/dist/slash-commands/clear.d.ts +4 -0
- package/dist/slash-commands/clear.d.ts.map +1 -0
- package/dist/slash-commands/codebase-reindex.d.ts +11 -0
- package/dist/slash-commands/codebase-reindex.d.ts.map +1 -0
- package/dist/slash-commands/collab.d.ts +26 -0
- package/dist/slash-commands/collab.d.ts.map +1 -0
- package/dist/slash-commands/commit-llm.d.ts +41 -0
- package/dist/slash-commands/commit-llm.d.ts.map +1 -0
- package/dist/slash-commands/compact.d.ts +4 -0
- package/dist/slash-commands/compact.d.ts.map +1 -0
- package/dist/slash-commands/context.d.ts +4 -0
- package/dist/slash-commands/context.d.ts.map +1 -0
- package/dist/slash-commands/coordinator.d.ts +4 -0
- package/dist/slash-commands/coordinator.d.ts.map +1 -0
- package/dist/slash-commands/delegate.d.ts +17 -0
- package/dist/slash-commands/delegate.d.ts.map +1 -0
- package/dist/slash-commands/design.d.ts +16 -0
- package/dist/slash-commands/design.d.ts.map +1 -0
- package/dist/slash-commands/dev.d.ts +9 -0
- package/dist/slash-commands/dev.d.ts.map +1 -0
- package/dist/slash-commands/diag-stats.d.ts +5 -0
- package/dist/slash-commands/diag-stats.d.ts.map +1 -0
- package/dist/slash-commands/dispatch-llm.d.ts +12 -0
- package/dist/slash-commands/dispatch-llm.d.ts.map +1 -0
- package/dist/slash-commands/doctor.d.ts +13 -0
- package/dist/slash-commands/doctor.d.ts.map +1 -0
- package/dist/slash-commands/enhance.d.ts +13 -0
- package/dist/slash-commands/enhance.d.ts.map +1 -0
- package/dist/slash-commands/ensemble.d.ts +17 -0
- package/dist/slash-commands/ensemble.d.ts.map +1 -0
- package/dist/slash-commands/f-keys.d.ts +18 -0
- package/dist/slash-commands/f-keys.d.ts.map +1 -0
- package/dist/slash-commands/fallback.d.ts +20 -0
- package/dist/slash-commands/fallback.d.ts.map +1 -0
- package/dist/slash-commands/fix-classifier.d.ts +28 -0
- package/dist/slash-commands/fix-classifier.d.ts.map +1 -0
- package/dist/slash-commands/fix.d.ts +4 -0
- package/dist/slash-commands/fix.d.ts.map +1 -0
- package/dist/slash-commands/fleet.d.ts +20 -0
- package/dist/slash-commands/fleet.d.ts.map +1 -0
- package/dist/slash-commands/gitid.d.ts +22 -0
- package/dist/slash-commands/gitid.d.ts.map +1 -0
- package/dist/slash-commands/goal-refiner.d.ts +22 -0
- package/dist/slash-commands/goal-refiner.d.ts.map +1 -0
- package/dist/slash-commands/goal.d.ts +4 -0
- package/dist/slash-commands/goal.d.ts.map +1 -0
- package/dist/slash-commands/help.d.ts +4 -0
- package/dist/slash-commands/help.d.ts.map +1 -0
- package/dist/slash-commands/helpers.d.ts +33 -0
- package/dist/slash-commands/helpers.d.ts.map +1 -0
- package/dist/slash-commands/hq.d.ts +4 -0
- package/dist/slash-commands/hq.d.ts.map +1 -0
- package/dist/slash-commands/index.d.ts +524 -0
- package/dist/slash-commands/index.d.ts.map +1 -0
- package/dist/slash-commands/init.d.ts +4 -0
- package/dist/slash-commands/init.d.ts.map +1 -0
- package/dist/slash-commands/interrupt.d.ts +15 -0
- package/dist/slash-commands/interrupt.d.ts.map +1 -0
- package/dist/slash-commands/kanban.d.ts +4 -0
- package/dist/slash-commands/kanban.d.ts.map +1 -0
- package/dist/slash-commands/mailbox-demo.d.ts +19 -0
- package/dist/slash-commands/mailbox-demo.d.ts.map +1 -0
- package/dist/slash-commands/mailbox-serve.d.ts +20 -0
- package/dist/slash-commands/mailbox-serve.d.ts.map +1 -0
- package/dist/slash-commands/mailbox.d.ts +28 -0
- package/dist/slash-commands/mailbox.d.ts.map +1 -0
- package/dist/slash-commands/mcp-utils.d.ts +24 -0
- package/dist/slash-commands/mcp-utils.d.ts.map +1 -0
- package/dist/slash-commands/mcp.d.ts +19 -0
- package/dist/slash-commands/mcp.d.ts.map +1 -0
- package/dist/slash-commands/memory.d.ts +4 -0
- package/dist/slash-commands/memory.d.ts.map +1 -0
- package/dist/slash-commands/mode.d.ts +6 -0
- package/dist/slash-commands/mode.d.ts.map +1 -0
- package/dist/slash-commands/modelcaps.d.ts +4 -0
- package/dist/slash-commands/modelcaps.d.ts.map +1 -0
- package/dist/slash-commands/models.d.ts +23 -0
- package/dist/slash-commands/models.d.ts.map +1 -0
- package/dist/slash-commands/mouse.d.ts +14 -0
- package/dist/slash-commands/mouse.d.ts.map +1 -0
- package/dist/slash-commands/next.d.ts +21 -0
- package/dist/slash-commands/next.d.ts.map +1 -0
- package/dist/slash-commands/plugin.d.ts +4 -0
- package/dist/slash-commands/plugin.d.ts.map +1 -0
- package/dist/slash-commands/project-utils.d.ts +51 -0
- package/dist/slash-commands/project-utils.d.ts.map +1 -0
- package/dist/slash-commands/project.d.ts +4 -0
- package/dist/slash-commands/project.d.ts.map +1 -0
- package/dist/slash-commands/prune.d.ts +4 -0
- package/dist/slash-commands/prune.d.ts.map +1 -0
- package/dist/slash-commands/review.d.ts +4 -0
- package/dist/slash-commands/review.d.ts.map +1 -0
- package/dist/slash-commands/sdd/project-context.d.ts +7 -0
- package/dist/slash-commands/sdd/project-context.d.ts.map +1 -0
- package/dist/slash-commands/sdd/rendering.d.ts +2 -0
- package/dist/slash-commands/sdd/rendering.d.ts.map +1 -0
- package/dist/slash-commands/sdd/spec-detection.d.ts +21 -0
- package/dist/slash-commands/sdd/spec-detection.d.ts.map +1 -0
- package/dist/slash-commands/sdd/state.d.ts +40 -0
- package/dist/slash-commands/sdd/state.d.ts.map +1 -0
- package/dist/slash-commands/sdd/task-manager.d.ts +37 -0
- package/dist/slash-commands/sdd/task-manager.d.ts.map +1 -0
- package/dist/slash-commands/sdd.d.ts +15 -0
- package/dist/slash-commands/sdd.d.ts.map +1 -0
- package/dist/slash-commands/security.d.ts +4 -0
- package/dist/slash-commands/security.d.ts.map +1 -0
- package/dist/slash-commands/session.d.ts +7 -0
- package/dist/slash-commands/session.d.ts.map +1 -0
- package/dist/slash-commands/setmodel.d.ts +20 -0
- package/dist/slash-commands/setmodel.d.ts.map +1 -0
- package/dist/slash-commands/settings.d.ts +12 -0
- package/dist/slash-commands/settings.d.ts.map +1 -0
- package/dist/slash-commands/shadow.d.ts +28 -0
- package/dist/slash-commands/shadow.d.ts.map +1 -0
- package/dist/slash-commands/slash-deep-help.d.ts +51 -0
- package/dist/slash-commands/slash-deep-help.d.ts.map +1 -0
- package/dist/slash-commands/spawn-agents.d.ts +6 -0
- package/dist/slash-commands/spawn-agents.d.ts.map +1 -0
- package/dist/slash-commands/statusline.d.ts +67 -0
- package/dist/slash-commands/statusline.d.ts.map +1 -0
- package/dist/slash-commands/suggest.d.ts +4 -0
- package/dist/slash-commands/suggest.d.ts.map +1 -0
- package/dist/slash-commands/suggestion-store.d.ts +29 -0
- package/dist/slash-commands/suggestion-store.d.ts.map +1 -0
- package/dist/slash-commands/supervisor.d.ts +18 -0
- package/dist/slash-commands/supervisor.d.ts.map +1 -0
- package/dist/slash-commands/surfaces.d.ts +4 -0
- package/dist/slash-commands/surfaces.d.ts.map +1 -0
- package/dist/slash-commands/tasks.d.ts +4 -0
- package/dist/slash-commands/tasks.d.ts.map +1 -0
- package/dist/slash-commands/techstack.d.ts +4 -0
- package/dist/slash-commands/techstack.d.ts.map +1 -0
- package/dist/slash-commands/telegram-settings.d.ts +4 -0
- package/dist/slash-commands/telegram-settings.d.ts.map +1 -0
- package/dist/slash-commands/telegram-setup.d.ts +11 -0
- package/dist/slash-commands/telegram-setup.d.ts.map +1 -0
- package/dist/slash-commands/todos.d.ts +4 -0
- package/dist/slash-commands/todos.d.ts.map +1 -0
- package/dist/slash-commands/tool.d.ts +4 -0
- package/dist/slash-commands/tool.d.ts.map +1 -0
- package/dist/slash-commands/tools.d.ts +4 -0
- package/dist/slash-commands/tools.d.ts.map +1 -0
- package/dist/slash-commands/tuneup.d.ts +15 -0
- package/dist/slash-commands/tuneup.d.ts.map +1 -0
- package/dist/slash-commands/working-dir.d.ts +14 -0
- package/dist/slash-commands/working-dir.d.ts.map +1 -0
- package/dist/slash-commands/worktree.d.ts +8 -0
- package/dist/slash-commands/worktree.d.ts.map +1 -0
- package/dist/slash-commands/yolo.d.ts +4 -0
- package/dist/slash-commands/yolo.d.ts.map +1 -0
- package/dist/spinner.d.ts +44 -0
- package/dist/spinner.d.ts.map +1 -0
- package/dist/subcommands/handlers/acp.d.ts +15 -0
- package/dist/subcommands/handlers/acp.d.ts.map +1 -0
- package/dist/subcommands/handlers/audit.d.ts +12 -0
- package/dist/subcommands/handlers/audit.d.ts.map +1 -0
- package/dist/subcommands/handlers/auth-local-help.d.ts +69 -0
- package/dist/subcommands/handlers/auth-local-help.d.ts.map +1 -0
- package/dist/subcommands/handlers/auth.d.ts +3 -0
- package/dist/subcommands/handlers/auth.d.ts.map +1 -0
- package/dist/subcommands/handlers/bench-run-help.d.ts +145 -0
- package/dist/subcommands/handlers/bench-run-help.d.ts.map +1 -0
- package/dist/subcommands/handlers/bench.d.ts +13 -0
- package/dist/subcommands/handlers/bench.d.ts.map +1 -0
- package/dist/subcommands/handlers/config-history.d.ts +10 -0
- package/dist/subcommands/handlers/config-history.d.ts.map +1 -0
- package/dist/subcommands/handlers/diag-doctor.d.ts +4 -0
- package/dist/subcommands/handlers/diag-doctor.d.ts.map +1 -0
- package/dist/subcommands/handlers/export.d.ts +3 -0
- package/dist/subcommands/handlers/export.d.ts.map +1 -0
- package/dist/subcommands/handlers/helpers.d.ts +2 -0
- package/dist/subcommands/handlers/helpers.d.ts.map +1 -0
- package/dist/subcommands/handlers/hq.d.ts +3 -0
- package/dist/subcommands/handlers/hq.d.ts.map +1 -0
- package/dist/subcommands/handlers/init.d.ts +7 -0
- package/dist/subcommands/handlers/init.d.ts.map +1 -0
- package/dist/subcommands/handlers/mailbox-serve.d.ts +3 -0
- package/dist/subcommands/handlers/mailbox-serve.d.ts.map +1 -0
- package/dist/subcommands/handlers/mcp.d.ts +3 -0
- package/dist/subcommands/handlers/mcp.d.ts.map +1 -0
- package/dist/subcommands/handlers/modeldiag.d.ts +3 -0
- package/dist/subcommands/handlers/modeldiag.d.ts.map +1 -0
- package/dist/subcommands/handlers/models-add-help.d.ts +142 -0
- package/dist/subcommands/handlers/models-add-help.d.ts.map +1 -0
- package/dist/subcommands/handlers/per-subcommand-help.d.ts +136 -0
- package/dist/subcommands/handlers/per-subcommand-help.d.ts.map +1 -0
- package/dist/subcommands/handlers/plugin-usage.d.ts +4 -0
- package/dist/subcommands/handlers/plugin-usage.d.ts.map +1 -0
- package/dist/subcommands/handlers/projects.d.ts +3 -0
- package/dist/subcommands/handlers/projects.d.ts.map +1 -0
- package/dist/subcommands/handlers/providers-models.d.ts +4 -0
- package/dist/subcommands/handlers/providers-models.d.ts.map +1 -0
- package/dist/subcommands/handlers/quick.d.ts +14 -0
- package/dist/subcommands/handlers/quick.d.ts.map +1 -0
- package/dist/subcommands/handlers/replay.d.ts +12 -0
- package/dist/subcommands/handlers/replay.d.ts.map +1 -0
- package/dist/subcommands/handlers/rewind.d.ts +3 -0
- package/dist/subcommands/handlers/rewind.d.ts.map +1 -0
- package/dist/subcommands/handlers/sessions-config.d.ts +4 -0
- package/dist/subcommands/handlers/sessions-config.d.ts.map +1 -0
- package/dist/subcommands/handlers/sessions-fleet.d.ts +15 -0
- package/dist/subcommands/handlers/sessions-fleet.d.ts.map +1 -0
- package/dist/subcommands/handlers/tools-skills.d.ts +4 -0
- package/dist/subcommands/handlers/tools-skills.d.ts.map +1 -0
- package/dist/subcommands/handlers/update.d.ts +7 -0
- package/dist/subcommands/handlers/update.d.ts.map +1 -0
- package/dist/subcommands/handlers/version-help.d.ts +4 -0
- package/dist/subcommands/handlers/version-help.d.ts.map +1 -0
- package/dist/subcommands/index.d.ts +26 -0
- package/dist/subcommands/index.d.ts.map +1 -0
- package/dist/theme.d.ts +12 -0
- package/dist/theme.d.ts.map +1 -0
- package/dist/tui-thinking-word.d.ts +5 -0
- package/dist/tui-thinking-word.d.ts.map +1 -0
- package/dist/tuneup.d.ts +162 -0
- package/dist/tuneup.d.ts.map +1 -0
- package/dist/update-check.d.ts +22 -0
- package/dist/update-check.d.ts.map +1 -0
- package/dist/utils/delay-format.d.ts +5 -0
- package/dist/utils/delay-format.d.ts.map +1 -0
- package/dist/utils/win32-cmd.d.ts +7 -0
- package/dist/utils/win32-cmd.d.ts.map +1 -0
- package/dist/utils.d.ts +58 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/version.d.ts +4 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/webui-server/client-registration.d.ts +41 -0
- package/dist/webui-server/client-registration.d.ts.map +1 -0
- package/dist/webui-server/connection-handler.d.ts +59 -0
- package/dist/webui-server/connection-handler.d.ts.map +1 -0
- package/dist/webui-server/context-breakdown.d.ts +57 -0
- package/dist/webui-server/context-breakdown.d.ts.map +1 -0
- package/dist/webui-server/cost-helpers.d.ts +29 -0
- package/dist/webui-server/cost-helpers.d.ts.map +1 -0
- package/dist/webui-server/lifecycle.d.ts +108 -0
- package/dist/webui-server/lifecycle.d.ts.map +1 -0
- package/dist/webui-server/logger-shim.d.ts +10 -0
- package/dist/webui-server/logger-shim.d.ts.map +1 -0
- package/dist/webui-server/message-router.d.ts +39 -0
- package/dist/webui-server/message-router.d.ts.map +1 -0
- package/dist/webui-server/prefs-seeding.d.ts +57 -0
- package/dist/webui-server/prefs-seeding.d.ts.map +1 -0
- package/dist/webui-server/provider-config.d.ts +61 -0
- package/dist/webui-server/provider-config.d.ts.map +1 -0
- package/dist/webui-server/session-start-payload.d.ts +20 -0
- package/dist/webui-server/session-start-payload.d.ts.map +1 -0
- package/dist/webui-server/session-status-poll.d.ts +14 -0
- package/dist/webui-server/session-status-poll.d.ts.map +1 -0
- package/dist/webui-server/setup-events.d.ts +45 -0
- package/dist/webui-server/setup-events.d.ts.map +1 -0
- package/dist/webui-server/static-serve.d.ts +70 -0
- package/dist/webui-server/static-serve.d.ts.map +1 -0
- package/dist/webui-server/stream-coalescer.d.ts +41 -0
- package/dist/webui-server/stream-coalescer.d.ts.map +1 -0
- package/dist/webui-server/ws-handlers/agent-config.d.ts +47 -0
- package/dist/webui-server/ws-handlers/agent-config.d.ts.map +1 -0
- package/dist/webui-server/ws-handlers/brain.d.ts +36 -0
- package/dist/webui-server/ws-handlers/brain.d.ts.map +1 -0
- package/dist/webui-server/ws-handlers/connection.d.ts +50 -0
- package/dist/webui-server/ws-handlers/connection.d.ts.map +1 -0
- package/dist/webui-server/ws-handlers/context.d.ts +55 -0
- package/dist/webui-server/ws-handlers/context.d.ts.map +1 -0
- package/dist/webui-server/ws-handlers/index.d.ts +60 -0
- package/dist/webui-server/ws-handlers/index.d.ts.map +1 -0
- package/dist/webui-server/ws-handlers/introspection.d.ts +35 -0
- package/dist/webui-server/ws-handlers/introspection.d.ts.map +1 -0
- package/dist/webui-server/ws-handlers/kanban.d.ts +41 -0
- package/dist/webui-server/ws-handlers/kanban.d.ts.map +1 -0
- package/dist/webui-server/ws-handlers/mailbox.d.ts +51 -0
- package/dist/webui-server/ws-handlers/mailbox.d.ts.map +1 -0
- package/dist/webui-server/ws-handlers/oauth.d.ts +16 -0
- package/dist/webui-server/ws-handlers/oauth.d.ts.map +1 -0
- package/dist/webui-server/ws-handlers/prefs.d.ts +32 -0
- package/dist/webui-server/ws-handlers/prefs.d.ts.map +1 -0
- package/dist/webui-server/ws-handlers/process.d.ts +6 -0
- package/dist/webui-server/ws-handlers/process.d.ts.map +1 -0
- package/dist/webui-server/ws-handlers/projects.d.ts +44 -0
- package/dist/webui-server/ws-handlers/projects.d.ts.map +1 -0
- package/dist/webui-server/ws-handlers/providers.d.ts +36 -0
- package/dist/webui-server/ws-handlers/providers.d.ts.map +1 -0
- package/dist/webui-server/ws-handlers/sessions.d.ts +38 -0
- package/dist/webui-server/ws-handlers/sessions.d.ts.map +1 -0
- package/dist/webui-server/ws-handlers/worklist.d.ts +49 -0
- package/dist/webui-server/ws-handlers/worklist.d.ts.map +1 -0
- package/dist/webui-server.d.ts +160 -0
- package/dist/webui-server.d.ts.map +1 -0
- package/dist/wiring/brain-and-orchestration.d.ts +63 -0
- package/dist/wiring/brain-and-orchestration.d.ts.map +1 -0
- package/dist/wiring/codebase-index.d.ts +33 -0
- package/dist/wiring/codebase-index.d.ts.map +1 -0
- package/dist/wiring/controllers.d.ts +46 -0
- package/dist/wiring/controllers.d.ts.map +1 -0
- package/dist/wiring/dep-watcher.d.ts +23 -0
- package/dist/wiring/dep-watcher.d.ts.map +1 -0
- package/dist/wiring/design-studio.d.ts +17 -0
- package/dist/wiring/design-studio.d.ts.map +1 -0
- package/dist/wiring/director-setup.d.ts +51 -0
- package/dist/wiring/director-setup.d.ts.map +1 -0
- package/dist/wiring/hq-telemetry.d.ts +42 -0
- package/dist/wiring/hq-telemetry.d.ts.map +1 -0
- package/dist/wiring/lifecycle-plugins.d.ts +58 -0
- package/dist/wiring/lifecycle-plugins.d.ts.map +1 -0
- package/dist/wiring/mailbox-bridge-bootstrap.d.ts +53 -0
- package/dist/wiring/mailbox-bridge-bootstrap.d.ts.map +1 -0
- package/dist/wiring/metrics.d.ts +21 -0
- package/dist/wiring/metrics.d.ts.map +1 -0
- package/dist/wiring/pipeline.d.ts +96 -0
- package/dist/wiring/pipeline.d.ts.map +1 -0
- package/dist/wiring/plugins.d.ts +108 -0
- package/dist/wiring/plugins.d.ts.map +1 -0
- package/dist/wiring/provider-runtime-setup.d.ts +47 -0
- package/dist/wiring/provider-runtime-setup.d.ts.map +1 -0
- package/dist/wiring/provider-runtime.d.ts +57 -0
- package/dist/wiring/provider-runtime.d.ts.map +1 -0
- package/dist/wiring/provider.d.ts +13 -0
- package/dist/wiring/provider.d.ts.map +1 -0
- package/dist/wiring/replay.d.ts +32 -0
- package/dist/wiring/replay.d.ts.map +1 -0
- package/dist/wiring/session.d.ts +56 -0
- package/dist/wiring/session.d.ts.map +1 -0
- package/dist/wiring/slash-commands.d.ts +74 -0
- package/dist/wiring/slash-commands.d.ts.map +1 -0
- package/dist/wiring/super-memory.d.ts +9 -0
- package/dist/wiring/super-memory.d.ts.map +1 -0
- package/dist/wiring/to-execute-deps.d.ts +11 -0
- package/dist/wiring/to-execute-deps.d.ts.map +1 -0
- package/dist/wiring/tools.d.ts +41 -0
- package/dist/wiring/tools.d.ts.map +1 -0
- package/package.json +20 -20
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { type InputReader, type PromptOption } from '@wrongstack/core';
|
|
2
|
+
export interface ReadlineInputReaderOptions {
|
|
3
|
+
historyFile?: string | undefined;
|
|
4
|
+
prompt?: string | undefined;
|
|
5
|
+
}
|
|
6
|
+
export declare class ReadlineInputReader implements InputReader {
|
|
7
|
+
private rl?;
|
|
8
|
+
private readonly historyFile;
|
|
9
|
+
private history;
|
|
10
|
+
private pending;
|
|
11
|
+
constructor(opts?: ReadlineInputReaderOptions);
|
|
12
|
+
private loadHistory;
|
|
13
|
+
private saveHistory;
|
|
14
|
+
private ensure;
|
|
15
|
+
readLine(prompt?: string, timeoutOpts?: {
|
|
16
|
+
timeoutMs: number;
|
|
17
|
+
defaultAnswer: string;
|
|
18
|
+
} | undefined): Promise<string>;
|
|
19
|
+
/**
|
|
20
|
+
* Install the out-of-band write guard for the active prompt. When a log
|
|
21
|
+
* line or other async output lands while the user is mid-type, the guard
|
|
22
|
+
* clears the draft row, lets the message print, then repaints the prompt
|
|
23
|
+
* and the in-progress draft (cursor preserved) via readline's own
|
|
24
|
+
* refresh. Without it, each async write leaves the half-typed line
|
|
25
|
+
* stranded as a fresh scrollback row.
|
|
26
|
+
*
|
|
27
|
+
* No-op on non-TTY output (piped/redirected) — there's no draft to
|
|
28
|
+
* protect and the ANSI clear/repaint would be noise in a file.
|
|
29
|
+
*/
|
|
30
|
+
private installPromptGuard;
|
|
31
|
+
readKey(prompt: string, options: PromptOption[]): Promise<string>;
|
|
32
|
+
/**
|
|
33
|
+
* Read a line of input while masking each character with a bullet so the
|
|
34
|
+
* user gets visual confirmation that bytes are arriving (especially on
|
|
35
|
+
* paste, which previously felt like nothing happened). Pasted chunks
|
|
36
|
+
* are echoed as a run of bullets, Backspace/DEL erases one bullet, and
|
|
37
|
+
* Ctrl+U / Ctrl+T are honored. Non-TTY input is read normally — there's
|
|
38
|
+
* nothing to hide when piped, and echoing bullets to a file is noise.
|
|
39
|
+
*
|
|
40
|
+
* Returns the raw entered string (no trim — caller decides).
|
|
41
|
+
*/
|
|
42
|
+
readSecret(prompt: string): Promise<string>;
|
|
43
|
+
close(): Promise<void>;
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=input-reader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"input-reader.d.ts","sourceRoot":"","sources":["../src/input-reader.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,YAAY,EAKlB,MAAM,kBAAkB,CAAC;AAE1B,MAAM,WAAW,0BAA0B;IACzC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B;AAED,qBAAa,mBAAoB,YAAW,WAAW;IACrD,OAAO,CAAC,EAAE,CAAC,CAAiC;IAC5C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,OAAO,CAAS;IAExB,YAAY,IAAI,GAAE,0BAA+B,EAEhD;YAEa,WAAW;YASX,WAAW;IASzB,OAAO,CAAC,MAAM;IAYR,QAAQ,CACZ,MAAM,CAAC,EAAE,MAAM,EACf,WAAW,CAAC,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,GACrE,OAAO,CAAC,MAAM,CAAC,CAyFjB;IAED;;;;;;;;;;OAUG;IACH,OAAO,CAAC,kBAAkB;IA2BpB,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAyCtE;IAED;;;;;;;;;OASG;IACG,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAwFhD;IAEK,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAK3B;CACF"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Launch-time feature hints. Shown once per CLI launch — after the
|
|
3
|
+
* provider/model/mode/YOLO prompts have resolved and right before the
|
|
4
|
+
* REPL or TUI starts — to remind users what slash commands, flags, and
|
|
5
|
+
* runtime controls this build ships with. Suppress with `--no-hints` or
|
|
6
|
+
* `WRONGSTACK_NO_HINTS=1`.
|
|
7
|
+
*
|
|
8
|
+
* Rather than dumping every category at once, each launch shows ONE
|
|
9
|
+
* category and rotates to the next on the following launch (round-robin
|
|
10
|
+
* via a tiny persisted cursor). So you see Autonomy one boot, the fleet
|
|
11
|
+
* the next, MCP/plugins after that — bite-sized, and the whole set still
|
|
12
|
+
* comes around quickly. `/help` lists everything on demand.
|
|
13
|
+
*
|
|
14
|
+
* The list is intentionally hand-curated rather than auto-derived from
|
|
15
|
+
* the slash-command registry: a one-line blurb tuned for each entry
|
|
16
|
+
* lands better than `command.description` boilerplate.
|
|
17
|
+
*/
|
|
18
|
+
import type { TerminalRenderer } from './renderer.js';
|
|
19
|
+
/**
|
|
20
|
+
* Total number of hints across all groups. Exported so callers can
|
|
21
|
+
* assert "≥ 20" in tests without re-counting.
|
|
22
|
+
*/
|
|
23
|
+
export declare const HINT_COUNT: number;
|
|
24
|
+
/** Number of rotating categories. */
|
|
25
|
+
export declare const HINT_GROUP_COUNT: number;
|
|
26
|
+
/** Category titles, in rotation order. Exported for tests. */
|
|
27
|
+
export declare const HINT_GROUP_TITLES: readonly string[];
|
|
28
|
+
export interface LaunchHintOptions {
|
|
29
|
+
/**
|
|
30
|
+
* File holding the rotation cursor. When set, each call advances it so
|
|
31
|
+
* consecutive launches show different categories (round-robin). Missing
|
|
32
|
+
* or unreadable file starts the rotation at the first category.
|
|
33
|
+
*/
|
|
34
|
+
readonly cursorFile?: string | undefined;
|
|
35
|
+
/**
|
|
36
|
+
* Force a specific category index (wraps around). Overrides the cursor.
|
|
37
|
+
* Mainly for tests and `--hints`-style explicit selection.
|
|
38
|
+
*/
|
|
39
|
+
readonly groupIndex?: number | undefined;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Print one rotating category of launch hints to `renderer`. No-op when
|
|
43
|
+
* suppressed via `--no-hints` or `WRONGSTACK_NO_HINTS=1`.
|
|
44
|
+
*/
|
|
45
|
+
export declare function printLaunchHints(renderer: Pick<TerminalRenderer, 'write'>, flags: Record<string, string | boolean>, opts?: LaunchHintOptions): Promise<void>;
|
|
46
|
+
//# sourceMappingURL=launch-hints.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"launch-hints.d.ts","sourceRoot":"","sources":["../src/launch-hints.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAKH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAyGtD;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,MAAuD,CAAC;AAEjF,qCAAqC;AACrC,eAAO,MAAM,gBAAgB,EAAE,MAAsB,CAAC;AAEtD,8DAA8D;AAC9D,eAAO,MAAM,iBAAiB,EAAE,SAAS,MAAM,EAA+B,CAAC;AAU/E,MAAM,WAAW,iBAAiB;IAChC;;;;OAIG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC1C;AAgCD;;;GAGG;AACH,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,EACzC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,EACvC,IAAI,GAAE,iBAAsB,GAC3B,OAAO,CAAC,IAAI,CAAC,CAsBf"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Mailbox-bridge auto-bootstrap.
|
|
3
|
+
*
|
|
4
|
+
* Called by REPL/TUI/WebUI/eternal-autonomy at startup. If a mailbox
|
|
5
|
+
* bridge is already running for the current project, we discover it
|
|
6
|
+
* via the lock file + /healthz probe and return its URL + token.
|
|
7
|
+
* Otherwise we spawn `wstack mailbox serve` as a detached child
|
|
8
|
+
* process and wait up to BOOTSTRAP_TIMEOUT_MS for the new bridge to
|
|
9
|
+
* come up. The result is a `MailboxBridgeHandle` that callers can
|
|
10
|
+
* use without re-doing the discovery.
|
|
11
|
+
*
|
|
12
|
+
* This is a CLIENT of the single-instance-mailbox contract — it
|
|
13
|
+
* never touches the lock itself except to read. The spawned
|
|
14
|
+
* `wstack mailbox serve` instance is the sole writer; we just
|
|
15
|
+
* wait for it.
|
|
16
|
+
*
|
|
17
|
+
* Failure modes (all graceful — REPL starts anyway):
|
|
18
|
+
* - bridge already up but unreachable → return its URL/token
|
|
19
|
+
* anyway, hoping the caller's request timeout will catch a real
|
|
20
|
+
* outage. Don't crash REPL because /healthz is flaky.
|
|
21
|
+
* - spawn fails or bridge doesn't come up in time → return null,
|
|
22
|
+
* log a warning, REPL runs without mailbox-bridge. The user
|
|
23
|
+
* can run `wstack mailbox serve` manually later.
|
|
24
|
+
*/
|
|
25
|
+
import { readLiveLock, type MailboxBridgeLock } from '@wrongstack/core/coordination';
|
|
26
|
+
export declare const MAILBOX_BRIDGE_BOOTSTRAP_TIMEOUT_MS = 5000;
|
|
27
|
+
export declare const MAILBOX_BRIDGE_HEALTHZ_PROBE_MS = 500;
|
|
28
|
+
export interface MailboxBridgeHandle {
|
|
29
|
+
/** Bound URL — empty string if we couldn't bring the bridge up. */
|
|
30
|
+
url: string;
|
|
31
|
+
/** Bearer token. Empty string on failure. */
|
|
32
|
+
token: string;
|
|
33
|
+
/** Lock file path on disk. Always set, even on failure. */
|
|
34
|
+
lockPath: string;
|
|
35
|
+
/** Where the spawned process is, if we spawned one. */
|
|
36
|
+
childPid: number | null;
|
|
37
|
+
/**
|
|
38
|
+
* How the handle was acquired:
|
|
39
|
+
* - 'joined' — found an existing instance via lock + /healthz
|
|
40
|
+
* - 'spawned' — we spawned a fresh `wstack mailbox serve`
|
|
41
|
+
* - 'unhealthy' — found a live lock but /healthz failed; returned
|
|
42
|
+
* the recorded URL/token anyway so the caller's
|
|
43
|
+
* fetch layer can retry.
|
|
44
|
+
* - 'failed' — could not bring up a bridge; caller should run
|
|
45
|
+
* `wstack mailbox serve` manually.
|
|
46
|
+
*/
|
|
47
|
+
source: 'joined' | 'spawned' | 'unhealthy' | 'failed';
|
|
48
|
+
}
|
|
49
|
+
export interface BootstrapOptions {
|
|
50
|
+
projectDir: string;
|
|
51
|
+
/**
|
|
52
|
+
* Function used to spawn `wstack mailbox serve` if no live
|
|
53
|
+
* instance is found. Defaults to a real `child_process.spawn`
|
|
54
|
+
* call; tests pass a stub.
|
|
55
|
+
*
|
|
56
|
+
* The function must return a child-like object with at least
|
|
57
|
+
* `pid` and `unref()`. We do not stream stdout/stderr — the
|
|
58
|
+
* bridge writes its own status to stdout, and the caller (or
|
|
59
|
+
* the user's terminal) handles display.
|
|
60
|
+
*/
|
|
61
|
+
spawnFn?: SpawnFn;
|
|
62
|
+
/**
|
|
63
|
+
* Function used to probe /healthz on a given URL. Defaults to
|
|
64
|
+
* the global `fetch` with a 500 ms AbortSignal; tests pass a stub.
|
|
65
|
+
*/
|
|
66
|
+
probeFn?: ProbeFn;
|
|
67
|
+
/** Maximum time to wait for a freshly-spawned bridge. */
|
|
68
|
+
timeoutMs?: number;
|
|
69
|
+
}
|
|
70
|
+
export type SpawnFn = (args: string[], cwd: string) => SpawnedChild;
|
|
71
|
+
export interface SpawnedChild {
|
|
72
|
+
pid: number | undefined;
|
|
73
|
+
unref(): void;
|
|
74
|
+
}
|
|
75
|
+
export type ProbeFn = (url: string, timeoutMs: number) => Promise<boolean>;
|
|
76
|
+
/**
|
|
77
|
+
* Try to ensure a mailbox bridge is up for `projectDir`. Returns a
|
|
78
|
+
* handle describing how it was obtained (or that the attempt
|
|
79
|
+
* failed). Never throws — callers are usually startup code paths
|
|
80
|
+
* that prefer to log a warning over crashing the host process.
|
|
81
|
+
*/
|
|
82
|
+
export declare function tryAcquireMailboxBridge(opts: BootstrapOptions): Promise<MailboxBridgeHandle>;
|
|
83
|
+
export { readLiveLock, type MailboxBridgeLock };
|
|
84
|
+
export declare function readTokenFromFile(tokenPath: string): Promise<string | null>;
|
|
85
|
+
//# sourceMappingURL=mailbox-bridge-bootstrap.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mailbox-bridge-bootstrap.d.ts","sourceRoot":"","sources":["../src/mailbox-bridge-bootstrap.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAKH,OAAO,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAGrF,eAAO,MAAM,mCAAmC,OAAQ,CAAC;AACzD,eAAO,MAAM,+BAA+B,MAAM,CAAC;AAEnD,MAAM,WAAW,mBAAmB;IAClC,mEAAmE;IACnE,GAAG,EAAE,MAAM,CAAC;IACZ,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,2DAA2D;IAC3D,QAAQ,EAAE,MAAM,CAAC;IACjB,uDAAuD;IACvD,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB;;;;;;;;;OASG;IACH,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;CACvD;AAED,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB;;;;;;;;;OASG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,yDAAyD;IACzD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,OAAO,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,KAAK,YAAY,CAAC;AAEpE,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;IACxB,KAAK,IAAI,IAAI,CAAC;CACf;AAED,MAAM,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAE3E;;;;;GAKG;AACH,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC,mBAAmB,CAAC,CAuF9B;AAiDD,OAAO,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,CAAC;AAKhD,wBAAsB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAMjF"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `wstack mcp serve` — run WrongStack itself as an MCP server over stdio.
|
|
3
|
+
*
|
|
4
|
+
* Exposes the built-in tool registry to any MCP client (Claude Desktop, another
|
|
5
|
+
* agent, an IDE). stdout is the JSON-RPC channel — every status/log line goes to
|
|
6
|
+
* stderr. By default a safe `AutoApprovePermissionPolicy` is used: read-only
|
|
7
|
+
* tools are exposed, while shell/write/edit and dangerous-capability tools are
|
|
8
|
+
* withheld. `--yolo` exposes everything; `--tools a,b,c` restricts the set.
|
|
9
|
+
*/
|
|
10
|
+
import { Context, type PermissionPolicy, type Tool, ToolRegistry } from '@wrongstack/core';
|
|
11
|
+
import type { SubcommandDeps } from './subcommands/index.js';
|
|
12
|
+
/** Minimal run context — tools read cwd/projectRoot/signal; provider/session are stubs. */
|
|
13
|
+
export declare function makeServeContext(cwd: string, projectRoot: string, signal: AbortSignal, restrictFsToRoot?: boolean): Context;
|
|
14
|
+
/**
|
|
15
|
+
* Compute the set of tools an MCP-serve session exposes: a tool is included
|
|
16
|
+
* only if it passes the whitelist (when set) AND the permission policy returns
|
|
17
|
+
* `auto`. With `AutoApprovePermissionPolicy` this withholds shell/write/edit and
|
|
18
|
+
* dangerous-capability tools; with the `--yolo` policy everything passes.
|
|
19
|
+
* Exported for testing — the live path calls it inside `serveMcpStdio`.
|
|
20
|
+
*/
|
|
21
|
+
export declare function selectExposedTools(registry: ToolRegistry, ctx: Context, policy: PermissionPolicy, whitelist: Set<string> | null): Promise<Tool[]>;
|
|
22
|
+
export declare function serveMcpStdio(deps: SubcommandDeps): Promise<number>;
|
|
23
|
+
//# sourceMappingURL=mcp-serve.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-serve.d.ts","sourceRoot":"","sources":["../src/mcp-serve.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAEL,OAAO,EAEP,KAAK,gBAAgB,EAIrB,KAAK,IAAI,EACT,YAAY,EACb,MAAM,kBAAkB,CAAC;AAI1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAqB7D,2FAA2F;AAC3F,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,WAAW,EACnB,gBAAgB,UAAO,GACtB,OAAO,CA6BT;AAED;;;;;;GAMG;AACH,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,YAAY,EACtB,GAAG,EAAE,OAAO,EACZ,MAAM,EAAE,gBAAgB,EACxB,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,GAC5B,OAAO,CAAC,IAAI,EAAE,CAAC,CAQjB;AAED,wBAAsB,aAAa,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CA0HzE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"multi-agent.d.ts","sourceRoot":"","sources":["../src/multi-agent.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAC7E,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Next-task prediction — a lightweight, single-shot LLM call that guesses the
|
|
3
|
+
* user's most likely next steps after an agent turn completes.
|
|
4
|
+
*
|
|
5
|
+
* Unlike `/autonomy suggest` (which replays a full `agent.run` with every tool
|
|
6
|
+
* available), this issues ONE direct `provider.complete` with a tiny prompt and
|
|
7
|
+
* a low token cap. No tools, no context replay — cheap and fast. It mirrors the
|
|
8
|
+
* one-shot pattern used by `generateCommitMessageWithLLM` and `dispatch-llm`.
|
|
9
|
+
*
|
|
10
|
+
* The result is display-only: predictions are shown to the user, never executed.
|
|
11
|
+
*/
|
|
12
|
+
import { type TodoItem } from '@wrongstack/core';
|
|
13
|
+
import type { CommitLLMProvider } from './slash-commands/commit-llm.js';
|
|
14
|
+
/** Provider shape required to predict — same structural contract as commit-llm. */
|
|
15
|
+
export type PredictLLMProvider = CommitLLMProvider;
|
|
16
|
+
export interface PredictionInput {
|
|
17
|
+
/** The user's request that kicked off the turn we just finished. */
|
|
18
|
+
userRequest: string;
|
|
19
|
+
/** The agent's final assistant text for the turn (its summary of what it did). */
|
|
20
|
+
assistantSummary: string;
|
|
21
|
+
/** The current live todo list, used as a strong signal for what's left. */
|
|
22
|
+
todos: readonly TodoItem[];
|
|
23
|
+
}
|
|
24
|
+
export interface PredictOpts {
|
|
25
|
+
provider: PredictLLMProvider;
|
|
26
|
+
model: string;
|
|
27
|
+
/** Max predictions to return. Default 3. */
|
|
28
|
+
maxPredictions?: number | undefined;
|
|
29
|
+
/** Abort signal — when omitted, an internal 12s timeout is used. */
|
|
30
|
+
signal?: AbortSignal | undefined;
|
|
31
|
+
}
|
|
32
|
+
/** Build the user-message text from the turn context. Pure + testable. */
|
|
33
|
+
export declare function buildPredictionPrompt(input: PredictionInput): string;
|
|
34
|
+
/**
|
|
35
|
+
* Parse a numbered/bulleted list of predictions out of raw model text.
|
|
36
|
+
* Pure + testable. Returns [] for the NONE sentinel or unparseable output.
|
|
37
|
+
*/
|
|
38
|
+
export declare function parsePredictions(raw: string, max?: number): string[];
|
|
39
|
+
/**
|
|
40
|
+
* Predict the user's likely next steps. Best-effort: any failure (timeout,
|
|
41
|
+
* provider error, abort) resolves to `[]` so the caller can stay silent and
|
|
42
|
+
* never let prediction break the turn.
|
|
43
|
+
*/
|
|
44
|
+
export declare function predictNextTasks(input: PredictionInput, opts: PredictOpts): Promise<string[]>;
|
|
45
|
+
//# sourceMappingURL=next-task-predictor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"next-task-predictor.d.ts","sourceRoot":"","sources":["../src/next-task-predictor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAA8B,KAAK,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAExE,mFAAmF;AACnF,MAAM,MAAM,kBAAkB,GAAG,iBAAiB,CAAC;AAEnD,MAAM,WAAW,eAAe;IAC9B,oEAAoE;IACpE,WAAW,EAAE,MAAM,CAAC;IACpB,kFAAkF;IAClF,gBAAgB,EAAE,MAAM,CAAC;IACzB,2EAA2E;IAC3E,KAAK,EAAE,SAAS,QAAQ,EAAE,CAAC;CAC5B;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,4CAA4C;IAC5C,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,oEAAoE;IACpE,MAAM,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;CAClC;AAaD,0EAA0E;AAC1E,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM,CAkBpE;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,SAAI,GAAG,MAAM,EAAE,CAmB/D;AAYD;;;;GAIG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,eAAe,EACtB,IAAI,EAAE,WAAW,GAChB,OAAO,CAAC,MAAM,EAAE,CAAC,CA6BnB"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { InputReader, Tool } from '@wrongstack/core';
|
|
2
|
+
export type PromptDecision = 'yes' | 'no' | 'always' | 'deny';
|
|
3
|
+
/** Signature the Agent expects for confirming tool calls. */
|
|
4
|
+
export type ConfirmAwaiter = (tool: Tool, input: unknown, toolUseId: string, suggestedPattern: string) => Promise<'yes' | 'no' | 'always' | 'deny'>;
|
|
5
|
+
export declare function makePromptDelegate(reader: InputReader): (tool: Tool, input: unknown, suggestedPattern: string) => Promise<PromptDecision>;
|
|
6
|
+
/**
|
|
7
|
+
* Create a ConfirmAwaiter for the CLI path. Wraps makePromptDelegate
|
|
8
|
+
* with the ConfirmAwaiter type signature expected by the Agent.
|
|
9
|
+
*/
|
|
10
|
+
export declare function makeConfirmAwaiter(reader: InputReader): ConfirmAwaiter;
|
|
11
|
+
//# sourceMappingURL=permission-prompt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"permission-prompt.d.ts","sourceRoot":"","sources":["../src/permission-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAK1D,MAAM,MAAM,cAAc,GAAG,KAAK,GAAG,IAAI,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE9D,6DAA6D;AAC7D,MAAM,MAAM,cAAc,GAAG,CAC3B,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,MAAM,EACjB,gBAAgB,EAAE,MAAM,KACrB,OAAO,CAAC,KAAK,GAAG,IAAI,GAAG,QAAQ,GAAG,MAAM,CAAC,CAAC;AAE/C,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,WAAW,UAChC,IAAI,SAAS,OAAO,oBAAoB,MAAM,KAAG,OAAO,CAAC,cAAc,CAAC,CA4B7F;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,WAAW,GAAG,cAAc,CAMtE"}
|
package/dist/picker.d.ts
ADDED
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import type { Config, ModelsDevModel, ModelsRegistry, ResolvedProvider } from '@wrongstack/core';
|
|
2
|
+
import type { ReadlineInputReader } from './input-reader.js';
|
|
3
|
+
import type { TerminalRenderer } from './renderer.js';
|
|
4
|
+
/**
|
|
5
|
+
* Filter providers by a free-text query: case-insensitive substring match
|
|
6
|
+
* against the provider id OR display name. An empty/whitespace query returns
|
|
7
|
+
* all providers (as a copy). Input order is preserved. Powers the live
|
|
8
|
+
* type-to-filter provider picker.
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Append synthetic entries for the built-in local-server presets
|
|
12
|
+
* (OmniRoute / Ollama / vLLM / LM Studio) that aren't already present in
|
|
13
|
+
* the merged list. These are keyless loopback gateways, so they pass the
|
|
14
|
+
* `isKeylessLocalProvider` filter and become immediately selectable even
|
|
15
|
+
* on a fresh install with no config and no catalog entry — mirroring the
|
|
16
|
+
* `wstack auth local` shortcut. An entry is skipped when an id-match
|
|
17
|
+
* already exists (catalog or saved config), so a user's customized
|
|
18
|
+
* provider always wins over the preset default. Mutates and returns
|
|
19
|
+
* `merged` for call-site convenience. Pure aside from the push.
|
|
20
|
+
*/
|
|
21
|
+
export declare function appendLocalPresetProviders(merged: ResolvedProvider[]): ResolvedProvider[];
|
|
22
|
+
export declare function filterProviders(query: string, providers: ResolvedProvider[]): ResolvedProvider[];
|
|
23
|
+
export interface ProviderPickerState {
|
|
24
|
+
query: string;
|
|
25
|
+
selected: number;
|
|
26
|
+
status: 'typing' | 'submitted' | 'cancelled';
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Advance the live type-to-filter provider picker by one raw input chunk.
|
|
30
|
+
* Pure: given the current state, a key chunk (a single keystroke, a paste, or
|
|
31
|
+
* a multi-byte arrow escape sequence), and the number of providers matching
|
|
32
|
+
* the CURRENT query, returns the next state. The raw-stdin loop in
|
|
33
|
+
* runLiveProviderPicker is a thin shell around this so the input logic is
|
|
34
|
+
* fully unit-testable.
|
|
35
|
+
*/
|
|
36
|
+
export declare function applyPickerKey(state: ProviderPickerState, chunk: string, matchCount: number): ProviderPickerState;
|
|
37
|
+
/** Max providers rendered in one live-picker frame (keeps a frame in-viewport). */
|
|
38
|
+
export declare const LIVE_PICKER_MAX_VISIBLE = 15;
|
|
39
|
+
/**
|
|
40
|
+
* Render the live type-to-filter provider view as one string: the query line,
|
|
41
|
+
* providers grouped by wire family (preferred order, alphabetical within each
|
|
42
|
+
* family), the selected provider marked with ▶, and a key hint. Capped to
|
|
43
|
+
* LIVE_PICKER_MAX_VISIBLE rows so a frame always fits the viewport (the raw
|
|
44
|
+
* loop redraws by moving the cursor up and clearing). Pure.
|
|
45
|
+
*/
|
|
46
|
+
export declare function renderLiveProviderList(query: string, filtered: ResolvedProvider[], selectedIdx: number, savedSet?: Set<string>): string;
|
|
47
|
+
/**
|
|
48
|
+
* Filter models by a free-text query: case-insensitive substring match against
|
|
49
|
+
* the model id OR display name. Empty/whitespace query returns all (copy).
|
|
50
|
+
* Powers the live type-to-filter model picker.
|
|
51
|
+
*/
|
|
52
|
+
export declare function filterModels(query: string, models: ModelsDevModel[]): ModelsDevModel[];
|
|
53
|
+
/**
|
|
54
|
+
* Render the live type-to-filter model view as one string: the provider header,
|
|
55
|
+
* the query line, models sorted newest-first (release_date desc) with context /
|
|
56
|
+
* cost / capability columns, the selected model marked with ▶, and a key hint.
|
|
57
|
+
* Capped to LIVE_PICKER_MAX_VISIBLE rows so a frame fits the viewport. Pure.
|
|
58
|
+
*/
|
|
59
|
+
export declare function renderLiveModelList(query: string, filtered: ModelsDevModel[], selectedIdx: number, header: string): string;
|
|
60
|
+
/**
|
|
61
|
+
* openai-codex picker preamble — the "Select Model and Effort" header + the
|
|
62
|
+
* legacy-models note, rendered above the live type-to-filter list (and mirrored
|
|
63
|
+
* by the numbered picker's codex block). Returns an empty string for any other
|
|
64
|
+
* provider. Pure so it can be unit-tested without a TTY.
|
|
65
|
+
*/
|
|
66
|
+
export declare function codexPickerPreamble(provider: ResolvedProvider): string;
|
|
67
|
+
/**
|
|
68
|
+
* Save provider + model to the global config file.
|
|
69
|
+
* Creates backups + history entries before writing.
|
|
70
|
+
* Returns true if saved successfully.
|
|
71
|
+
*/
|
|
72
|
+
export declare function saveToGlobalConfig(configPath: string, provider: string, model: string, homeFn?: () => string): Promise<boolean>;
|
|
73
|
+
export interface PickerResult {
|
|
74
|
+
provider: string;
|
|
75
|
+
model: string;
|
|
76
|
+
}
|
|
77
|
+
export declare function runLiveProviderPicker(displayList: ResolvedProvider[], savedSet?: Set<string>): Promise<ResolvedProvider | undefined>;
|
|
78
|
+
export declare function runPicker(deps: {
|
|
79
|
+
modelsRegistry: ModelsRegistry;
|
|
80
|
+
renderer: TerminalRenderer;
|
|
81
|
+
reader: ReadlineInputReader;
|
|
82
|
+
config?: Config | undefined;
|
|
83
|
+
defaultProvider?: string | undefined;
|
|
84
|
+
defaultModel?: string | undefined;
|
|
85
|
+
}): Promise<PickerResult | undefined>;
|
|
86
|
+
//# sourceMappingURL=picker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"picker.d.ts","sourceRoot":"","sources":["../src/picker.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAYjG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAE7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AA+HtD;;;;;GAKG;AACH;;;;;;;;;;GAUG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,gBAAgB,EAAE,GAAG,gBAAgB,EAAE,CAoBzF;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAG,gBAAgB,EAAE,CAMhG;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,QAAQ,GAAG,WAAW,GAAG,WAAW,CAAC;CAC9C;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,mBAAmB,EAC1B,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,GACjB,mBAAmB,CAiCrB;AAaD,mFAAmF;AACnF,eAAO,MAAM,uBAAuB,KAAK,CAAC;AA6B1C;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,gBAAgB,EAAE,EAC5B,WAAW,EAAE,MAAM,EACnB,QAAQ,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GACrB,MAAM,CA8DR;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,cAAc,EAAE,CAItF;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,cAAc,EAAE,EAC1B,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,GACb,MAAM,CA6DR;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,MAAM,CAGtE;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,MAAM,GAAE,MAAM,MAA+C,GAC5D,OAAO,CAAC,OAAO,CAAC,CAyDlB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACf;AAiDD,wBAAsB,qBAAqB,CACzC,WAAW,EAAE,gBAAgB,EAAE,EAC/B,QAAQ,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GACrB,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAwEvC;AAED,wBAAsB,SAAS,CAAC,IAAI,EAAE;IACpC,cAAc,EAAE,cAAc,CAAC;IAC/B,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,MAAM,EAAE,mBAAmB,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACnC,GAAG,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC,CA6OpC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-api-factory.d.ts","sourceRoot":"","sources":["../src/plugin-api-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,KAAK,SAAS,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAExF,MAAM,CAAC,OAAO,UAAU,SAAS,CAC/B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,GACrC,SAAS,CAEX"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { type Config, type PluginConfig } from '@wrongstack/core';
|
|
2
|
+
export declare const OFFICIAL_PLUGINS: readonly [{
|
|
3
|
+
readonly alias: 'telegram';
|
|
4
|
+
readonly specifier: '@wrongstack/telegram';
|
|
5
|
+
readonly description: 'Telegram bridge for prompts, notifications, and slash commands.';
|
|
6
|
+
}, {
|
|
7
|
+
readonly alias: 'lsp';
|
|
8
|
+
readonly specifier: '@wrongstack/plug-lsp';
|
|
9
|
+
readonly description: 'Language Server Protocol tools for code intelligence.';
|
|
10
|
+
}];
|
|
11
|
+
export interface PluginAuditEntry {
|
|
12
|
+
name: string;
|
|
13
|
+
risk: 'low' | 'medium' | 'high';
|
|
14
|
+
summary: string;
|
|
15
|
+
defaultState: 'active' | 'inactive';
|
|
16
|
+
canDisable: boolean;
|
|
17
|
+
}
|
|
18
|
+
export declare const PLUGIN_AUDIT_ENTRIES: readonly PluginAuditEntry[];
|
|
19
|
+
export interface PluginManagementDeps {
|
|
20
|
+
config: Config;
|
|
21
|
+
configPath: string;
|
|
22
|
+
}
|
|
23
|
+
export interface PluginManagementResult {
|
|
24
|
+
code: number;
|
|
25
|
+
level: 'output' | 'info' | 'error';
|
|
26
|
+
message: string;
|
|
27
|
+
patch?: {
|
|
28
|
+
plugins?: (string | PluginConfig)[] | undefined;
|
|
29
|
+
features?: Record<string, unknown>;
|
|
30
|
+
/**
|
|
31
|
+
* Full replacement `extensions` map (patchConfig is a SHALLOW merge,
|
|
32
|
+
* so per-plugin llm overrides must ship the whole merged object).
|
|
33
|
+
*/
|
|
34
|
+
extensions?: Record<string, Record<string, unknown>> | undefined;
|
|
35
|
+
};
|
|
36
|
+
restartRequired?: boolean | undefined;
|
|
37
|
+
}
|
|
38
|
+
export declare function runPluginManagementCommand(args: string[], deps: PluginManagementDeps): Promise<PluginManagementResult>;
|
|
39
|
+
export declare function resolvePluginSpecifier(input: string): string;
|
|
40
|
+
export declare function renderOfficialPlugins(config?: Config): string;
|
|
41
|
+
export declare function renderConfiguredPlugins(config: Config): string;
|
|
42
|
+
export declare function renderPluginAuditReport(config: Config): string;
|
|
43
|
+
//# sourceMappingURL=plugin-management.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-management.d.ts","sourceRoot":"","sources":["../src/plugin-management.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,KAAK,MAAM,EAAE,KAAK,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAE/E,eAAO,MAAM,gBAAgB;aAEzB,KAAK,EAAE,UAAU;aACjB,SAAS,EAAE,sBAAsB;aACjC,WAAW,EAAE,iEAAiE;;aAG9E,KAAK,EAAE,KAAK;aACZ,SAAS,EAAE,sBAAsB;aACjC,WAAW,EAAE,uDAAuD;EAE9D,CAAC;AAEX,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,QAAQ,GAAG,UAAU,CAAC;IACpC,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,oBAAoB,EAAE,SAAS,gBAAgB,EAggB3D,CAAC;AAEF,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE;QACN,OAAO,CAAC,EAAE,CAAC,MAAM,GAAG,YAAY,CAAC,EAAE,GAAG,SAAS,CAAC;QAChD,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACnC;;;WAGG;QACH,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;KAClE,CAAC;IACF,eAAe,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CACvC;AASD,wBAAsB,0BAA0B,CAC9C,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,EAAE,oBAAoB,GACzB,OAAO,CAAC,sBAAsB,CAAC,CAmEjC;AA6LD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE5D;AAQD,wBAAgB,qBAAqB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAW7D;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAiB9D;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAqC9D"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { ReadlineInputReader } from '../input-reader.js';
|
|
2
|
+
import type { TerminalRenderer } from '../renderer.js';
|
|
3
|
+
/**
|
|
4
|
+
* Resolve the indexing question threshold from the env var
|
|
5
|
+
* `WRONGSTACK_INDEX_QUESTION_THRESHOLD`. Falls back to 500 when unset or invalid.
|
|
6
|
+
*
|
|
7
|
+
* Exported for testing only — callers should use {@link maybeAskAboutIndexing}.
|
|
8
|
+
*/
|
|
9
|
+
export declare function resolveIndexThreshold(): number;
|
|
10
|
+
/**
|
|
11
|
+
* When the project has many indexable files, ask the user whether to run
|
|
12
|
+
* startup codebase indexing now. Large codebases can take a while to index
|
|
13
|
+
* on first launch — this lets the user skip it for the current session.
|
|
14
|
+
*
|
|
15
|
+
* The answer is **not persisted** — it affects only this session.
|
|
16
|
+
*
|
|
17
|
+
* @returns `true` (yes, index), `false` (skip), or `undefined` when
|
|
18
|
+
* no question was asked (codebase is small enough or indexing isn't
|
|
19
|
+
* configured).
|
|
20
|
+
*/
|
|
21
|
+
export declare function maybeAskAboutIndexing(opts: {
|
|
22
|
+
projectRoot: string;
|
|
23
|
+
renderer: TerminalRenderer;
|
|
24
|
+
reader: ReadlineInputReader;
|
|
25
|
+
/** Only ask when the config has an `indexing` block (non-bare mode). */
|
|
26
|
+
indexingConfigured: boolean;
|
|
27
|
+
}): Promise<boolean | undefined>;
|
|
28
|
+
//# sourceMappingURL=indexing-question.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"indexing-question.d.ts","sourceRoot":"","sources":["../../src/pre-launch/indexing-question.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAsCvD;;;;;GAKG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,CAM9C;AAgCD;;;;;;;;;;GAUG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,EAAE;IAChD,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,MAAM,EAAE,mBAAmB,CAAC;IAC5B,wEAAwE;IACxE,kBAAkB,EAAE,OAAO,CAAC;CAC7B,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,CA0C/B"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import type { ReadlineInputReader } from '../input-reader.js';
|
|
2
|
+
import type { TerminalRenderer } from '../renderer.js';
|
|
3
|
+
export interface LaunchModeChoices {
|
|
4
|
+
/** TUI or plain REPL. */
|
|
5
|
+
mode: 'tui' | 'repl';
|
|
6
|
+
/** Auto-approve tool calls except explicit deny rules. */
|
|
7
|
+
yolo: boolean;
|
|
8
|
+
/** Start with Director mode on (fleet manifest + scratchpad enabled). */
|
|
9
|
+
director: boolean;
|
|
10
|
+
/** Initial autonomy mode. 'off' = stops after each turn; 'auto' = self-driving. */
|
|
11
|
+
autonomy: 'off' | 'auto';
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Thrown by runLaunchPrompts when the user presses q to cancel.
|
|
15
|
+
* Caught by boot.ts so it can exit cleanly without process.exit().
|
|
16
|
+
*/
|
|
17
|
+
export declare class LaunchAbortedError extends Error {
|
|
18
|
+
readonly exitCode = 0;
|
|
19
|
+
constructor();
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Ask for interactive mode (TUI vs REPL), YOLO, Director, and Autonomy.
|
|
23
|
+
* Each prompt is skipped when the corresponding option is pinned via CLI
|
|
24
|
+
* flag. Returns the resolved set.
|
|
25
|
+
*
|
|
26
|
+
* When `lastChoices` is provided (from saved config), the function shows a
|
|
27
|
+
* one-line summary and asks **one** question: "Continue with these?" instead
|
|
28
|
+
* of re-asking every prompt individually.
|
|
29
|
+
*
|
|
30
|
+
* @throws LaunchAbortedError when the user presses q to cancel.
|
|
31
|
+
*/
|
|
32
|
+
export declare function runLaunchPrompts(opts: {
|
|
33
|
+
renderer: TerminalRenderer;
|
|
34
|
+
reader: ReadlineInputReader;
|
|
35
|
+
modePinned?: 'tui' | 'repl' | undefined;
|
|
36
|
+
yoloPinned?: boolean | undefined;
|
|
37
|
+
directorPinned?: boolean | undefined;
|
|
38
|
+
autonomyPinned?: 'off' | 'auto' | undefined;
|
|
39
|
+
/** Saved launch preferences from a previous session (persisted to config). */
|
|
40
|
+
lastChoices?: LaunchModeChoices | undefined;
|
|
41
|
+
}): Promise<LaunchModeChoices>;
|
|
42
|
+
/**
|
|
43
|
+
* Persist the user's launch-mode choices (mode, yolo, director, autonomy)
|
|
44
|
+
* back to the global config file so the next boot can offer a one-line
|
|
45
|
+
* "Continue with these?" summary instead of re-asking every question.
|
|
46
|
+
*
|
|
47
|
+
* Reads the existing config, updates only the `yolo` and `launch` keys,
|
|
48
|
+
* and writes back atomically. Other fields (including encrypted secrets)
|
|
49
|
+
* pass through round-trip unchanged.
|
|
50
|
+
*/
|
|
51
|
+
export declare function persistLaunchChoices(configPath: string, choices: LaunchModeChoices): Promise<void>;
|
|
52
|
+
//# sourceMappingURL=launch-prompts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"launch-prompts.d.ts","sourceRoot":"","sources":["../../src/pre-launch/launch-prompts.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEvD,MAAM,WAAW,iBAAiB;IAChC,yBAAyB;IACzB,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC;IACrB,0DAA0D;IAC1D,IAAI,EAAE,OAAO,CAAC;IACd,yEAAyE;IACzE,QAAQ,EAAE,OAAO,CAAC;IAClB,mFAAmF;IACnF,QAAQ,EAAE,KAAK,GAAG,MAAM,CAAC;CAC1B;AAED;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;IAC3C,QAAQ,CAAC,QAAQ,KAAK;IACtB,cAGC;CACF;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE;IAC3C,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,MAAM,EAAE,mBAAmB,CAAC;IAC5B,UAAU,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,SAAS,CAAC;IACxC,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACjC,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACrC,cAAc,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,SAAS,CAAC;IAC5C,8EAA8E;IAC9E,WAAW,CAAC,EAAE,iBAAiB,GAAG,SAAS,CAAC;CAC7C,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAyK7B;AAYD;;;;;;;;GAQG;AACH,wBAAsB,oBAAoB,CACxC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,IAAI,CAAC,CA+Bf"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { ReadlineInputReader } from '../input-reader.js';
|
|
2
|
+
import type { TerminalRenderer } from '../renderer.js';
|
|
3
|
+
export type ProjectKind =
|
|
4
|
+
/** `.wrongstack/AGENTS.md` exists — fully set up. */
|
|
5
|
+
'initialized'
|
|
6
|
+
/** Has a recognizable manifest (package.json, pyproject.toml, etc.) but no AGENTS.md yet. */
|
|
7
|
+
| 'project'
|
|
8
|
+
/** No manifest, no AGENTS.md — probably an empty/scratch directory. */
|
|
9
|
+
| 'empty';
|
|
10
|
+
export declare function detectProjectKind(projectRoot: string): Promise<ProjectKind>;
|
|
11
|
+
/**
|
|
12
|
+
* Print a one-line project status banner and, when relevant, prompt the
|
|
13
|
+
* user about scaffolding `AGENTS.md` or continuing in a directory that
|
|
14
|
+
* doesn't look like a project. Returns `false` if the user bailed out.
|
|
15
|
+
*/
|
|
16
|
+
export declare function runProjectCheck(opts: {
|
|
17
|
+
projectRoot: string;
|
|
18
|
+
/** The actual working directory — where the user is standing. Git init
|
|
19
|
+
* always happens here, never in a parent projectRoot that the walk-up
|
|
20
|
+
* detected. */
|
|
21
|
+
cwd: string;
|
|
22
|
+
renderer: TerminalRenderer;
|
|
23
|
+
reader: ReadlineInputReader;
|
|
24
|
+
}): Promise<boolean>;
|
|
25
|
+
//# sourceMappingURL=project-check.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-check.d.ts","sourceRoot":"","sources":["../../src/pre-launch/project-check.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGvD,MAAM,MAAM,WAAW;AACrB,qDAAqD;AACnD,aAAa;AACf,6FAA6F;GAC3F,SAAS;AACX,uEAAuE;GACrE,OAAO,CAAC;AAeZ,wBAAsB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAgBjF;AAYD;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE;IAC1C,WAAW,EAAE,MAAM,CAAC;IACpB;;oBAEgB;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,MAAM,EAAE,mBAAmB,CAAC;CAC7B,GAAG,OAAO,CAAC,OAAO,CAAC,CAqGnB"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { type ProjectKind, detectProjectKind, runProjectCheck, } from './pre-launch/project-check.js';
|
|
2
|
+
export { type LaunchModeChoices, LaunchAbortedError, persistLaunchChoices, runLaunchPrompts, } from './pre-launch/launch-prompts.js';
|
|
3
|
+
export { maybeAskAboutIndexing, resolveIndexThreshold, } from './pre-launch/indexing-question.js';
|
|
4
|
+
//# sourceMappingURL=pre-launch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pre-launch.d.ts","sourceRoot":"","sources":["../src/pre-launch.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,KAAK,WAAW,EAChB,iBAAiB,EACjB,eAAe,GAChB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EACL,KAAK,iBAAiB,EACtB,kBAAkB,EAClB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,gCAAgC,CAAC;AAExC,OAAO,EACL,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,mCAAmC,CAAC"}
|