@oh-my-pi/pi-coding-agent 15.1.0 → 15.1.2
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 +12 -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/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 +25 -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/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 +28 -0
- package/dist/types/commit/agentic/tools/recent-commits.d.ts +7 -0
- package/dist/types/commit/agentic/tools/schemas.d.ts +19 -0
- package/dist/types/commit/agentic/tools/split-commit.d.ts +45 -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 +360 -0
- package/dist/types/config/model-resolver.d.ts +230 -0
- package/dist/types/config/models-config-schema.d.ts +502 -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 +3315 -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 +1 -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 +107 -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 +6 -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/parse.d.ts +28 -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/sniff.d.ts +11 -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 +54 -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 +34 -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/parse.d.ts +19 -0
- package/dist/types/internal-urls/pi-protocol.d.ts +12 -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 +60 -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/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 +42 -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 +25 -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 +246 -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-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 +74 -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 +73 -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 +6 -0
- package/dist/types/tools/resolve.d.ts +79 -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/package.json +124 -123
- package/src/config/mcp-schema.json +1 -1
- package/src/edit/normalize.ts +1 -1
- package/src/extensibility/typebox.ts +1 -1
- package/src/hashline/index.ts +0 -1
- package/src/hashline/input.ts +8 -11
- package/src/hashline/parser.ts +6 -8
- package/src/modes/acp/acp-agent.ts +1 -0
- package/src/modes/controllers/command-controller.ts +1 -0
- package/src/modes/controllers/ssh-command-controller.ts +2 -0
- package/src/modes/theme/theme-schema.json +1 -1
- package/src/prompts/tools/hashline.md +1 -0
- package/src/prompts/tools/read.md +1 -1
- package/src/sdk.ts +14 -0
- package/src/session/agent-session.ts +49 -0
- 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/tools/bash-interactive.ts +1 -1
- package/src/tools/bash-pty-selection.ts +14 -0
- package/src/tools/bash.ts +5 -4
- package/src/tools/image-gen.ts +1 -1
- package/src/tools/path-utils.ts +2 -2
- package/src/tools/read.ts +7 -4
- package/src/tools/search.ts +7 -0
- package/src/tools/yield.ts +17 -5
- package/src/tui/code-cell.ts +18 -3
- package/src/web/scrapers/searchcode.ts +1 -2
- package/src/hashline/utils.ts +0 -3
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import type { AgentTool, AgentToolContext, AgentToolResult, AgentToolUpdateCallback } from "@oh-my-pi/pi-agent-core";
|
|
2
|
+
import type { Component } from "@oh-my-pi/pi-tui";
|
|
3
|
+
import * as z from "zod/v4";
|
|
4
|
+
import type { RenderResultOptions } from "../extensibility/custom-tools/types";
|
|
5
|
+
import type { Theme } from "../modes/theme/theme";
|
|
6
|
+
import type { ToolSession } from ".";
|
|
7
|
+
import type { OutputMeta } from "./output-meta";
|
|
8
|
+
declare const astEditSchema: z.ZodObject<{
|
|
9
|
+
ops: z.ZodArray<z.ZodObject<{
|
|
10
|
+
pat: z.ZodString;
|
|
11
|
+
out: z.ZodString;
|
|
12
|
+
}, z.core.$strip>>;
|
|
13
|
+
paths: z.ZodArray<z.ZodString>;
|
|
14
|
+
}, z.core.$strip>;
|
|
15
|
+
export interface AstEditToolDetails {
|
|
16
|
+
totalReplacements: number;
|
|
17
|
+
filesTouched: number;
|
|
18
|
+
filesSearched: number;
|
|
19
|
+
applied: boolean;
|
|
20
|
+
limitReached: boolean;
|
|
21
|
+
parseErrors?: string[];
|
|
22
|
+
scopePath?: string;
|
|
23
|
+
files?: string[];
|
|
24
|
+
fileReplacements?: Array<{
|
|
25
|
+
path: string;
|
|
26
|
+
count: number;
|
|
27
|
+
}>;
|
|
28
|
+
meta?: OutputMeta;
|
|
29
|
+
/** Pre-formatted text for the user-visible TUI render. Mirrors `result.text` lines but uses
|
|
30
|
+
* a `│` gutter (no model-only hashline anchors). The TUI uses this directly so it never parses model-facing text. */
|
|
31
|
+
displayContent?: string;
|
|
32
|
+
}
|
|
33
|
+
export declare class AstEditTool implements AgentTool<typeof astEditSchema, AstEditToolDetails> {
|
|
34
|
+
private readonly session;
|
|
35
|
+
readonly name = "ast_edit";
|
|
36
|
+
readonly label = "AST Edit";
|
|
37
|
+
readonly summary = "Perform AST-aware code edits (structural refactoring)";
|
|
38
|
+
readonly description: string;
|
|
39
|
+
readonly parameters: z.ZodObject<{
|
|
40
|
+
ops: z.ZodArray<z.ZodObject<{
|
|
41
|
+
pat: z.ZodString;
|
|
42
|
+
out: z.ZodString;
|
|
43
|
+
}, z.core.$strip>>;
|
|
44
|
+
paths: z.ZodArray<z.ZodString>;
|
|
45
|
+
}, z.core.$strip>;
|
|
46
|
+
readonly strict = true;
|
|
47
|
+
readonly deferrable = true;
|
|
48
|
+
readonly loadMode = "discoverable";
|
|
49
|
+
constructor(session: ToolSession);
|
|
50
|
+
execute(_toolCallId: string, params: z.infer<typeof astEditSchema>, signal?: AbortSignal, _onUpdate?: AgentToolUpdateCallback<AstEditToolDetails>, _context?: AgentToolContext): Promise<AgentToolResult<AstEditToolDetails>>;
|
|
51
|
+
}
|
|
52
|
+
interface AstEditRenderArgs {
|
|
53
|
+
ops?: Array<{
|
|
54
|
+
pat?: string;
|
|
55
|
+
out?: string;
|
|
56
|
+
}>;
|
|
57
|
+
paths?: string[];
|
|
58
|
+
}
|
|
59
|
+
export declare const astEditToolRenderer: {
|
|
60
|
+
inline: boolean;
|
|
61
|
+
renderCall(args: AstEditRenderArgs, _options: RenderResultOptions, uiTheme: Theme): Component;
|
|
62
|
+
renderResult(result: {
|
|
63
|
+
content: Array<{
|
|
64
|
+
type: string;
|
|
65
|
+
text?: string;
|
|
66
|
+
}>;
|
|
67
|
+
details?: AstEditToolDetails;
|
|
68
|
+
isError?: boolean;
|
|
69
|
+
}, options: RenderResultOptions, uiTheme: Theme, args?: AstEditRenderArgs): Component;
|
|
70
|
+
mergeCallAndResult: boolean;
|
|
71
|
+
};
|
|
72
|
+
export {};
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import type { AgentTool, AgentToolContext, AgentToolResult, AgentToolUpdateCallback } from "@oh-my-pi/pi-agent-core";
|
|
2
|
+
import type { Component } from "@oh-my-pi/pi-tui";
|
|
3
|
+
import * as z from "zod/v4";
|
|
4
|
+
import type { RenderResultOptions } from "../extensibility/custom-tools/types";
|
|
5
|
+
import type { Theme } from "../modes/theme/theme";
|
|
6
|
+
import type { ToolSession } from ".";
|
|
7
|
+
import type { OutputMeta } from "./output-meta";
|
|
8
|
+
declare const astGrepSchema: z.ZodObject<{
|
|
9
|
+
pat: z.ZodString;
|
|
10
|
+
paths: z.ZodArray<z.ZodString>;
|
|
11
|
+
skip: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
12
|
+
}, z.core.$strip>;
|
|
13
|
+
export interface AstGrepToolDetails {
|
|
14
|
+
matchCount: number;
|
|
15
|
+
fileCount: number;
|
|
16
|
+
filesSearched: number;
|
|
17
|
+
limitReached: boolean;
|
|
18
|
+
parseErrors?: string[];
|
|
19
|
+
scopePath?: string;
|
|
20
|
+
files?: string[];
|
|
21
|
+
fileMatches?: Array<{
|
|
22
|
+
path: string;
|
|
23
|
+
count: number;
|
|
24
|
+
}>;
|
|
25
|
+
meta?: OutputMeta;
|
|
26
|
+
/** Pre-formatted text for the user-visible TUI render. Mirrors `result.text` lines but uses
|
|
27
|
+
* a `│` gutter and `*` to mark match lines. The TUI uses this directly so it never parses model-facing text. */
|
|
28
|
+
displayContent?: string;
|
|
29
|
+
}
|
|
30
|
+
export declare class AstGrepTool implements AgentTool<typeof astGrepSchema, AstGrepToolDetails> {
|
|
31
|
+
private readonly session;
|
|
32
|
+
readonly name = "ast_grep";
|
|
33
|
+
readonly label = "AST Grep";
|
|
34
|
+
readonly summary = "Search code with AST patterns (structural grep)";
|
|
35
|
+
readonly description: string;
|
|
36
|
+
readonly parameters: z.ZodObject<{
|
|
37
|
+
pat: z.ZodString;
|
|
38
|
+
paths: z.ZodArray<z.ZodString>;
|
|
39
|
+
skip: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
40
|
+
}, z.core.$strip>;
|
|
41
|
+
readonly strict = true;
|
|
42
|
+
readonly loadMode = "discoverable";
|
|
43
|
+
constructor(session: ToolSession);
|
|
44
|
+
execute(_toolCallId: string, params: z.infer<typeof astGrepSchema>, signal?: AbortSignal, _onUpdate?: AgentToolUpdateCallback<AstGrepToolDetails>, _context?: AgentToolContext): Promise<AgentToolResult<AstGrepToolDetails>>;
|
|
45
|
+
}
|
|
46
|
+
interface AstGrepRenderArgs {
|
|
47
|
+
pat?: string;
|
|
48
|
+
paths?: string[];
|
|
49
|
+
skip?: number;
|
|
50
|
+
}
|
|
51
|
+
export declare const astGrepToolRenderer: {
|
|
52
|
+
inline: boolean;
|
|
53
|
+
renderCall(args: AstGrepRenderArgs, _options: RenderResultOptions, uiTheme: Theme): Component;
|
|
54
|
+
renderResult(result: {
|
|
55
|
+
content: Array<{
|
|
56
|
+
type: string;
|
|
57
|
+
text?: string;
|
|
58
|
+
}>;
|
|
59
|
+
details?: AstGrepToolDetails;
|
|
60
|
+
isError?: boolean;
|
|
61
|
+
}, options: RenderResultOptions, uiTheme: Theme, args?: AstGrepRenderArgs): Component;
|
|
62
|
+
mergeCallAndResult: boolean;
|
|
63
|
+
};
|
|
64
|
+
export {};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Check if a file is auto-generated by examining its content.
|
|
3
|
+
* Throws ToolError if the file appears to be auto-generated.
|
|
4
|
+
*
|
|
5
|
+
* @param absolutePath - Absolute path to the file
|
|
6
|
+
* @param displayPath - Path to show in error messages (relative or as provided)
|
|
7
|
+
*/
|
|
8
|
+
export declare function assertEditableFile(absolutePath: string, displayPath?: string): Promise<void>;
|
|
9
|
+
/**
|
|
10
|
+
* Check if file content is auto-generated.
|
|
11
|
+
* Uses only the first CHECK_BYTE_COUNT characters of the content.
|
|
12
|
+
* Throws ToolError if the content appears to be auto-generated.
|
|
13
|
+
*
|
|
14
|
+
* @param content - File content to check (can be full content or prefix)
|
|
15
|
+
* @param displayPath - Path to show in error messages
|
|
16
|
+
*/
|
|
17
|
+
export declare function assertEditableFileContent(content: string, displayPath: string): void;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export interface BashFixupResult {
|
|
2
|
+
/** Possibly-rewritten command. */
|
|
3
|
+
command: string;
|
|
4
|
+
/** Substrings that were stripped, in the order they were removed. */
|
|
5
|
+
stripped: string[];
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Apply both fixups to a bash command. On any parse failure, multi-line input,
|
|
9
|
+
* or no-op transform, returns the input verbatim with `stripped: []`.
|
|
10
|
+
*/
|
|
11
|
+
export declare function applyBashFixups(command: string): BashFixupResult;
|
|
12
|
+
/**
|
|
13
|
+
* Human-readable notice for the fixups that fired. Mirrors the shape of
|
|
14
|
+
* `formatTimeoutClampNotice` so it can ride alongside the other bash notices.
|
|
15
|
+
*/
|
|
16
|
+
export declare function formatBashFixupNotice(stripped: readonly string[]): string | undefined;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { AgentToolContext } from "@oh-my-pi/pi-agent-core";
|
|
2
|
+
import { type OutputSummary } from "../session/streaming-output";
|
|
3
|
+
export interface BashInteractiveResult extends OutputSummary {
|
|
4
|
+
exitCode: number | undefined;
|
|
5
|
+
cancelled: boolean;
|
|
6
|
+
timedOut: boolean;
|
|
7
|
+
}
|
|
8
|
+
export declare function runInteractiveBashPty(ui: NonNullable<AgentToolContext["ui"]>, options: {
|
|
9
|
+
command: string;
|
|
10
|
+
cwd: string;
|
|
11
|
+
timeoutMs: number;
|
|
12
|
+
signal?: AbortSignal;
|
|
13
|
+
env?: Record<string, string>;
|
|
14
|
+
artifactPath?: string;
|
|
15
|
+
artifactId?: string;
|
|
16
|
+
}): Promise<BashInteractiveResult>;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Bash intent interceptor - redirects common shell patterns to proper tools.
|
|
3
|
+
*
|
|
4
|
+
* When an LLM calls bash with patterns like `grep`, `cat`, `find`, etc.,
|
|
5
|
+
* this interceptor provides helpful error messages directing them to use
|
|
6
|
+
* the specialized tools instead.
|
|
7
|
+
*/
|
|
8
|
+
import { type BashInterceptorRule } from "../config/settings-schema";
|
|
9
|
+
export interface InterceptionResult {
|
|
10
|
+
/** If true, the bash command should be blocked */
|
|
11
|
+
block: boolean;
|
|
12
|
+
/** Error message to return instead of executing */
|
|
13
|
+
message?: string;
|
|
14
|
+
/** Suggested tool to use instead */
|
|
15
|
+
suggestedTool?: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Check if a bash command should be intercepted.
|
|
19
|
+
*
|
|
20
|
+
* @param command The bash command to check
|
|
21
|
+
* @param availableTools Set of tool names that are available
|
|
22
|
+
* @returns InterceptionResult indicating if the command should be blocked
|
|
23
|
+
*/
|
|
24
|
+
export declare function checkBashInterception(command: string, availableTools: string[], rules?: BashInterceptorRule[]): InterceptionResult;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/** Minimal UI-capability fields needed to decide whether bash can use the local PTY overlay. */
|
|
2
|
+
export interface BashPtyContext {
|
|
3
|
+
hasUI?: boolean;
|
|
4
|
+
ui?: unknown;
|
|
5
|
+
}
|
|
6
|
+
/** Return whether a bash tool call should use the local interactive PTY overlay. */
|
|
7
|
+
export declare function canUseInteractiveBashPty(pty: boolean, ctx: BashPtyContext | undefined): boolean;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { Skill } from "../extensibility/skills";
|
|
2
|
+
import { type LocalProtocolOptions } from "../internal-urls";
|
|
3
|
+
import type { InternalResource } from "../internal-urls/types";
|
|
4
|
+
interface InternalUrlResolver {
|
|
5
|
+
canHandle(input: string): boolean;
|
|
6
|
+
resolve(input: string): Promise<InternalResource>;
|
|
7
|
+
}
|
|
8
|
+
export interface InternalUrlExpansionOptions {
|
|
9
|
+
skills: readonly Skill[];
|
|
10
|
+
noEscape?: boolean;
|
|
11
|
+
internalRouter?: InternalUrlResolver;
|
|
12
|
+
localOptions?: LocalProtocolOptions;
|
|
13
|
+
ensureLocalParentDirs?: boolean;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Resolve a single skill:// URL to its absolute filesystem path.
|
|
17
|
+
* Does NOT read file content or verify existence.
|
|
18
|
+
*/
|
|
19
|
+
export declare function resolveSkillUrlToPath(url: string, skills: readonly Skill[]): string;
|
|
20
|
+
/**
|
|
21
|
+
* Expand all skill:// URIs in a bash command string.
|
|
22
|
+
* Returns the command with URIs replaced by shell-escaped absolute paths.
|
|
23
|
+
* Throws ToolError if any URI cannot be resolved.
|
|
24
|
+
*/
|
|
25
|
+
export declare function expandSkillUrls(command: string, skills: readonly Skill[]): string;
|
|
26
|
+
/**
|
|
27
|
+
* Expand supported internal URLs in a bash command string to shell-escaped absolute paths.
|
|
28
|
+
* Supported schemes: skill://, agent://, artifact://, memory://, rule://, local://
|
|
29
|
+
*/
|
|
30
|
+
export declare function expandInternalUrls(command: string, options: InternalUrlExpansionOptions): Promise<string>;
|
|
31
|
+
export {};
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
import type { AgentTool, AgentToolContext, AgentToolResult, AgentToolUpdateCallback } from "@oh-my-pi/pi-agent-core";
|
|
2
|
+
import type { Component } from "@oh-my-pi/pi-tui";
|
|
3
|
+
import * as z from "zod/v4";
|
|
4
|
+
import type { RenderResultOptions } from "../extensibility/custom-tools/types";
|
|
5
|
+
import { type Theme } from "../modes/theme/theme";
|
|
6
|
+
import type { ToolSession } from ".";
|
|
7
|
+
import { type OutputMeta } from "./output-meta";
|
|
8
|
+
export declare const BASH_DEFAULT_PREVIEW_LINES = 10;
|
|
9
|
+
declare const bashSchemaBase: z.ZodObject<{
|
|
10
|
+
command: z.ZodString;
|
|
11
|
+
env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
12
|
+
timeout: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
13
|
+
cwd: z.ZodOptional<z.ZodString>;
|
|
14
|
+
pty: z.ZodOptional<z.ZodBoolean>;
|
|
15
|
+
}, z.core.$strip>;
|
|
16
|
+
declare const bashSchemaWithAsync: z.ZodObject<{
|
|
17
|
+
command: z.ZodString;
|
|
18
|
+
env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
19
|
+
timeout: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
20
|
+
cwd: z.ZodOptional<z.ZodString>;
|
|
21
|
+
pty: z.ZodOptional<z.ZodBoolean>;
|
|
22
|
+
async: z.ZodOptional<z.ZodBoolean>;
|
|
23
|
+
}, z.core.$strip>;
|
|
24
|
+
type BashToolSchema = typeof bashSchemaBase | typeof bashSchemaWithAsync;
|
|
25
|
+
export interface BashToolInput {
|
|
26
|
+
command: string;
|
|
27
|
+
env?: Record<string, string>;
|
|
28
|
+
timeout?: number;
|
|
29
|
+
cwd?: string;
|
|
30
|
+
async?: boolean;
|
|
31
|
+
pty?: boolean;
|
|
32
|
+
}
|
|
33
|
+
export interface BashToolDetails {
|
|
34
|
+
meta?: OutputMeta;
|
|
35
|
+
timeoutSeconds?: number;
|
|
36
|
+
requestedTimeoutSeconds?: number;
|
|
37
|
+
terminalId?: string;
|
|
38
|
+
async?: {
|
|
39
|
+
state: "running" | "completed" | "failed";
|
|
40
|
+
jobId: string;
|
|
41
|
+
type: "bash";
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
export interface BashToolOptions {
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Bash tool implementation.
|
|
48
|
+
*
|
|
49
|
+
* Executes bash commands with optional timeout and working directory.
|
|
50
|
+
*/
|
|
51
|
+
export declare class BashTool implements AgentTool<BashToolSchema, BashToolDetails> {
|
|
52
|
+
#private;
|
|
53
|
+
private readonly session;
|
|
54
|
+
readonly name = "bash";
|
|
55
|
+
readonly label = "Bash";
|
|
56
|
+
readonly loadMode = "essential";
|
|
57
|
+
readonly description: string;
|
|
58
|
+
readonly parameters: BashToolSchema;
|
|
59
|
+
readonly concurrency = "exclusive";
|
|
60
|
+
readonly strict = true;
|
|
61
|
+
constructor(session: ToolSession);
|
|
62
|
+
execute(_toolCallId: string, { command: rawCommand, env: rawEnv, timeout: rawTimeout, cwd, async: asyncRequested, pty }: BashToolInput, signal?: AbortSignal, onUpdate?: AgentToolUpdateCallback<BashToolDetails>, ctx?: AgentToolContext): Promise<AgentToolResult<BashToolDetails>>;
|
|
63
|
+
}
|
|
64
|
+
export interface BashRenderArgs {
|
|
65
|
+
command?: string;
|
|
66
|
+
env?: Record<string, string>;
|
|
67
|
+
timeout?: number;
|
|
68
|
+
cwd?: string;
|
|
69
|
+
__partialJson?: string;
|
|
70
|
+
[key: string]: unknown;
|
|
71
|
+
}
|
|
72
|
+
export interface BashRenderContext {
|
|
73
|
+
/** Raw output text */
|
|
74
|
+
output?: string;
|
|
75
|
+
/** Whether output came from artifact storage */
|
|
76
|
+
isFullOutput?: boolean;
|
|
77
|
+
/** Whether output is expanded */
|
|
78
|
+
expanded?: boolean;
|
|
79
|
+
/** Number of preview lines when collapsed */
|
|
80
|
+
previewLines?: number;
|
|
81
|
+
/** Timeout in seconds */
|
|
82
|
+
timeout?: number;
|
|
83
|
+
}
|
|
84
|
+
export interface ShellRendererConfig<TArgs> {
|
|
85
|
+
resolveTitle: (args: TArgs | undefined, options: RenderResultOptions) => string;
|
|
86
|
+
resolveCommand?: (args: TArgs | undefined) => string | undefined;
|
|
87
|
+
resolveCwd?: (args: TArgs | undefined) => string | undefined;
|
|
88
|
+
resolveEnv?: (args: TArgs | undefined) => Record<string, string> | undefined;
|
|
89
|
+
}
|
|
90
|
+
export declare function getBashEnvForDisplay(args: BashRenderArgs): Record<string, string> | undefined;
|
|
91
|
+
export declare function formatBashCommand(args: BashRenderArgs): string;
|
|
92
|
+
/**
|
|
93
|
+
* Returns the bash command formatted for the result body: the dim `$ cd … &&`
|
|
94
|
+
* prefix joined with syntax-highlighted command lines. The prefix is applied
|
|
95
|
+
* only to the first line so multi-line commands display cleanly — terminals
|
|
96
|
+
* reset SGR state at line boundaries, which made the previous single-string
|
|
97
|
+
* `theme.fg("dim", ...)` form render only the first line as dim.
|
|
98
|
+
*/
|
|
99
|
+
export declare function formatBashCommandLines(args: BashRenderArgs, uiTheme: Theme): string[];
|
|
100
|
+
export declare function createShellRenderer<TArgs>(config: ShellRendererConfig<TArgs>): {
|
|
101
|
+
renderCall(args: TArgs, options: RenderResultOptions, uiTheme: Theme): Component;
|
|
102
|
+
renderResult(result: {
|
|
103
|
+
content: Array<{
|
|
104
|
+
type: string;
|
|
105
|
+
text?: string;
|
|
106
|
+
}>;
|
|
107
|
+
details?: BashToolDetails;
|
|
108
|
+
isError?: boolean;
|
|
109
|
+
}, options: RenderResultOptions & {
|
|
110
|
+
renderContext?: BashRenderContext;
|
|
111
|
+
}, uiTheme: Theme, args?: TArgs): Component;
|
|
112
|
+
mergeCallAndResult: boolean;
|
|
113
|
+
inline: boolean;
|
|
114
|
+
};
|
|
115
|
+
export declare const bashToolRenderer: {
|
|
116
|
+
renderCall(args: BashRenderArgs, options: RenderResultOptions, uiTheme: Theme): Component;
|
|
117
|
+
renderResult(result: {
|
|
118
|
+
content: {
|
|
119
|
+
type: string;
|
|
120
|
+
text?: string;
|
|
121
|
+
}[];
|
|
122
|
+
details?: BashToolDetails;
|
|
123
|
+
isError?: boolean;
|
|
124
|
+
}, options: RenderResultOptions & {
|
|
125
|
+
renderContext?: BashRenderContext;
|
|
126
|
+
}, uiTheme: Theme, args?: BashRenderArgs | undefined): Component;
|
|
127
|
+
mergeCallAndResult: boolean;
|
|
128
|
+
inline: boolean;
|
|
129
|
+
};
|
|
130
|
+
export {};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { Browser, Page } from "puppeteer-core";
|
|
2
|
+
/**
|
|
3
|
+
* Allocate an unused TCP port on 127.0.0.1 by binding to port 0 and reading
|
|
4
|
+
* back the kernel-assigned port. There's a small race between close and the
|
|
5
|
+
* subsequent bind in the launched app, but Chromium's listener will retry.
|
|
6
|
+
*/
|
|
7
|
+
export declare function findFreeCdpPort(): Promise<number>;
|
|
8
|
+
/** Poll `${cdpUrl}/json/version` until it responds with 200, with abort + timeout support. */
|
|
9
|
+
export declare function waitForCdp(cdpUrl: string, timeoutMs: number, signal?: AbortSignal): Promise<void>;
|
|
10
|
+
/**
|
|
11
|
+
* If any running instance of `exe` was launched with `--remote-debugging-port`
|
|
12
|
+
* and that endpoint actually answers, return it so attach can reuse it instead
|
|
13
|
+
* of killing and respawning. Idempotent re-attaches are the common case.
|
|
14
|
+
*/
|
|
15
|
+
export declare function findReusableCdp(exe: string, signal?: AbortSignal): Promise<{
|
|
16
|
+
cdpUrl: string;
|
|
17
|
+
pid: number;
|
|
18
|
+
} | null>;
|
|
19
|
+
/**
|
|
20
|
+
* Pick the best page target on an attached browser. Without a matcher, prefer
|
|
21
|
+
* a page that doesn't look like a helper window (devtools, request handler,
|
|
22
|
+
* background pages); with a matcher, return the first url+title substring hit.
|
|
23
|
+
*/
|
|
24
|
+
export declare function pickElectronTarget(browser: Browser, matcher?: string): Promise<Page>;
|
|
25
|
+
/**
|
|
26
|
+
* SIGTERM the process tree, wait briefly, then SIGKILL anything still alive.
|
|
27
|
+
* Single-process variant for our own spawned children.
|
|
28
|
+
*/
|
|
29
|
+
export declare function gracefulKillTreeOnce(pid: number, gracePeriodMs?: number): Promise<void>;
|
|
30
|
+
/**
|
|
31
|
+
* Multi-process variant for attach: find every PID running `executablePath`
|
|
32
|
+
* (single-instance apps may keep an orphan around) and tear them all down.
|
|
33
|
+
*/
|
|
34
|
+
export declare function killExistingByPath(executablePath: string, signal?: AbortSignal): Promise<number>;
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import type { Browser, CDPSession, Page, default as Puppeteer, Target } from "puppeteer-core";
|
|
2
|
+
export declare const DEFAULT_VIEWPORT: {
|
|
3
|
+
width: number;
|
|
4
|
+
height: number;
|
|
5
|
+
deviceScaleFactor: number;
|
|
6
|
+
};
|
|
7
|
+
/**
|
|
8
|
+
* Per-CDP-message timeout applied to every puppeteer launch/connect. Set above
|
|
9
|
+
* `TOOL_TIMEOUTS.browser.max` (30s) so the agent-side wall-clock is the canonical
|
|
10
|
+
* limit; this constant only catches genuinely stuck CDP sockets (renderer wedged,
|
|
11
|
+
* connection dropped, etc.).
|
|
12
|
+
*/
|
|
13
|
+
export declare const BROWSER_PROTOCOL_TIMEOUT_MS = 60000;
|
|
14
|
+
export declare function loadPuppeteer(): Promise<typeof Puppeteer>;
|
|
15
|
+
export declare function loadPuppeteerInWorker(safeDir: string): Promise<typeof Puppeteer>;
|
|
16
|
+
export interface LaunchHeadlessOptions {
|
|
17
|
+
headless: boolean;
|
|
18
|
+
viewport?: {
|
|
19
|
+
width: number;
|
|
20
|
+
height: number;
|
|
21
|
+
deviceScaleFactor?: number;
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
export declare function launchHeadlessBrowser(opts: LaunchHeadlessOptions): Promise<Browser>;
|
|
25
|
+
export declare function applyViewport(page: Page, viewport?: {
|
|
26
|
+
width: number;
|
|
27
|
+
height: number;
|
|
28
|
+
deviceScaleFactor?: number;
|
|
29
|
+
}): Promise<void>;
|
|
30
|
+
export interface UserAgentOverride {
|
|
31
|
+
userAgent: string;
|
|
32
|
+
platform: string;
|
|
33
|
+
acceptLanguage: string;
|
|
34
|
+
userAgentMetadata: {
|
|
35
|
+
brands: Array<{
|
|
36
|
+
brand: string;
|
|
37
|
+
version: string;
|
|
38
|
+
}>;
|
|
39
|
+
fullVersion: string;
|
|
40
|
+
platform: string;
|
|
41
|
+
platformVersion: string;
|
|
42
|
+
architecture: string;
|
|
43
|
+
model: string;
|
|
44
|
+
mobile: boolean;
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
export interface UserAgentSession {
|
|
48
|
+
override: UserAgentOverride;
|
|
49
|
+
browserSession: CDPSession | null;
|
|
50
|
+
}
|
|
51
|
+
/** Apply stealth patches + UA override to a headless page. Idempotent within a tab. */
|
|
52
|
+
export declare function applyStealthPatches(browser: Browser, page: Page, state: {
|
|
53
|
+
browserSession: CDPSession | null;
|
|
54
|
+
override: UserAgentOverride | null;
|
|
55
|
+
}): Promise<void>;
|
|
56
|
+
export declare function targetSupportsUserAgentOverrideForTest(target: Target): boolean;
|
|
57
|
+
export declare function configureUserAgentTargetsForTest(browser: Browser, state: {
|
|
58
|
+
browserSession: CDPSession | null;
|
|
59
|
+
override: UserAgentOverride;
|
|
60
|
+
}, targetTimeoutMs?: number): Promise<void>;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export type ReadableFormat = "text" | "markdown";
|
|
2
|
+
export interface ReadableResult {
|
|
3
|
+
url: string;
|
|
4
|
+
title?: string;
|
|
5
|
+
byline?: string;
|
|
6
|
+
excerpt?: string;
|
|
7
|
+
contentLength: number;
|
|
8
|
+
text?: string;
|
|
9
|
+
markdown?: string;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Extract readable content from raw HTML.
|
|
13
|
+
* Tries Readability (article-isolation scoring) first, then falls back to a
|
|
14
|
+
* CSS selector chain over the same pre-parsed DOM. Returns null if neither
|
|
15
|
+
* path yields usable content.
|
|
16
|
+
*/
|
|
17
|
+
export declare function extractReadableFromHtml(html: string, url: string, format: ReadableFormat): Promise<ReadableResult | null>;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { Subprocess } from "bun";
|
|
2
|
+
import type { Browser, CDPSession } from "puppeteer-core";
|
|
3
|
+
import { type UserAgentOverride } from "./launch";
|
|
4
|
+
export type BrowserKind = {
|
|
5
|
+
kind: "headless";
|
|
6
|
+
headless: boolean;
|
|
7
|
+
} | {
|
|
8
|
+
kind: "spawned";
|
|
9
|
+
path: string;
|
|
10
|
+
} | {
|
|
11
|
+
kind: "connected";
|
|
12
|
+
cdpUrl: string;
|
|
13
|
+
};
|
|
14
|
+
export type BrowserKindTag = BrowserKind["kind"];
|
|
15
|
+
export interface BrowserHandle {
|
|
16
|
+
key: string;
|
|
17
|
+
kind: BrowserKind;
|
|
18
|
+
browser: Browser;
|
|
19
|
+
cdpUrl?: string;
|
|
20
|
+
pid?: number;
|
|
21
|
+
subprocess?: Subprocess;
|
|
22
|
+
refCount: number;
|
|
23
|
+
stealth: {
|
|
24
|
+
browserSession: CDPSession | null;
|
|
25
|
+
override: UserAgentOverride | null;
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
export interface AcquireBrowserOptions {
|
|
29
|
+
cwd: string;
|
|
30
|
+
viewport?: {
|
|
31
|
+
width: number;
|
|
32
|
+
height: number;
|
|
33
|
+
deviceScaleFactor?: number;
|
|
34
|
+
};
|
|
35
|
+
appArgs?: string[];
|
|
36
|
+
signal?: AbortSignal;
|
|
37
|
+
}
|
|
38
|
+
export declare function acquireBrowser(kind: BrowserKind, opts: AcquireBrowserOptions): Promise<BrowserHandle>;
|
|
39
|
+
export declare function holdBrowser(handle: BrowserHandle): void;
|
|
40
|
+
export declare function releaseBrowser(handle: BrowserHandle, opts: {
|
|
41
|
+
kill: boolean;
|
|
42
|
+
}): Promise<void>;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* TUI renderer for the browser tool.
|
|
3
|
+
*
|
|
4
|
+
* Mirrors the `eval` tool look: each `run` invocation is shown as a JS code
|
|
5
|
+
* cell with status icon, optional output, and expand/collapse handling. `open`
|
|
6
|
+
* and `close` actions render as compact status lines.
|
|
7
|
+
*/
|
|
8
|
+
import type { Component } from "@oh-my-pi/pi-tui";
|
|
9
|
+
import type { RenderResultOptions } from "../../extensibility/custom-tools/types";
|
|
10
|
+
import type { Theme } from "../../modes/theme/theme";
|
|
11
|
+
import type { BrowserToolDetails } from "../browser";
|
|
12
|
+
interface BrowserRenderArgs {
|
|
13
|
+
action?: "open" | "close" | "run";
|
|
14
|
+
name?: string;
|
|
15
|
+
url?: string;
|
|
16
|
+
code?: string;
|
|
17
|
+
all?: boolean;
|
|
18
|
+
kill?: boolean;
|
|
19
|
+
app?: {
|
|
20
|
+
path?: string;
|
|
21
|
+
cdp_url?: string;
|
|
22
|
+
target?: string;
|
|
23
|
+
};
|
|
24
|
+
viewport?: {
|
|
25
|
+
width: number;
|
|
26
|
+
height: number;
|
|
27
|
+
scale?: number;
|
|
28
|
+
};
|
|
29
|
+
timeout?: number;
|
|
30
|
+
}
|
|
31
|
+
interface BrowserRenderContext {
|
|
32
|
+
expanded?: boolean;
|
|
33
|
+
previewLines?: number;
|
|
34
|
+
}
|
|
35
|
+
export declare const browserToolRenderer: {
|
|
36
|
+
renderCall(args: BrowserRenderArgs, options: RenderResultOptions, theme: Theme): Component;
|
|
37
|
+
renderResult(result: {
|
|
38
|
+
content: Array<{
|
|
39
|
+
type: string;
|
|
40
|
+
text?: string;
|
|
41
|
+
}>;
|
|
42
|
+
details?: BrowserToolDetails;
|
|
43
|
+
isError?: boolean;
|
|
44
|
+
}, options: RenderResultOptions & {
|
|
45
|
+
renderContext?: BrowserRenderContext;
|
|
46
|
+
}, theme: Theme, args?: BrowserRenderArgs): Component;
|
|
47
|
+
mergeCallAndResult: boolean;
|
|
48
|
+
inline: boolean;
|
|
49
|
+
};
|
|
50
|
+
export {};
|