@prometheus-ai/agent 0.5.3 → 0.5.8
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/CHANGELOG.md +39 -0
- package/dist/cli.js +25110 -0
- package/dist/types/async/index.d.ts +0 -1
- package/dist/types/async/job-manager.d.ts +33 -0
- package/dist/types/autolearn/controller.d.ts +25 -0
- package/dist/types/autolearn/managed-skills.d.ts +45 -0
- package/dist/types/autoresearch/state.d.ts +1 -1
- package/dist/types/autoresearch/tools/init-experiment.d.ts +1 -1
- package/dist/types/autoresearch/tools/log-experiment.d.ts +1 -1
- package/dist/types/autoresearch/tools/run-experiment.d.ts +1 -1
- package/dist/types/autoresearch/tools/update-notes.d.ts +1 -1
- package/dist/types/autoresearch/types.d.ts +1 -1
- package/dist/types/capability/context-file.d.ts +0 -13
- package/dist/types/capability/mcp.d.ts +1 -0
- package/dist/types/capability/rule-buckets.d.ts +1 -1
- package/dist/types/capability/rule.d.ts +6 -1
- package/dist/types/capability/types.d.ts +0 -4
- package/dist/types/cli/args.d.ts +23 -3
- package/dist/types/cli/bench-cli.d.ts +78 -0
- package/dist/types/cli/claude-trace-cli.d.ts +7 -0
- package/dist/types/cli/dry-balance-cli.d.ts +16 -2
- package/dist/types/cli/gallery-cli.d.ts +43 -0
- package/dist/types/cli/gallery-fixtures/agentic.d.ts +2 -0
- package/dist/types/cli/gallery-fixtures/codeintel.d.ts +3 -0
- package/dist/types/cli/gallery-fixtures/edit.d.ts +3 -0
- package/dist/types/cli/gallery-fixtures/fs.d.ts +2 -0
- package/dist/types/cli/gallery-fixtures/index.d.ts +4 -0
- package/dist/types/cli/gallery-fixtures/interaction.d.ts +3 -0
- package/dist/types/cli/gallery-fixtures/memory.d.ts +2 -0
- package/dist/types/cli/gallery-fixtures/misc.d.ts +3 -0
- package/dist/types/cli/gallery-fixtures/search.d.ts +3 -0
- package/dist/types/cli/gallery-fixtures/shell.d.ts +3 -0
- package/dist/types/cli/gallery-fixtures/types.d.ts +55 -0
- package/dist/types/cli/gallery-fixtures/web.d.ts +2 -0
- package/dist/types/cli/gallery-screenshot.d.ts +35 -0
- package/dist/types/cli/gateway-cli.d.ts +4 -0
- package/dist/types/cli/grievances-cli.d.ts +1 -1
- package/dist/types/cli/list-models.d.ts +6 -14
- package/dist/types/cli/models-cli.d.ts +49 -0
- package/dist/types/cli/session-picker.d.ts +1 -1
- package/dist/types/cli/setup-cli.d.ts +1 -1
- package/dist/types/cli/setup-model-picker.d.ts +14 -0
- package/dist/types/cli/startup-cwd.d.ts +2 -0
- package/dist/types/cli/update-cli.d.ts +13 -40
- package/dist/types/cli/usage-cli.d.ts +81 -0
- package/dist/types/cli-commands.d.ts +12 -0
- package/dist/types/collab/crypto.d.ts +7 -0
- package/dist/types/collab/guest.d.ts +37 -0
- package/dist/types/collab/host.d.ts +29 -0
- package/dist/types/collab/protocol.d.ts +119 -0
- package/dist/types/collab/relay-client.d.ts +22 -0
- package/dist/types/commands/bench.d.ts +29 -0
- package/dist/types/commands/gallery.d.ts +47 -0
- package/dist/types/commands/gateway.d.ts +3 -0
- package/dist/types/commands/install.d.ts +1 -1
- package/dist/types/commands/join.d.ts +12 -0
- package/dist/types/commands/launch.d.ts +8 -4
- package/dist/types/commands/models.d.ts +33 -0
- package/dist/types/commands/read.d.ts +1 -1
- package/dist/types/commands/say.d.ts +24 -0
- package/dist/types/commands/token.d.ts +25 -0
- package/dist/types/commands/usage.d.ts +34 -0
- package/dist/types/commit/agentic/tools/analyze-file.d.ts +1 -1
- package/dist/types/commit/agentic/tools/git-file-diff.d.ts +1 -1
- package/dist/types/commit/agentic/tools/git-hunk.d.ts +1 -1
- package/dist/types/commit/agentic/tools/git-overview.d.ts +1 -1
- package/dist/types/commit/agentic/tools/propose-changelog.d.ts +1 -1
- package/dist/types/commit/agentic/tools/propose-commit.d.ts +1 -1
- package/dist/types/commit/agentic/tools/recent-commits.d.ts +1 -1
- package/dist/types/commit/agentic/tools/schemas.d.ts +1 -1
- package/dist/types/commit/agentic/tools/split-commit.d.ts +1 -1
- package/dist/types/commit/analysis/conventional.d.ts +2 -2
- package/dist/types/commit/analysis/summary.d.ts +2 -2
- package/dist/types/commit/changelog/generate.d.ts +3 -3
- package/dist/types/commit/changelog/index.d.ts +2 -2
- package/dist/types/commit/map-reduce/index.d.ts +3 -3
- package/dist/types/commit/map-reduce/map-phase.d.ts +2 -2
- package/dist/types/commit/map-reduce/reduce-phase.d.ts +2 -2
- package/dist/types/commit/model-selection.d.ts +10 -4
- package/dist/types/commit/shared-llm.d.ts +1 -1
- package/dist/types/config/api-key-resolver.d.ts +43 -0
- package/dist/types/config/append-only-context-mode.d.ts +2 -1
- package/dist/types/config/keybindings.d.ts +12 -7
- package/dist/types/config/model-discovery.d.ts +57 -0
- package/dist/types/config/model-equivalence.d.ts +1 -1
- package/dist/types/config/model-registry.d.ts +86 -222
- package/dist/types/config/model-resolver.d.ts +43 -12
- package/dist/types/config/model-roles.d.ts +29 -0
- package/dist/types/config/models-config-schema.d.ts +536 -43
- package/dist/types/config/models-config.d.ts +391 -0
- package/dist/types/config/settings-schema.d.ts +1211 -324
- package/dist/types/config/settings.d.ts +15 -3
- package/dist/types/dap/config.d.ts +14 -1
- package/dist/types/dap/types.d.ts +10 -0
- package/dist/types/debug/log-viewer.d.ts +1 -1
- package/dist/types/debug/raw-sse.d.ts +1 -1
- package/dist/types/debug/report-bundle.d.ts +3 -0
- package/dist/types/debug/terminal-info.d.ts +0 -1
- package/dist/types/discovery/at-imports.d.ts +15 -0
- package/dist/types/discovery/prometheus-extension-roots.d.ts +7 -7
- package/dist/types/edit/diff.d.ts +3 -2
- package/dist/types/edit/file-snapshot-store.d.ts +18 -0
- package/dist/types/edit/hashline/noop-loop-guard.d.ts +72 -0
- package/dist/types/edit/hashline/params.d.ts +1 -1
- package/dist/types/edit/index.d.ts +0 -1
- package/dist/types/edit/modes/apply-patch.d.ts +1 -1
- package/dist/types/edit/modes/patch.d.ts +1 -1
- package/dist/types/edit/modes/replace.d.ts +1 -1
- package/dist/types/edit/renderer.d.ts +1 -0
- package/dist/types/eval/__tests__/completion-bridge.test.d.ts +1 -0
- package/dist/types/eval/__tests__/helpers-local-roots.test.d.ts +1 -0
- package/dist/types/eval/__tests__/js-context-manager.test.d.ts +1 -0
- package/dist/types/eval/backend.d.ts +7 -2
- package/dist/types/eval/bridge-timeout.d.ts +1 -1
- package/dist/types/eval/completion-bridge.d.ts +25 -0
- package/dist/types/eval/idle-timeout.d.ts +1 -5
- package/dist/types/eval/js/context-manager.d.ts +1 -0
- package/dist/types/eval/js/executor.d.ts +2 -0
- package/dist/types/eval/js/index.d.ts +1 -1
- package/dist/types/eval/js/shared/helpers.d.ts +7 -1
- package/dist/types/eval/js/shared/rewrite-imports.d.ts +6 -6
- package/dist/types/eval/js/shared/runtime.d.ts +6 -1
- package/dist/types/eval/js/worker-protocol.d.ts +6 -0
- package/dist/types/eval/py/__tests__/prelude.test.d.ts +1 -0
- package/dist/types/eval/py/executor.d.ts +12 -0
- package/dist/types/eval/py/index.d.ts +1 -1
- package/dist/types/eval/py/kernel.d.ts +6 -1
- package/dist/types/eval/py/runtime.d.ts +9 -0
- package/dist/types/exa/index.d.ts +1 -19
- package/dist/types/exa/mcp-client.d.ts +10 -3
- package/dist/types/exa/types.d.ts +0 -83
- package/dist/types/exec/bash-executor.d.ts +7 -0
- package/dist/types/export/custom-share.d.ts +1 -2
- package/dist/types/export/html/index.d.ts +39 -0
- package/dist/types/export/html/template-js.d.ts +2 -0
- package/dist/types/export/share.d.ts +61 -0
- package/dist/types/export/ttsr.d.ts +14 -0
- package/dist/types/extensibility/custom-commands/types.d.ts +9 -4
- package/dist/types/extensibility/custom-tools/loader.d.ts +30 -4
- package/dist/types/extensibility/custom-tools/types.d.ts +16 -8
- package/dist/types/extensibility/extensions/index.d.ts +1 -1
- package/dist/types/extensibility/extensions/loader.d.ts +20 -1
- package/dist/types/extensibility/extensions/model-api.d.ts +17 -0
- package/dist/types/extensibility/extensions/runner.d.ts +5 -2
- package/dist/types/extensibility/extensions/types.d.ts +72 -11
- package/dist/types/extensibility/hooks/index.d.ts +2 -1
- package/dist/types/extensibility/hooks/loader.d.ts +1 -1
- package/dist/types/extensibility/hooks/types.d.ts +11 -5
- package/dist/types/extensibility/{legacy-pi-ai-shim.d.ts → legacy-package-ai-shim.d.ts} +2 -2
- package/dist/types/extensibility/plugins/{legacy-pi-compat.d.ts → legacy-package-compat.d.ts} +20 -3
- package/dist/types/extensibility/plugins/loader.d.ts +11 -0
- package/dist/types/extensibility/plugins/marketplace-auto-update.d.ts +8 -0
- package/dist/types/extensibility/plugins/types.d.ts +2 -2
- package/dist/types/extensibility/shared-events.d.ts +3 -3
- package/dist/types/extensibility/skills.d.ts +10 -0
- package/dist/types/extensibility/slash-commands.d.ts +1 -11
- package/dist/types/gateway/adapters/telegram/access.d.ts +4 -1
- package/dist/types/gateway/adapters/telegram/setup-api.d.ts +1 -1
- package/dist/types/gateway/adapters/telegram/webhook.d.ts +1 -1
- package/dist/types/gateway/types.d.ts +1 -1
- package/dist/types/goals/guided-setup.d.ts +18 -0
- package/dist/types/goals/state.d.ts +1 -1
- package/dist/types/goals/tools/goal-tool.d.ts +1 -1
- package/dist/types/hindsight/mental-models.d.ts +17 -8
- package/dist/types/hindsight/transcript.d.ts +1 -1
- package/dist/types/index.d.ts +5 -0
- package/dist/types/internal-urls/artifact-protocol.d.ts +2 -2
- package/dist/types/internal-urls/history-protocol.d.ts +14 -0
- package/dist/types/internal-urls/index.d.ts +1 -0
- package/dist/types/internal-urls/local-protocol.d.ts +14 -2
- package/dist/types/internal-urls/types.d.ts +1 -1
- package/dist/types/irc/bus.d.ts +79 -0
- package/dist/types/lib/xai-http.d.ts +1 -1
- package/dist/types/lsp/client.d.ts +10 -0
- package/dist/types/lsp/config.d.ts +2 -2
- package/dist/types/lsp/edits.d.ts +9 -0
- package/dist/types/lsp/format-options.d.ts +32 -0
- package/dist/types/lsp/index.d.ts +2 -7
- package/dist/types/lsp/types.d.ts +13 -1
- package/dist/types/lsp/utils.d.ts +6 -2
- package/dist/types/main.d.ts +23 -8
- package/dist/types/mcp/json-rpc.d.ts +5 -0
- package/dist/types/mcp/manager.d.ts +8 -0
- package/dist/types/mcp/oauth-discovery.d.ts +6 -1
- package/dist/types/mcp/oauth-flow.d.ts +13 -3
- package/dist/types/mcp/startup-events.d.ts +11 -0
- package/dist/types/mcp/tool-bridge.d.ts +2 -0
- package/dist/types/mcp/transports/stdio.d.ts +13 -0
- package/dist/types/mcp/types.d.ts +2 -0
- package/dist/types/memories/index.d.ts +7 -15
- package/dist/types/memories/storage.d.ts +0 -10
- package/dist/types/memory-backend/index.d.ts +3 -1
- package/dist/types/memory-backend/local-backend.d.ts +4 -3
- package/dist/types/memory-backend/resolve.d.ts +2 -2
- package/dist/types/memory-backend/runtime.d.ts +4 -0
- package/dist/types/memory-backend/types.d.ts +67 -2
- package/dist/types/mnemopi/config.d.ts +31 -1
- package/dist/types/mnemopi/state.d.ts +40 -2
- package/dist/types/modes/acp/acp-agent.d.ts +1 -2
- package/dist/types/modes/components/agent-dashboard.d.ts +17 -1
- package/dist/types/modes/components/agent-hub.d.ts +82 -0
- package/dist/types/modes/components/assistant-message.d.ts +5 -12
- package/dist/types/modes/components/bash-execution.d.ts +1 -1
- package/dist/types/modes/components/chat-block.d.ts +64 -0
- package/dist/types/modes/components/collab-prompt-message.d.ts +10 -0
- package/dist/types/modes/components/compaction-summary-message.d.ts +25 -5
- package/dist/types/modes/components/copy-selector.d.ts +1 -1
- package/dist/types/modes/components/custom-editor.d.ts +49 -2
- package/dist/types/modes/components/custom-editor.test.d.ts +1 -0
- package/dist/types/modes/components/dynamic-border.d.ts +1 -1
- package/dist/types/modes/components/extensions/extension-dashboard.d.ts +1 -1
- package/dist/types/modes/components/extensions/extension-list.d.ts +1 -1
- package/dist/types/modes/components/extensions/inspector-panel.d.ts +1 -1
- package/dist/types/modes/components/footer.d.ts +1 -1
- package/dist/types/modes/components/hook-editor.d.ts +5 -0
- package/dist/types/modes/components/hook-input.d.ts +4 -0
- package/dist/types/modes/components/hook-selector.d.ts +5 -7
- package/dist/types/modes/components/index.d.ts +1 -0
- package/dist/types/modes/components/late-diagnostics-message.d.ts +20 -0
- package/dist/types/modes/components/logout-account-selector.d.ts +8 -0
- package/dist/types/modes/components/mcp-add-wizard.d.ts +2 -1
- package/dist/types/modes/components/model-selector.d.ts +1 -1
- package/dist/types/modes/components/oauth-selector.d.ts +10 -1
- package/dist/types/modes/components/overlay-box.d.ts +17 -0
- package/dist/types/modes/components/plan-review-overlay.d.ts +61 -0
- package/dist/types/modes/components/plan-toc.d.ts +41 -0
- package/dist/types/modes/components/read-tool-group.d.ts +8 -0
- package/dist/types/modes/components/reset-usage-selector.d.ts +12 -0
- package/dist/types/modes/components/segment-track.d.ts +11 -6
- package/dist/types/modes/components/session-selector.d.ts +18 -9
- package/dist/types/modes/components/settings-defs.d.ts +9 -2
- package/dist/types/modes/components/settings-selector.d.ts +17 -4
- package/dist/types/modes/components/snapcompact-shape-preview.d.ts +31 -0
- package/dist/types/modes/components/status-line/component.d.ts +61 -0
- package/dist/types/modes/components/status-line/index.d.ts +1 -0
- package/dist/types/modes/components/status-line/types.d.ts +47 -3
- package/dist/types/modes/components/tiny-title-download-progress.d.ts +1 -1
- package/dist/types/modes/components/tool-execution.d.ts +49 -2
- package/dist/types/modes/components/transcript-container.d.ts +76 -26
- package/dist/types/modes/components/tree-selector.d.ts +2 -2
- package/dist/types/modes/components/ttsr-notification.d.ts +5 -1
- package/dist/types/modes/components/usage-row.d.ts +3 -0
- package/dist/types/modes/components/user-message-selector.d.ts +1 -1
- package/dist/types/modes/components/user-message.d.ts +2 -1
- package/dist/types/modes/components/visual-truncate.d.ts +1 -1
- package/dist/types/modes/components/welcome.d.ts +12 -2
- package/dist/types/modes/controllers/command-controller.d.ts +3 -2
- package/dist/types/modes/controllers/event-controller.d.ts +7 -1
- package/dist/types/modes/controllers/extension-ui-controller.d.ts +0 -1
- package/dist/types/modes/controllers/input-controller.d.ts +25 -3
- package/dist/types/modes/controllers/mcp-command-controller.d.ts +8 -0
- package/dist/types/modes/controllers/selector-controller.d.ts +5 -2
- package/dist/types/modes/controllers/session-focus-controller.d.ts +31 -0
- package/dist/types/modes/controllers/streaming-reveal.d.ts +22 -0
- package/dist/types/modes/controllers/tan-command-controller.d.ts +6 -0
- package/dist/types/modes/controllers/tool-args-reveal.d.ts +43 -0
- package/dist/types/modes/gradient-highlight.d.ts +9 -4
- package/dist/types/modes/image-references.d.ts +14 -3
- package/dist/types/modes/index.d.ts +8 -7
- package/dist/types/modes/interactive-mode.d.ts +92 -16
- package/dist/types/modes/magic-keywords.d.ts +14 -2
- package/dist/types/modes/markdown-prose.d.ts +1 -1
- package/dist/types/modes/oauth-manual-input.d.ts +7 -0
- package/dist/types/modes/rpc/rpc-client.d.ts +48 -2
- package/dist/types/modes/rpc/rpc-mode.d.ts +67 -2
- package/dist/types/modes/rpc/rpc-subagents.d.ts +24 -0
- package/dist/types/modes/rpc/rpc-types.d.ts +113 -1
- package/dist/types/modes/runtime-init.d.ts +4 -0
- package/dist/types/modes/session-observer-registry.d.ts +9 -0
- package/dist/types/modes/setup-version.d.ts +11 -0
- package/dist/types/modes/setup-wizard/index.d.ts +7 -2
- package/dist/types/modes/setup-wizard/lazy.d.ts +2 -0
- package/dist/types/modes/setup-wizard/scenes/sign-in.d.ts +4 -1
- package/dist/types/modes/setup-wizard/scenes/types.d.ts +11 -2
- package/dist/types/modes/setup-wizard/scenes/web-search.d.ts +6 -2
- package/dist/types/modes/setup-wizard/wizard-overlay.d.ts +1 -1
- package/dist/types/modes/theme/theme.d.ts +42 -7
- package/dist/types/modes/types.d.ts +62 -13
- package/dist/types/modes/utils/context-usage.d.ts +6 -1
- package/dist/types/modes/utils/copy-targets.d.ts +21 -1
- package/dist/types/modes/utils/ui-helpers.d.ts +4 -4
- package/dist/types/modes/workflow.d.ts +3 -3
- package/dist/types/plan-mode/approved-plan.d.ts +27 -8
- package/dist/types/plan-mode/plan-protection.d.ts +4 -4
- package/dist/types/registry/agent-lifecycle.d.ts +51 -0
- package/dist/types/registry/agent-registry.d.ts +33 -5
- package/dist/types/sdk.d.ts +46 -4
- package/dist/types/secrets/index.d.ts +1 -1
- package/dist/types/secrets/obfuscator.d.ts +9 -3
- package/dist/types/session/agent-session.d.ts +136 -66
- package/dist/types/session/agent-storage.d.ts +2 -1
- package/dist/types/session/auth-broker-config.d.ts +4 -0
- package/dist/types/session/auth-storage.d.ts +1 -1
- package/dist/types/session/codex-auto-reset.d.ts +111 -0
- package/dist/types/session/indexed-session-storage.d.ts +3 -3
- package/dist/types/session/messages.d.ts +26 -15
- package/dist/types/session/session-context.d.ts +39 -0
- package/dist/types/session/session-entries.d.ts +159 -0
- package/dist/types/session/session-history-format.d.ts +12 -0
- package/dist/types/session/session-listing.d.ts +69 -0
- package/dist/types/session/session-loader.d.ts +16 -0
- package/dist/types/session/session-manager.d.ts +107 -440
- package/dist/types/session/session-migrations.d.ts +12 -0
- package/dist/types/session/session-paths.d.ts +25 -0
- package/dist/types/session/session-persistence.d.ts +8 -0
- package/dist/types/session/session-storage.d.ts +11 -7
- package/dist/types/session/snapcompact-inline.d.ts +145 -0
- package/dist/types/session/snapcompact-savings-journal.d.ts +46 -0
- package/dist/types/session/streaming-output.d.ts +46 -0
- package/dist/types/session/tool-choice-queue.d.ts +6 -6
- package/dist/types/session/yield-queue.d.ts +10 -1
- package/dist/types/slash-commands/acp-builtins.d.ts +16 -0
- package/dist/types/slash-commands/available-commands.d.ts +34 -0
- package/dist/types/slash-commands/builtin-registry.d.ts +10 -0
- package/dist/types/slash-commands/helpers/active-oauth-account.d.ts +14 -0
- package/dist/types/slash-commands/helpers/logout.d.ts +15 -0
- package/dist/types/slash-commands/helpers/reset-usage.d.ts +27 -0
- package/dist/types/slash-commands/helpers/stats-dashboard.d.ts +13 -0
- package/dist/types/slash-commands/types.d.ts +5 -9
- package/dist/types/ssh/connection-manager.d.ts +8 -0
- package/dist/types/stt/asr-client.d.ts +90 -0
- package/dist/types/stt/asr-protocol.d.ts +97 -0
- package/dist/types/stt/asr-worker.d.ts +2 -0
- package/dist/types/stt/downloader.d.ts +38 -0
- package/dist/types/stt/endpointer.d.ts +59 -0
- package/dist/types/stt/index.d.ts +5 -1
- package/dist/types/stt/models.d.ts +120 -0
- package/dist/types/stt/recorder.d.ts +17 -0
- package/dist/types/stt/stt-controller.d.ts +6 -0
- package/dist/types/stt/transcriber.d.ts +5 -7
- package/dist/types/stt/wav.d.ts +29 -0
- package/dist/types/system-prompt.d.ts +9 -1
- package/dist/types/task/commands.d.ts +1 -1
- package/dist/types/task/discovery.d.ts +1 -2
- package/dist/types/task/executor.d.ts +61 -2
- package/dist/types/task/index.d.ts +37 -6
- package/dist/types/task/output-manager.d.ts +0 -7
- package/dist/types/task/parallel.d.ts +2 -2
- package/dist/types/task/prometheus-command.d.ts +2 -2
- package/dist/types/task/render.d.ts +20 -7
- package/dist/types/task/repair-args.d.ts +8 -7
- package/dist/types/task/types.d.ts +109 -52
- package/dist/types/task/worktree.d.ts +2 -0
- package/dist/types/telemetry-export.d.ts +2 -2
- package/dist/types/thinking.d.ts +4 -0
- package/dist/types/tiny/models.d.ts +1 -1
- package/dist/types/tiny/title-client.d.ts +12 -1
- package/dist/types/tiny/title-protocol.d.ts +1 -0
- package/dist/types/tools/archive-reader.d.ts +5 -0
- package/dist/types/tools/ask.d.ts +6 -1
- package/dist/types/tools/ast-edit.d.ts +4 -1
- package/dist/types/tools/ast-grep.d.ts +4 -1
- package/dist/types/tools/bash.d.ts +5 -2
- package/dist/types/tools/browser/attach.d.ts +4 -4
- package/dist/types/tools/browser/cmux/cmux-tab.d.ts +202 -0
- package/dist/types/tools/browser/cmux/rpc.d.ts +70 -0
- package/dist/types/tools/browser/cmux/socket-client.d.ts +19 -0
- package/dist/types/tools/browser/registry.d.ts +17 -3
- package/dist/types/tools/browser/render.d.ts +2 -0
- package/dist/types/tools/browser/tab-protocol.d.ts +2 -0
- package/dist/types/tools/browser/tab-supervisor.d.ts +16 -4
- package/dist/types/tools/browser/tab-worker.d.ts +18 -1
- package/dist/types/tools/browser.d.ts +3 -1
- package/dist/types/tools/checkpoint.d.ts +1 -1
- package/dist/types/tools/conflict-detect.d.ts +16 -0
- package/dist/types/tools/debug.d.ts +1 -1
- package/dist/types/tools/eval-render.d.ts +1 -8
- package/dist/types/tools/eval.d.ts +9 -1
- package/dist/types/tools/fetch.d.ts +17 -8
- package/dist/types/tools/find.d.ts +1 -8
- package/dist/types/tools/gh-cache-invalidation.d.ts +6 -0
- package/dist/types/tools/gh.d.ts +4 -1
- package/dist/types/tools/github-cache.d.ts +19 -0
- package/dist/types/tools/grouped-file-output.d.ts +46 -12
- package/dist/types/tools/image-gen.d.ts +1 -1
- package/dist/types/tools/index.d.ts +89 -8
- package/dist/types/tools/inspect-image.d.ts +1 -1
- package/dist/types/tools/irc.d.ts +79 -39
- package/dist/types/tools/job.d.ts +8 -2
- package/dist/types/tools/learn.d.ts +51 -0
- package/dist/types/tools/manage-skill.d.ts +40 -0
- package/dist/types/tools/memory-edit.d.ts +2 -2
- package/dist/types/tools/memory-recall.d.ts +1 -1
- package/dist/types/tools/memory-reflect.d.ts +1 -1
- package/dist/types/tools/memory-render.d.ts +4 -1
- package/dist/types/tools/memory-retain.d.ts +1 -1
- package/dist/types/tools/path-utils.d.ts +17 -5
- package/dist/types/tools/plan-mode-guard.d.ts +18 -9
- package/dist/types/tools/read.d.ts +3 -2
- package/dist/types/tools/render-mermaid.d.ts +1 -1
- package/dist/types/tools/render-utils.d.ts +47 -27
- package/dist/types/tools/renderers.d.ts +10 -2
- package/dist/types/tools/report-tool-issue.d.ts +6 -1
- package/dist/types/tools/resolve.d.ts +1 -1
- package/dist/types/tools/review.d.ts +1 -1
- package/dist/types/tools/search-tool-bm25.d.ts +1 -1
- package/dist/types/tools/search.d.ts +7 -3
- package/dist/types/tools/sqlite-reader.d.ts +4 -0
- package/dist/types/tools/ssh.d.ts +2 -1
- package/dist/types/tools/todo.d.ts +7 -15
- package/dist/types/tools/tool-result.d.ts +2 -0
- package/dist/types/tools/tool-timeouts.d.ts +1 -1
- package/dist/types/tools/tts.d.ts +26 -1
- package/dist/types/tools/write.d.ts +6 -3
- package/dist/types/tools/yield.d.ts +8 -0
- package/dist/types/tts/downloader.d.ts +20 -0
- package/dist/types/tts/index.d.ts +8 -0
- package/dist/types/tts/models.d.ts +82 -0
- package/dist/types/tts/player.d.ts +32 -0
- package/dist/types/tts/runtime.d.ts +6 -0
- package/dist/types/tts/streaming-player.d.ts +41 -0
- package/dist/types/tts/tts-client.d.ts +93 -0
- package/dist/types/tts/tts-protocol.d.ts +95 -0
- package/dist/types/tts/tts-worker.d.ts +2 -0
- package/dist/types/tts/vocalizer.d.ts +41 -0
- package/dist/types/tts/wav.d.ts +8 -0
- package/dist/types/tui/code-cell.d.ts +0 -2
- package/dist/types/tui/hyperlink.d.ts +13 -7
- package/dist/types/tui/output-block.d.ts +16 -22
- package/dist/types/tui/status-line.d.ts +3 -0
- package/dist/types/utils/block-context.d.ts +35 -0
- package/dist/types/utils/changelog.d.ts +8 -0
- package/dist/types/utils/clipboard.d.ts +4 -3
- package/dist/types/utils/enhanced-paste.d.ts +20 -0
- package/dist/types/utils/file-mentions.d.ts +7 -0
- package/dist/types/utils/git.d.ts +22 -3
- package/dist/types/utils/image-loading.d.ts +30 -1
- package/dist/types/utils/session-color.d.ts +15 -3
- package/dist/types/utils/thinking-display.d.ts +17 -0
- package/dist/types/utils/title-generator.d.ts +3 -2
- package/dist/types/utils/tool-choice.d.ts +8 -0
- package/dist/types/utils/tools-manager.d.ts +2 -1
- package/dist/types/web/kagi.d.ts +2 -2
- package/dist/types/web/parallel.d.ts +3 -0
- package/dist/types/web/scrapers/github.d.ts +22 -0
- package/dist/types/web/scrapers/readthedocs.d.ts +3 -0
- package/dist/types/web/scrapers/types.d.ts +12 -0
- package/dist/types/web/search/index.d.ts +1 -1
- package/dist/types/web/search/providers/anthropic.d.ts +2 -1
- package/dist/types/web/search/providers/base.d.ts +2 -1
- package/dist/types/web/search/providers/brave.d.ts +2 -1
- package/dist/types/web/search/providers/codex.d.ts +2 -1
- package/dist/types/web/search/providers/exa.d.ts +2 -1
- package/dist/types/web/search/providers/gemini.d.ts +10 -6
- package/dist/types/web/search/providers/jina.d.ts +7 -2
- package/dist/types/web/search/providers/kagi.d.ts +7 -2
- package/dist/types/web/search/providers/kimi.d.ts +7 -2
- package/dist/types/web/search/providers/parallel.d.ts +2 -1
- package/dist/types/web/search/providers/perplexity.d.ts +10 -2
- package/dist/types/web/search/providers/searxng.d.ts +2 -1
- package/dist/types/web/search/providers/synthetic.d.ts +7 -3
- package/dist/types/web/search/providers/tavily.d.ts +2 -1
- package/dist/types/web/search/providers/zai.d.ts +2 -1
- package/dist/types/web/search/types.d.ts +1 -1
- package/examples/extensions/api-demo.ts +2 -2
- package/package.json +41 -15
- package/scripts/bench-guard.ts +71 -0
- package/scripts/build-binary.ts +24 -25
- package/scripts/bundle-dist.ts +97 -0
- package/scripts/generate-share-viewer.ts +34 -0
- package/scripts/prometheus +42 -0
- package/scripts/prometheus.ts +20 -0
- package/src/async/index.ts +0 -1
- package/src/async/job-manager.ts +106 -3
- package/src/auto-thinking/classifier.ts +2 -1
- package/src/autolearn/controller.ts +139 -0
- package/src/autolearn/managed-skills.ts +257 -0
- package/src/autoresearch/dashboard.ts +1 -1
- package/src/autoresearch/prompt-setup.md +6 -6
- package/src/autoresearch/prompt.md +6 -6
- package/src/autoresearch/state.ts +1 -1
- package/src/autoresearch/storage.ts +2 -1
- package/src/autoresearch/tools/init-experiment.ts +1 -1
- package/src/autoresearch/tools/log-experiment.ts +1 -1
- package/src/autoresearch/tools/run-experiment.ts +1 -1
- package/src/autoresearch/tools/update-notes.ts +1 -1
- package/src/autoresearch/types.ts +1 -1
- package/src/capability/context-file.ts +0 -14
- package/src/capability/fs.ts +10 -0
- package/src/capability/index.ts +1 -6
- package/src/capability/mcp.ts +1 -0
- package/src/capability/rule-buckets.ts +4 -2
- package/src/capability/rule.ts +10 -1
- package/src/capability/types.ts +0 -4
- package/src/cli/args.ts +66 -13
- package/src/cli/auth-broker-cli.ts +6 -7
- package/src/cli/auth-gateway-cli.ts +8 -9
- package/src/cli/bench-cli.ts +437 -0
- package/src/cli/claude-trace-cli.ts +28 -50
- package/src/cli/completion-gen.ts +28 -28
- package/src/cli/dry-balance-cli.ts +56 -23
- package/src/cli/gallery-cli.ts +231 -0
- package/src/cli/gallery-fixtures/agentic.ts +407 -0
- package/src/cli/gallery-fixtures/codeintel.ts +187 -0
- package/src/cli/gallery-fixtures/edit.ts +194 -0
- package/src/cli/gallery-fixtures/fs.ts +220 -0
- package/src/cli/gallery-fixtures/index.ts +40 -0
- package/src/cli/gallery-fixtures/interaction.ts +49 -0
- package/src/cli/gallery-fixtures/memory.ts +81 -0
- package/src/cli/gallery-fixtures/misc.ts +250 -0
- package/src/cli/gallery-fixtures/search.ts +213 -0
- package/src/cli/gallery-fixtures/shell.ts +167 -0
- package/src/cli/gallery-fixtures/types.ts +57 -0
- package/src/cli/gallery-fixtures/web.ts +158 -0
- package/src/cli/gallery-screenshot.ts +279 -0
- package/src/cli/gateway-cli.ts +32 -2
- package/src/cli/grievances-cli.ts +1 -1
- package/src/cli/list-models.ts +16 -174
- package/src/cli/models-cli.ts +429 -0
- package/src/cli/session-picker.ts +2 -1
- package/src/cli/setup-cli.ts +148 -47
- package/src/cli/setup-model-picker.ts +43 -0
- package/src/cli/startup-cwd.ts +68 -0
- package/src/cli/update-cli.ts +144 -272
- package/src/cli/usage-cli.ts +774 -0
- package/src/cli-commands.ts +36 -0
- package/src/cli.ts +141 -32
- package/src/collab/crypto.ts +63 -0
- package/src/collab/guest.ts +451 -0
- package/src/collab/host.ts +565 -0
- package/src/collab/protocol.ts +241 -0
- package/src/collab/relay-client.ts +216 -0
- package/src/commands/bench.ts +42 -0
- package/src/commands/complete.ts +1 -1
- package/src/commands/gallery.ts +52 -0
- package/src/commands/gateway.ts +4 -0
- package/src/commands/install.ts +1 -1
- package/src/commands/join.ts +39 -0
- package/src/commands/launch.ts +8 -4
- package/src/commands/models.ts +61 -0
- package/src/commands/read.ts +6 -3
- package/src/commands/say.ts +102 -0
- package/src/commands/setup.ts +1 -1
- package/src/commands/token.ts +89 -0
- package/src/commands/usage.ts +43 -0
- package/src/commit/agentic/agent.ts +2 -1
- package/src/commit/agentic/tools/analyze-file.ts +42 -20
- package/src/commit/agentic/tools/git-file-diff.ts +1 -1
- package/src/commit/agentic/tools/git-hunk.ts +1 -1
- package/src/commit/agentic/tools/git-overview.ts +1 -1
- package/src/commit/agentic/tools/propose-changelog.ts +1 -1
- package/src/commit/agentic/tools/propose-commit.ts +1 -1
- package/src/commit/agentic/tools/recent-commits.ts +1 -1
- package/src/commit/agentic/tools/schemas.ts +1 -1
- package/src/commit/agentic/tools/split-commit.ts +9 -2
- package/src/commit/analysis/conventional.ts +2 -2
- package/src/commit/analysis/summary.ts +3 -3
- package/src/commit/changelog/generate.ts +3 -3
- package/src/commit/changelog/index.ts +2 -2
- package/src/commit/map-reduce/index.ts +3 -3
- package/src/commit/map-reduce/map-phase.ts +2 -2
- package/src/commit/map-reduce/reduce-phase.ts +2 -2
- package/src/commit/model-selection.ts +35 -12
- package/src/commit/pipeline.ts +4 -4
- package/src/commit/shared-llm.ts +1 -1
- package/src/config/api-key-resolver.ts +67 -0
- package/src/config/append-only-context-mode.ts +6 -12
- package/src/config/keybindings.ts +9 -4
- package/src/config/mcp-schema.json +4 -0
- package/src/config/model-discovery.ts +574 -0
- package/src/config/model-equivalence.ts +5 -4
- package/src/config/model-registry.ts +659 -1093
- package/src/config/model-resolver.ts +374 -174
- package/src/config/model-roles.ts +88 -0
- package/src/config/models-config-schema.ts +61 -9
- package/src/config/models-config.ts +130 -0
- package/src/config/settings-schema.ts +1445 -382
- package/src/config/settings.ts +261 -69
- package/src/dap/client.ts +138 -53
- package/src/dap/config.ts +41 -2
- package/src/dap/defaults.json +1 -0
- package/src/dap/session.ts +263 -161
- package/src/dap/types.ts +10 -0
- package/src/debug/index.ts +50 -60
- package/src/debug/log-viewer.ts +1 -1
- package/src/debug/protocol-probe.ts +1 -1
- package/src/debug/raw-sse-buffer.ts +7 -4
- package/src/debug/raw-sse.ts +1 -1
- package/src/debug/report-bundle.ts +9 -0
- package/src/debug/terminal-info.ts +0 -3
- package/src/discovery/agents-md.ts +25 -21
- package/src/discovery/agents.ts +9 -15
- package/src/discovery/at-imports.ts +273 -0
- package/src/discovery/builtin-rules/index.ts +4 -0
- package/src/discovery/builtin-rules/ts-no-test-timers.md +55 -0
- package/src/discovery/builtin-rules/ts-redundant-clear-guard.md +75 -0
- package/src/discovery/builtin.ts +45 -23
- package/src/discovery/claude-plugins.ts +44 -5
- package/src/discovery/helpers.ts +50 -9
- package/src/discovery/prometheus-extension-roots.ts +10 -10
- package/src/discovery/prometheus-plugins.ts +10 -10
- package/src/edit/diff.ts +191 -4
- package/src/edit/file-snapshot-store.ts +34 -1
- package/src/edit/hashline/block-resolver.ts +20 -1
- package/src/edit/hashline/diff.ts +123 -2
- package/src/edit/hashline/execute.ts +60 -4
- package/src/edit/hashline/filesystem.ts +2 -1
- package/src/edit/hashline/noop-loop-guard.ts +99 -0
- package/src/edit/hashline/params.ts +1 -1
- package/src/edit/index.ts +47 -18
- package/src/edit/modes/apply-patch.ts +1 -1
- package/src/edit/modes/patch.ts +59 -3
- package/src/edit/modes/replace.ts +58 -24
- package/src/edit/notebook.ts +22 -2
- package/src/edit/renderer.ts +315 -151
- package/src/eval/__tests__/agent-bridge.test.ts +105 -39
- package/src/eval/__tests__/budget-bridge.test.ts +1 -1
- package/src/eval/__tests__/completion-bridge.test.ts +412 -0
- package/src/eval/__tests__/helpers-local-roots.test.ts +58 -0
- package/src/eval/__tests__/js-context-manager.test.ts +241 -0
- package/src/eval/__tests__/llm-bridge.test.ts +6 -4
- package/src/eval/__tests__/shared-executors.test.ts +34 -92
- package/src/eval/agent-bridge.ts +39 -23
- package/src/eval/backend.ts +15 -2
- package/src/eval/bridge-timeout.ts +1 -1
- package/src/eval/completion-bridge.ts +203 -0
- package/src/eval/idle-timeout.ts +3 -10
- package/src/eval/js/context-manager.ts +108 -31
- package/src/eval/js/executor.ts +9 -2
- package/src/eval/js/index.ts +7 -3
- package/src/eval/js/shared/helpers.ts +59 -13
- package/src/eval/js/shared/local-module-loader.ts +2 -2
- package/src/eval/js/shared/prelude.txt +167 -30
- package/src/eval/js/shared/rewrite-imports.ts +58 -34
- package/src/eval/js/shared/runtime.ts +24 -16
- package/src/eval/js/tool-bridge.ts +4 -0
- package/src/eval/js/worker-core.ts +1 -0
- package/src/eval/js/worker-entry.ts +6 -0
- package/src/eval/js/worker-protocol.ts +6 -0
- package/src/eval/llm-bridge.ts +2 -1
- package/src/eval/py/__tests__/prelude.test.ts +19 -0
- package/src/eval/py/executor.ts +70 -26
- package/src/eval/py/index.ts +13 -4
- package/src/eval/py/kernel.ts +48 -9
- package/src/eval/py/prelude.py +73 -24
- package/src/eval/py/runner.py +133 -28
- package/src/eval/py/runtime.ts +38 -1
- package/src/exa/index.ts +1 -26
- package/src/exa/mcp-client.ts +10 -10
- package/src/exa/types.ts +0 -97
- package/src/exec/bash-executor.ts +104 -7
- package/src/export/custom-share.ts +1 -1
- package/src/export/html/index.ts +119 -17
- package/src/export/html/share-loader.js +102 -0
- package/src/export/html/template-js.ts +6 -0
- package/src/export/html/template.css +745 -459
- package/src/export/html/template.css.d.ts +2 -0
- package/src/export/html/template.html +6 -3
- package/src/export/html/template.js +277 -891
- package/src/export/html/tool-views.generated.d.ts +2 -0
- package/src/export/html/tool-views.generated.js +38 -0
- package/src/export/share.ts +269 -0
- package/src/export/ttsr.ts +122 -1
- package/src/extensibility/custom-commands/loader.ts +7 -4
- package/src/extensibility/custom-commands/types.ts +9 -4
- package/src/extensibility/custom-tools/loader.ts +51 -23
- package/src/extensibility/custom-tools/types.ts +16 -8
- package/src/extensibility/extensions/get-commands-handler.ts +2 -1
- package/src/extensibility/extensions/index.ts +1 -0
- package/src/extensibility/extensions/loader.ts +70 -20
- package/src/extensibility/extensions/model-api.ts +41 -0
- package/src/extensibility/extensions/runner.ts +12 -2
- package/src/extensibility/extensions/types.ts +83 -11
- package/src/extensibility/extensions/wrapper.ts +41 -5
- package/src/extensibility/hooks/index.ts +2 -1
- package/src/extensibility/hooks/loader.ts +6 -3
- package/src/extensibility/hooks/types.ts +11 -5
- package/src/extensibility/{legacy-pi-ai-shim.ts → legacy-package-ai-shim.ts} +2 -2
- package/src/extensibility/plugins/doctor.ts +1 -2
- package/src/extensibility/plugins/installer.ts +2 -2
- package/src/extensibility/plugins/{legacy-pi-compat.ts → legacy-package-compat.ts} +165 -77
- package/src/extensibility/plugins/loader.ts +34 -23
- package/src/extensibility/plugins/manager.ts +226 -95
- package/src/extensibility/plugins/marketplace-auto-update.ts +49 -0
- package/src/extensibility/plugins/types.ts +3 -3
- package/src/extensibility/shared-events.ts +3 -3
- package/src/extensibility/skills.ts +113 -9
- package/src/extensibility/slash-commands.ts +1 -97
- package/src/gateway/adapters/telegram/access.ts +39 -4
- package/src/gateway/adapters/telegram/normalize.ts +16 -1
- package/src/gateway/adapters/telegram/setup-api.ts +7 -1
- package/src/gateway/adapters/telegram/webhook.ts +26 -5
- package/src/gateway/context.ts +9 -1
- package/src/gateway/types.ts +1 -1
- package/src/goals/guided-setup.ts +133 -0
- package/src/goals/state.ts +1 -1
- package/src/goals/tools/goal-tool.ts +38 -28
- package/src/hindsight/bank.ts +17 -2
- package/src/hindsight/client.ts +27 -2
- package/src/hindsight/mental-models.ts +59 -12
- package/src/hindsight/state.ts +12 -3
- package/src/hindsight/transcript.ts +1 -1
- package/src/index.ts +5 -0
- package/src/internal-urls/artifact-protocol.ts +11 -2
- package/src/internal-urls/docs-index.generated.ts +11 -9
- package/src/internal-urls/history-protocol.ts +113 -0
- package/src/internal-urls/index.ts +1 -0
- package/src/internal-urls/issue-pr-protocol.ts +22 -9
- package/src/internal-urls/local-protocol.ts +42 -7
- package/src/internal-urls/memory-protocol.ts +4 -31
- package/src/internal-urls/router.ts +3 -1
- package/src/internal-urls/types.ts +1 -1
- package/src/irc/bus.ts +303 -0
- package/src/lib/xai-http.ts +3 -3
- package/src/lsp/client.ts +245 -104
- package/src/lsp/clients/biome-client.ts +101 -39
- package/src/lsp/clients/lsp-linter-client.ts +2 -10
- package/src/lsp/config.ts +15 -5
- package/src/lsp/defaults.json +6 -0
- package/src/lsp/edits.ts +143 -95
- package/src/lsp/format-options.ts +119 -0
- package/src/lsp/index.ts +233 -93
- package/src/lsp/render.ts +11 -35
- package/src/lsp/types.ts +13 -1
- package/src/lsp/utils.ts +31 -12
- package/src/main.ts +396 -216
- package/src/mcp/config-writer.ts +7 -3
- package/src/mcp/json-rpc.ts +35 -5
- package/src/mcp/manager.ts +31 -16
- package/src/mcp/oauth-discovery.ts +34 -4
- package/src/mcp/oauth-flow.ts +61 -8
- package/src/mcp/render.ts +7 -1
- package/src/mcp/startup-events.ts +21 -0
- package/src/mcp/tool-bridge.ts +2 -0
- package/src/mcp/transports/stdio.ts +224 -4
- package/src/mcp/types.ts +2 -0
- package/src/memories/index.ts +174 -1128
- package/src/memories/storage.ts +2 -41
- package/src/memory-backend/index.ts +14 -1
- package/src/memory-backend/local-backend.ts +18 -3
- package/src/memory-backend/off-backend.ts +9 -0
- package/src/memory-backend/resolve.ts +4 -6
- package/src/memory-backend/runtime.ts +66 -0
- package/src/memory-backend/types.ts +82 -2
- package/src/mnemopi/backend.ts +220 -28
- package/src/mnemopi/config.ts +138 -33
- package/src/mnemopi/state.ts +91 -11
- package/src/modes/acp/acp-agent.ts +149 -142
- package/src/modes/acp/acp-event-mapper.ts +5 -1
- package/src/modes/components/agent-dashboard.ts +17 -11
- package/src/modes/components/agent-hub.ts +1346 -0
- package/src/modes/components/assistant-message.ts +190 -80
- package/src/modes/components/bash-execution.ts +1 -1
- package/src/modes/components/btw-panel.ts +5 -1
- package/src/modes/components/chat-block.ts +111 -0
- package/src/modes/components/collab-prompt-message.ts +30 -0
- package/src/modes/components/compaction-summary-message.ts +168 -33
- package/src/modes/components/copy-selector.ts +2 -45
- package/src/modes/components/custom-editor.test.ts +96 -0
- package/src/modes/components/custom-editor.ts +405 -118
- package/src/modes/components/custom-message.ts +1 -3
- package/src/modes/components/diff.ts +13 -2
- package/src/modes/components/dynamic-border.ts +12 -3
- package/src/modes/components/execution-shared.ts +1 -2
- package/src/modes/components/extensions/extension-dashboard.ts +8 -5
- package/src/modes/components/extensions/extension-list.ts +1 -1
- package/src/modes/components/extensions/inspector-panel.ts +7 -3
- package/src/modes/components/extensions/state-manager.ts +36 -41
- package/src/modes/components/footer.ts +4 -2
- package/src/modes/components/history-search.ts +1 -1
- package/src/modes/components/hook-editor.ts +8 -0
- package/src/modes/components/hook-input.ts +8 -0
- package/src/modes/components/hook-message.ts +1 -3
- package/src/modes/components/hook-selector.ts +6 -7
- package/src/modes/components/index.ts +1 -0
- package/src/modes/components/late-diagnostics-message.ts +60 -0
- package/src/modes/components/login-dialog.ts +1 -1
- package/src/modes/components/logout-account-selector.ts +130 -0
- package/src/modes/components/mcp-add-wizard.ts +14 -1
- package/src/modes/components/model-selector.ts +177 -75
- package/src/modes/components/oauth-selector.ts +102 -16
- package/src/modes/components/overlay-box.ts +108 -0
- package/src/modes/components/plan-review-overlay.ts +845 -0
- package/src/modes/components/plan-toc.ts +138 -0
- package/src/modes/components/plugin-settings.ts +22 -5
- package/src/modes/components/read-tool-group.ts +442 -39
- package/src/modes/components/reset-usage-selector.ts +161 -0
- package/src/modes/components/segment-track.ts +44 -7
- package/src/modes/components/session-selector.ts +97 -37
- package/src/modes/components/settings-defs.ts +28 -6
- package/src/modes/components/settings-selector.ts +541 -93
- package/src/modes/components/skill-message.ts +0 -1
- package/src/modes/components/snapcompact-shape-preview-doc.md +11 -0
- package/src/modes/components/snapcompact-shape-preview.ts +193 -0
- package/src/modes/components/{status-line.ts → status-line/component.ts} +205 -168
- package/src/modes/components/status-line/index.ts +1 -0
- package/src/modes/components/status-line/presets.ts +3 -3
- package/src/modes/components/status-line/segments.ts +26 -7
- package/src/modes/components/status-line/types.ts +40 -9
- package/src/modes/components/tiny-title-download-progress.ts +1 -1
- package/src/modes/components/tips.txt +7 -3
- package/src/modes/components/todo-reminder.ts +0 -2
- package/src/modes/components/tool-execution.ts +236 -103
- package/src/modes/components/transcript-container.ts +724 -99
- package/src/modes/components/tree-selector.ts +19 -4
- package/src/modes/components/ttsr-notification.ts +72 -30
- package/src/modes/components/usage-row.ts +18 -0
- package/src/modes/components/user-message-selector.ts +1 -1
- package/src/modes/components/user-message.ts +28 -12
- package/src/modes/components/visual-truncate.ts +1 -1
- package/src/modes/components/welcome.ts +80 -22
- package/src/modes/controllers/command-controller-shared.ts +7 -6
- package/src/modes/controllers/command-controller.ts +210 -180
- package/src/modes/controllers/event-controller.ts +352 -142
- package/src/modes/controllers/extension-ui-controller.ts +167 -208
- package/src/modes/controllers/input-controller.ts +778 -162
- package/src/modes/controllers/mcp-command-controller.ts +232 -80
- package/src/modes/controllers/selector-controller.ts +284 -145
- package/src/modes/controllers/session-focus-controller.ts +112 -0
- package/src/modes/controllers/ssh-command-controller.ts +2 -2
- package/src/modes/controllers/streaming-reveal.ts +295 -0
- package/src/modes/controllers/tan-command-controller.ts +173 -0
- package/src/modes/controllers/tool-args-reveal.ts +174 -0
- package/src/modes/gradient-highlight.ts +21 -9
- package/src/modes/image-references.ts +33 -7
- package/src/modes/index.ts +8 -25
- package/src/modes/interactive-mode.ts +840 -186
- package/src/modes/magic-keywords.ts +28 -6
- package/src/modes/markdown-prose.ts +1 -1
- package/src/modes/oauth-manual-input.ts +30 -3
- package/src/modes/rpc/rpc-client.ts +186 -3
- package/src/modes/rpc/rpc-mode.ts +318 -24
- package/src/modes/rpc/rpc-subagents.ts +265 -0
- package/src/modes/rpc/rpc-types.ts +111 -2
- package/src/modes/runtime-init.ts +28 -3
- package/src/modes/session-observer-registry.ts +72 -3
- package/src/modes/setup-version.ts +11 -0
- package/src/modes/setup-wizard/index.ts +16 -4
- package/src/modes/setup-wizard/lazy.ts +16 -0
- package/src/modes/setup-wizard/scenes/glyph.ts +25 -7
- package/src/modes/setup-wizard/scenes/providers.ts +45 -12
- package/src/modes/setup-wizard/scenes/sign-in.ts +14 -13
- package/src/modes/setup-wizard/scenes/splash.ts +1 -1
- package/src/modes/setup-wizard/scenes/telegram.ts +77 -22
- package/src/modes/setup-wizard/scenes/theme.ts +29 -2
- package/src/modes/setup-wizard/scenes/types.ts +11 -2
- package/src/modes/setup-wizard/scenes/web-search.ts +26 -9
- package/src/modes/setup-wizard/wizard-overlay.ts +40 -3
- package/src/modes/shared.ts +2 -0
- package/src/modes/theme/defaults/dark-poimandres.json +1 -1
- package/src/modes/theme/defaults/light-poimandres.json +1 -1
- package/src/modes/theme/shimmer.ts +20 -9
- package/src/modes/theme/theme-schema.json +1 -1
- package/src/modes/theme/theme.ts +342 -82
- package/src/modes/types.ts +60 -18
- package/src/modes/utils/context-usage.ts +88 -8
- package/src/modes/utils/copy-targets.ts +133 -27
- package/src/modes/utils/hotkeys-markdown.ts +3 -2
- package/src/modes/utils/ui-helpers.ts +191 -110
- package/src/modes/workflow.ts +10 -10
- package/src/plan-mode/approved-plan.ts +66 -43
- package/src/plan-mode/plan-protection.ts +4 -4
- package/src/priority.json +5 -1
- package/src/prompts/agents/designer.md +1 -1
- package/src/prompts/agents/explore.md +3 -3
- package/src/prompts/agents/librarian.md +2 -3
- package/src/prompts/agents/oracle.md +2 -2
- package/src/prompts/agents/plan.md +6 -6
- package/src/prompts/agents/reviewer.md +1 -1
- package/src/prompts/agents/task.md +6 -5
- package/src/prompts/bench.md +12 -0
- package/src/prompts/ci-green-request.md +5 -7
- package/src/prompts/goals/goal-budget-limit.md +2 -2
- package/src/prompts/goals/goal-continuation.md +4 -4
- package/src/prompts/goals/goal-mode-active.md +1 -1
- package/src/prompts/goals/guided-goal-interview.md +8 -0
- package/src/prompts/goals/guided-goal-system.md +12 -0
- package/src/prompts/memories/consolidation.md +2 -7
- package/src/prompts/memories/consolidation_system.md +4 -0
- package/src/prompts/memories/identity_review.md +2 -2
- package/src/prompts/memories/read-path.md +11 -10
- package/src/prompts/memories/stage_one_system.md +2 -2
- package/src/prompts/review-custom-request.md +1 -1
- package/src/prompts/system/agent-creation-architect.md +2 -2
- package/src/prompts/system/auto-continue.md +1 -1
- package/src/prompts/system/autolearn-guidance-learn.md +1 -0
- package/src/prompts/system/autolearn-guidance.md +7 -0
- package/src/prompts/system/autolearn-nudge.md +3 -0
- package/src/prompts/system/background-tan-dispatch.md +8 -0
- package/src/prompts/system/btw-user.md +2 -2
- package/src/prompts/system/commit-message-system.md +13 -1
- package/src/prompts/system/custom-system-prompt.md +1 -1
- package/src/prompts/system/eager-task.md +7 -0
- package/src/prompts/system/eager-todo.md +11 -6
- package/src/prompts/system/empty-stop-retry.md +4 -6
- package/src/prompts/system/irc-autoreply.md +6 -0
- package/src/prompts/system/irc-incoming.md +3 -4
- package/src/prompts/system/manual-continue.md +7 -0
- package/src/prompts/system/omfg-user.md +3 -4
- package/src/prompts/system/orchestrate-notice.md +10 -10
- package/src/prompts/system/personalities/default.md +26 -0
- package/src/prompts/system/personalities/friendly.md +17 -0
- package/src/prompts/system/personalities/pragmatic.md +15 -0
- package/src/prompts/system/plan-mode-active.md +70 -77
- package/src/prompts/system/plan-mode-approved.md +1 -1
- package/src/prompts/system/plan-mode-subagent.md +4 -5
- package/src/prompts/system/plan-mode-tool-decision-reminder.md +1 -1
- package/src/prompts/system/project-prompt.md +2 -2
- package/src/prompts/system/snapcompact-context-frames-note.md +1 -0
- package/src/prompts/system/snapcompact-context-stub.md +1 -0
- package/src/prompts/system/snapcompact-system-frames-note.md +1 -0
- package/src/prompts/system/snapcompact-system-stub.md +1 -0
- package/src/prompts/system/snapcompact-toolresult-note.md +1 -0
- package/src/prompts/system/subagent-system-prompt.md +7 -8
- package/src/prompts/system/system-prompt.md +28 -57
- package/src/prompts/system/tiny-title-system.md +1 -1
- package/src/prompts/system/title-marker-instruction.md +1 -0
- package/src/prompts/system/title-system-marker.md +16 -0
- package/src/prompts/system/title-system.md +16 -3
- package/src/prompts/system/ttsr-tool-reminder.md +1 -1
- package/src/prompts/system/workflow-notice.md +4 -4
- package/src/prompts/tools/ast-edit.md +1 -1
- package/src/prompts/tools/ast-grep.md +2 -2
- package/src/prompts/tools/bash.md +16 -8
- package/src/prompts/tools/browser.md +33 -43
- package/src/prompts/tools/debug.md +1 -1
- package/src/prompts/tools/eval.md +31 -51
- package/src/prompts/tools/find.md +0 -1
- package/src/prompts/tools/github.md +8 -7
- package/src/prompts/tools/goal.md +1 -1
- package/src/prompts/tools/image-gen.md +1 -1
- package/src/prompts/tools/inspect-image-system.md +1 -1
- package/src/prompts/tools/irc.md +39 -31
- package/src/prompts/tools/job.md +2 -1
- package/src/prompts/tools/learn.md +7 -0
- package/src/prompts/tools/lsp-late-diagnostic.md +8 -0
- package/src/prompts/tools/lsp.md +2 -2
- package/src/prompts/tools/manage-skill.md +9 -0
- package/src/prompts/tools/memory-edit.md +1 -1
- package/src/prompts/tools/patch.md +2 -2
- package/src/prompts/tools/read.md +31 -39
- package/src/prompts/tools/recall.md +1 -1
- package/src/prompts/tools/reflect.md +1 -1
- package/src/prompts/tools/render-mermaid.md +2 -2
- package/src/prompts/tools/replace.md +4 -10
- package/src/prompts/tools/rewind.md +2 -2
- package/src/prompts/tools/search-tool-bm25.md +1 -9
- package/src/prompts/tools/search.md +0 -1
- package/src/prompts/tools/ssh.md +0 -4
- package/src/prompts/tools/task-summary.md +5 -16
- package/src/prompts/tools/task.md +47 -31
- package/src/prompts/tools/todo.md +6 -3
- package/src/registry/agent-lifecycle.ts +218 -0
- package/src/registry/agent-registry.ts +46 -5
- package/src/sdk.ts +692 -219
- package/src/secrets/index.ts +8 -1
- package/src/secrets/obfuscator.ts +40 -19
- package/src/session/agent-session.ts +1577 -806
- package/src/session/agent-storage.ts +18 -9
- package/src/session/auth-broker-config.ts +30 -1
- package/src/session/auth-storage.ts +6 -0
- package/src/session/codex-auto-reset.ts +202 -0
- package/src/session/history-storage.ts +3 -2
- package/src/session/indexed-session-storage.ts +7 -10
- package/src/session/messages.ts +59 -95
- package/src/session/session-context.ts +352 -0
- package/src/session/session-dump-format.ts +12 -3
- package/src/session/session-entries.ts +194 -0
- package/src/session/session-history-format.ts +246 -0
- package/src/session/session-listing.ts +588 -0
- package/src/session/session-loader.ts +106 -0
- package/src/session/session-manager.ts +1003 -2920
- package/src/session/session-migrations.ts +78 -0
- package/src/session/session-paths.ts +193 -0
- package/src/session/session-persistence.ts +131 -0
- package/src/session/session-storage.ts +91 -30
- package/src/session/snapcompact-inline.ts +542 -0
- package/src/session/snapcompact-savings-journal.ts +113 -0
- package/src/session/streaming-output.ts +248 -11
- package/src/session/tool-choice-queue.ts +23 -11
- package/src/session/yield-queue.ts +20 -2
- package/src/slash-commands/acp-builtins.ts +25 -1
- package/src/slash-commands/available-commands.ts +105 -0
- package/src/slash-commands/builtin-registry.ts +575 -49
- package/src/slash-commands/helpers/active-oauth-account.ts +44 -0
- package/src/slash-commands/helpers/context-report.ts +28 -1
- package/src/slash-commands/helpers/logout.ts +88 -0
- package/src/slash-commands/helpers/reset-usage.ts +66 -0
- package/src/slash-commands/helpers/stats-dashboard.ts +85 -0
- package/src/slash-commands/helpers/usage-report.ts +38 -3
- package/src/slash-commands/types.ts +5 -9
- package/src/ssh/connection-manager.ts +27 -0
- package/src/ssh/ssh-executor.ts +60 -4
- package/src/stt/asr-client.ts +520 -0
- package/src/stt/asr-protocol.ts +65 -0
- package/src/stt/asr-worker.ts +790 -0
- package/src/stt/downloader.ts +107 -47
- package/src/stt/endpointer.ts +259 -0
- package/src/stt/index.ts +5 -1
- package/src/stt/models.ts +150 -0
- package/src/stt/recorder.ts +254 -67
- package/src/stt/stt-controller.ts +201 -22
- package/src/stt/transcriber.ts +37 -68
- package/src/stt/wav.ts +173 -0
- package/src/system-prompt.ts +52 -10
- package/src/task/agents.ts +3 -4
- package/src/task/commands.ts +3 -2
- package/src/task/discovery.ts +17 -24
- package/src/task/executor.ts +1054 -529
- package/src/task/index.ts +862 -757
- package/src/task/output-manager.ts +0 -11
- package/src/task/parallel.ts +3 -3
- package/src/task/prometheus-command.ts +2 -2
- package/src/task/render.ts +529 -182
- package/src/task/repair-args.ts +21 -9
- package/src/task/types.ts +144 -66
- package/src/task/worktree.ts +64 -56
- package/src/telemetry-export.ts +27 -9
- package/src/thinking.ts +9 -7
- package/src/tiny/models.ts +2 -2
- package/src/tiny/text.ts +5 -1
- package/src/tiny/title-client.ts +72 -20
- package/src/tiny/title-protocol.ts +1 -1
- package/src/tiny/worker.ts +23 -99
- package/src/tool-discovery/tool-index.ts +2 -0
- package/src/tools/archive-reader.ts +94 -2
- package/src/tools/ask.ts +234 -177
- package/src/tools/ast-edit.ts +136 -80
- package/src/tools/ast-grep.ts +41 -45
- package/src/tools/auto-generated-guard.ts +20 -3
- package/src/tools/bash-interactive.ts +28 -8
- package/src/tools/bash.ts +198 -35
- package/src/tools/browser/attach.ts +26 -7
- package/src/tools/browser/cmux/cmux-tab.ts +1264 -0
- package/src/tools/browser/cmux/rpc.ts +156 -0
- package/src/tools/browser/cmux/socket-client.ts +309 -0
- package/src/tools/browser/launch.ts +11 -2
- package/src/tools/browser/readable.ts +19 -2
- package/src/tools/browser/registry.ts +52 -5
- package/src/tools/browser/render.ts +13 -5
- package/src/tools/browser/tab-protocol.ts +2 -0
- package/src/tools/browser/tab-supervisor.ts +256 -34
- package/src/tools/browser/tab-worker.ts +259 -91
- package/src/tools/browser.ts +44 -2
- package/src/tools/checkpoint.ts +1 -1
- package/src/tools/conflict-detect.ts +50 -4
- package/src/tools/debug.ts +27 -12
- package/src/tools/eval-render.ts +32 -35
- package/src/tools/eval.ts +26 -12
- package/src/tools/fetch.ts +450 -99
- package/src/tools/find.ts +182 -142
- package/src/tools/gh-cache-invalidation.ts +255 -0
- package/src/tools/gh-renderer.ts +104 -51
- package/src/tools/gh.ts +232 -37
- package/src/tools/github-cache.ts +97 -7
- package/src/tools/grouped-file-output.ts +159 -52
- package/src/tools/image-gen.ts +237 -132
- package/src/tools/index.ts +147 -26
- package/src/tools/inspect-image-renderer.ts +74 -45
- package/src/tools/inspect-image.ts +12 -6
- package/src/tools/irc.ts +626 -173
- package/src/tools/job.ts +106 -29
- package/src/tools/learn.ts +144 -0
- package/src/tools/manage-skill.ts +104 -0
- package/src/tools/memory-edit.ts +4 -4
- package/src/tools/memory-recall.ts +7 -9
- package/src/tools/memory-reflect.ts +5 -9
- package/src/tools/memory-render.ts +23 -6
- package/src/tools/memory-retain.ts +4 -4
- package/src/tools/path-utils.ts +102 -48
- package/src/tools/plan-mode-guard.ts +101 -40
- package/src/tools/read.ts +475 -120
- package/src/tools/render-mermaid.ts +1 -1
- package/src/tools/render-utils.ts +132 -76
- package/src/tools/renderers.ts +12 -1
- package/src/tools/report-tool-issue.ts +14 -6
- package/src/tools/resolve.ts +20 -3
- package/src/tools/review.ts +2 -2
- package/src/tools/search-tool-bm25.ts +37 -24
- package/src/tools/search.ts +233 -115
- package/src/tools/sqlite-reader.ts +26 -17
- package/src/tools/ssh.ts +20 -14
- package/src/tools/todo.ts +197 -191
- package/src/tools/tool-result.ts +8 -0
- package/src/tools/tool-timeouts.ts +1 -1
- package/src/tools/tts.ts +205 -74
- package/src/tools/write.ts +291 -155
- package/src/tools/yield.ts +10 -1
- package/src/tts/downloader.ts +64 -0
- package/src/tts/index.ts +8 -0
- package/src/tts/models.ts +137 -0
- package/src/tts/player.ts +137 -0
- package/src/tts/runtime.ts +21 -0
- package/src/tts/streaming-player.ts +266 -0
- package/src/tts/tts-client.ts +647 -0
- package/src/tts/tts-protocol.ts +60 -0
- package/src/tts/tts-worker.ts +505 -0
- package/src/tts/vocalizer.ts +162 -0
- package/src/tts/wav.ts +58 -0
- package/src/tui/code-cell.ts +2 -7
- package/src/tui/hyperlink.ts +40 -26
- package/src/tui/output-block.ts +60 -108
- package/src/tui/status-line.ts +5 -1
- package/src/utils/block-context.ts +312 -0
- package/src/utils/changelog.ts +27 -1
- package/src/utils/clipboard.ts +91 -22
- package/src/utils/commit-message-generator.ts +8 -3
- package/src/utils/enhanced-paste.ts +230 -0
- package/src/utils/file-mentions.ts +3 -1
- package/src/utils/git.ts +315 -15
- package/src/utils/image-loading.ts +65 -4
- package/src/utils/session-color.ts +83 -9
- package/src/utils/thinking-display.ts +37 -0
- package/src/utils/title-generator.ts +73 -10
- package/src/utils/tool-choice.ts +16 -0
- package/src/utils/tools-manager.ts +19 -1
- package/src/web/kagi.ts +28 -26
- package/src/web/parallel.ts +7 -3
- package/src/web/scrapers/arxiv.ts +1 -1
- package/src/web/scrapers/github.ts +351 -3
- package/src/web/scrapers/go-pkg.ts +1 -1
- package/src/web/scrapers/iacr.ts +1 -1
- package/src/web/scrapers/readthedocs.ts +1 -1
- package/src/web/scrapers/twitter.ts +2 -1
- package/src/web/scrapers/types.ts +87 -8
- package/src/web/scrapers/wikipedia.ts +1 -1
- package/src/web/scrapers/youtube.ts +9 -3
- package/src/web/search/index.ts +15 -2
- package/src/web/search/providers/anthropic.ts +62 -21
- package/src/web/search/providers/base.ts +2 -1
- package/src/web/search/providers/brave.ts +5 -2
- package/src/web/search/providers/codex.ts +87 -51
- package/src/web/search/providers/exa.ts +101 -10
- package/src/web/search/providers/gemini.ts +49 -24
- package/src/web/search/providers/jina.ts +15 -5
- package/src/web/search/providers/kagi.ts +9 -2
- package/src/web/search/providers/kimi.ts +45 -20
- package/src/web/search/providers/parallel.ts +39 -24
- package/src/web/search/providers/perplexity.ts +226 -63
- package/src/web/search/providers/searxng.ts +19 -3
- package/src/web/search/providers/synthetic.ts +16 -11
- package/src/web/search/providers/tavily.ts +12 -9
- package/src/web/search/providers/zai.ts +22 -9
- package/src/web/search/render.ts +59 -64
- package/src/web/search/types.ts +5 -1
- package/dist/types/discovery/context-files.d.ts +0 -17
- package/dist/types/exa/factory.d.ts +0 -13
- package/dist/types/exa/render.d.ts +0 -19
- package/dist/types/exa/researcher.d.ts +0 -9
- package/dist/types/exa/search.d.ts +0 -9
- package/dist/types/exa/websets.d.ts +0 -9
- package/dist/types/export/html/template.generated.d.ts +0 -1
- package/dist/types/modes/components/session-observer-overlay.d.ts +0 -11
- package/dist/types/modes/components/status-line.d.ts +0 -77
- package/dist/types/slash-commands/headless-plan.d.ts +0 -3
- package/dist/types/stt/setup.d.ts +0 -18
- package/scripts/generate-template.ts +0 -33
- package/src/discovery/context-files.ts +0 -49
- package/src/exa/factory.ts +0 -60
- package/src/exa/render.ts +0 -244
- package/src/exa/researcher.ts +0 -36
- package/src/exa/search.ts +0 -47
- package/src/exa/websets.ts +0 -248
- package/src/export/html/template.generated.ts +0 -2
- package/src/modes/components/session-observer-overlay.ts +0 -852
- package/src/slash-commands/headless-plan.ts +0 -142
- package/src/stt/setup.ts +0 -52
- package/src/stt/transcribe.py +0 -70
- /package/dist/types/extensibility/{legacy-pi-coding-agent-shim.d.ts → legacy-package-agent-shim.d.ts} +0 -0
- /package/src/extensibility/{legacy-pi-coding-agent-shim.ts → legacy-package-agent-shim.ts} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Memory backend abstraction.
|
|
3
3
|
*
|
|
4
|
-
* Backends are mutually exclusive — `resolveMemoryBackend(settings)` returns
|
|
4
|
+
* Backends are mutually exclusive — `await resolveMemoryBackend(settings)` returns
|
|
5
5
|
* exactly one. Implementations MUST be self-contained: they own the per-session
|
|
6
6
|
* state they create in `start()` and tear it down on `clear()`.
|
|
7
7
|
*/
|
|
@@ -11,7 +11,66 @@ import type { Settings } from "../config/settings";
|
|
|
11
11
|
import type { HindsightSessionState } from "../hindsight/state";
|
|
12
12
|
import type { MnemopiSessionState } from "../mnemopi/state";
|
|
13
13
|
import type { AgentSession } from "../session/agent-session";
|
|
14
|
-
export type MemoryBackendId = "off" | "local" | "hindsight" | "
|
|
14
|
+
export type MemoryBackendId = "off" | "local" | "hindsight" | "mnemopi";
|
|
15
|
+
export interface MemoryBackendStatus {
|
|
16
|
+
backend: MemoryBackendId;
|
|
17
|
+
active: boolean;
|
|
18
|
+
writable: boolean;
|
|
19
|
+
searchable: boolean;
|
|
20
|
+
scope?: string;
|
|
21
|
+
retainBank?: string;
|
|
22
|
+
recallBanks?: string[];
|
|
23
|
+
workingCount?: number;
|
|
24
|
+
episodicCount?: number;
|
|
25
|
+
tripleCount?: number;
|
|
26
|
+
lastMemory?: string;
|
|
27
|
+
lastRecall?: boolean;
|
|
28
|
+
database?: string;
|
|
29
|
+
message?: string;
|
|
30
|
+
error?: string;
|
|
31
|
+
}
|
|
32
|
+
export interface MemoryBackendSearchOptions {
|
|
33
|
+
limit?: number;
|
|
34
|
+
/** Best-effort abort signal. Backends may only observe it before/after an underlying recall call. */
|
|
35
|
+
signal?: AbortSignal;
|
|
36
|
+
}
|
|
37
|
+
export interface MemoryBackendSearchItem {
|
|
38
|
+
id?: string;
|
|
39
|
+
content: string;
|
|
40
|
+
source?: string;
|
|
41
|
+
timestamp?: string;
|
|
42
|
+
score?: number;
|
|
43
|
+
}
|
|
44
|
+
export interface MemoryBackendSearchResult {
|
|
45
|
+
backend: MemoryBackendId;
|
|
46
|
+
query: string;
|
|
47
|
+
count: number;
|
|
48
|
+
items: MemoryBackendSearchItem[];
|
|
49
|
+
message?: string;
|
|
50
|
+
}
|
|
51
|
+
export interface MemoryBackendSaveInput {
|
|
52
|
+
content: string;
|
|
53
|
+
context?: string;
|
|
54
|
+
source?: string;
|
|
55
|
+
importance?: number;
|
|
56
|
+
}
|
|
57
|
+
export interface MemoryBackendSaveResult {
|
|
58
|
+
backend: MemoryBackendId;
|
|
59
|
+
stored: number;
|
|
60
|
+
ids?: string[];
|
|
61
|
+
queued?: boolean;
|
|
62
|
+
message?: string;
|
|
63
|
+
}
|
|
64
|
+
export interface MemoryBackendOperationContext {
|
|
65
|
+
agentDir: string;
|
|
66
|
+
cwd: string;
|
|
67
|
+
session?: AgentSession;
|
|
68
|
+
}
|
|
69
|
+
export interface MemoryRuntimeContext {
|
|
70
|
+
status(): Promise<MemoryBackendStatus>;
|
|
71
|
+
search(query: string, options?: MemoryBackendSearchOptions): Promise<MemoryBackendSearchResult>;
|
|
72
|
+
save(input: string | MemoryBackendSaveInput): Promise<MemoryBackendSaveResult>;
|
|
73
|
+
}
|
|
15
74
|
export interface MemoryBackendStartOptions {
|
|
16
75
|
session: AgentSession;
|
|
17
76
|
settings: Settings;
|
|
@@ -40,6 +99,12 @@ export interface MemoryBackend {
|
|
|
40
99
|
clear(agentDir: string, cwd: string, session?: AgentSession): Promise<void>;
|
|
41
100
|
/** Force consolidation/retain to happen now (slash `/memory enqueue`). */
|
|
42
101
|
enqueue(agentDir: string, cwd: string, session?: AgentSession): Promise<void>;
|
|
102
|
+
/** Structured state for UI, slash commands, and extensions. */
|
|
103
|
+
status?(context: MemoryBackendOperationContext): Promise<MemoryBackendStatus>;
|
|
104
|
+
/** Explicit user-facing semantic/lexical search. */
|
|
105
|
+
search?(context: MemoryBackendOperationContext, query: string, options?: MemoryBackendSearchOptions): Promise<MemoryBackendSearchResult>;
|
|
106
|
+
/** Explicit user-facing save operation. */
|
|
107
|
+
save?(context: MemoryBackendOperationContext, input: MemoryBackendSaveInput): Promise<MemoryBackendSaveResult>;
|
|
43
108
|
/** Render backend-specific memory statistics as markdown (`/memory stats`). */
|
|
44
109
|
stats?(agentDir: string, cwd: string, session?: AgentSession): Promise<string | undefined>;
|
|
45
110
|
/** Render backend-specific memory diagnostics as markdown (`/memory diagnose`). */
|
|
@@ -2,7 +2,7 @@ import type { MnemopiOptions } from "@prometheus-ai/memory";
|
|
|
2
2
|
import type { Settings } from "../config/settings";
|
|
3
3
|
export type MnemopiLlmMode = "none" | "smol" | "remote";
|
|
4
4
|
export type MnemopiScoping = "global" | "per-project" | "per-project-tagged";
|
|
5
|
-
export type MnemopiProviderOptions = Pick<MnemopiOptions, "noEmbeddings" | "embeddingModel" | "embeddingApiUrl" | "embeddingApiKey" | "llm">;
|
|
5
|
+
export type MnemopiProviderOptions = Pick<MnemopiOptions, "noEmbeddings" | "embeddingModel" | "embeddingApiUrl" | "embeddingApiKey" | "llm" | "debug">;
|
|
6
6
|
export interface MnemopiBackendConfig {
|
|
7
7
|
dbPath: string;
|
|
8
8
|
baseBank?: string;
|
|
@@ -13,6 +13,8 @@ export interface MnemopiBackendConfig {
|
|
|
13
13
|
scoping?: MnemopiScoping;
|
|
14
14
|
autoRecall: boolean;
|
|
15
15
|
autoRetain: boolean;
|
|
16
|
+
polyphonicRecall: boolean;
|
|
17
|
+
enhancedRecall: boolean;
|
|
16
18
|
retainEveryNTurns: number;
|
|
17
19
|
recallLimit: number;
|
|
18
20
|
recallContextTurns: number;
|
|
@@ -26,4 +28,32 @@ export interface MnemopiBackendConfig {
|
|
|
26
28
|
llmModel?: string;
|
|
27
29
|
}
|
|
28
30
|
export declare function loadMnemopiConfig(settings: Settings, agentDir: string): MnemopiBackendConfig;
|
|
31
|
+
export interface MnemopiBankScope {
|
|
32
|
+
baseBank: string;
|
|
33
|
+
bank: string;
|
|
34
|
+
globalBank: string;
|
|
35
|
+
retainBank: string;
|
|
36
|
+
recallBanks: readonly string[];
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Resolve write/recall banks for a session.
|
|
40
|
+
*
|
|
41
|
+
* Mnemopi has no tag-filtered recall, so `per-project-tagged` maps to a
|
|
42
|
+
* project-local write bank plus a shared recall-visible bank. The project
|
|
43
|
+
* bank is derived purely from {@link cwd} — see {@link projectBank} for the
|
|
44
|
+
* stability contract.
|
|
45
|
+
*/
|
|
46
|
+
export declare function computeMnemopiBankScope(configured: string | undefined, cwd: string, scoping: MnemopiScoping): MnemopiBankScope;
|
|
47
|
+
/**
|
|
48
|
+
* Discover sibling banks under `<dbDir>/banks/` whose `working_memory` rows
|
|
49
|
+
* all carry the active `cwd` in `metadata_json.$.cwd`, and add those safe
|
|
50
|
+
* single-cwd banks to the recall set. This rescues memories stranded by a
|
|
51
|
+
* previous, less-stable bank derivation (#2412) without recalling mixed-cwd
|
|
52
|
+
* legacy banks wholesale under per-project isolation.
|
|
53
|
+
*
|
|
54
|
+
* Robust by design: a missing banks directory, unreadable bank dir, or
|
|
55
|
+
* corrupt SQLite file is silently skipped. Scanning is capped at
|
|
56
|
+
* {@link LEGACY_BANK_SCAN_LIMIT} to bound startup cost.
|
|
57
|
+
*/
|
|
58
|
+
export declare function extendRecallWithLegacyBanks(resolved: readonly string[], dbPath: string, cwd: string): readonly string[];
|
|
29
59
|
export declare function truncateApproxTokens(text: string, tokenLimit: number): string;
|
|
@@ -1,7 +1,17 @@
|
|
|
1
1
|
import type { AgentMessage } from "@prometheus-ai/agent-core";
|
|
2
|
-
import
|
|
2
|
+
import type * as MnemopiNs from "@prometheus-ai/memory";
|
|
3
|
+
import type { Mnemopi, RecallResult } from "@prometheus-ai/memory";
|
|
4
|
+
import type * as MnemopiCoreNs from "@prometheus-ai/memory/core";
|
|
3
5
|
import type { AgentSession } from "../session/agent-session";
|
|
4
6
|
import type { MnemopiBackendConfig } from "./config";
|
|
7
|
+
/** Lazily load `@prometheus-ai/memory` (memoized). */
|
|
8
|
+
export declare function loadMnemopi(): Promise<typeof MnemopiNs>;
|
|
9
|
+
/** Lazily load `@prometheus-ai/memory/core` (memoized). */
|
|
10
|
+
export declare function loadMnemopiCore(): Promise<typeof MnemopiCoreNs>;
|
|
11
|
+
/** Sync access for code below an async boundary that already awaited {@link loadMnemopi}. */
|
|
12
|
+
export declare function requireMnemopi(): typeof MnemopiNs;
|
|
13
|
+
/** Sync access for code below an async boundary that already awaited {@link loadMnemopiCore}. */
|
|
14
|
+
export declare function requireMnemopiCore(): typeof MnemopiCoreNs;
|
|
5
15
|
interface MnemopiScopedMemory {
|
|
6
16
|
bank: string;
|
|
7
17
|
memory: Mnemopi;
|
|
@@ -65,7 +75,35 @@ export declare class MnemopiSessionState {
|
|
|
65
75
|
}>, sourceId: string): Promise<void>;
|
|
66
76
|
attachSessionListeners(): void;
|
|
67
77
|
maybeRecallOnAgentStart(): Promise<void>;
|
|
68
|
-
|
|
78
|
+
/**
|
|
79
|
+
* Drain in-flight fact extraction and run beam consolidation on every owned
|
|
80
|
+
* bank, after capturing the current transcript. Mirrors the manual
|
|
81
|
+
* `/memory enqueue` slash command, but stops short of closing the DBs so
|
|
82
|
+
* callers can keep using the state. {@link dispose} composes this with the
|
|
83
|
+
* close step so normal session shutdown promotes working memory to
|
|
84
|
+
* episodic/gists/graph automatically (see issue #2320).
|
|
85
|
+
*
|
|
86
|
+
* Aliased subagent states share `scoped` (and therefore the actual SQLite
|
|
87
|
+
* banks) with their parent. `consolidate()` deliberately does NOT
|
|
88
|
+
* short-circuit on `aliasOf`: `forceRetainCurrentSession` already guards
|
|
89
|
+
* itself, and an explicit `/memory enqueue` invoked from within a subagent
|
|
90
|
+
* still needs to flush extractions and sleep the parent's shared banks —
|
|
91
|
+
* otherwise enqueue would report success while leaving the subagent's
|
|
92
|
+
* retained memories unconsolidated until the parent eventually shuts down
|
|
93
|
+
* (PR #2327 review).
|
|
94
|
+
*/
|
|
95
|
+
consolidate(): Promise<void>;
|
|
96
|
+
/**
|
|
97
|
+
* Release the per-session resources. Defaults to running {@link consolidate}
|
|
98
|
+
* before closing handles so normal session shutdown promotes working memory
|
|
99
|
+
* into long-term storage. Callers that are about to delete the DB files —
|
|
100
|
+
* e.g. `mnemopiBackend.clear` — pass `{ consolidate: false }` to skip the
|
|
101
|
+
* extraction/sleep pass, since spending tokens on memories that will be
|
|
102
|
+
* wiped on the next line is wasted work (PR #2327 review).
|
|
103
|
+
*/
|
|
104
|
+
dispose(options?: {
|
|
105
|
+
consolidate?: boolean;
|
|
106
|
+
}): Promise<void>;
|
|
69
107
|
}
|
|
70
108
|
export declare function getMnemopiScopedDbPaths(config: MnemopiBackendConfig): readonly string[];
|
|
71
109
|
export declare function getMnemopiScopedBanks(config: MnemopiBackendConfig): readonly string[];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type Agent, type AgentSideConnection, type AuthenticateRequest, type AuthenticateResponse, type ClientCapabilities, type CloseSessionRequest, type CloseSessionResponse, type ForkSessionRequest, type ForkSessionResponse, type InitializeRequest, type InitializeResponse, type ListSessionsRequest, type ListSessionsResponse, type LoadSessionRequest, type LoadSessionResponse, type NewSessionRequest, type NewSessionResponse, type PromptRequest, type PromptResponse, type ResumeSessionRequest, type ResumeSessionResponse, type SetSessionConfigOptionRequest, type SetSessionConfigOptionResponse, type
|
|
1
|
+
import { type Agent, type AgentSideConnection, type AuthenticateRequest, type AuthenticateResponse, type ClientCapabilities, type CloseSessionRequest, type CloseSessionResponse, type ForkSessionRequest, type ForkSessionResponse, type InitializeRequest, type InitializeResponse, type ListSessionsRequest, type ListSessionsResponse, type LoadSessionRequest, type LoadSessionResponse, type NewSessionRequest, type NewSessionResponse, type PromptRequest, type PromptResponse, type ResumeSessionRequest, type ResumeSessionResponse, type SetSessionConfigOptionRequest, type SetSessionConfigOptionResponse, type SetSessionModeRequest, type SetSessionModeResponse } from "@agentclientprotocol/sdk";
|
|
2
2
|
import { type ExtensionUIContext } from "../../extensibility/extensions";
|
|
3
3
|
import type { AgentSession } from "../../session/agent-session";
|
|
4
4
|
/**
|
|
@@ -42,7 +42,6 @@ export declare class AcpAgent implements Agent {
|
|
|
42
42
|
closeSession(params: CloseSessionRequest): Promise<CloseSessionResponse>;
|
|
43
43
|
setSessionMode(params: SetSessionModeRequest): Promise<SetSessionModeResponse>;
|
|
44
44
|
setSessionConfigOption(params: SetSessionConfigOptionRequest): Promise<SetSessionConfigOptionResponse>;
|
|
45
|
-
unstable_setSessionModel(params: SetSessionModelRequest): Promise<SetSessionModelResponse>;
|
|
46
45
|
prompt(params: PromptRequest): Promise<PromptResponse>;
|
|
47
46
|
cancel(params: {
|
|
48
47
|
sessionId: string;
|
|
@@ -1,3 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AgentDashboard - dedicated control center for Task subagent configuration.
|
|
3
|
+
*
|
|
4
|
+
* Layout:
|
|
5
|
+
* - Top: source tabs (All, Project, User, Bundled)
|
|
6
|
+
* - Body: two-column view (agent list + inspector)
|
|
7
|
+
*
|
|
8
|
+
* Controls:
|
|
9
|
+
* - Up/Down or j/k: move selection
|
|
10
|
+
* - Tab / Shift+Tab or Left/Right: switch source tab
|
|
11
|
+
* - Space: enable/disable selected agent
|
|
12
|
+
* - Enter: edit model override for selected agent
|
|
13
|
+
* - N: start agent creation flow
|
|
14
|
+
* - Esc: clear search (if any) or close dashboard
|
|
15
|
+
* - Ctrl+R: reload discovered agents
|
|
16
|
+
*/
|
|
1
17
|
import { Container } from "@prometheus-ai/tui";
|
|
2
18
|
import type { ModelRegistry } from "../../config/model-registry";
|
|
3
19
|
import { Settings } from "../../config/settings";
|
|
@@ -16,7 +32,7 @@ export declare class AgentDashboard extends Container {
|
|
|
16
32
|
onRequestRender?: () => void;
|
|
17
33
|
private constructor();
|
|
18
34
|
static create(cwd: string, settings?: Settings | null, terminalHeight?: number, modelContext?: AgentDashboardModelContext): Promise<AgentDashboard>;
|
|
19
|
-
render(width: number): string[];
|
|
35
|
+
render(width: number): readonly string[];
|
|
20
36
|
handleInput(data: string): void;
|
|
21
37
|
}
|
|
22
38
|
export {};
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agent Hub overlay component.
|
|
3
|
+
*
|
|
4
|
+
* One overlay, two views:
|
|
5
|
+
* - Table view: every registered agent except Main (Main IS the ambient
|
|
6
|
+
* chat), live from the global AgentRegistry — status, unread irc count,
|
|
7
|
+
* current/last task, last activity. Select with j/k, Enter opens a chat,
|
|
8
|
+
* `r` revives a parked agent, `x` aborts + releases one.
|
|
9
|
+
* - Chat view: per-agent transcript (incremental session-file tail, absorbed
|
|
10
|
+
* from the old session observer overlay) plus an input line. Submitting
|
|
11
|
+
* revives a parked agent, then prompts/steers it; the message lands in the
|
|
12
|
+
* agent's persisted history via the normal prompt path.
|
|
13
|
+
*
|
|
14
|
+
* Replaces the old SessionObserverOverlayComponent (ctrl+s observer).
|
|
15
|
+
*/
|
|
16
|
+
import type { AgentTool } from "@prometheus-ai/agent-core";
|
|
17
|
+
import { Container, type TUI } from "@prometheus-ai/tui";
|
|
18
|
+
import type { KeyId } from "../../config/keybindings";
|
|
19
|
+
import type { MessageRenderer } from "../../extensibility/extensions/types";
|
|
20
|
+
import { IrcBus } from "../../irc/bus";
|
|
21
|
+
import { AgentLifecycleManager } from "../../registry/agent-lifecycle";
|
|
22
|
+
import { AgentRegistry } from "../../registry/agent-registry";
|
|
23
|
+
import type { SessionObserverRegistry } from "../session-observer-registry";
|
|
24
|
+
/** Guest-side proxy for hub actions executed on the collab host. */
|
|
25
|
+
export interface AgentHubRemote {
|
|
26
|
+
chat(id: string, text: string): void;
|
|
27
|
+
kill(id: string): void;
|
|
28
|
+
revive(id: string): void;
|
|
29
|
+
/** Mirrors readFileIncremental: text from fromByte (complete JSONL lines), newSize = next fromByte base; null = unavailable. */
|
|
30
|
+
readTranscript(id: string, fromByte: number): Promise<{
|
|
31
|
+
text: string;
|
|
32
|
+
newSize: number;
|
|
33
|
+
} | null>;
|
|
34
|
+
}
|
|
35
|
+
export interface AgentHubDeps {
|
|
36
|
+
/** Progress/status snapshot source (task lifecycle + progress channels). */
|
|
37
|
+
observers: SessionObserverRegistry;
|
|
38
|
+
/** Keys that toggle the hub closed from inside (app.agents.hub + app.session.observe). */
|
|
39
|
+
hubKeys: KeyId[];
|
|
40
|
+
onDone: () => void;
|
|
41
|
+
requestRender: () => void;
|
|
42
|
+
/** Injectable for tests; defaults to the process-global registry. */
|
|
43
|
+
registry?: AgentRegistry;
|
|
44
|
+
/** Injectable for tests; defaults to the process-global lifecycle manager. */
|
|
45
|
+
lifecycle?: AgentLifecycleManager;
|
|
46
|
+
/** Injectable for tests; defaults to the process-global bus. */
|
|
47
|
+
irc?: IrcBus;
|
|
48
|
+
/** TUI handle for transcript components; tests omit it and get a render-only stub. */
|
|
49
|
+
ui?: TUI;
|
|
50
|
+
/** Tool lookup for transcript renderers (labels, custom render functions). */
|
|
51
|
+
getTool?: (name: string) => AgentTool | undefined;
|
|
52
|
+
/** Extension message renderers for custom messages in the transcript. */
|
|
53
|
+
getMessageRenderer?: (customType: string) => MessageRenderer | undefined;
|
|
54
|
+
/** Cwd used by tool renderers for path shortening; defaults to the project dir. */
|
|
55
|
+
cwd?: string;
|
|
56
|
+
/** Mirrors the main transcript's thinking-block visibility. */
|
|
57
|
+
hideThinkingBlock?: () => boolean;
|
|
58
|
+
/** Keys toggling tool output expansion (app.tools.expand). */
|
|
59
|
+
expandKeys?: KeyId[];
|
|
60
|
+
/** Focus the main view on this agent's live session (ctx.focusAgentSession). When absent (collab guest, tests), Enter opens the in-hub chat view instead. */
|
|
61
|
+
focusAgent?: (id: string) => Promise<void>;
|
|
62
|
+
/** Current main session file; used to seed parked historical subagents after restart. */
|
|
63
|
+
sessionFile?: string | null;
|
|
64
|
+
/** Collab guest: route actions/transcripts to the host instead of local sessions. */
|
|
65
|
+
remote?: AgentHubRemote;
|
|
66
|
+
}
|
|
67
|
+
export declare class AgentHubOverlayComponent extends Container {
|
|
68
|
+
#private;
|
|
69
|
+
constructor(deps: AgentHubDeps);
|
|
70
|
+
/**
|
|
71
|
+
* Whether the table view has no agents to show (every registered agent except
|
|
72
|
+
* Main, after the persisted-subagent scan in the constructor). The double-←
|
|
73
|
+
* gesture reads this to stay inert when there is nothing to open.
|
|
74
|
+
*/
|
|
75
|
+
get isEmpty(): boolean;
|
|
76
|
+
/** Tear down every subscription and timer. Called by the overlay owner on close. */
|
|
77
|
+
dispose(): void;
|
|
78
|
+
render(width: number): readonly string[];
|
|
79
|
+
handleInput(keyData: string): void;
|
|
80
|
+
/** Open the chat view for an agent id (public for table Enter and tests). */
|
|
81
|
+
openChat(id: string): void;
|
|
82
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { AssistantMessage, ImageContent
|
|
1
|
+
import type { AssistantMessage, ImageContent } from "@prometheus-ai/ai";
|
|
2
2
|
import { Container, type ImageBudget } from "@prometheus-ai/tui";
|
|
3
3
|
import type { AssistantThinkingRenderer } from "../../extensibility/extensions/types";
|
|
4
4
|
/**
|
|
@@ -19,17 +19,10 @@ export declare class AssistantMessageComponent extends Container {
|
|
|
19
19
|
*/
|
|
20
20
|
setErrorPinned(pinned: boolean): void;
|
|
21
21
|
isTranscriptBlockFinalized(): boolean;
|
|
22
|
-
|
|
23
|
-
* Assistant text/thinking streams in append-only: earlier rendered rows never
|
|
24
|
-
* re-layout, new content only grows the block at the bottom. The transcript
|
|
25
|
-
* reports this so the renderer may commit scrolled-off head rows of a long
|
|
26
|
-
* streamed reply to native scrollback instead of dropping them (see
|
|
27
|
-
* `NativeScrollbackLiveRegion#getNativeScrollbackCommitSafeEnd`). Volatile
|
|
28
|
-
* blocks (tool previews that collapse) intentionally do not implement this.
|
|
29
|
-
*/
|
|
30
|
-
isTranscriptBlockAppendOnly(): boolean;
|
|
22
|
+
getTranscriptBlockVersion(): number;
|
|
31
23
|
markTranscriptBlockFinalized(): void;
|
|
32
24
|
setToolResultImages(toolCallId: string, images: ImageContent[]): void;
|
|
33
|
-
|
|
34
|
-
|
|
25
|
+
updateContent(message: AssistantMessage, opts?: {
|
|
26
|
+
transient?: boolean;
|
|
27
|
+
}): void;
|
|
35
28
|
}
|
|
@@ -17,7 +17,7 @@ export declare class BashExecutionComponent extends Container {
|
|
|
17
17
|
output?: string;
|
|
18
18
|
truncation?: TruncationMeta;
|
|
19
19
|
}): void;
|
|
20
|
-
render(width: number): string[];
|
|
20
|
+
render(width: number): readonly string[];
|
|
21
21
|
/**
|
|
22
22
|
* Get the raw output for creating BashExecutionMessage.
|
|
23
23
|
*/
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { Container } from "@prometheus-ai/tui";
|
|
2
|
+
/**
|
|
3
|
+
* Capabilities a mounted {@link ChatBlock} may use against its host transcript.
|
|
4
|
+
* Kept minimal so blocks never reach into the full TUI/InteractiveMode surface.
|
|
5
|
+
*/
|
|
6
|
+
export interface ChatBlockHost {
|
|
7
|
+
/** Schedule a repaint of the transcript. */
|
|
8
|
+
requestRender(): void;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Lifecycle-aware transcript block — the "return a block, let the host mount it"
|
|
12
|
+
* primitive, modelled on React/Svelte component lifecycles.
|
|
13
|
+
*
|
|
14
|
+
* Producers build and return a `ChatBlock` instead of poking `chatContainer` and
|
|
15
|
+
* `ui.requestRender()` directly. The host (`ctx.present`) appends it and calls
|
|
16
|
+
* {@link mount}, which runs {@link onMount}; effects started there register
|
|
17
|
+
* teardown via {@link onCleanup}. The block repaints through {@link requestRender}
|
|
18
|
+
* — never touching the TUI — and tears down exactly once on {@link finish}
|
|
19
|
+
* (self-complete: stop the animation, keep the final frame in the transcript) or
|
|
20
|
+
* {@link dispose} (host discards it, e.g. a transcript reset).
|
|
21
|
+
*
|
|
22
|
+
* While mounted and unfinished a block reports `isTranscriptBlockFinalized() ===
|
|
23
|
+
* false` so {@link "../components/transcript-container".TranscriptContainer}
|
|
24
|
+
* keeps it in the live, repaintable region on ED3-risk terminals; after
|
|
25
|
+
* `finish()`/`dispose()` it reports `true` and freezes at its final content.
|
|
26
|
+
*/
|
|
27
|
+
export declare abstract class ChatBlock extends Container {
|
|
28
|
+
#private;
|
|
29
|
+
/**
|
|
30
|
+
* Run setup after the block is in the transcript: start timers/subscriptions
|
|
31
|
+
* and register their teardown with {@link onCleanup}. Default: no-op (a block
|
|
32
|
+
* whose content is fixed at construction needs no mount work).
|
|
33
|
+
*/
|
|
34
|
+
protected onMount(): void;
|
|
35
|
+
/**
|
|
36
|
+
* Register a teardown to run on {@link finish}/{@link dispose}, à la a
|
|
37
|
+
* `useEffect` cleanup. If the block is already disposed the cleanup runs
|
|
38
|
+
* immediately so callers never leak.
|
|
39
|
+
*/
|
|
40
|
+
protected onCleanup(cleanup: () => void): void;
|
|
41
|
+
/** Ask the host to repaint. No-op before mount or after dispose. */
|
|
42
|
+
protected requestRender(): void;
|
|
43
|
+
/** True between {@link mount} and {@link finish}/{@link dispose}. */
|
|
44
|
+
protected get active(): boolean;
|
|
45
|
+
/**
|
|
46
|
+
* Host-only: attach the host and run {@link onMount}. Idempotent — a second
|
|
47
|
+
* call (e.g. a transcript rebuild that re-presents the same instance) is a
|
|
48
|
+
* no-op.
|
|
49
|
+
*/
|
|
50
|
+
mount(host: ChatBlockHost): void;
|
|
51
|
+
/**
|
|
52
|
+
* Self-complete: stop ongoing effects and freeze the block at its current
|
|
53
|
+
* content, leaving it rendered in the transcript. Use when the operation the
|
|
54
|
+
* block represents finishes (connection resolved, download done).
|
|
55
|
+
*/
|
|
56
|
+
finish(): void;
|
|
57
|
+
/**
|
|
58
|
+
* Host-only teardown: release everything and propagate to children. Called
|
|
59
|
+
* when the host permanently discards the block (transcript reset). Idempotent.
|
|
60
|
+
*/
|
|
61
|
+
dispose(): void;
|
|
62
|
+
/** Live blocks stay repaintable; finished/disposed ones may freeze. */
|
|
63
|
+
isTranscriptBlockFinalized(): boolean;
|
|
64
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Container } from "@prometheus-ai/tui";
|
|
2
|
+
import type { CollabPromptDetails } from "../../collab/protocol";
|
|
3
|
+
import type { CustomMessage } from "../../session/messages";
|
|
4
|
+
/**
|
|
5
|
+
* Renders a collab guest prompt on every participant's transcript: a
|
|
6
|
+
* user-message-styled bubble prefixed with the author's name.
|
|
7
|
+
*/
|
|
8
|
+
export declare class CollabPromptMessageComponent extends Container {
|
|
9
|
+
constructor(message: CustomMessage<CollabPromptDetails>);
|
|
10
|
+
}
|
|
@@ -1,13 +1,33 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import type { CompactionSummaryMessage } from "../../session/messages";
|
|
1
|
+
import { type Component } from "@prometheus-ai/tui";
|
|
2
|
+
import type { CompactionSummaryMessage, CustomMessage } from "../../session/messages";
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
5
|
-
*
|
|
4
|
+
* Compaction point in the transcript, rendered as a slim horizontal divider:
|
|
5
|
+
*
|
|
6
|
+
* ──────── 📷 compacted · ctrl+o ────────
|
|
7
|
+
*
|
|
8
|
+
* The conversation above the divider stays visible (display transcript keeps
|
|
9
|
+
* full history); only the LLM context was reset. Expanding (ctrl+o) reveals
|
|
10
|
+
* the compaction summary below the divider.
|
|
6
11
|
*/
|
|
7
|
-
export declare class CompactionSummaryMessageComponent
|
|
12
|
+
export declare class CompactionSummaryMessageComponent implements Component {
|
|
8
13
|
#private;
|
|
9
14
|
private readonly message;
|
|
10
15
|
constructor(message: CompactionSummaryMessage);
|
|
11
16
|
setExpanded(expanded: boolean): void;
|
|
12
17
|
invalidate(): void;
|
|
18
|
+
render(width: number): readonly string[];
|
|
13
19
|
}
|
|
20
|
+
/**
|
|
21
|
+
* Handoff is a compaction strategy too, but it is persisted as a custom message
|
|
22
|
+
* so the LLM sees the handoff-specific developer context. Render it with the
|
|
23
|
+
* same divider affordance as `/compact` instead of the generic `[handoff]` box.
|
|
24
|
+
*/
|
|
25
|
+
export declare class HandoffSummaryMessageComponent implements Component {
|
|
26
|
+
#private;
|
|
27
|
+
private readonly message;
|
|
28
|
+
constructor(message: CustomMessage<unknown>);
|
|
29
|
+
setExpanded(expanded: boolean): void;
|
|
30
|
+
invalidate(): void;
|
|
31
|
+
render(width: number): readonly string[];
|
|
32
|
+
}
|
|
33
|
+
export declare function createHandoffSummaryMessageComponent(message: CustomMessage<unknown>, expanded: boolean): HandoffSummaryMessageComponent | undefined;
|
|
@@ -18,5 +18,5 @@ export declare class CopySelectorComponent implements Component {
|
|
|
18
18
|
constructor(roots: CopyTarget[], callbacks: CopySelectorCallbacks);
|
|
19
19
|
invalidate(): void;
|
|
20
20
|
handleInput(keyData: string): void;
|
|
21
|
-
render(width: number): string[];
|
|
21
|
+
render(width: number): readonly string[];
|
|
22
22
|
}
|
|
@@ -1,16 +1,50 @@
|
|
|
1
1
|
import { Editor, type KeyId } from "@prometheus-ai/tui";
|
|
2
2
|
import type { AppKeybinding } from "../../config/keybindings";
|
|
3
3
|
type ConfigurableEditorAction = Extract<AppKeybinding, "app.interrupt" | "app.clear" | "app.exit" | "app.suspend" | "app.display.reset" | "app.thinking.cycle" | "app.model.cycleForward" | "app.model.cycleBackward" | "app.model.select" | "app.model.selectTemporary" | "app.tools.expand" | "app.thinking.toggle" | "app.editor.external" | "app.history.search" | "app.message.dequeue" | "app.clipboard.pasteImage" | "app.clipboard.pasteTextRaw" | "app.clipboard.copyPrompt">;
|
|
4
|
+
/** Plain spaces from one auto-repeat run that trigger the space-hold push-to-talk STT gesture.
|
|
5
|
+
* Holding the space bar makes the terminal emit a burst of spaces; once more than this many land
|
|
6
|
+
* in the editor we treat it as "space held", track them back out, and start recording. */
|
|
7
|
+
export declare const SPACE_HOLD_THRESHOLD = 5;
|
|
8
|
+
/** Idle gap (ms) after the last repeated space that counts as the space bar being released, ending
|
|
9
|
+
* the push-to-talk recording. Must comfortably exceed the OS key-repeat interval. */
|
|
10
|
+
export declare const SPACE_HOLD_RELEASE_MS = 250;
|
|
11
|
+
export declare function extractBracketedImagePastePaths(data: string): string[] | undefined;
|
|
12
|
+
export declare function extractBracketedImagePastePath(data: string): string | undefined;
|
|
4
13
|
/**
|
|
5
14
|
* Custom editor that handles configurable app-level shortcuts for coding-agent.
|
|
6
15
|
*/
|
|
7
16
|
export declare class CustomEditor extends Editor {
|
|
8
17
|
#private;
|
|
9
18
|
imageLinks?: readonly (string | undefined)[];
|
|
10
|
-
/**
|
|
19
|
+
/** Treat image/paste markers as indivisible: a stray backspace deletes the whole token
|
|
20
|
+
* instead of corrupting `[Paste #1, +30 lines]` into plain text. */
|
|
21
|
+
atomicTokenPattern: RegExp;
|
|
22
|
+
/** Magic-keyword shimmer cadence — drives one editor repaint every 70 ms while
|
|
23
|
+
* a keyword is on screen and the prompt is focused. ~14 frames/s is smooth
|
|
24
|
+
* without flooding the renderer. */
|
|
25
|
+
static readonly SHIMMER_FRAME_MS = 70;
|
|
26
|
+
/** Time for the gradient to sweep one full cycle across each keyword. */
|
|
27
|
+
static readonly SHIMMER_PERIOD_MS = 1800;
|
|
28
|
+
/** Gradient-highlight the "ultrathink" / "orchestrate" / "workflowz" keywords as the user types
|
|
11
29
|
* them, skipping any occurrence inside code spans, fenced blocks, or XML sections. Also make
|
|
12
|
-
* pasted image placeholders visually distinct and hyperlink them once their blob file exists.
|
|
30
|
+
* pasted image placeholders visually distinct and hyperlink them once their blob file exists.
|
|
31
|
+
* When the editor is focused, the buffer contains a magic keyword, and `magicKeywords.enabled`
|
|
32
|
+
* is on, the gradient shifts every frame to produce a Claude-Code-style shimmer; each render
|
|
33
|
+
* schedules the next frame, so losing focus, deleting the keyword, or flipping the setting
|
|
34
|
+
* stops the animation on its own. The static glow itself runs even when shimmering is gated
|
|
35
|
+
* off, matching existing behavior for the editor and sent bubbles. */
|
|
13
36
|
decorateText: (text: string) => string;
|
|
37
|
+
/** Optional test/host override for the magic-keyword shimmer gate. When
|
|
38
|
+
* defined, takes precedence over the global `magicKeywords.enabled` setting,
|
|
39
|
+
* letting tests assert the gating behaviour without mutating the
|
|
40
|
+
* process-wide Settings singleton (which races with parallel test files —
|
|
41
|
+
* see issue #2582). Production wires this through the host's Settings
|
|
42
|
+
* reader and updates it on the relevant setting change. */
|
|
43
|
+
magicKeywordsEnabledOverride: boolean | undefined;
|
|
44
|
+
/** Bind the host's render request callback. Idempotent — the host wires this
|
|
45
|
+
* once after construction (and again after `setEditorComponent` swaps the
|
|
46
|
+
* editor). Passing `undefined` clears any pending frame. */
|
|
47
|
+
setShimmerRepaintHandler(handler: (() => void) | undefined): void;
|
|
14
48
|
onEscape?: () => void;
|
|
15
49
|
onClear?: () => void;
|
|
16
50
|
onExit?: () => void;
|
|
@@ -29,12 +63,25 @@ export declare class CustomEditor extends Editor {
|
|
|
29
63
|
onCopyPrompt?: () => void;
|
|
30
64
|
/** Called when the configured image-paste shortcut is pressed. */
|
|
31
65
|
onPasteImage?: () => Promise<boolean>;
|
|
66
|
+
/** Called when a bracketed paste contains one or more image-file paths. */
|
|
67
|
+
onPasteImagePath?: (path: string) => void | Promise<void>;
|
|
32
68
|
/** Called when the configured raw text-paste shortcut is pressed. */
|
|
33
69
|
onPasteTextRaw?: () => void;
|
|
34
70
|
/** Called when the configured dequeue shortcut is pressed. */
|
|
35
71
|
onDequeue?: () => void;
|
|
36
72
|
/** Called when Caps Lock is pressed. */
|
|
37
73
|
onCapsLock?: () => void;
|
|
74
|
+
/** Called when left-arrow is pressed while the editor is empty (cursor necessarily at start). */
|
|
75
|
+
onLeftAtStart?: () => void;
|
|
76
|
+
/** Fired when a sustained space-bar hold is recognized — the push-to-talk STT start. The
|
|
77
|
+
* optimistically-typed spaces have already been deleted by the time this runs. */
|
|
78
|
+
onSpaceHoldStart?: () => void;
|
|
79
|
+
/** Fired when the held space bar is released (detected as an idle gap with no further repeated
|
|
80
|
+
* spaces) — the push-to-talk STT stop. */
|
|
81
|
+
onSpaceHoldEnd?: () => void;
|
|
82
|
+
/** Gate for the space-hold gesture. Returns false to keep the space bar inserting spaces
|
|
83
|
+
* normally; wired to `stt.enabled` so disabling STT restores plain space behavior. */
|
|
84
|
+
sttHoldEnabled?: () => boolean;
|
|
38
85
|
setActionKeys(action: ConfigurableEditorAction, keys: KeyId[]): void;
|
|
39
86
|
/**
|
|
40
87
|
* Register a custom key handler. Extensions use this for shortcuts.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -22,6 +22,6 @@ export declare class ExtensionDashboard extends Container {
|
|
|
22
22
|
onRequestRender?: () => void;
|
|
23
23
|
private constructor();
|
|
24
24
|
static create(cwd: string, settings?: Settings | null, terminalHeight?: number): Promise<ExtensionDashboard>;
|
|
25
|
-
render(width: number): string[];
|
|
25
|
+
render(width: number): readonly string[];
|
|
26
26
|
handleInput(data: string): void;
|
|
27
27
|
}
|
|
@@ -34,6 +34,6 @@ export declare class ExtensionList implements Component {
|
|
|
34
34
|
setSearchQuery(query: string): void;
|
|
35
35
|
clearSearch(): void;
|
|
36
36
|
invalidate(): void;
|
|
37
|
-
render(width: number): string[];
|
|
37
|
+
render(width: number): readonly string[];
|
|
38
38
|
handleInput(data: string): void;
|
|
39
39
|
}
|
|
@@ -15,4 +15,9 @@ export declare class HookEditorComponent extends Container {
|
|
|
15
15
|
#private;
|
|
16
16
|
constructor(tui: TUI, title: string, prefill: string | undefined, onSubmit: (value: string) => void, onCancel: () => void, options?: HookEditorOptions);
|
|
17
17
|
handleInput(keyData: string): void;
|
|
18
|
+
/** Route non-bracketed paste transports (e.g. kitty's OSC 5522 enhanced clipboard)
|
|
19
|
+
* into the inner editor, mirroring bracketed-paste semantics. Without this hook,
|
|
20
|
+
* enhanced-paste routing falls back to the main prompt editor hidden behind the
|
|
21
|
+
* dialog (#2127 routing contract). */
|
|
22
|
+
pasteText(text: string): void;
|
|
18
23
|
}
|
|
@@ -11,5 +11,9 @@ export declare class HookInputComponent extends Container {
|
|
|
11
11
|
#private;
|
|
12
12
|
constructor(title: string, _placeholder: string | undefined, onSubmit: (value: string) => void, onCancel: () => void, opts?: HookInputOptions);
|
|
13
13
|
handleInput(keyData: string): void;
|
|
14
|
+
/** Route non-bracketed paste transports (e.g. kitty's OSC 5522 enhanced clipboard)
|
|
15
|
+
* into the inner input, mirroring bracketed-paste semantics. Pasting counts as
|
|
16
|
+
* interaction, so the timeout countdown resets like any keystroke. */
|
|
17
|
+
pasteText(text: string): void;
|
|
14
18
|
dispose(): void;
|
|
15
19
|
}
|