@oh-my-pi/pi-coding-agent 15.1.1 → 15.1.3
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 +54 -0
- package/dist/types/async/index.d.ts +2 -0
- package/dist/types/async/job-manager.d.ts +87 -0
- package/dist/types/async/support.d.ts +2 -0
- package/dist/types/autoresearch/dashboard.d.ts +4 -0
- package/dist/types/autoresearch/git.d.ts +36 -0
- package/dist/types/autoresearch/helpers.d.ts +24 -0
- package/dist/types/autoresearch/index.d.ts +2 -0
- package/dist/types/autoresearch/state.d.ts +17 -0
- package/dist/types/autoresearch/storage.d.ts +142 -0
- package/dist/types/autoresearch/tools/init-experiment.d.ts +31 -0
- package/dist/types/autoresearch/tools/log-experiment.d.ts +23 -0
- package/dist/types/autoresearch/tools/run-experiment.d.ts +8 -0
- package/dist/types/autoresearch/tools/update-notes.d.ts +12 -0
- package/dist/types/autoresearch/types.d.ts +154 -0
- package/dist/types/capability/context-file.d.ts +17 -0
- package/dist/types/capability/extension-module.d.ts +15 -0
- package/dist/types/capability/extension.d.ts +28 -0
- package/dist/types/capability/fs.d.ts +20 -0
- package/dist/types/capability/hook.d.ts +19 -0
- package/dist/types/capability/index.d.ts +80 -0
- package/dist/types/capability/instruction.d.ts +17 -0
- package/dist/types/capability/mcp.d.ts +45 -0
- package/dist/types/capability/prompt.d.ts +15 -0
- package/dist/types/capability/rule.d.ts +61 -0
- package/dist/types/capability/settings.d.ts +15 -0
- package/dist/types/capability/skill.d.ts +36 -0
- package/dist/types/capability/slash-command.d.ts +17 -0
- package/dist/types/capability/ssh.d.ts +23 -0
- package/dist/types/capability/system-prompt.d.ts +15 -0
- package/dist/types/capability/tool.d.ts +19 -0
- package/dist/types/capability/types.d.ts +154 -0
- package/dist/types/cli/agents-cli.d.ts +12 -0
- package/dist/types/cli/args.d.ts +52 -0
- package/dist/types/cli/auth-broker-cli.d.ts +25 -0
- package/dist/types/cli/auth-gateway-cli.d.ts +18 -0
- package/dist/types/cli/classify-install-target.d.ts +18 -0
- package/dist/types/cli/commands/init-xdg.d.ts +1 -0
- package/dist/types/cli/config-cli.d.ts +22 -0
- package/dist/types/cli/file-processor.d.ts +11 -0
- package/dist/types/cli/grep-cli.d.ts +17 -0
- package/dist/types/cli/grievances-cli.d.ts +37 -0
- package/dist/types/cli/initial-message.d.ts +17 -0
- package/dist/types/cli/list-models.d.ts +30 -0
- package/dist/types/cli/plugin-cli.d.ts +32 -0
- package/dist/types/cli/read-cli.d.ts +4 -0
- package/dist/types/cli/session-picker.d.ts +3 -0
- package/dist/types/cli/setup-cli.d.ts +24 -0
- package/dist/types/cli/shell-cli.d.ts +8 -0
- package/dist/types/cli/ssh-cli.d.ts +21 -0
- package/dist/types/cli/stats-cli.d.ts +17 -0
- package/dist/types/cli/update-cli.d.ts +20 -0
- package/dist/types/cli/web-search-cli.d.ts +20 -0
- package/dist/types/cli.d.ts +3 -0
- package/dist/types/commands/acp.d.ts +12 -0
- package/dist/types/commands/agents.d.ts +34 -0
- package/dist/types/commands/auth-broker.d.ts +54 -0
- package/dist/types/commands/auth-gateway.d.ts +32 -0
- package/dist/types/commands/commit.d.ts +27 -0
- package/dist/types/commands/config.d.ts +30 -0
- package/dist/types/commands/grep.d.ts +42 -0
- package/dist/types/commands/grievances.d.ts +40 -0
- package/dist/types/commands/launch.d.ts +118 -0
- package/dist/types/commands/plugin.d.ts +52 -0
- package/dist/types/commands/read.d.ts +15 -0
- package/dist/types/commands/setup.d.ts +25 -0
- package/dist/types/commands/shell.d.ts +21 -0
- package/dist/types/commands/ssh.d.ts +48 -0
- package/dist/types/commands/stats.d.ts +25 -0
- package/dist/types/commands/update.d.ts +20 -0
- package/dist/types/commands/web-search.d.ts +33 -0
- package/dist/types/commit/agentic/agent.d.ts +31 -0
- package/dist/types/commit/agentic/fallback.d.ts +5 -0
- package/dist/types/commit/agentic/index.d.ts +2 -0
- package/dist/types/commit/agentic/state.d.ts +58 -0
- package/dist/types/commit/agentic/tools/analyze-file.d.ts +19 -0
- package/dist/types/commit/agentic/tools/git-file-diff.d.ts +10 -0
- package/dist/types/commit/agentic/tools/git-hunk.d.ts +9 -0
- package/dist/types/commit/agentic/tools/git-overview.d.ts +9 -0
- package/dist/types/commit/agentic/tools/index.d.ts +16 -0
- package/dist/types/commit/agentic/tools/propose-changelog.d.ts +28 -0
- package/dist/types/commit/agentic/tools/propose-commit.d.ts +36 -0
- package/dist/types/commit/agentic/tools/recent-commits.d.ts +7 -0
- package/dist/types/commit/agentic/tools/schemas.d.ts +27 -0
- package/dist/types/commit/agentic/tools/split-commit.d.ts +53 -0
- package/dist/types/commit/agentic/topo-sort.d.ts +4 -0
- package/dist/types/commit/agentic/trivial.d.ts +7 -0
- package/dist/types/commit/agentic/validation.d.ts +20 -0
- package/dist/types/commit/analysis/conventional.d.ts +22 -0
- package/dist/types/commit/analysis/index.d.ts +4 -0
- package/dist/types/commit/analysis/scope.d.ts +6 -0
- package/dist/types/commit/analysis/summary.d.ts +19 -0
- package/dist/types/commit/analysis/validation.d.ts +8 -0
- package/dist/types/commit/changelog/detect.d.ts +2 -0
- package/dist/types/commit/changelog/generate.d.ts +30 -0
- package/dist/types/commit/changelog/index.d.ts +30 -0
- package/dist/types/commit/changelog/parse.d.ts +2 -0
- package/dist/types/commit/cli.d.ts +3 -0
- package/dist/types/commit/git/diff.d.ts +5 -0
- package/dist/types/commit/index.d.ts +4 -0
- package/dist/types/commit/map-reduce/index.d.ts +28 -0
- package/dist/types/commit/map-reduce/map-phase.d.ts +17 -0
- package/dist/types/commit/map-reduce/reduce-phase.d.ts +13 -0
- package/dist/types/commit/map-reduce/utils.d.ts +2 -0
- package/dist/types/commit/message.d.ts +2 -0
- package/dist/types/commit/model-selection.d.ts +15 -0
- package/dist/types/commit/pipeline.d.ts +5 -0
- package/dist/types/commit/shared-llm.d.ts +54 -0
- package/dist/types/commit/types.d.ts +78 -0
- package/dist/types/commit/utils/exclusions.d.ts +4 -0
- package/dist/types/commit/utils.d.ts +20 -0
- package/dist/types/config/config-file.d.ts +58 -0
- package/dist/types/config/file-lock.d.ts +6 -0
- package/dist/types/config/keybindings.d.ts +334 -0
- package/dist/types/config/model-equivalence.d.ts +24 -0
- package/dist/types/config/model-registry.d.ts +363 -0
- package/dist/types/config/model-resolver.d.ts +230 -0
- package/dist/types/config/models-config-schema.d.ts +503 -0
- package/dist/types/config/prompt-templates.d.ts +32 -0
- package/dist/types/config/resolve-config-value.d.ts +17 -0
- package/dist/types/config/settings-schema.d.ts +3361 -0
- package/dist/types/config/settings.d.ts +126 -0
- package/dist/types/config.d.ts +66 -0
- package/dist/types/cursor.d.ts +22 -0
- package/dist/types/dap/client.d.ts +38 -0
- package/dist/types/dap/config.d.ts +6 -0
- package/dist/types/dap/index.d.ts +4 -0
- package/dist/types/dap/session.d.ts +108 -0
- package/dist/types/dap/types.d.ts +524 -0
- package/dist/types/debug/index.d.ts +15 -0
- package/dist/types/debug/log-formatting.d.ts +4 -0
- package/dist/types/debug/log-viewer.d.ts +68 -0
- package/dist/types/debug/profiler.d.ts +24 -0
- package/dist/types/debug/raw-sse-buffer.d.ts +44 -0
- package/dist/types/debug/raw-sse.d.ts +16 -0
- package/dist/types/debug/report-bundle.d.ts +55 -0
- package/dist/types/debug/system-info.d.ts +26 -0
- package/dist/types/discovery/agents-md.d.ts +1 -0
- package/dist/types/discovery/agents.d.ts +12 -0
- package/dist/types/discovery/builtin.d.ts +1 -0
- package/dist/types/discovery/claude-plugins.d.ts +1 -0
- package/dist/types/discovery/claude.d.ts +1 -0
- package/dist/types/discovery/cline.d.ts +1 -0
- package/dist/types/discovery/codex.d.ts +1 -0
- package/dist/types/discovery/cursor.d.ts +16 -0
- package/dist/types/discovery/gemini.d.ts +1 -0
- package/dist/types/discovery/github.d.ts +1 -0
- package/dist/types/discovery/helpers.d.ts +267 -0
- package/dist/types/discovery/index.d.ts +51 -0
- package/dist/types/discovery/mcp-json.d.ts +1 -0
- package/dist/types/discovery/opencode.d.ts +1 -0
- package/dist/types/discovery/plugin-dir-roots.d.ts +15 -0
- package/dist/types/discovery/ssh.d.ts +1 -0
- package/dist/types/discovery/substitute-plugin-root.d.ts +5 -0
- package/dist/types/discovery/vscode.d.ts +1 -0
- package/dist/types/discovery/windsurf.d.ts +13 -0
- package/dist/types/edit/apply-patch/index.d.ts +35 -0
- package/dist/types/edit/apply-patch/parser.d.ts +34 -0
- package/dist/types/edit/diff.d.ts +59 -0
- package/dist/types/edit/file-read-cache.d.ts +25 -0
- package/dist/types/edit/index.d.ts +58 -0
- package/dist/types/edit/modes/apply-patch.d.ts +24 -0
- package/dist/types/edit/modes/patch.d.ts +99 -0
- package/dist/types/edit/modes/replace.d.ts +142 -0
- package/dist/types/edit/normalize.d.ts +43 -0
- package/dist/types/edit/notebook.d.ts +23 -0
- package/dist/types/edit/read-file.d.ts +2 -0
- package/dist/types/edit/renderer.d.ts +110 -0
- package/dist/types/edit/streaming.d.ts +59 -0
- package/dist/types/eval/backend.d.ts +40 -0
- package/dist/types/eval/index.d.ts +4 -0
- package/dist/types/eval/js/context-manager.d.ts +24 -0
- package/dist/types/eval/js/executor.d.ts +28 -0
- package/dist/types/eval/js/index.d.ts +10 -0
- package/dist/types/eval/js/shared/helpers.d.ts +38 -0
- package/dist/types/eval/js/shared/indirect-eval.d.ts +14 -0
- package/dist/types/eval/js/shared/prelude.d.ts +1 -0
- package/dist/types/eval/js/shared/rewrite-imports.d.ts +6 -0
- package/dist/types/eval/js/shared/runtime.d.ts +47 -0
- package/dist/types/eval/js/shared/types.d.ts +24 -0
- package/dist/types/eval/js/tool-bridge.d.ts +18 -0
- package/dist/types/eval/js/worker-core.d.ts +5 -0
- package/dist/types/eval/js/worker-entry.d.ts +1 -0
- package/dist/types/eval/js/worker-protocol.d.ts +77 -0
- package/dist/types/eval/py/display.d.ts +25 -0
- package/dist/types/eval/py/executor.d.ts +83 -0
- package/dist/types/eval/py/index.d.ts +10 -0
- package/dist/types/eval/py/kernel.d.ts +55 -0
- package/dist/types/eval/py/prelude.d.ts +1 -0
- package/dist/types/eval/py/runtime.d.ts +21 -0
- package/dist/types/eval/py/tool-bridge.d.ts +20 -0
- package/dist/types/eval/types.d.ts +52 -0
- package/dist/types/exa/factory.d.ts +13 -0
- package/dist/types/exa/index.d.ts +20 -0
- package/dist/types/exa/mcp-client.d.ts +45 -0
- package/dist/types/exa/render.d.ts +19 -0
- package/dist/types/exa/researcher.d.ts +9 -0
- package/dist/types/exa/search.d.ts +9 -0
- package/dist/types/exa/types.d.ts +155 -0
- package/dist/types/exa/websets.d.ts +9 -0
- package/dist/types/exec/bash-executor.d.ts +41 -0
- package/dist/types/exec/exec.d.ts +25 -0
- package/dist/types/exec/idle-timeout-watchdog.d.ts +18 -0
- package/dist/types/exec/non-interactive-env.d.ts +1 -0
- package/dist/types/export/custom-share.d.ts +20 -0
- package/dist/types/export/html/index.d.ts +10 -0
- package/dist/types/export/html/template.generated.d.ts +1 -0
- package/dist/types/export/html/template.macro.d.ts +5 -0
- package/dist/types/export/ttsr.d.ts +44 -0
- package/dist/types/extensibility/custom-commands/bundled/ci-green/index.d.ts +9 -0
- package/dist/types/extensibility/custom-commands/bundled/review/index.d.ts +10 -0
- package/dist/types/extensibility/custom-commands/index.d.ts +2 -0
- package/dist/types/extensibility/custom-commands/loader.d.ts +29 -0
- package/dist/types/extensibility/custom-commands/types.d.ts +106 -0
- package/dist/types/extensibility/custom-tools/index.d.ts +6 -0
- package/dist/types/extensibility/custom-tools/loader.d.ts +69 -0
- package/dist/types/extensibility/custom-tools/types.d.ts +226 -0
- package/dist/types/extensibility/custom-tools/wrapper.d.ts +23 -0
- package/dist/types/extensibility/extensions/compact-handler.d.ts +26 -0
- package/dist/types/extensibility/extensions/get-commands-handler.d.ts +29 -0
- package/dist/types/extensibility/extensions/index.d.ts +8 -0
- package/dist/types/extensibility/extensions/loader.d.ts +43 -0
- package/dist/types/extensibility/extensions/runner.d.ts +134 -0
- package/dist/types/extensibility/extensions/types.d.ts +864 -0
- package/dist/types/extensibility/extensions/wrapper.d.ts +54 -0
- package/dist/types/extensibility/hooks/index.d.ts +5 -0
- package/dist/types/extensibility/hooks/loader.d.ts +89 -0
- package/dist/types/extensibility/hooks/runner.d.ts +126 -0
- package/dist/types/extensibility/hooks/tool-wrapper.d.ts +25 -0
- package/dist/types/extensibility/hooks/types.d.ts +431 -0
- package/dist/types/extensibility/plugins/doctor.d.ts +3 -0
- package/dist/types/extensibility/plugins/git-url.d.ts +34 -0
- package/dist/types/extensibility/plugins/index.d.ts +7 -0
- package/dist/types/extensibility/plugins/installer.d.ts +5 -0
- package/dist/types/extensibility/plugins/legacy-pi-compat.d.ts +2 -0
- package/dist/types/extensibility/plugins/loader.d.ts +31 -0
- package/dist/types/extensibility/plugins/manager.d.ts +65 -0
- package/dist/types/extensibility/plugins/marketplace/cache.d.ts +41 -0
- package/dist/types/extensibility/plugins/marketplace/fetcher.d.ts +48 -0
- package/dist/types/extensibility/plugins/marketplace/index.d.ts +6 -0
- package/dist/types/extensibility/plugins/marketplace/manager.d.ts +57 -0
- package/dist/types/extensibility/plugins/marketplace/registry.d.ts +34 -0
- package/dist/types/extensibility/plugins/marketplace/source-resolver.d.ts +28 -0
- package/dist/types/extensibility/plugins/marketplace/types.d.ts +130 -0
- package/dist/types/extensibility/plugins/parser.d.ts +52 -0
- package/dist/types/extensibility/plugins/types.d.ts +149 -0
- package/dist/types/extensibility/shared-events.d.ts +279 -0
- package/dist/types/extensibility/skills.d.ts +57 -0
- package/dist/types/extensibility/slash-commands.d.ts +48 -0
- package/dist/types/extensibility/tool-proxy.d.ts +4 -0
- package/dist/types/extensibility/typebox.d.ts +155 -0
- package/dist/types/extensibility/utils.d.ts +12 -0
- package/dist/types/goals/index.d.ts +3 -0
- package/dist/types/goals/runtime.d.ts +63 -0
- package/dist/types/goals/state.d.ts +35 -0
- package/dist/types/goals/tools/goal-tool.d.ts +62 -0
- package/dist/types/hashline/anchors.d.ts +20 -0
- package/dist/types/hashline/apply.d.ts +14 -0
- package/dist/types/hashline/constants.d.ts +21 -0
- package/dist/types/hashline/diff-preview.d.ts +2 -0
- package/dist/types/hashline/diff.d.ts +17 -0
- package/dist/types/hashline/execute.d.ts +4 -0
- package/dist/types/hashline/hash.d.ts +149 -0
- package/dist/types/hashline/index.d.ts +13 -0
- package/dist/types/hashline/input.d.ts +11 -0
- package/dist/types/hashline/parser.d.ts +7 -0
- package/dist/types/hashline/prefixes.d.ts +7 -0
- package/dist/types/hashline/recovery.d.ts +22 -0
- package/dist/types/hashline/stream.d.ts +2 -0
- package/dist/types/hashline/types.d.ts +77 -0
- package/dist/types/hindsight/backend.d.ts +13 -0
- package/dist/types/hindsight/bank.d.ts +54 -0
- package/dist/types/hindsight/client.d.ts +224 -0
- package/dist/types/hindsight/config.d.ts +51 -0
- package/dist/types/hindsight/content.d.ts +70 -0
- package/dist/types/hindsight/index.d.ts +8 -0
- package/dist/types/hindsight/mental-models.d.ts +125 -0
- package/dist/types/hindsight/state.d.ts +99 -0
- package/dist/types/hindsight/transcript.d.ts +28 -0
- package/dist/types/index.d.ts +33 -0
- package/dist/types/internal-urls/agent-protocol.d.ts +12 -0
- package/dist/types/internal-urls/artifact-protocol.d.ts +6 -0
- package/dist/types/internal-urls/docs-index.generated.d.ts +2 -0
- package/dist/types/internal-urls/index.d.ts +22 -0
- package/dist/types/internal-urls/issue-pr-protocol.d.ts +17 -0
- package/dist/types/internal-urls/json-query.d.ts +30 -0
- package/dist/types/internal-urls/local-protocol.d.ts +39 -0
- package/dist/types/internal-urls/mcp-protocol.d.ts +12 -0
- package/dist/types/internal-urls/memory-protocol.d.ts +17 -0
- package/dist/types/internal-urls/omp-protocol.d.ts +12 -0
- package/dist/types/internal-urls/parse.d.ts +19 -0
- package/dist/types/internal-urls/registry-helpers.d.ts +10 -0
- package/dist/types/internal-urls/router.d.ts +14 -0
- package/dist/types/internal-urls/rule-protocol.d.ts +6 -0
- package/dist/types/internal-urls/skill-protocol.d.ts +13 -0
- package/dist/types/internal-urls/types.d.ts +105 -0
- package/dist/types/lsp/client.d.ts +65 -0
- package/dist/types/lsp/clients/biome-client.d.ts +16 -0
- package/dist/types/lsp/clients/index.d.ts +19 -0
- package/dist/types/lsp/clients/lsp-linter-client.d.ts +16 -0
- package/dist/types/lsp/clients/swiftlint-client.d.ts +20 -0
- package/dist/types/lsp/config.d.ts +65 -0
- package/dist/types/lsp/edits.d.ts +16 -0
- package/dist/types/lsp/index.d.ts +130 -0
- package/dist/types/lsp/lspmux.d.ts +58 -0
- package/dist/types/lsp/render.d.ts +32 -0
- package/dist/types/lsp/startup-events.d.ts +11 -0
- package/dist/types/lsp/types.d.ts +302 -0
- package/dist/types/lsp/utils.d.ts +108 -0
- package/dist/types/main.d.ts +17 -0
- package/dist/types/mcp/client.d.ts +74 -0
- package/dist/types/mcp/config-writer.d.ts +53 -0
- package/dist/types/mcp/config.d.ts +75 -0
- package/dist/types/mcp/discoverable-tool-metadata.d.ts +7 -0
- package/dist/types/mcp/index.d.ts +18 -0
- package/dist/types/mcp/json-rpc.d.ts +22 -0
- package/dist/types/mcp/loader.d.ts +43 -0
- package/dist/types/mcp/manager.d.ts +193 -0
- package/dist/types/mcp/oauth-discovery.d.ts +40 -0
- package/dist/types/mcp/oauth-flow.d.ts +59 -0
- package/dist/types/mcp/render.d.ts +25 -0
- package/dist/types/mcp/smithery-auth.d.ts +16 -0
- package/dist/types/mcp/smithery-connect.d.ts +38 -0
- package/dist/types/mcp/smithery-registry.d.ts +51 -0
- package/dist/types/mcp/tool-bridge.d.ts +86 -0
- package/dist/types/mcp/tool-cache.d.ts +8 -0
- package/dist/types/mcp/transports/http.d.ts +36 -0
- package/dist/types/mcp/transports/index.d.ts +5 -0
- package/dist/types/mcp/transports/stdio.d.ts +32 -0
- package/dist/types/mcp/types.d.ts +333 -0
- package/dist/types/memories/index.d.ts +28 -0
- package/dist/types/memories/storage.d.ts +110 -0
- package/dist/types/memory-backend/index.d.ts +4 -0
- package/dist/types/memory-backend/local-backend.d.ts +9 -0
- package/dist/types/memory-backend/off-backend.d.ts +7 -0
- package/dist/types/memory-backend/resolve.d.ts +15 -0
- package/dist/types/memory-backend/types.d.ts +61 -0
- package/dist/types/modes/acp/acp-agent.d.ts +61 -0
- package/dist/types/modes/acp/acp-client-bridge.d.ts +9 -0
- package/dist/types/modes/acp/acp-event-mapper.d.ts +20 -0
- package/dist/types/modes/acp/acp-mode.d.ts +3 -0
- package/dist/types/modes/acp/index.d.ts +2 -0
- package/dist/types/modes/acp/terminal-auth.d.ts +6 -0
- package/dist/types/modes/components/agent-dashboard.d.ts +21 -0
- package/dist/types/modes/components/assistant-message.d.ts +16 -0
- package/dist/types/modes/components/bash-execution.d.ts +29 -0
- package/dist/types/modes/components/bordered-loader.d.ts +11 -0
- package/dist/types/modes/components/branch-summary-message.d.ts +13 -0
- package/dist/types/modes/components/btw-panel.d.ts +16 -0
- package/dist/types/modes/components/compaction-summary-message.d.ts +13 -0
- package/dist/types/modes/components/countdown-timer.d.ts +14 -0
- package/dist/types/modes/components/custom-editor.d.ts +47 -0
- package/dist/types/modes/components/custom-message.d.ts +15 -0
- package/dist/types/modes/components/diff.d.ts +11 -0
- package/dist/types/modes/components/dynamic-border.d.ts +14 -0
- package/dist/types/modes/components/eval-execution.d.ts +23 -0
- package/dist/types/modes/components/execution-shared.d.ts +46 -0
- package/dist/types/modes/components/extensions/extension-dashboard.d.ts +26 -0
- package/dist/types/modes/components/extensions/extension-list.d.ts +39 -0
- package/dist/types/modes/components/extensions/index.d.ts +8 -0
- package/dist/types/modes/components/extensions/inspector-panel.d.ts +8 -0
- package/dist/types/modes/components/extensions/state-manager.d.ts +50 -0
- package/dist/types/modes/components/extensions/types.d.ts +151 -0
- package/dist/types/modes/components/footer.d.ts +30 -0
- package/dist/types/modes/components/history-search.d.ts +7 -0
- package/dist/types/modes/components/hook-editor.d.ts +18 -0
- package/dist/types/modes/components/hook-input.d.ts +15 -0
- package/dist/types/modes/components/hook-message.d.ts +15 -0
- package/dist/types/modes/components/hook-selector.d.ts +23 -0
- package/dist/types/modes/components/index.d.ts +35 -0
- package/dist/types/modes/components/keybinding-hints.d.ts +40 -0
- package/dist/types/modes/components/login-dialog.d.ts +32 -0
- package/dist/types/modes/components/mcp-add-wizard.d.ts +25 -0
- package/dist/types/modes/components/message-frame.d.ts +42 -0
- package/dist/types/modes/components/model-selector.d.ts +26 -0
- package/dist/types/modes/components/oauth-selector.d.ts +14 -0
- package/dist/types/modes/components/plugin-selector.d.ts +26 -0
- package/dist/types/modes/components/plugin-settings.d.ts +66 -0
- package/dist/types/modes/components/queue-mode-selector.d.ts +9 -0
- package/dist/types/modes/components/read-tool-group.d.ts +30 -0
- package/dist/types/modes/components/session-observer-overlay.d.ts +11 -0
- package/dist/types/modes/components/session-selector.d.ts +30 -0
- package/dist/types/modes/components/settings-defs.d.ts +50 -0
- package/dist/types/modes/components/settings-selector.d.ts +54 -0
- package/dist/types/modes/components/show-images-selector.d.ts +9 -0
- package/dist/types/modes/components/skill-message.d.ts +9 -0
- package/dist/types/modes/components/status-line/context-thresholds.d.ts +4 -0
- package/dist/types/modes/components/status-line/git-utils.d.ts +22 -0
- package/dist/types/modes/components/status-line/index.d.ts +4 -0
- package/dist/types/modes/components/status-line/presets.d.ts +3 -0
- package/dist/types/modes/components/status-line/segments.d.ts +5 -0
- package/dist/types/modes/components/status-line/separators.d.ts +3 -0
- package/dist/types/modes/components/status-line/token-rate.d.ts +10 -0
- package/dist/types/modes/components/status-line/types.d.ts +70 -0
- package/dist/types/modes/components/status-line-segment-editor.d.ts +24 -0
- package/dist/types/modes/components/status-line.d.ts +61 -0
- package/dist/types/modes/components/theme-selector.d.ts +10 -0
- package/dist/types/modes/components/thinking-selector.d.ts +10 -0
- package/dist/types/modes/components/todo-reminder.d.ts +13 -0
- package/dist/types/modes/components/tool-execution.d.ts +53 -0
- package/dist/types/modes/components/tree-selector.d.ts +31 -0
- package/dist/types/modes/components/ttsr-notification.d.ts +13 -0
- package/dist/types/modes/components/user-message-selector.d.ts +28 -0
- package/dist/types/modes/components/user-message.d.ts +8 -0
- package/dist/types/modes/components/visual-truncate.d.ts +19 -0
- package/dist/types/modes/components/welcome.d.ts +33 -0
- package/dist/types/modes/controllers/btw-controller.d.ts +10 -0
- package/dist/types/modes/controllers/command-controller-shared.d.ts +47 -0
- package/dist/types/modes/controllers/command-controller.d.ts +36 -0
- package/dist/types/modes/controllers/event-controller.d.ts +12 -0
- package/dist/types/modes/controllers/extension-ui-controller.d.ts +80 -0
- package/dist/types/modes/controllers/input-controller.d.ts +35 -0
- package/dist/types/modes/controllers/mcp-command-controller.d.ts +10 -0
- package/dist/types/modes/controllers/selector-controller.d.ts +45 -0
- package/dist/types/modes/controllers/ssh-command-controller.d.ts +10 -0
- package/dist/types/modes/controllers/todo-command-controller.d.ts +7 -0
- package/dist/types/modes/emoji-autocomplete.d.ts +16 -0
- package/dist/types/modes/index.d.ts +9 -0
- package/dist/types/modes/interactive-mode.d.ts +267 -0
- package/dist/types/modes/loop-limit.d.ts +22 -0
- package/dist/types/modes/oauth-manual-input.d.ts +8 -0
- package/dist/types/modes/print-mode.d.ts +27 -0
- package/dist/types/modes/prompt-action-autocomplete.d.ts +46 -0
- package/dist/types/modes/rpc/host-tools.d.ts +16 -0
- package/dist/types/modes/rpc/host-uris.d.ts +38 -0
- package/dist/types/modes/rpc/rpc-client.d.ts +249 -0
- package/dist/types/modes/rpc/rpc-mode.d.ts +17 -0
- package/dist/types/modes/rpc/rpc-types.d.ts +586 -0
- package/dist/types/modes/runtime-init.d.ts +21 -0
- package/dist/types/modes/session-observer-registry.d.ts +26 -0
- package/dist/types/modes/shared.d.ts +6 -0
- package/dist/types/modes/theme/defaults/index.d.ts +9436 -0
- package/dist/types/modes/theme/mermaid-cache.d.ts +9 -0
- package/dist/types/modes/theme/theme.d.ts +273 -0
- package/dist/types/modes/types.d.ts +274 -0
- package/dist/types/modes/utils/context-usage.d.ts +30 -0
- package/dist/types/modes/utils/hotkeys-markdown.d.ts +5 -0
- package/dist/types/modes/utils/keybinding-matchers.d.ts +10 -0
- package/dist/types/modes/utils/tools-markdown.d.ts +5 -0
- package/dist/types/modes/utils/ui-helpers.d.ts +49 -0
- package/dist/types/plan-mode/approved-plan.d.ts +29 -0
- package/dist/types/plan-mode/state.d.ts +6 -0
- package/dist/types/registry/agent-registry.d.ts +62 -0
- package/dist/types/sdk.d.ts +253 -0
- package/dist/types/secrets/index.d.ts +9 -0
- package/dist/types/secrets/obfuscator.d.ts +23 -0
- package/dist/types/secrets/regex.d.ts +2 -0
- package/dist/types/session/agent-session.d.ts +898 -0
- package/dist/types/session/agent-storage.d.ts +93 -0
- package/dist/types/session/artifacts.d.ts +61 -0
- package/dist/types/session/auth-broker-config.d.ts +13 -0
- package/dist/types/session/auth-storage.d.ts +6 -0
- package/dist/types/session/blob-store.d.ts +63 -0
- package/dist/types/session/client-bridge.d.ts +84 -0
- package/dist/types/session/history-storage.d.ts +16 -0
- package/dist/types/session/messages.d.ts +162 -0
- package/dist/types/session/session-dump-format.d.ts +22 -0
- package/dist/types/session/session-manager.d.ts +539 -0
- package/dist/types/session/session-storage.d.ts +82 -0
- package/dist/types/session/streaming-output.d.ts +185 -0
- package/dist/types/session/tool-choice-queue.d.ts +78 -0
- package/dist/types/slash-commands/acp-builtins.d.ts +18 -0
- package/dist/types/slash-commands/builtin-registry.d.ts +23 -0
- package/dist/types/slash-commands/helpers/context-report.d.ts +7 -0
- package/dist/types/slash-commands/helpers/format.d.ts +7 -0
- package/dist/types/slash-commands/helpers/marketplace-manager.d.ts +8 -0
- package/dist/types/slash-commands/helpers/mcp.d.ts +3 -0
- package/dist/types/slash-commands/helpers/parse.d.ts +33 -0
- package/dist/types/slash-commands/helpers/ssh.d.ts +3 -0
- package/dist/types/slash-commands/helpers/todo.d.ts +3 -0
- package/dist/types/slash-commands/helpers/usage-report.d.ts +7 -0
- package/dist/types/slash-commands/marketplace-install-parser.d.ts +33 -0
- package/dist/types/slash-commands/types.d.ts +119 -0
- package/dist/types/ssh/config-writer.d.ts +49 -0
- package/dist/types/ssh/connection-manager.d.ts +33 -0
- package/dist/types/ssh/ssh-executor.d.ts +37 -0
- package/dist/types/ssh/sshfs-mount.d.ts +6 -0
- package/dist/types/ssh/utils.d.ts +2 -0
- package/dist/types/stt/downloader.d.ts +9 -0
- package/dist/types/stt/index.d.ts +3 -0
- package/dist/types/stt/recorder.d.ts +13 -0
- package/dist/types/stt/setup.d.ts +18 -0
- package/dist/types/stt/stt-controller.d.ts +16 -0
- package/dist/types/stt/transcriber.d.ts +16 -0
- package/dist/types/system-prompt.d.ts +93 -0
- package/dist/types/task/agents.d.ts +28 -0
- package/dist/types/task/commands.d.ts +35 -0
- package/dist/types/task/discovery.d.ts +18 -0
- package/dist/types/task/executor.d.ts +106 -0
- package/dist/types/task/index.d.ts +38 -0
- package/dist/types/task/name-generator.d.ts +16 -0
- package/dist/types/task/omp-command.d.ts +7 -0
- package/dist/types/task/output-manager.d.ts +36 -0
- package/dist/types/task/parallel.d.ts +34 -0
- package/dist/types/task/render.d.ts +22 -0
- package/dist/types/task/simple-mode.d.ts +8 -0
- package/dist/types/task/subprocess-tool-registry.d.ts +72 -0
- package/dist/types/task/types.d.ts +251 -0
- package/dist/types/task/worktree.d.ts +95 -0
- package/dist/types/thinking.d.ts +30 -0
- package/dist/types/tool-discovery/tool-index.d.ts +107 -0
- package/dist/types/tools/archive-reader.d.ts +40 -0
- package/dist/types/tools/ask.d.ts +109 -0
- package/dist/types/tools/ast-edit.d.ts +72 -0
- package/dist/types/tools/ast-grep.d.ts +64 -0
- package/dist/types/tools/auto-generated-guard.d.ts +17 -0
- package/dist/types/tools/bash-command-fixup.d.ts +16 -0
- package/dist/types/tools/bash-interactive.d.ts +16 -0
- package/dist/types/tools/bash-interceptor.d.ts +24 -0
- package/dist/types/tools/bash-pty-selection.d.ts +7 -0
- package/dist/types/tools/bash-skill-urls.d.ts +31 -0
- package/dist/types/tools/bash.d.ts +130 -0
- package/dist/types/tools/browser/attach.d.ts +34 -0
- package/dist/types/tools/browser/launch.d.ts +60 -0
- package/dist/types/tools/browser/readable.d.ts +17 -0
- package/dist/types/tools/browser/registry.d.ts +42 -0
- package/dist/types/tools/browser/render.d.ts +50 -0
- package/dist/types/tools/browser/tab-protocol.d.ts +144 -0
- package/dist/types/tools/browser/tab-supervisor.d.ts +63 -0
- package/dist/types/tools/browser/tab-worker-entry.d.ts +1 -0
- package/dist/types/tools/browser/tab-worker.d.ts +19 -0
- package/dist/types/tools/browser.d.ts +114 -0
- package/dist/types/tools/calculator.d.ts +76 -0
- package/dist/types/tools/checkpoint.d.ts +63 -0
- package/dist/types/tools/conflict-detect.d.ts +205 -0
- package/dist/types/tools/context.d.ts +19 -0
- package/dist/types/tools/debug.d.ts +209 -0
- package/dist/types/tools/eval.d.ts +108 -0
- package/dist/types/tools/fetch.d.ts +61 -0
- package/dist/types/tools/file-recorder.d.ts +13 -0
- package/dist/types/tools/find.d.ts +88 -0
- package/dist/types/tools/fs-cache-invalidation.d.ts +15 -0
- package/dist/types/tools/gh-format.d.ts +6 -0
- package/dist/types/tools/gh-renderer.d.ts +25 -0
- package/dist/types/tools/gh.d.ts +356 -0
- package/dist/types/tools/github-cache.d.ts +103 -0
- package/dist/types/tools/grouped-file-output.d.ts +36 -0
- package/dist/types/tools/hindsight-recall.d.ts +23 -0
- package/dist/types/tools/hindsight-reflect.d.ts +25 -0
- package/dist/types/tools/hindsight-retain.d.ts +29 -0
- package/dist/types/tools/image-gen.d.ts +78 -0
- package/dist/types/tools/index.d.ts +244 -0
- package/dist/types/tools/inspect-image-renderer.d.ts +26 -0
- package/dist/types/tools/inspect-image.d.ts +31 -0
- package/dist/types/tools/irc.d.ts +79 -0
- package/dist/types/tools/job.d.ts +65 -0
- package/dist/types/tools/json-tree.d.ts +23 -0
- package/dist/types/tools/jtd-to-json-schema.d.ts +29 -0
- package/dist/types/tools/jtd-to-typescript.d.ts +26 -0
- package/dist/types/tools/jtd-utils.d.ts +42 -0
- package/dist/types/tools/list-limit.d.ts +12 -0
- package/dist/types/tools/match-line-format.d.ts +11 -0
- package/dist/types/tools/output-meta.d.ts +204 -0
- package/dist/types/tools/path-utils.d.ts +125 -0
- package/dist/types/tools/plan-mode-guard.d.ts +18 -0
- package/dist/types/tools/read.d.ts +85 -0
- package/dist/types/tools/recipe/index.d.ts +45 -0
- package/dist/types/tools/recipe/render.d.ts +36 -0
- package/dist/types/tools/recipe/runner.d.ts +60 -0
- package/dist/types/tools/recipe/runners/cargo.d.ts +16 -0
- package/dist/types/tools/recipe/runners/index.d.ts +2 -0
- package/dist/types/tools/recipe/runners/just.d.ts +2 -0
- package/dist/types/tools/recipe/runners/make.d.ts +2 -0
- package/dist/types/tools/recipe/runners/pkg.d.ts +2 -0
- package/dist/types/tools/recipe/runners/task.d.ts +2 -0
- package/dist/types/tools/render-mermaid.d.ts +37 -0
- package/dist/types/tools/render-utils.d.ts +148 -0
- package/dist/types/tools/renderers.d.ts +26 -0
- package/dist/types/tools/report-tool-issue.d.ts +123 -0
- package/dist/types/tools/resolve.d.ts +85 -0
- package/dist/types/tools/review.d.ts +50 -0
- package/dist/types/tools/search-tool-bm25.d.ts +65 -0
- package/dist/types/tools/search.d.ts +90 -0
- package/dist/types/tools/sqlite-reader.d.ts +93 -0
- package/dist/types/tools/ssh.d.ts +67 -0
- package/dist/types/tools/todo-write.d.ts +120 -0
- package/dist/types/tools/tool-errors.d.ts +33 -0
- package/dist/types/tools/tool-result.d.ts +30 -0
- package/dist/types/tools/tool-timeouts.d.ts +51 -0
- package/dist/types/tools/vim.d.ts +58 -0
- package/dist/types/tools/write.d.ts +59 -0
- package/dist/types/tools/yield.d.ts +25 -0
- package/dist/types/tui/code-cell.d.ts +32 -0
- package/dist/types/tui/file-list.d.ts +16 -0
- package/dist/types/tui/index.d.ts +10 -0
- package/dist/types/tui/output-block.d.ts +28 -0
- package/dist/types/tui/status-line.d.ts +18 -0
- package/dist/types/tui/tree-list.d.ts +19 -0
- package/dist/types/tui/types.d.ts +13 -0
- package/dist/types/tui/utils.d.ts +36 -0
- package/dist/types/utils/changelog.d.ts +20 -0
- package/dist/types/utils/clipboard.d.ts +20 -0
- package/dist/types/utils/command-args.d.ts +9 -0
- package/dist/types/utils/commit-message-generator.d.ts +7 -0
- package/dist/types/utils/edit-mode.d.ts +13 -0
- package/dist/types/utils/event-bus.d.ts +6 -0
- package/dist/types/utils/external-editor.d.ts +17 -0
- package/dist/types/utils/file-display-mode.d.ts +27 -0
- package/dist/types/utils/file-mentions.d.ts +11 -0
- package/dist/types/utils/git.d.ts +360 -0
- package/dist/types/utils/image-loading.d.ts +26 -0
- package/dist/types/utils/image-resize.d.ts +36 -0
- package/dist/types/utils/lang-from-path.d.ts +8 -0
- package/dist/types/utils/markit.d.ts +7 -0
- package/dist/types/utils/open.d.ts +2 -0
- package/dist/types/utils/session-color.d.ts +10 -0
- package/dist/types/utils/shell-snapshot.d.ts +5 -0
- package/dist/types/utils/sixel.d.ts +21 -0
- package/dist/types/utils/title-generator.d.ts +31 -0
- package/dist/types/utils/tool-choice.d.ts +6 -0
- package/dist/types/utils/tools-manager.d.ts +9 -0
- package/dist/types/vim/buffer.d.ts +41 -0
- package/dist/types/vim/commands.d.ts +6 -0
- package/dist/types/vim/engine.d.ts +47 -0
- package/dist/types/vim/parser.d.ts +3 -0
- package/dist/types/vim/render.d.ts +25 -0
- package/dist/types/vim/types.d.ts +182 -0
- package/dist/types/web/kagi.d.ts +21 -0
- package/dist/types/web/parallel.d.ts +57 -0
- package/dist/types/web/scrapers/artifacthub.d.ts +6 -0
- package/dist/types/web/scrapers/arxiv.d.ts +5 -0
- package/dist/types/web/scrapers/aur.d.ts +5 -0
- package/dist/types/web/scrapers/biorxiv.d.ts +5 -0
- package/dist/types/web/scrapers/bluesky.d.ts +5 -0
- package/dist/types/web/scrapers/brew.d.ts +5 -0
- package/dist/types/web/scrapers/cheatsh.d.ts +8 -0
- package/dist/types/web/scrapers/chocolatey.d.ts +5 -0
- package/dist/types/web/scrapers/choosealicense.d.ts +2 -0
- package/dist/types/web/scrapers/cisa-kev.d.ts +5 -0
- package/dist/types/web/scrapers/clojars.d.ts +5 -0
- package/dist/types/web/scrapers/coingecko.d.ts +5 -0
- package/dist/types/web/scrapers/crates-io.d.ts +5 -0
- package/dist/types/web/scrapers/crossref.d.ts +2 -0
- package/dist/types/web/scrapers/devto.d.ts +5 -0
- package/dist/types/web/scrapers/discogs.d.ts +8 -0
- package/dist/types/web/scrapers/discourse.d.ts +5 -0
- package/dist/types/web/scrapers/dockerhub.d.ts +5 -0
- package/dist/types/web/scrapers/docs-rs.d.ts +2 -0
- package/dist/types/web/scrapers/fdroid.d.ts +5 -0
- package/dist/types/web/scrapers/firefox-addons.d.ts +2 -0
- package/dist/types/web/scrapers/flathub.d.ts +2 -0
- package/dist/types/web/scrapers/github-gist.d.ts +5 -0
- package/dist/types/web/scrapers/github.d.ts +12 -0
- package/dist/types/web/scrapers/gitlab.d.ts +5 -0
- package/dist/types/web/scrapers/go-pkg.d.ts +5 -0
- package/dist/types/web/scrapers/hackage.d.ts +5 -0
- package/dist/types/web/scrapers/hackernews.d.ts +2 -0
- package/dist/types/web/scrapers/hex.d.ts +5 -0
- package/dist/types/web/scrapers/huggingface.d.ts +2 -0
- package/dist/types/web/scrapers/iacr.d.ts +5 -0
- package/dist/types/web/scrapers/index.d.ts +84 -0
- package/dist/types/web/scrapers/jetbrains-marketplace.d.ts +2 -0
- package/dist/types/web/scrapers/lemmy.d.ts +2 -0
- package/dist/types/web/scrapers/lobsters.d.ts +5 -0
- package/dist/types/web/scrapers/mastodon.d.ts +5 -0
- package/dist/types/web/scrapers/maven.d.ts +6 -0
- package/dist/types/web/scrapers/mdn.d.ts +2 -0
- package/dist/types/web/scrapers/metacpan.d.ts +5 -0
- package/dist/types/web/scrapers/musicbrainz.d.ts +5 -0
- package/dist/types/web/scrapers/npm.d.ts +5 -0
- package/dist/types/web/scrapers/nuget.d.ts +5 -0
- package/dist/types/web/scrapers/nvd.d.ts +5 -0
- package/dist/types/web/scrapers/ollama.d.ts +2 -0
- package/dist/types/web/scrapers/open-vsx.d.ts +5 -0
- package/dist/types/web/scrapers/opencorporates.d.ts +5 -0
- package/dist/types/web/scrapers/openlibrary.d.ts +5 -0
- package/dist/types/web/scrapers/orcid.d.ts +5 -0
- package/dist/types/web/scrapers/osv.d.ts +5 -0
- package/dist/types/web/scrapers/packagist.d.ts +5 -0
- package/dist/types/web/scrapers/pub-dev.d.ts +5 -0
- package/dist/types/web/scrapers/pubmed.d.ts +5 -0
- package/dist/types/web/scrapers/pypi.d.ts +5 -0
- package/dist/types/web/scrapers/rawg.d.ts +2 -0
- package/dist/types/web/scrapers/readthedocs.d.ts +2 -0
- package/dist/types/web/scrapers/reddit.d.ts +5 -0
- package/dist/types/web/scrapers/repology.d.ts +5 -0
- package/dist/types/web/scrapers/rfc.d.ts +5 -0
- package/dist/types/web/scrapers/rubygems.d.ts +5 -0
- package/dist/types/web/scrapers/searchcode.d.ts +2 -0
- package/dist/types/web/scrapers/sec-edgar.d.ts +5 -0
- package/dist/types/web/scrapers/semantic-scholar.d.ts +2 -0
- package/dist/types/web/scrapers/snapcraft.d.ts +2 -0
- package/dist/types/web/scrapers/sourcegraph.d.ts +2 -0
- package/dist/types/web/scrapers/spdx.d.ts +5 -0
- package/dist/types/web/scrapers/spotify.d.ts +8 -0
- package/dist/types/web/scrapers/stackoverflow.d.ts +6 -0
- package/dist/types/web/scrapers/terraform.d.ts +5 -0
- package/dist/types/web/scrapers/tldr.d.ts +7 -0
- package/dist/types/web/scrapers/twitter.d.ts +5 -0
- package/dist/types/web/scrapers/types.d.ts +77 -0
- package/dist/types/web/scrapers/utils.d.ts +26 -0
- package/dist/types/web/scrapers/vimeo.d.ts +5 -0
- package/dist/types/web/scrapers/vscode-marketplace.d.ts +5 -0
- package/dist/types/web/scrapers/w3c.d.ts +2 -0
- package/dist/types/web/scrapers/wikidata.d.ts +5 -0
- package/dist/types/web/scrapers/wikipedia.d.ts +5 -0
- package/dist/types/web/scrapers/youtube.d.ts +5 -0
- package/dist/types/web/search/index.d.ts +76 -0
- package/dist/types/web/search/provider.d.ts +20 -0
- package/dist/types/web/search/providers/anthropic.d.ts +27 -0
- package/dist/types/web/search/providers/base.d.ts +35 -0
- package/dist/types/web/search/providers/brave.d.ts +20 -0
- package/dist/types/web/search/providers/codex.d.ts +31 -0
- package/dist/types/web/search/providers/exa.d.ts +43 -0
- package/dist/types/web/search/providers/gemini.d.ts +60 -0
- package/dist/types/web/search/providers/jina.d.ts +25 -0
- package/dist/types/web/search/providers/kagi.d.ts +21 -0
- package/dist/types/web/search/providers/kimi.d.ts +18 -0
- package/dist/types/web/search/providers/parallel.d.ts +14 -0
- package/dist/types/web/search/providers/perplexity.d.ts +35 -0
- package/dist/types/web/search/providers/searxng.d.ts +43 -0
- package/dist/types/web/search/providers/synthetic.d.ts +24 -0
- package/dist/types/web/search/providers/tavily.d.ts +22 -0
- package/dist/types/web/search/providers/utils.d.ts +24 -0
- package/dist/types/web/search/providers/zai.d.ts +19 -0
- package/dist/types/web/search/render.d.ts +35 -0
- package/dist/types/web/search/types.d.ts +344 -0
- package/dist/types/web/search/utils.d.ts +4 -0
- package/dist/types/workspace-tree.d.ts +42 -0
- package/examples/custom-tools/README.md +3 -12
- package/examples/extensions/README.md +2 -15
- package/examples/extensions/api-demo.ts +1 -7
- package/package.json +124 -123
- package/src/autoresearch/tools/init-experiment.ts +11 -33
- package/src/autoresearch/tools/log-experiment.ts +10 -24
- package/src/autoresearch/tools/run-experiment.ts +1 -1
- package/src/autoresearch/tools/update-notes.ts +2 -9
- package/src/cli/auth-broker-cli.ts +746 -0
- package/src/cli/auth-gateway-cli.ts +342 -0
- package/src/cli/grievances-cli.ts +109 -16
- package/src/cli.ts +4 -2
- package/src/commands/auth-broker.ts +96 -0
- package/src/commands/auth-gateway.ts +61 -0
- package/src/commands/grievances.ts +13 -8
- package/src/commands/launch.ts +1 -1
- package/src/commit/agentic/agent.ts +2 -0
- package/src/commit/agentic/tools/analyze-file.ts +2 -2
- package/src/commit/agentic/tools/git-file-diff.ts +2 -2
- package/src/commit/agentic/tools/git-hunk.ts +3 -3
- package/src/commit/agentic/tools/git-overview.ts +2 -2
- package/src/commit/agentic/tools/propose-changelog.ts +1 -3
- package/src/commit/agentic/tools/recent-commits.ts +1 -1
- package/src/commit/agentic/tools/schemas.ts +1 -9
- package/src/config/mcp-schema.json +1 -1
- package/src/config/model-equivalence.ts +279 -174
- package/src/config/model-registry.ts +37 -6
- package/src/config/model-resolver.ts +13 -8
- package/src/config/models-config-schema.ts +8 -0
- package/src/config/settings-schema.ts +52 -0
- package/src/cursor.ts +1 -1
- package/src/debug/log-formatting.ts +1 -1
- package/src/debug/log-viewer.ts +1 -1
- package/src/debug/profiler.ts +4 -0
- package/src/debug/raw-sse-buffer.ts +100 -59
- package/src/debug/raw-sse.ts +1 -1
- package/src/discovery/agents.ts +15 -4
- package/src/edit/modes/apply-patch.ts +1 -5
- package/src/edit/modes/patch.ts +5 -5
- package/src/edit/modes/replace.ts +5 -5
- package/src/edit/normalize.ts +1 -1
- package/src/edit/renderer.ts +2 -1
- package/src/edit/streaming.ts +1 -1
- package/src/eval/index.ts +0 -2
- package/src/eval/js/shared/runtime.ts +25 -0
- package/src/eval/py/kernel.ts +1 -1
- package/src/exa/researcher.ts +4 -4
- package/src/exa/search.ts +10 -22
- package/src/exa/websets.ts +33 -33
- package/src/extensibility/typebox.ts +1 -1
- package/src/goals/tools/goal-tool.ts +3 -3
- package/src/hashline/index.ts +0 -1
- package/src/hashline/input.ts +8 -11
- package/src/hashline/parser.ts +6 -8
- package/src/index.ts +0 -3
- package/src/internal-urls/docs-index.generated.ts +21 -18
- package/src/internal-urls/index.ts +1 -1
- package/src/internal-urls/{pi-protocol.ts → omp-protocol.ts} +10 -10
- package/src/internal-urls/router.ts +3 -3
- package/src/internal-urls/types.ts +1 -1
- package/src/lsp/types.ts +8 -11
- package/src/main.ts +3 -0
- package/src/mcp/tool-bridge.ts +3 -3
- package/src/modes/acp/acp-agent.ts +89 -25
- package/src/modes/components/bash-execution.ts +1 -1
- package/src/modes/components/diff.ts +1 -2
- package/src/modes/components/eval-execution.ts +1 -1
- package/src/modes/components/oauth-selector.ts +38 -2
- package/src/modes/components/tool-execution.ts +1 -2
- package/src/modes/controllers/command-controller.ts +96 -34
- package/src/modes/controllers/input-controller.ts +4 -3
- package/src/modes/controllers/ssh-command-controller.ts +2 -0
- package/src/modes/data/emojis.json +1 -0
- package/src/modes/emoji-autocomplete.ts +285 -0
- package/src/modes/interactive-mode.ts +92 -19
- package/src/modes/print-mode.ts +3 -3
- package/src/modes/prompt-action-autocomplete.ts +14 -0
- package/src/modes/theme/theme-schema.json +1 -1
- package/src/plan-mode/approved-plan.ts +9 -0
- package/src/prompts/system/system-prompt.md +1 -1
- package/src/prompts/system/ttsr-tool-reminder.md +5 -0
- package/src/prompts/tools/eval.md +25 -26
- package/src/prompts/tools/hashline.md +1 -0
- package/src/prompts/tools/read.md +2 -2
- package/src/prompts/tools/resolve.md +1 -1
- package/src/prompts/tools/search.md +1 -1
- package/src/prompts/tools/web-search.md +1 -1
- package/src/sdk.ts +92 -7
- package/src/session/agent-session.ts +225 -77
- package/src/session/agent-storage.ts +7 -2
- package/src/session/auth-broker-config.ts +102 -0
- package/src/session/auth-storage.ts +7 -1
- package/src/session/streaming-output.ts +1 -1
- package/src/slash-commands/builtin-registry.ts +2 -0
- package/src/slash-commands/helpers/ssh.ts +2 -0
- package/src/ssh/connection-manager.ts +28 -7
- package/src/task/types.ts +10 -35
- package/src/tools/bash-interactive.ts +5 -2
- package/src/tools/bash-pty-selection.ts +14 -0
- package/src/tools/bash.ts +5 -4
- package/src/tools/browser.ts +12 -20
- package/src/tools/eval.ts +77 -100
- package/src/tools/gh.ts +21 -45
- package/src/tools/hindsight-recall.ts +1 -1
- package/src/tools/hindsight-reflect.ts +2 -2
- package/src/tools/hindsight-retain.ts +3 -7
- package/src/tools/index.ts +8 -1
- package/src/tools/inspect-image.ts +4 -1
- package/src/tools/irc.ts +4 -12
- package/src/tools/job.ts +3 -11
- package/src/tools/path-utils.ts +2 -2
- package/src/tools/read.ts +7 -4
- package/src/tools/report-tool-issue.ts +462 -17
- package/src/tools/resolve.ts +2 -7
- package/src/tools/search.ts +7 -0
- package/src/tools/todo-write.ts +8 -15
- package/src/tools/yield.ts +17 -5
- package/src/tui/code-cell.ts +18 -3
- package/src/utils/title-generator.ts +3 -0
- package/src/web/scrapers/searchcode.ts +1 -2
- package/src/web/search/index.ts +6 -6
- package/src/eval/eval.lark +0 -36
- package/src/eval/parse.ts +0 -407
- package/src/eval/sniff.ts +0 -28
- package/src/hashline/utils.ts +0 -3
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Minimal fetch-based client for the Hindsight HTTP API.
|
|
3
|
+
*
|
|
4
|
+
* Replaces the `@vectorize-io/hindsight-client` SDK with hand-rolled fetch
|
|
5
|
+
* calls so we depend on nothing more than the API endpoints we actually use:
|
|
6
|
+
* `retain`, `retainBatch`, `recall`, `reflect`, bank + document management,
|
|
7
|
+
* and bulk listing. Centralising construction here keeps a single seam for
|
|
8
|
+
* tests to spy on.
|
|
9
|
+
*/
|
|
10
|
+
import type { HindsightConfig } from "./config";
|
|
11
|
+
export type Budget = "low" | "mid" | "high" | string;
|
|
12
|
+
export type TagsMatch = "any" | "all" | "any_strict" | "all_strict";
|
|
13
|
+
export type UpdateMode = "replace" | "append";
|
|
14
|
+
export type ConsolidationState = "failed" | "pending" | "done";
|
|
15
|
+
export interface HindsightApiOptions {
|
|
16
|
+
baseUrl: string;
|
|
17
|
+
apiKey?: string;
|
|
18
|
+
userAgent?: string;
|
|
19
|
+
}
|
|
20
|
+
export interface RecallResult {
|
|
21
|
+
id?: string;
|
|
22
|
+
text: string;
|
|
23
|
+
type?: string | null;
|
|
24
|
+
mentioned_at?: string | null;
|
|
25
|
+
[key: string]: unknown;
|
|
26
|
+
}
|
|
27
|
+
export interface RecallResponse {
|
|
28
|
+
results: RecallResult[];
|
|
29
|
+
[key: string]: unknown;
|
|
30
|
+
}
|
|
31
|
+
export interface ReflectResponse {
|
|
32
|
+
text?: string;
|
|
33
|
+
[key: string]: unknown;
|
|
34
|
+
}
|
|
35
|
+
export interface RetainResponse {
|
|
36
|
+
[key: string]: unknown;
|
|
37
|
+
}
|
|
38
|
+
export interface BankProfileResponse {
|
|
39
|
+
[key: string]: unknown;
|
|
40
|
+
}
|
|
41
|
+
export interface ListMemoriesResponse {
|
|
42
|
+
[key: string]: unknown;
|
|
43
|
+
}
|
|
44
|
+
export interface DocumentResponse {
|
|
45
|
+
[key: string]: unknown;
|
|
46
|
+
}
|
|
47
|
+
export interface ListDocumentsResponse {
|
|
48
|
+
[key: string]: unknown;
|
|
49
|
+
}
|
|
50
|
+
/** Mirrors the shape accepted by `POST /v1/default/banks/{bank_id}/memories`. */
|
|
51
|
+
export interface MemoryItemInput {
|
|
52
|
+
content: string;
|
|
53
|
+
timestamp?: Date | string;
|
|
54
|
+
context?: string;
|
|
55
|
+
metadata?: Record<string, string>;
|
|
56
|
+
documentId?: string;
|
|
57
|
+
tags?: string[];
|
|
58
|
+
/** Scoping policy for observations derived from this item. */
|
|
59
|
+
observationScopes?: "per_tag" | "combined" | "all_combinations" | string[][];
|
|
60
|
+
/** Per-item extraction strategy override. */
|
|
61
|
+
strategy?: string;
|
|
62
|
+
updateMode?: UpdateMode;
|
|
63
|
+
}
|
|
64
|
+
export interface RetainOptions {
|
|
65
|
+
timestamp?: Date | string;
|
|
66
|
+
context?: string;
|
|
67
|
+
metadata?: Record<string, string>;
|
|
68
|
+
documentId?: string;
|
|
69
|
+
async?: boolean;
|
|
70
|
+
tags?: string[];
|
|
71
|
+
updateMode?: UpdateMode;
|
|
72
|
+
}
|
|
73
|
+
export interface RetainBatchOptions {
|
|
74
|
+
/** Document id applied to every item that doesn't carry its own. */
|
|
75
|
+
documentId?: string;
|
|
76
|
+
/** Tags attached to the resulting document(s), not individual items. */
|
|
77
|
+
documentTags?: string[];
|
|
78
|
+
async?: boolean;
|
|
79
|
+
}
|
|
80
|
+
export interface RecallOptions {
|
|
81
|
+
types?: string[];
|
|
82
|
+
maxTokens?: number;
|
|
83
|
+
budget?: Budget;
|
|
84
|
+
tags?: string[];
|
|
85
|
+
tagsMatch?: TagsMatch;
|
|
86
|
+
}
|
|
87
|
+
export interface ReflectOptions {
|
|
88
|
+
context?: string;
|
|
89
|
+
budget?: Budget;
|
|
90
|
+
tags?: string[];
|
|
91
|
+
tagsMatch?: TagsMatch;
|
|
92
|
+
}
|
|
93
|
+
export interface CreateBankOptions {
|
|
94
|
+
reflectMission?: string;
|
|
95
|
+
retainMission?: string;
|
|
96
|
+
}
|
|
97
|
+
export interface ListMemoriesOptions {
|
|
98
|
+
limit?: number;
|
|
99
|
+
offset?: number;
|
|
100
|
+
type?: string;
|
|
101
|
+
q?: string;
|
|
102
|
+
consolidationState?: ConsolidationState;
|
|
103
|
+
}
|
|
104
|
+
export interface ListDocumentsOptions {
|
|
105
|
+
limit?: number;
|
|
106
|
+
offset?: number;
|
|
107
|
+
}
|
|
108
|
+
export interface UpdateDocumentOptions {
|
|
109
|
+
tags?: string[];
|
|
110
|
+
}
|
|
111
|
+
export type MentalModelDetail = "metadata" | "content" | "full";
|
|
112
|
+
export type MentalModelMode = "full" | "delta";
|
|
113
|
+
export interface MentalModelTrigger {
|
|
114
|
+
mode?: MentalModelMode;
|
|
115
|
+
refresh_after_consolidation?: boolean;
|
|
116
|
+
}
|
|
117
|
+
/** Shape returned by list/get on the mental-models endpoint. Fields are populated by `detail`. */
|
|
118
|
+
export interface MentalModelSummary {
|
|
119
|
+
id: string;
|
|
120
|
+
bank_id: string;
|
|
121
|
+
name: string;
|
|
122
|
+
tags?: string[];
|
|
123
|
+
last_refreshed_at?: string | null;
|
|
124
|
+
created_at?: string | null;
|
|
125
|
+
source_query?: string;
|
|
126
|
+
content?: string;
|
|
127
|
+
max_tokens?: number;
|
|
128
|
+
trigger?: MentalModelTrigger;
|
|
129
|
+
[key: string]: unknown;
|
|
130
|
+
}
|
|
131
|
+
export interface MentalModelListResponse {
|
|
132
|
+
items: MentalModelSummary[];
|
|
133
|
+
[key: string]: unknown;
|
|
134
|
+
}
|
|
135
|
+
export interface MentalModelHistoryEntry {
|
|
136
|
+
previous_content: string | null;
|
|
137
|
+
changed_at: string;
|
|
138
|
+
[key: string]: unknown;
|
|
139
|
+
}
|
|
140
|
+
export interface CreateMentalModelOptions {
|
|
141
|
+
id?: string;
|
|
142
|
+
tags?: string[];
|
|
143
|
+
maxTokens?: number;
|
|
144
|
+
trigger?: MentalModelTrigger;
|
|
145
|
+
}
|
|
146
|
+
export interface CreateMentalModelResponse {
|
|
147
|
+
operation_id?: string;
|
|
148
|
+
[key: string]: unknown;
|
|
149
|
+
}
|
|
150
|
+
export interface RefreshMentalModelResponse {
|
|
151
|
+
operation_id?: string;
|
|
152
|
+
[key: string]: unknown;
|
|
153
|
+
}
|
|
154
|
+
export interface ListMentalModelsOptions {
|
|
155
|
+
detail?: MentalModelDetail;
|
|
156
|
+
}
|
|
157
|
+
export interface GetMentalModelOptions {
|
|
158
|
+
detail?: MentalModelDetail;
|
|
159
|
+
}
|
|
160
|
+
export declare class HindsightError extends Error {
|
|
161
|
+
statusCode?: number;
|
|
162
|
+
details?: unknown;
|
|
163
|
+
constructor(message: string, statusCode?: number, details?: unknown);
|
|
164
|
+
}
|
|
165
|
+
export declare class HindsightApi {
|
|
166
|
+
#private;
|
|
167
|
+
constructor(options: HindsightApiOptions);
|
|
168
|
+
retain(bankId: string, content: string, options?: RetainOptions): Promise<RetainResponse>;
|
|
169
|
+
/**
|
|
170
|
+
* Retain multiple memories in a single request. Mirrors the official
|
|
171
|
+
* client's `retainBatch` — items hit `POST /memories` together so the
|
|
172
|
+
* server can dedupe and consolidate as a batch instead of N round-trips.
|
|
173
|
+
*
|
|
174
|
+
* Per-item `documentId` wins; `options.documentId` only fills the gaps.
|
|
175
|
+
*/
|
|
176
|
+
retainBatch(bankId: string, items: MemoryItemInput[], options?: RetainBatchOptions): Promise<RetainResponse>;
|
|
177
|
+
recall(bankId: string, query: string, options?: RecallOptions): Promise<RecallResponse>;
|
|
178
|
+
reflect(bankId: string, query: string, options?: ReflectOptions): Promise<ReflectResponse>;
|
|
179
|
+
createBank(bankId: string, options?: CreateBankOptions): Promise<BankProfileResponse>;
|
|
180
|
+
/**
|
|
181
|
+
* Bulk-list memory units in a bank with optional filters and pagination.
|
|
182
|
+
* Endpoint: `GET /v1/default/banks/{bank_id}/memories/list`.
|
|
183
|
+
*/
|
|
184
|
+
listMemories(bankId: string, options?: ListMemoriesOptions): Promise<ListMemoriesResponse>;
|
|
185
|
+
/** Bulk-list documents in a bank. */
|
|
186
|
+
listDocuments(bankId: string, options?: ListDocumentsOptions): Promise<ListDocumentsResponse>;
|
|
187
|
+
/** Fetch a document. Returns `null` on 404 instead of throwing. */
|
|
188
|
+
getDocument(bankId: string, documentId: string): Promise<DocumentResponse | null>;
|
|
189
|
+
/** Update a document's mutable fields (currently just tags). */
|
|
190
|
+
updateDocument(bankId: string, documentId: string, options: UpdateDocumentOptions): Promise<DocumentResponse>;
|
|
191
|
+
/**
|
|
192
|
+
* Delete a document and every memory derived from it. Returns `true` on
|
|
193
|
+
* success, `false` if the document was already gone (404).
|
|
194
|
+
*/
|
|
195
|
+
deleteDocument(bankId: string, documentId: string): Promise<boolean>;
|
|
196
|
+
/**
|
|
197
|
+
* List mental models in a bank. Default `detail=content` includes the
|
|
198
|
+
* generated `content` text but excludes the heavyweight `reflect_response`
|
|
199
|
+
* provenance chain (which can exceed 200KB). Use `detail=metadata` for
|
|
200
|
+
* inventory and `detail=full` only for debug surfaces.
|
|
201
|
+
*/
|
|
202
|
+
listMentalModels(bankId: string, options?: ListMentalModelsOptions): Promise<MentalModelListResponse>;
|
|
203
|
+
/** Fetch a single mental model. Returns `null` on 404. */
|
|
204
|
+
getMentalModel(bankId: string, mentalModelId: string, options?: GetMentalModelOptions): Promise<MentalModelSummary | null>;
|
|
205
|
+
/**
|
|
206
|
+
* Create a mental model. Asynchronous on the server: returns an
|
|
207
|
+
* `operation_id`; the model's `content` populates after the background
|
|
208
|
+
* reflect completes.
|
|
209
|
+
*/
|
|
210
|
+
createMentalModel(bankId: string, name: string, sourceQuery: string, options?: CreateMentalModelOptions): Promise<CreateMentalModelResponse>;
|
|
211
|
+
/** Trigger an out-of-band refresh of a mental model. Returns the operation handle. */
|
|
212
|
+
refreshMentalModel(bankId: string, mentalModelId: string): Promise<RefreshMentalModelResponse>;
|
|
213
|
+
/** Delete a mental model. Returns `true` on success, `false` if it was already gone (404). */
|
|
214
|
+
deleteMentalModel(bankId: string, mentalModelId: string): Promise<boolean>;
|
|
215
|
+
/**
|
|
216
|
+
* Fetch the change history of a mental model. Each entry captures the
|
|
217
|
+
* content snapshot BEFORE that change; the current content is read via
|
|
218
|
+
* `getMentalModel`. Most-recent first.
|
|
219
|
+
*/
|
|
220
|
+
getMentalModelHistory(bankId: string, mentalModelId: string): Promise<MentalModelHistoryEntry[]>;
|
|
221
|
+
}
|
|
222
|
+
export declare function createHindsightClient(config: HindsightConfig & {
|
|
223
|
+
hindsightApiUrl: string;
|
|
224
|
+
}): HindsightApi;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Resolved Hindsight runtime configuration.
|
|
3
|
+
*
|
|
4
|
+
* Source of truth precedence (last wins):
|
|
5
|
+
* 1. Built-in defaults
|
|
6
|
+
* 2. Settings (`hindsight.*` schema entries via `Settings.get(...)`)
|
|
7
|
+
* 3. `HINDSIGHT_*` environment variables
|
|
8
|
+
*
|
|
9
|
+
* Env wins because operators frequently override per-shell (CI, prod) without
|
|
10
|
+
* touching the persisted settings file.
|
|
11
|
+
*/
|
|
12
|
+
import type { Settings } from "../config/settings";
|
|
13
|
+
export type HindsightScoping = "global" | "per-project" | "per-project-tagged";
|
|
14
|
+
export interface HindsightConfig {
|
|
15
|
+
hindsightApiUrl: string | null;
|
|
16
|
+
hindsightApiToken: string | null;
|
|
17
|
+
bankId: string | null;
|
|
18
|
+
bankIdPrefix: string;
|
|
19
|
+
scoping: HindsightScoping;
|
|
20
|
+
bankMission: string;
|
|
21
|
+
retainMission: string | null;
|
|
22
|
+
autoRecall: boolean;
|
|
23
|
+
autoRetain: boolean;
|
|
24
|
+
retainMode: "full-session" | "last-turn";
|
|
25
|
+
retainEveryNTurns: number;
|
|
26
|
+
retainOverlapTurns: number;
|
|
27
|
+
retainContext: string;
|
|
28
|
+
recallBudget: "low" | "mid" | "high";
|
|
29
|
+
recallMaxTokens: number;
|
|
30
|
+
recallTypes: string[];
|
|
31
|
+
recallContextTurns: number;
|
|
32
|
+
recallMaxQueryChars: number;
|
|
33
|
+
recallPromptPreamble: string;
|
|
34
|
+
debug: boolean;
|
|
35
|
+
mentalModelsEnabled: boolean;
|
|
36
|
+
mentalModelAutoSeed: boolean;
|
|
37
|
+
mentalModelRefreshIntervalMs: number;
|
|
38
|
+
mentalModelMaxRenderChars: number;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Load the resolved Hindsight config.
|
|
42
|
+
*
|
|
43
|
+
* Pure (no I/O) aside from reading from `process.env` and the supplied
|
|
44
|
+
* Settings instance. Tests can pass `Settings.isolated({...})` and stub
|
|
45
|
+
* `process.env` per case.
|
|
46
|
+
*/
|
|
47
|
+
export declare function loadHindsightConfig(settings: Settings, env?: NodeJS.ProcessEnv): HindsightConfig;
|
|
48
|
+
/** Whether the caller has enough config to talk to a Hindsight server. */
|
|
49
|
+
export declare function isHindsightConfigured(config: HindsightConfig): config is HindsightConfig & {
|
|
50
|
+
hindsightApiUrl: string;
|
|
51
|
+
};
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pure content utilities for the Hindsight backend.
|
|
3
|
+
*
|
|
4
|
+
* Ports the semantics of the upstream OpenCode plugin
|
|
5
|
+
* (vectorize-io/hindsight @ hindsight-integrations/opencode/src/content.ts):
|
|
6
|
+
* - tag stripping for anti-feedback (a recalled <memories> block must
|
|
7
|
+
* never end up retained as a new memory)
|
|
8
|
+
* - recall query composition + truncation under a character budget
|
|
9
|
+
* - retention transcript framing
|
|
10
|
+
*/
|
|
11
|
+
export interface HindsightMessage {
|
|
12
|
+
role: string;
|
|
13
|
+
content: string;
|
|
14
|
+
}
|
|
15
|
+
export interface RecallResultLike {
|
|
16
|
+
text: string;
|
|
17
|
+
type?: string | null;
|
|
18
|
+
mentioned_at?: string | null;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Strip `<memories>`, `<mental_models>`, and legacy memory blocks.
|
|
22
|
+
*
|
|
23
|
+
* Both `<memories>` (per-turn recall) and `<mental_models>` (curated semantic
|
|
24
|
+
* memory) are injected into the system prompt. If either leaks into the
|
|
25
|
+
* retention transcript, every retain becomes a tighter feedback loop —
|
|
26
|
+
* paraphrased memories feed the next consolidation, which feeds the next
|
|
27
|
+
* mental-model refresh, which feeds the next retain. Always strip before
|
|
28
|
+
* retaining.
|
|
29
|
+
*/
|
|
30
|
+
export declare function stripMemoryTags(content: string): string;
|
|
31
|
+
/** Format recall results into a bullet list for context injection. */
|
|
32
|
+
export declare function formatMemories(results: RecallResultLike[]): string;
|
|
33
|
+
/** Format current UTC time for the recall preamble. */
|
|
34
|
+
export declare function formatCurrentTime(now?: Date): string;
|
|
35
|
+
/**
|
|
36
|
+
* Slice messages to the last N turns, where a turn boundary is a user message.
|
|
37
|
+
* Returns the trailing tail starting at the (N-th from the end) user message.
|
|
38
|
+
*/
|
|
39
|
+
export declare function sliceLastTurnsByUserBoundary(messages: HindsightMessage[], turns: number): HindsightMessage[];
|
|
40
|
+
/**
|
|
41
|
+
* Compose a recall query from the latest user prompt plus optional prior context.
|
|
42
|
+
*
|
|
43
|
+
* When `recallContextTurns <= 1` the query is just the trimmed latest prompt.
|
|
44
|
+
* Otherwise we prepend a `Prior context:` block built from the trailing
|
|
45
|
+
* `recallContextTurns` user-bounded turns (memory tags stripped, latest prompt
|
|
46
|
+
* suppressed to avoid duplicating it inside the context block).
|
|
47
|
+
*/
|
|
48
|
+
export declare function composeRecallQuery(latestQuery: string, messages: HindsightMessage[], recallContextTurns: number): string;
|
|
49
|
+
/**
|
|
50
|
+
* Truncate a composed recall query to `maxChars`.
|
|
51
|
+
*
|
|
52
|
+
* Always preserves the latest user message. Drops oldest context lines first
|
|
53
|
+
* and degrades gracefully when even the latest message exceeds the budget.
|
|
54
|
+
*/
|
|
55
|
+
export declare function truncateRecallQuery(query: string, latestQuery: string, maxChars: number): string;
|
|
56
|
+
export interface RetentionTranscript {
|
|
57
|
+
transcript: string | null;
|
|
58
|
+
messageCount: number;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Format messages into a retention transcript using `[role: ...]` markers.
|
|
62
|
+
*
|
|
63
|
+
* - When `retainFullWindow` is true, all messages are included (used when the
|
|
64
|
+
* caller pre-sliced the window itself).
|
|
65
|
+
* - Otherwise, only the last user turn (last user message → end) is retained.
|
|
66
|
+
*
|
|
67
|
+
* Messages are tag-stripped before framing to break the recall→retain loop.
|
|
68
|
+
* Returns `{ transcript: null }` when nothing meaningful survives.
|
|
69
|
+
*/
|
|
70
|
+
export declare function prepareRetentionTranscript(messages: HindsightMessage[], retainFullWindow?: boolean): RetentionTranscript;
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Mental-model bootstrap, caching, and rendering for the Hindsight backend.
|
|
3
|
+
*
|
|
4
|
+
* Mental models are persisted, named summaries on the Hindsight server. They
|
|
5
|
+
* are populated by a background reflect at create time and refreshed
|
|
6
|
+
* automatically when consolidation runs (`refresh_after_consolidation: true`).
|
|
7
|
+
*
|
|
8
|
+
* This module:
|
|
9
|
+
* 1. **Seeds** a small, curated set of mental models on first session boot
|
|
10
|
+
* for a given bank (idempotent: never modifies an existing model).
|
|
11
|
+
* 2. **Loads** the seeded + any operator-curated models into a cached
|
|
12
|
+
* `<mental_models>` block that the backend splices into developer
|
|
13
|
+
* instructions on every prompt rebuild — bypassing per-turn recall HTTP
|
|
14
|
+
* cost for stable knowledge.
|
|
15
|
+
* 3. **Renders** content blocks with anti-feedback wrappers so the LLM
|
|
16
|
+
* treats them as background knowledge, not as commands (mirrors the
|
|
17
|
+
* `<memories>` warning).
|
|
18
|
+
*
|
|
19
|
+
* Tag discipline (foot-gun):
|
|
20
|
+
* The Hindsight refresh path filters source memories with `all_strict` tag
|
|
21
|
+
* matching against the model's tags. A seed tagged with something we never
|
|
22
|
+
* write at retain time will refresh empty. Therefore seed tags MUST be a
|
|
23
|
+
* subset of the tags actually attached by `retainSession` / `enqueueRetain`
|
|
24
|
+
* for the active scoping mode. In `per-project-tagged` we only carry
|
|
25
|
+
* `project:<cwd>`; do not invent new tag axes here without first wiring the
|
|
26
|
+
* retain side to emit them.
|
|
27
|
+
*
|
|
28
|
+
* Seed tags are baked from `seeds.json` plus, for `projectTagged: true`
|
|
29
|
+
* entries, the active scope's `retainTags` (i.e. `project:<cwd>`). Untagged
|
|
30
|
+
* seeds (e.g. `user-preferences`) read every memory in the bank — the
|
|
31
|
+
* reflect call applies no tag filter when `tags` is empty.
|
|
32
|
+
*
|
|
33
|
+
* Seed lifecycle is **create-only**: changes to `source_query`, `tags`,
|
|
34
|
+
* `max_tokens`, or `trigger` in `seeds.json` will NOT propagate to existing
|
|
35
|
+
* models on the server. Operators who want a structural change must
|
|
36
|
+
* `/memory mm refresh <id>` (content-only) or `/memory mm delete <id>`
|
|
37
|
+
* followed by a re-seed.
|
|
38
|
+
*/
|
|
39
|
+
import type { BankScope } from "./bank";
|
|
40
|
+
import type { HindsightApi, MentalModelMode, MentalModelSummary, MentalModelTrigger } from "./client";
|
|
41
|
+
import type { HindsightScoping } from "./config";
|
|
42
|
+
interface RawSeed {
|
|
43
|
+
id: string;
|
|
44
|
+
name: string;
|
|
45
|
+
source_query: string;
|
|
46
|
+
scopes: HindsightScoping[];
|
|
47
|
+
projectTagged: boolean;
|
|
48
|
+
trigger?: {
|
|
49
|
+
mode?: MentalModelMode;
|
|
50
|
+
refresh_after_consolidation?: boolean;
|
|
51
|
+
};
|
|
52
|
+
max_tokens?: number;
|
|
53
|
+
extra_tags?: string[];
|
|
54
|
+
}
|
|
55
|
+
export interface MentalModelSeed {
|
|
56
|
+
id: string;
|
|
57
|
+
name: string;
|
|
58
|
+
sourceQuery: string;
|
|
59
|
+
tags: string[];
|
|
60
|
+
maxTokens?: number;
|
|
61
|
+
trigger?: MentalModelTrigger;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Resolve the seed list that applies to the active bank scope. Per-project
|
|
65
|
+
* seeds are skipped in `global` mode (where there is no project axis) and
|
|
66
|
+
* `projectTagged` seeds inherit the scope's `retainTags`.
|
|
67
|
+
*/
|
|
68
|
+
export declare function resolveSeedsForScope(scope: BankScope, scoping: HindsightScoping): MentalModelSeed[];
|
|
69
|
+
/**
|
|
70
|
+
* Idempotently create any seed mental models that don't already exist on the
|
|
71
|
+
* bank. Best-effort: a list/create failure does not throw — mental models are
|
|
72
|
+
* an optimization, not a precondition for retain/recall, and we mirror the
|
|
73
|
+
* swallow-on-failure pattern used by `ensureBankMission`.
|
|
74
|
+
*
|
|
75
|
+
* Existing models are NEVER modified. See module docstring.
|
|
76
|
+
*/
|
|
77
|
+
export declare function ensureMentalModels(client: HindsightApi, bankId: string, seeds: MentalModelSeed[], debug: boolean): Promise<void>;
|
|
78
|
+
/**
|
|
79
|
+
* Default character budget for the rendered `<mental_models>` block. Mental
|
|
80
|
+
* models are injected on every prompt rebuild; an unbounded block can crowd
|
|
81
|
+
* out the user's actual context (and we cannot trust a curated/operator
|
|
82
|
+
* model to stay small without enforcement). The budget is a coarse char cap
|
|
83
|
+
* — token-accurate accounting would require a model-specific tokenizer we
|
|
84
|
+
* don't carry here.
|
|
85
|
+
*/
|
|
86
|
+
export declare const MENTAL_MODEL_RENDER_BUDGET_CHARS_DEFAULT = 16000;
|
|
87
|
+
/**
|
|
88
|
+
* Pull the current mental-model snapshot from the server and render it into a
|
|
89
|
+
* `<mental_models>` block ready to be appended to developer instructions.
|
|
90
|
+
*
|
|
91
|
+
* Returns `undefined` when the server has no models yet, when the API call
|
|
92
|
+
* fails, or when every model still has empty content (e.g. the background
|
|
93
|
+
* reflect for a freshly-seeded model hasn't completed yet).
|
|
94
|
+
*
|
|
95
|
+
* The rendered block is bounded by `budgetChars` (default
|
|
96
|
+
* MENTAL_MODEL_RENDER_BUDGET_CHARS_DEFAULT). Per-model content is truncated
|
|
97
|
+
* before assembly; if assembly still exceeds the budget, trailing models are
|
|
98
|
+
* dropped. A budget overflow leaves a `…` marker so the LLM can tell the
|
|
99
|
+
* snapshot is truncated.
|
|
100
|
+
*/
|
|
101
|
+
export declare function loadMentalModelsBlock(client: HindsightApi, bankId: string, budgetChars?: number): Promise<string | undefined>;
|
|
102
|
+
export declare function renderMentalModelsBlock(models: MentalModelSummary[], budgetChars: number): string;
|
|
103
|
+
/** Inventory line used by the `/memory mm list` command. */
|
|
104
|
+
export declare function summarizeMentalModel(model: MentalModelSummary): string;
|
|
105
|
+
/**
|
|
106
|
+
* Render a unified-style line diff between the previous and current content
|
|
107
|
+
* of a mental model. Hindsight's history endpoint returns the previous
|
|
108
|
+
* snapshot only; the diff is computed locally for display purposes.
|
|
109
|
+
*
|
|
110
|
+
* This is intentionally minimal — for "what changed" at a glance, not for a
|
|
111
|
+
* full structural diff. Each side is capped at `MAX_LCS_LINES` lines BEFORE
|
|
112
|
+
* the O(n*m) LCS table is built so a long curated model can never hang the
|
|
113
|
+
* TUI; output is then capped at `maxLines` so the rendered diff stays
|
|
114
|
+
* readable. The cap is signalled inline.
|
|
115
|
+
*/
|
|
116
|
+
/** Hard cap on input line count per side before LCS. Keeps the O(n*m) table tractable. */
|
|
117
|
+
export declare const MAX_LCS_LINES = 1000;
|
|
118
|
+
export declare function diffMentalModelContent(previous: string | null, current: string, maxLines?: number): string;
|
|
119
|
+
/** Awaited only by the first-turn race in `beforeAgentStartPrompt`. */
|
|
120
|
+
export declare const MENTAL_MODEL_FIRST_TURN_DEADLINE_MS = 1500;
|
|
121
|
+
/** Cache TTL: re-list models on `agent_end` once this many ms have elapsed. */
|
|
122
|
+
export declare const MENTAL_MODEL_REFRESH_INTERVAL_MS: number;
|
|
123
|
+
/** Need-only export of the raw seed list for tests. */
|
|
124
|
+
export declare const builtinSeedsForTest: ReadonlyArray<Readonly<RawSeed>>;
|
|
125
|
+
export {};
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import type { AgentSession } from "../session/agent-session";
|
|
2
|
+
import { type BankScope } from "./bank";
|
|
3
|
+
import type { HindsightApi } from "./client";
|
|
4
|
+
import type { HindsightConfig } from "./config";
|
|
5
|
+
import { type HindsightMessage } from "./content";
|
|
6
|
+
interface RecallOutcome {
|
|
7
|
+
context: string | null;
|
|
8
|
+
ok: boolean;
|
|
9
|
+
}
|
|
10
|
+
export interface HindsightSessionStateOptions {
|
|
11
|
+
/** Session id used for retain-queue metadata. */
|
|
12
|
+
sessionId: string;
|
|
13
|
+
client: HindsightApi;
|
|
14
|
+
bankId: string;
|
|
15
|
+
/** Tags applied to every retain — non-empty in per-project-tagged mode. */
|
|
16
|
+
retainTags?: string[];
|
|
17
|
+
/** Tag filter applied to every recall/reflect — non-empty in per-project-tagged mode. */
|
|
18
|
+
recallTags?: string[];
|
|
19
|
+
recallTagsMatch?: "any" | "all" | "any_strict" | "all_strict";
|
|
20
|
+
config: HindsightConfig;
|
|
21
|
+
session: AgentSession;
|
|
22
|
+
missionsSet: Set<string>;
|
|
23
|
+
lastRetainedTurn?: number;
|
|
24
|
+
hasRecalledForFirstTurn?: boolean;
|
|
25
|
+
/**
|
|
26
|
+
* When set, this entry is a subagent alias that reuses the parent's bank,
|
|
27
|
+
* scope, config, client, and missionsSet. Aliases skip auto-recall and
|
|
28
|
+
* auto-retain — those run on the parent only — but the recall/retain/reflect
|
|
29
|
+
* tools resolve via the alias so they persist to the same bank as the parent.
|
|
30
|
+
*/
|
|
31
|
+
aliasOf?: HindsightSessionState;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Debounced batch queue for tool-initiated `retain` calls owned by one
|
|
35
|
+
* Hindsight session state instance.
|
|
36
|
+
*
|
|
37
|
+
* Auto-retain (`HindsightSessionState.retainSession`) is intentionally not
|
|
38
|
+
* routed through this queue — it submits a full transcript as one large item
|
|
39
|
+
* and already runs `async: true` server-side.
|
|
40
|
+
*/
|
|
41
|
+
export declare class HindsightRetainQueue {
|
|
42
|
+
#private;
|
|
43
|
+
constructor(state: HindsightSessionState);
|
|
44
|
+
get depth(): number;
|
|
45
|
+
enqueue(content: string, context?: string): void;
|
|
46
|
+
flush(): Promise<void>;
|
|
47
|
+
dispose(): void;
|
|
48
|
+
}
|
|
49
|
+
/** Per-session Hindsight runtime state owned by its AgentSession. */
|
|
50
|
+
export declare class HindsightSessionState {
|
|
51
|
+
#private;
|
|
52
|
+
/** Session id used for retain-queue metadata. */
|
|
53
|
+
sessionId: string;
|
|
54
|
+
client: HindsightApi;
|
|
55
|
+
bankId: string;
|
|
56
|
+
/** Tags applied to every retain — non-empty in per-project-tagged mode. */
|
|
57
|
+
retainTags?: string[];
|
|
58
|
+
/** Tag filter applied to every recall/reflect — non-empty in per-project-tagged mode. */
|
|
59
|
+
recallTags?: string[];
|
|
60
|
+
recallTagsMatch?: "any" | "all" | "any_strict" | "all_strict";
|
|
61
|
+
config: HindsightConfig;
|
|
62
|
+
session: AgentSession;
|
|
63
|
+
missionsSet: Set<string>;
|
|
64
|
+
lastRetainedTurn: number;
|
|
65
|
+
hasRecalledForFirstTurn: boolean;
|
|
66
|
+
lastRecallSnippet?: string;
|
|
67
|
+
/** Cached `<mental_models>` block injected into developer instructions. */
|
|
68
|
+
mentalModelsSnippet?: string;
|
|
69
|
+
/** When the cached snippet was last refreshed; gates the agent_end re-list. */
|
|
70
|
+
mentalModelsLoadedAt?: number;
|
|
71
|
+
/**
|
|
72
|
+
* In-flight ensure+load promise. `beforeAgentStartPrompt` awaits this on
|
|
73
|
+
* the first turn so the MM block lands in the system prompt before the
|
|
74
|
+
* LLM generates, even though `start()` returns before the load completes.
|
|
75
|
+
*/
|
|
76
|
+
mentalModelsLoadPromise?: Promise<void>;
|
|
77
|
+
unsubscribe?: () => void;
|
|
78
|
+
/** Alias states delegate persistence config to a primary parent state. */
|
|
79
|
+
aliasOf?: HindsightSessionState;
|
|
80
|
+
readonly retainQueue: HindsightRetainQueue;
|
|
81
|
+
constructor(options: HindsightSessionStateOptions);
|
|
82
|
+
setSessionId(sessionId: string): void;
|
|
83
|
+
resetConversationTracking(): void;
|
|
84
|
+
enqueueRetain(content: string, context?: string): void;
|
|
85
|
+
flushRetainQueue(): Promise<void>;
|
|
86
|
+
recallForContext(query: string, signal?: AbortSignal): Promise<RecallOutcome>;
|
|
87
|
+
retainSession(messages: HindsightMessage[]): Promise<void>;
|
|
88
|
+
maybeRetainOnAgentEnd(): Promise<void>;
|
|
89
|
+
forceRetainCurrentSession(): Promise<void>;
|
|
90
|
+
maybeRecallOnAgentStart(): Promise<void>;
|
|
91
|
+
beforeAgentStartPrompt(promptText: string): Promise<string | undefined>;
|
|
92
|
+
recallForCompaction(messages: HindsightMessage[]): Promise<string | undefined>;
|
|
93
|
+
runMentalModelLoad(scope: BankScope): Promise<void>;
|
|
94
|
+
refreshMentalModelsSnippet(): Promise<void>;
|
|
95
|
+
reloadMentalModels(): Promise<boolean>;
|
|
96
|
+
attachSessionListeners(): void;
|
|
97
|
+
dispose(): void;
|
|
98
|
+
}
|
|
99
|
+
export {};
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pull plain-text user/assistant messages out of a session manager.
|
|
3
|
+
*
|
|
4
|
+
* The Hindsight retain/recall API only takes flat `{role, content}` records,
|
|
5
|
+
* so we drop tool calls, tool results, bash execution wrappers, custom
|
|
6
|
+
* messages, and anything else that isn't a primary conversation turn. Each
|
|
7
|
+
* surviving message's `TextContent` parts are joined with newlines.
|
|
8
|
+
*/
|
|
9
|
+
import type { SessionEntry } from "../session/session-manager";
|
|
10
|
+
import type { HindsightMessage } from "./content";
|
|
11
|
+
export interface ReadonlySessionManagerLike {
|
|
12
|
+
getEntries(): SessionEntry[];
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Walk session entries top-to-bottom, returning a flat user/assistant list.
|
|
16
|
+
*
|
|
17
|
+
* Implementation choices:
|
|
18
|
+
* - Skip entries whose type isn't `"message"` (compaction, branch_summary,
|
|
19
|
+
* custom_message, tool exec records, ...). Those don't represent a
|
|
20
|
+
* conversational turn, only the LLM's plain-text utterances do.
|
|
21
|
+
* - Skip messages whose role isn't `"user"` or `"assistant"`. We deliberately
|
|
22
|
+
* ignore `toolResult`, `bashExecution`, `hookMessage`, etc. — they're noise
|
|
23
|
+
* for memory purposes.
|
|
24
|
+
* - For assistant messages, only `text` blocks contribute. Thinking and
|
|
25
|
+
* toolCall blocks are intentionally dropped: the user never saw them, so
|
|
26
|
+
* retaining them would prime recall on internal monologue.
|
|
27
|
+
*/
|
|
28
|
+
export declare function extractMessages(sessionManager: ReadonlySessionManagerLike): HindsightMessage[];
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { HookEditorComponent, HookInputComponent, HookSelectorComponent } from "./modes/components";
|
|
2
|
+
export { Container, Markdown, Spacer, Text } from "@oh-my-pi/pi-tui";
|
|
3
|
+
export { getAgentDir, logger, VERSION } from "@oh-my-pi/pi-utils";
|
|
4
|
+
export * from "./config/keybindings";
|
|
5
|
+
export * from "./config/model-registry";
|
|
6
|
+
export type * from "./config/prompt-templates";
|
|
7
|
+
export * from "./config/prompt-templates";
|
|
8
|
+
export type { RetrySettings, SkillsSettings } from "./config/settings";
|
|
9
|
+
export { Settings, settings } from "./config/settings";
|
|
10
|
+
export type * from "./extensibility/custom-commands/types";
|
|
11
|
+
export type * from "./extensibility/custom-tools";
|
|
12
|
+
export * from "./extensibility/custom-tools";
|
|
13
|
+
export type * from "./extensibility/extensions";
|
|
14
|
+
export * from "./extensibility/extensions";
|
|
15
|
+
export * from "./extensibility/skills";
|
|
16
|
+
export { type FileSlashCommand, loadSlashCommands as discoverSlashCommands } from "./extensibility/slash-commands";
|
|
17
|
+
export * from "./hashline";
|
|
18
|
+
export type * from "./lsp";
|
|
19
|
+
export * from "./main";
|
|
20
|
+
export * from "./modes";
|
|
21
|
+
export * from "./modes/components";
|
|
22
|
+
export * from "./modes/theme/theme";
|
|
23
|
+
export * from "./sdk";
|
|
24
|
+
export * from "./session/agent-session";
|
|
25
|
+
export * from "./session/auth-storage";
|
|
26
|
+
export * from "./session/messages";
|
|
27
|
+
export * from "./session/session-dump-format";
|
|
28
|
+
export * from "./session/session-manager";
|
|
29
|
+
export * from "./task/executor";
|
|
30
|
+
export type * from "./task/types";
|
|
31
|
+
export * from "./tools";
|
|
32
|
+
export * from "./utils/git";
|
|
33
|
+
export { HookEditorComponent as ExtensionEditorComponent, HookInputComponent as ExtensionInputComponent, HookSelectorComponent as ExtensionSelectorComponent, };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { InternalResource, InternalUrl, ProtocolHandler } from "./types";
|
|
2
|
+
/**
|
|
3
|
+
* Handler for agent:// URLs.
|
|
4
|
+
*
|
|
5
|
+
* Resolves output IDs like "reviewer_0" to their artifact files,
|
|
6
|
+
* with optional JSON extraction.
|
|
7
|
+
*/
|
|
8
|
+
export declare class AgentProtocolHandler implements ProtocolHandler {
|
|
9
|
+
readonly scheme = "agent";
|
|
10
|
+
readonly immutable = true;
|
|
11
|
+
resolve(url: InternalUrl): Promise<InternalResource>;
|
|
12
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { InternalResource, InternalUrl, ProtocolHandler } from "./types";
|
|
2
|
+
export declare class ArtifactProtocolHandler implements ProtocolHandler {
|
|
3
|
+
readonly scheme = "artifact";
|
|
4
|
+
readonly immutable = true;
|
|
5
|
+
resolve(url: InternalUrl): Promise<InternalResource>;
|
|
6
|
+
}
|