@astralyn/pi 1.0.5 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +79 -0
- package/dist/bundle/chunks/anthropic-messages-NVP5OPIM.js +6 -0
- package/dist/bundle/chunks/anthropic.js +1 -1
- package/dist/bundle/chunks/{azure-openai-responses-LDW4FGAQ.js → azure-openai-responses-IBTOZ5MH.js} +1 -1
- package/dist/bundle/chunks/bedrock-converse-stream.js +2 -2
- package/dist/bundle/chunks/chunk-4XZYHGVN.js +11 -0
- package/dist/bundle/chunks/{chunk-GIG5IHES.js → chunk-5KJH3GGH.js} +1 -1
- package/dist/bundle/chunks/chunk-6VYRLG5F.js +2 -0
- package/dist/bundle/chunks/{chunk-UCXU7KLO.js → chunk-7HJ6CHUB.js} +1 -1
- package/dist/bundle/chunks/chunk-7UBIBLPN.js +2 -0
- package/dist/bundle/chunks/{chunk-IE3Z7ESB.js → chunk-A5HU4TE6.js} +418 -362
- package/dist/bundle/chunks/{chunk-HDHRZ7GT.js → chunk-B2UOWO4A.js} +1 -1
- package/dist/bundle/chunks/chunk-J75WV3FL.js +2 -0
- package/dist/bundle/chunks/{chunk-A6ALEEY5.js → chunk-LHSPN2IO.js} +1 -1
- package/dist/bundle/chunks/chunk-Q74S7ILH.js +2 -0
- package/dist/bundle/chunks/chunk-QDDSFJ35.js +2 -0
- package/dist/bundle/chunks/{chunk-IFELM7MW.js → chunk-UQECUCUH.js} +1 -1
- package/dist/bundle/chunks/cloudflare-workers-ai-system-one-HGOVFZDC.js +2 -0
- package/dist/bundle/chunks/codemode-worker.js +18 -10
- package/dist/bundle/chunks/github-copilot.js +1 -1
- package/dist/bundle/chunks/{google-generative-ai-S5A5IBU4.js → google-generative-ai-M44TSMAN.js} +1 -1
- package/dist/bundle/chunks/{google-vertex-UBRQFDB4.js → google-vertex-3C4OWLFX.js} +1 -1
- package/dist/bundle/chunks/image-resize-worker.js +1 -1
- package/dist/bundle/chunks/{llama-cpp-classify-R7DQLTQN.js → llama-cpp-classify-H3IZDR5O.js} +2 -2
- package/dist/bundle/chunks/mistral-conversations-I5PL4VCZ.js +5 -0
- package/dist/bundle/chunks/openai-chatgpt.js +1 -1
- package/dist/bundle/chunks/openai-codex-responses-O5EUDL54.js +10 -0
- package/dist/bundle/chunks/openai-codex.js +1 -1
- package/dist/bundle/chunks/{openai-completions-H4VMO7AU.js → openai-completions-X3SSG5BQ.js} +1 -1
- package/dist/bundle/chunks/openai-decisions-TVCDIPZX.js +5 -0
- package/dist/bundle/chunks/{openai-responses-G4PGNM2H.js → openai-responses-NYPNKVDV.js} +1 -1
- package/dist/bundle/chunks/{openrouter-images-YP3YVB54.js → openrouter-images-TDLJV5N4.js} +1 -1
- package/dist/bundle/chunks/{pi-messages-HZZ7GEEW.js → pi-messages-ZXNERWJG.js} +1 -1
- package/dist/bundle/chunks/typesafe-system-one-LWPJYTJP.js +2 -0
- package/dist/bundle/chunks/{virtual-modules-46MSJGKO.js → virtual-modules-OZTPKGU7.js} +1 -1
- package/dist/bundle/cli.js +1 -1
- package/dist/bundle/index.js +1 -1
- package/dist/bundle/rpc-entry.js +1 -1
- package/dist/cli/args.d.ts +1 -1
- package/dist/cli/args.d.ts.map +1 -1
- package/dist/cli/args.js +13 -1
- package/dist/cli/args.js.map +1 -1
- package/dist/core/agent-session.d.ts +26 -7
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +190 -183
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/auth-storage.d.ts.map +1 -1
- package/dist/core/auth-storage.js +20 -13
- package/dist/core/auth-storage.js.map +1 -1
- package/dist/core/bash-executor.d.ts.map +1 -1
- package/dist/core/bash-executor.js +40 -45
- package/dist/core/bash-executor.js.map +1 -1
- package/dist/core/bug-report.d.ts +9 -1
- package/dist/core/bug-report.d.ts.map +1 -1
- package/dist/core/compaction/utils.d.ts +6 -0
- package/dist/core/compaction/utils.d.ts.map +1 -1
- package/dist/core/compaction/utils.js +7 -8
- package/dist/core/compaction/utils.js.map +1 -1
- package/dist/core/context-snapshot.d.ts +4 -1
- package/dist/core/context-snapshot.d.ts.map +1 -1
- package/dist/core/context-snapshot.js +45 -0
- package/dist/core/context-snapshot.js.map +1 -1
- package/dist/core/export-html/tool-renderer.d.ts.map +1 -1
- package/dist/core/export-html/tool-renderer.js +2 -0
- package/dist/core/export-html/tool-renderer.js.map +1 -1
- package/dist/core/extensions/index.d.ts +1 -1
- package/dist/core/extensions/index.d.ts.map +1 -1
- package/dist/core/extensions/index.js.map +1 -1
- package/dist/core/extensions/runner.d.ts +4 -2
- package/dist/core/extensions/runner.d.ts.map +1 -1
- package/dist/core/extensions/runner.js +2 -3
- package/dist/core/extensions/runner.js.map +1 -1
- package/dist/core/extensions/types.d.ts +42 -7
- package/dist/core/extensions/types.d.ts.map +1 -1
- package/dist/core/extensions/types.js.map +1 -1
- package/dist/core/key-id-schema.d.ts +6 -0
- package/dist/core/key-id-schema.d.ts.map +1 -0
- package/dist/core/key-id-schema.js +16 -0
- package/dist/core/key-id-schema.js.map +1 -0
- package/dist/core/keybinding-registry.d.ts +4 -3
- package/dist/core/keybinding-registry.d.ts.map +1 -1
- package/dist/core/keybinding-registry.js +4 -3
- package/dist/core/keybinding-registry.js.map +1 -1
- package/dist/core/keybindings-schema.d.ts +4 -0
- package/dist/core/keybindings-schema.d.ts.map +1 -0
- package/dist/core/keybindings-schema.js +16 -0
- package/dist/core/keybindings-schema.js.map +1 -0
- package/dist/core/keybindings.d.ts +258 -81
- package/dist/core/keybindings.d.ts.map +1 -1
- package/dist/core/keybindings.js +27 -24
- package/dist/core/keybindings.js.map +1 -1
- package/dist/core/model-config.d.ts +713 -180
- package/dist/core/model-config.d.ts.map +1 -1
- package/dist/core/model-config.js +18 -179
- package/dist/core/model-config.js.map +1 -1
- package/dist/core/model-runtime.d.ts.map +1 -1
- package/dist/core/model-runtime.js +13 -7
- package/dist/core/model-runtime.js.map +1 -1
- package/dist/core/nested-tool-calls.d.ts +1 -0
- package/dist/core/nested-tool-calls.d.ts.map +1 -1
- package/dist/core/nested-tool-calls.js +1 -0
- package/dist/core/nested-tool-calls.js.map +1 -1
- package/dist/core/package-manager.d.ts.map +1 -1
- package/dist/core/package-manager.js +3 -3
- package/dist/core/package-manager.js.map +1 -1
- package/dist/core/project-trust.d.ts.map +1 -1
- package/dist/core/project-trust.js +2 -1
- package/dist/core/project-trust.js.map +1 -1
- package/dist/core/remote-catalog-provider.d.ts +12 -1
- package/dist/core/remote-catalog-provider.d.ts.map +1 -1
- package/dist/core/remote-catalog-provider.js +82 -24
- package/dist/core/remote-catalog-provider.js.map +1 -1
- package/dist/core/resource-loader.d.ts.map +1 -1
- package/dist/core/resource-loader.js +7 -2
- package/dist/core/resource-loader.js.map +1 -1
- package/dist/core/sdk.d.ts +4 -0
- package/dist/core/sdk.d.ts.map +1 -1
- package/dist/core/sdk.js +17 -5
- package/dist/core/sdk.js.map +1 -1
- package/dist/core/settings-defaults.d.ts +65 -0
- package/dist/core/settings-defaults.d.ts.map +1 -0
- package/dist/core/settings-defaults.js +66 -0
- package/dist/core/settings-defaults.js.map +1 -0
- package/dist/core/settings-manager.d.ts +15 -147
- package/dist/core/settings-manager.d.ts.map +1 -1
- package/dist/core/settings-manager.js +85 -57
- package/dist/core/settings-manager.js.map +1 -1
- package/dist/core/settings-schema.d.ts +231 -0
- package/dist/core/settings-schema.d.ts.map +1 -0
- package/dist/core/settings-schema.js +294 -0
- package/dist/core/settings-schema.js.map +1 -0
- package/dist/core/tasks/session.d.ts +9 -0
- package/dist/core/tasks/session.d.ts.map +1 -1
- package/dist/core/tasks/session.js +21 -0
- package/dist/core/tasks/session.js.map +1 -1
- package/dist/core/tools/render-utils.d.ts +18 -0
- package/dist/core/tools/render-utils.d.ts.map +1 -1
- package/dist/core/tools/render-utils.js +46 -0
- package/dist/core/tools/render-utils.js.map +1 -1
- package/dist/core/tools/renderers/bash.d.ts.map +1 -1
- package/dist/core/tools/renderers/bash.js +21 -45
- package/dist/core/tools/renderers/bash.js.map +1 -1
- package/dist/core/tools/renderers/edit.js +1 -1
- package/dist/core/tools/renderers/edit.js.map +1 -1
- package/dist/extensions/btw/keybindings.d.ts +2 -2
- package/dist/extensions/btw/keybindings.d.ts.map +1 -1
- package/dist/extensions/btw/keybindings.js.map +1 -1
- package/dist/extensions/codemode/execute.d.ts.map +1 -1
- package/dist/extensions/codemode/execute.js +115 -40
- package/dist/extensions/codemode/execute.js.map +1 -1
- package/dist/extensions/codemode/index.d.ts.map +1 -1
- package/dist/extensions/codemode/index.js +3 -7
- package/dist/extensions/codemode/index.js.map +1 -1
- package/dist/extensions/codemode/renderer.d.ts +2 -2
- package/dist/extensions/codemode/renderer.d.ts.map +1 -1
- package/dist/extensions/codemode/renderer.js +9 -3
- package/dist/extensions/codemode/renderer.js.map +1 -1
- package/dist/extensions/codemode/tool.d.ts +6 -12
- package/dist/extensions/codemode/tool.d.ts.map +1 -1
- package/dist/extensions/codemode/tool.js +46 -34
- package/dist/extensions/codemode/tool.js.map +1 -1
- package/dist/extensions/index.js +2 -2
- package/dist/extensions/index.js.map +1 -1
- package/dist/extensions/list-keybindings.d.ts +2 -2
- package/dist/extensions/list-keybindings.d.ts.map +1 -1
- package/dist/extensions/list-keybindings.js.map +1 -1
- package/dist/extensions/llama/provider.d.ts.map +1 -1
- package/dist/extensions/llama/provider.js +34 -11
- package/dist/extensions/llama/provider.js.map +1 -1
- package/dist/extensions/mcp/cli.js +22 -31
- package/dist/extensions/mcp/cli.js.map +1 -1
- package/dist/extensions/mcp/index.d.ts.map +1 -1
- package/dist/extensions/mcp/index.js +187 -95
- package/dist/extensions/mcp/index.js.map +1 -1
- package/dist/extensions/mcp/oauth.d.ts +5 -3
- package/dist/extensions/mcp/oauth.d.ts.map +1 -1
- package/dist/extensions/mcp/oauth.js +36 -10
- package/dist/extensions/mcp/oauth.js.map +1 -1
- package/dist/extensions/mcp/resources.d.ts +0 -6
- package/dist/extensions/mcp/resources.d.ts.map +1 -1
- package/dist/extensions/mcp/resources.js +1 -1
- package/dist/extensions/mcp/resources.js.map +1 -1
- package/dist/extensions/mcp/runtime.d.ts +3 -6
- package/dist/extensions/mcp/runtime.d.ts.map +1 -1
- package/dist/extensions/mcp/runtime.js +4 -39
- package/dist/extensions/mcp/runtime.js.map +1 -1
- package/dist/extensions/mcp/tools.d.ts +2 -3
- package/dist/extensions/mcp/tools.d.ts.map +1 -1
- package/dist/extensions/mcp/tools.js +62 -6
- package/dist/extensions/mcp/tools.js.map +1 -1
- package/dist/extensions/mcp/ui.d.ts +3 -3
- package/dist/extensions/mcp/ui.d.ts.map +1 -1
- package/dist/extensions/mcp/ui.js +10 -2
- package/dist/extensions/mcp/ui.js.map +1 -1
- package/dist/extensions/provider/keybindings.d.ts +2 -2
- package/dist/extensions/provider/keybindings.d.ts.map +1 -1
- package/dist/extensions/provider/keybindings.js.map +1 -1
- package/dist/extensions/search/code-search.d.ts +27 -0
- package/dist/extensions/search/code-search.d.ts.map +1 -0
- package/dist/extensions/search/code-search.js +120 -0
- package/dist/extensions/search/code-search.js.map +1 -0
- package/dist/extensions/search/command.d.ts +5 -0
- package/dist/extensions/search/command.d.ts.map +1 -0
- package/dist/extensions/search/command.js +69 -0
- package/dist/extensions/search/command.js.map +1 -0
- package/dist/extensions/search/credential.d.ts +25 -0
- package/dist/extensions/search/credential.d.ts.map +1 -0
- package/dist/extensions/search/credential.js +117 -0
- package/dist/extensions/search/credential.js.map +1 -0
- package/dist/extensions/search/devin.d.ts +34 -0
- package/dist/extensions/search/devin.d.ts.map +1 -0
- package/dist/extensions/search/devin.js +210 -0
- package/dist/extensions/search/devin.js.map +1 -0
- package/dist/extensions/search/index.d.ts +5 -0
- package/dist/extensions/search/index.d.ts.map +1 -0
- package/dist/extensions/search/index.js +113 -0
- package/dist/extensions/search/index.js.map +1 -0
- package/dist/extensions/search/panel.d.ts +53 -0
- package/dist/extensions/search/panel.d.ts.map +1 -0
- package/dist/extensions/search/panel.js +157 -0
- package/dist/extensions/search/panel.js.map +1 -0
- package/dist/extensions/search/prompt.d.ts +14 -0
- package/dist/extensions/search/prompt.d.ts.map +1 -0
- package/dist/extensions/search/prompt.js +221 -0
- package/dist/extensions/search/prompt.js.map +1 -0
- package/dist/extensions/search/render.d.ts +28 -0
- package/dist/extensions/search/render.d.ts.map +1 -0
- package/dist/extensions/search/render.js +86 -0
- package/dist/extensions/search/render.js.map +1 -0
- package/dist/extensions/search/workspace.d.ts +39 -0
- package/dist/extensions/search/workspace.d.ts.map +1 -0
- package/dist/extensions/search/workspace.js +363 -0
- package/dist/extensions/search/workspace.js.map +1 -0
- package/dist/extensions/tool-search/index.d.ts.map +1 -1
- package/dist/extensions/tool-search/index.js +1 -6
- package/dist/extensions/tool-search/index.js.map +1 -1
- package/dist/extensions/tool-search/tool.d.ts +0 -2
- package/dist/extensions/tool-search/tool.d.ts.map +1 -1
- package/dist/extensions/tool-search/tool.js +2 -4
- package/dist/extensions/tool-search/tool.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/main.js +3 -3
- package/dist/main.js.map +1 -1
- package/dist/modes/interactive/components/bash-execution.d.ts +5 -1
- package/dist/modes/interactive/components/bash-execution.d.ts.map +1 -1
- package/dist/modes/interactive/components/bash-execution.js +14 -14
- package/dist/modes/interactive/components/bash-execution.js.map +1 -1
- package/dist/modes/interactive/components/branch-summary-message.d.ts +2 -1
- package/dist/modes/interactive/components/branch-summary-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/branch-summary-message.js +5 -2
- package/dist/modes/interactive/components/branch-summary-message.js.map +1 -1
- package/dist/modes/interactive/components/compaction-summary-message.d.ts +2 -1
- package/dist/modes/interactive/components/compaction-summary-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/compaction-summary-message.js +5 -2
- package/dist/modes/interactive/components/compaction-summary-message.js.map +1 -1
- package/dist/modes/interactive/components/custom-entry.d.ts +3 -1
- package/dist/modes/interactive/components/custom-entry.d.ts.map +1 -1
- package/dist/modes/interactive/components/custom-entry.js +7 -2
- package/dist/modes/interactive/components/custom-entry.js.map +1 -1
- package/dist/modes/interactive/components/custom-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/custom-message.js +1 -0
- package/dist/modes/interactive/components/custom-message.js.map +1 -1
- package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/settings-selector.js +4 -3
- package/dist/modes/interactive/components/settings-selector.js.map +1 -1
- package/dist/modes/interactive/components/skill-invocation-message.d.ts +2 -1
- package/dist/modes/interactive/components/skill-invocation-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/skill-invocation-message.js +5 -2
- package/dist/modes/interactive/components/skill-invocation-message.js.map +1 -1
- package/dist/modes/interactive/components/status-indicator.d.ts +1 -1
- package/dist/modes/interactive/components/status-indicator.d.ts.map +1 -1
- package/dist/modes/interactive/components/status-indicator.js +2 -2
- package/dist/modes/interactive/components/status-indicator.js.map +1 -1
- package/dist/modes/interactive/interactive-mode.d.ts +2 -0
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +63 -64
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/dist/modes/interactive/program-status-reporter.d.ts +34 -0
- package/dist/modes/interactive/program-status-reporter.d.ts.map +1 -0
- package/dist/modes/interactive/program-status-reporter.js +107 -0
- package/dist/modes/interactive/program-status-reporter.js.map +1 -0
- package/dist/modes/interactive/tasks/host-hooks.d.ts +14 -0
- package/dist/modes/interactive/tasks/host-hooks.d.ts.map +1 -0
- package/dist/modes/interactive/tasks/host-hooks.js +31 -0
- package/dist/modes/interactive/tasks/host-hooks.js.map +1 -0
- package/dist/modes/interactive/theme/dark.json +1 -1
- package/dist/modes/interactive/theme/light.json +1 -1
- package/dist/modes/interactive/theme/theme-schema.d.ts +28 -0
- package/dist/modes/interactive/theme/theme-schema.d.ts.map +1 -0
- package/dist/modes/interactive/theme/theme-schema.js +105 -0
- package/dist/modes/interactive/theme/theme-schema.js.map +1 -0
- package/dist/modes/interactive/theme/theme-tokens.d.ts +257 -0
- package/dist/modes/interactive/theme/theme-tokens.d.ts.map +1 -0
- package/dist/modes/interactive/theme/theme-tokens.js +94 -0
- package/dist/modes/interactive/theme/theme-tokens.js.map +1 -0
- package/dist/modes/interactive/theme/theme.d.ts +13 -16
- package/dist/modes/interactive/theme/theme.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme.js +23 -31
- package/dist/modes/interactive/theme/theme.js.map +1 -1
- package/dist/modes/interactive/tool-view/tool-execution.d.ts +5 -0
- package/dist/modes/interactive/tool-view/tool-execution.d.ts.map +1 -1
- package/dist/modes/interactive/tool-view/tool-execution.js +7 -0
- package/dist/modes/interactive/tool-view/tool-execution.js.map +1 -1
- package/dist/modes/print-mode.d.ts.map +1 -1
- package/dist/modes/print-mode.js +4 -0
- package/dist/modes/print-mode.js.map +1 -1
- package/dist/package-manager-cli.d.ts.map +1 -1
- package/dist/package-manager-cli.js +24 -0
- package/dist/package-manager-cli.js.map +1 -1
- package/dist/utils/ansi.d.ts +8 -0
- package/dist/utils/ansi.d.ts.map +1 -1
- package/dist/utils/ansi.js +30 -11
- package/dist/utils/ansi.js.map +1 -1
- package/dist/utils/clipboard.d.ts.map +1 -1
- package/dist/utils/clipboard.js +18 -12
- package/dist/utils/clipboard.js.map +1 -1
- package/dist/utils/image-resize-core.d.ts +12 -0
- package/dist/utils/image-resize-core.d.ts.map +1 -1
- package/dist/utils/image-resize-core.js +5 -0
- package/dist/utils/image-resize-core.js.map +1 -1
- package/dist/utils/image-resize-worker.js +3 -2
- package/dist/utils/image-resize-worker.js.map +1 -1
- package/dist/utils/image-resize.d.ts.map +1 -1
- package/dist/utils/image-resize.js +9 -10
- package/dist/utils/image-resize.js.map +1 -1
- package/docs/bundled/README.md +1 -1
- package/docs/bundled/extensions/provider.md +1 -1
- package/docs/bundled/extensions/question.md +1 -1
- package/docs/bundled/extensions/search.md +51 -0
- package/docs/bundled/extensions/statusline.md +15 -41
- package/docs/codemode.md +24 -4
- package/docs/compaction.md +2 -2
- package/docs/docs.json +0 -4
- package/docs/environment-variables.md +3 -1
- package/docs/extensions.md +15 -5
- package/docs/json.md +2 -2
- package/docs/keybindings.md +1 -0
- package/docs/llama-cpp.md +8 -1
- package/docs/mcp.md +1 -1
- package/docs/models.md +5 -1
- package/docs/providers.md +33 -0
- package/docs/rpc.md +6 -3
- package/docs/session-format.md +1 -0
- package/docs/settings.md +5 -5
- package/docs/terminal-setup.md +14 -0
- package/docs/themes.md +4 -2
- package/docs/tui.md +1 -1
- package/docs/usage.md +7 -3
- package/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
- package/examples/extensions/custom-provider-anthropic/package.json +1 -1
- package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
- package/examples/extensions/dynamic-resources/dynamic.json +1 -1
- package/examples/extensions/gondolin/package-lock.json +2 -2
- package/examples/extensions/gondolin/package.json +1 -1
- package/examples/extensions/overlay-test.ts +2 -2
- package/examples/extensions/plan-mode/index.ts +6 -2
- package/examples/extensions/sandbox/package-lock.json +2 -2
- package/examples/extensions/sandbox/package.json +1 -1
- package/examples/extensions/with-deps/package-lock.json +2 -2
- package/examples/extensions/with-deps/package.json +1 -1
- package/npm-shrinkwrap.json +54 -102
- package/package.json +10 -20
- package/schemas/keybindings.schema.json +453 -0
- package/schemas/models.schema.json +1157 -0
- package/schemas/settings.schema.json +782 -0
- package/schemas/theme.schema.json +365 -0
- package/dist/bundle/chunks/anthropic-messages-YIOJIMVL.js +0 -6
- package/dist/bundle/chunks/chunk-57XI7YJH.js +0 -2
- package/dist/bundle/chunks/chunk-JI4WGISU.js +0 -2
- package/dist/bundle/chunks/chunk-TCQ4HHQD.js +0 -2
- package/dist/bundle/chunks/chunk-TXJO4AJ7.js +0 -11
- package/dist/bundle/chunks/cloudflare-workers-ai-system-one-OWU5SM6J.js +0 -2
- package/dist/bundle/chunks/mistral-conversations-A2N5FSOV.js +0 -5
- package/dist/bundle/chunks/openai-codex-responses-Q6JHCWLE.js +0 -10
- package/dist/bundle/chunks/typesafe-system-one-KYKKNU3E.js +0 -2
- package/dist/extensions/web-search/auth.d.ts +0 -12
- package/dist/extensions/web-search/auth.d.ts.map +0 -1
- package/dist/extensions/web-search/auth.js +0 -90
- package/dist/extensions/web-search/auth.js.map +0 -1
- package/dist/extensions/web-search/constants.d.ts +0 -13
- package/dist/extensions/web-search/constants.d.ts.map +0 -1
- package/dist/extensions/web-search/constants.js +0 -26
- package/dist/extensions/web-search/constants.js.map +0 -1
- package/dist/extensions/web-search/execute.d.ts +0 -9
- package/dist/extensions/web-search/execute.d.ts.map +0 -1
- package/dist/extensions/web-search/execute.js +0 -96
- package/dist/extensions/web-search/execute.js.map +0 -1
- package/dist/extensions/web-search/format.d.ts +0 -21
- package/dist/extensions/web-search/format.d.ts.map +0 -1
- package/dist/extensions/web-search/format.js +0 -117
- package/dist/extensions/web-search/format.js.map +0 -1
- package/dist/extensions/web-search/index.d.ts +0 -6
- package/dist/extensions/web-search/index.d.ts.map +0 -1
- package/dist/extensions/web-search/index.js +0 -50
- package/dist/extensions/web-search/index.js.map +0 -1
- package/dist/extensions/web-search/providers/deepseek.d.ts +0 -13
- package/dist/extensions/web-search/providers/deepseek.d.ts.map +0 -1
- package/dist/extensions/web-search/providers/deepseek.js +0 -110
- package/dist/extensions/web-search/providers/deepseek.js.map +0 -1
- package/dist/extensions/web-search/providers/http.d.ts +0 -4
- package/dist/extensions/web-search/providers/http.d.ts.map +0 -1
- package/dist/extensions/web-search/providers/http.js +0 -42
- package/dist/extensions/web-search/providers/http.js.map +0 -1
- package/dist/extensions/web-search/providers/minimax.d.ts +0 -12
- package/dist/extensions/web-search/providers/minimax.d.ts.map +0 -1
- package/dist/extensions/web-search/providers/minimax.js +0 -61
- package/dist/extensions/web-search/providers/minimax.js.map +0 -1
- package/dist/extensions/web-search/render.d.ts +0 -15
- package/dist/extensions/web-search/render.d.ts.map +0 -1
- package/dist/extensions/web-search/render.js +0 -142
- package/dist/extensions/web-search/render.js.map +0 -1
- package/dist/extensions/web-search/results.d.ts +0 -35
- package/dist/extensions/web-search/results.d.ts.map +0 -1
- package/dist/extensions/web-search/results.js +0 -167
- package/dist/extensions/web-search/results.js.map +0 -1
- package/dist/extensions/web-search/schema.d.ts +0 -10
- package/dist/extensions/web-search/schema.d.ts.map +0 -1
- package/dist/extensions/web-search/schema.js +0 -36
- package/dist/extensions/web-search/schema.js.map +0 -1
- package/dist/extensions/web-search/types.d.ts +0 -51
- package/dist/extensions/web-search/types.d.ts.map +0 -1
- package/dist/extensions/web-search/types.js +0 -5
- package/dist/extensions/web-search/types.js.map +0 -1
- package/dist/modes/interactive/theme/theme-json.d.ts +0 -85
- package/dist/modes/interactive/theme/theme-json.d.ts.map +0 -1
- package/dist/modes/interactive/theme/theme-json.js +0 -132
- package/dist/modes/interactive/theme/theme-json.js.map +0 -1
- package/dist/modes/interactive/theme/theme-schema.json +0 -361
- package/docs/bundled/extensions/web-search.md +0 -46
- package/examples/plugins/pi-example-plugin/README.md +0 -38
- package/examples/plugins/pi-example-plugin/package.json +0 -10
- package/examples/plugins/pi-example-plugin/src/contract.ts +0 -13
- package/examples/plugins/pi-example-plugin/src/session.ts +0 -24
- package/examples/plugins/pi-example-plugin/src/tui.ts +0 -31
|
@@ -1,361 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
-
"title": "Pi Coding Agent Theme",
|
|
4
|
-
"description": "Theme schema for Pi coding agent",
|
|
5
|
-
"type": "object",
|
|
6
|
-
"required": ["name", "colors"],
|
|
7
|
-
"properties": {
|
|
8
|
-
"$schema": {
|
|
9
|
-
"type": "string",
|
|
10
|
-
"description": "JSON schema reference"
|
|
11
|
-
},
|
|
12
|
-
"name": {
|
|
13
|
-
"type": "string",
|
|
14
|
-
"pattern": "^[^/]+$",
|
|
15
|
-
"description": "Theme name. Must not contain '/' because it is reserved for automatic light/dark theme settings."
|
|
16
|
-
},
|
|
17
|
-
"appearance": {
|
|
18
|
-
"type": "string",
|
|
19
|
-
"enum": ["dark", "light"],
|
|
20
|
-
"description": "Background the theme is designed for. Detected from the theme colors when omitted."
|
|
21
|
-
},
|
|
22
|
-
"vars": {
|
|
23
|
-
"type": "object",
|
|
24
|
-
"description": "Reusable color variables",
|
|
25
|
-
"additionalProperties": {
|
|
26
|
-
"oneOf": [
|
|
27
|
-
{
|
|
28
|
-
"type": "string",
|
|
29
|
-
"description": "Hex color (#RGB or #RRGGBB), OKLCH or OKHSL color, variable reference, or empty string for terminal default"
|
|
30
|
-
},
|
|
31
|
-
{
|
|
32
|
-
"type": "integer",
|
|
33
|
-
"minimum": 0,
|
|
34
|
-
"maximum": 255,
|
|
35
|
-
"description": "256-color palette index (0-255)"
|
|
36
|
-
}
|
|
37
|
-
]
|
|
38
|
-
}
|
|
39
|
-
},
|
|
40
|
-
"colors": {
|
|
41
|
-
"type": "object",
|
|
42
|
-
"description": "Theme color definitions (scrollbar, thinkingMax, and search highlight colors are optional and use compatible fallbacks)",
|
|
43
|
-
"required": [
|
|
44
|
-
"accent",
|
|
45
|
-
"border",
|
|
46
|
-
"borderAccent",
|
|
47
|
-
"borderMuted",
|
|
48
|
-
"success",
|
|
49
|
-
"error",
|
|
50
|
-
"warning",
|
|
51
|
-
"muted",
|
|
52
|
-
"dim",
|
|
53
|
-
"text",
|
|
54
|
-
"thinkingText",
|
|
55
|
-
"selectedBg",
|
|
56
|
-
"userMessageBg",
|
|
57
|
-
"userMessageText",
|
|
58
|
-
"customMessageBg",
|
|
59
|
-
"customMessageText",
|
|
60
|
-
"customMessageLabel",
|
|
61
|
-
"toolPendingBg",
|
|
62
|
-
"toolSuccessBg",
|
|
63
|
-
"toolErrorBg",
|
|
64
|
-
"toolTitle",
|
|
65
|
-
"toolOutput",
|
|
66
|
-
"mdHeading",
|
|
67
|
-
"mdLink",
|
|
68
|
-
"mdLinkUrl",
|
|
69
|
-
"mdCode",
|
|
70
|
-
"mdCodeBlock",
|
|
71
|
-
"mdCodeBlockBorder",
|
|
72
|
-
"mdQuote",
|
|
73
|
-
"mdQuoteBorder",
|
|
74
|
-
"mdHr",
|
|
75
|
-
"mdListBullet",
|
|
76
|
-
"toolDiffAdded",
|
|
77
|
-
"toolDiffRemoved",
|
|
78
|
-
"toolDiffContext",
|
|
79
|
-
"syntaxComment",
|
|
80
|
-
"syntaxKeyword",
|
|
81
|
-
"syntaxFunction",
|
|
82
|
-
"syntaxVariable",
|
|
83
|
-
"syntaxString",
|
|
84
|
-
"syntaxNumber",
|
|
85
|
-
"syntaxType",
|
|
86
|
-
"syntaxOperator",
|
|
87
|
-
"syntaxPunctuation",
|
|
88
|
-
"thinkingOff",
|
|
89
|
-
"thinkingMinimal",
|
|
90
|
-
"thinkingLow",
|
|
91
|
-
"thinkingMedium",
|
|
92
|
-
"thinkingHigh",
|
|
93
|
-
"thinkingXhigh",
|
|
94
|
-
"bashMode"
|
|
95
|
-
],
|
|
96
|
-
"properties": {
|
|
97
|
-
"accent": {
|
|
98
|
-
"$ref": "#/$defs/colorValue",
|
|
99
|
-
"description": "Primary accent color (logo, selected items, cursor)"
|
|
100
|
-
},
|
|
101
|
-
"border": {
|
|
102
|
-
"$ref": "#/$defs/colorValue",
|
|
103
|
-
"description": "Normal borders"
|
|
104
|
-
},
|
|
105
|
-
"borderAccent": {
|
|
106
|
-
"$ref": "#/$defs/colorValue",
|
|
107
|
-
"description": "Highlighted borders"
|
|
108
|
-
},
|
|
109
|
-
"borderMuted": {
|
|
110
|
-
"$ref": "#/$defs/colorValue",
|
|
111
|
-
"description": "Subtle borders"
|
|
112
|
-
},
|
|
113
|
-
"success": {
|
|
114
|
-
"$ref": "#/$defs/colorValue",
|
|
115
|
-
"description": "Success states"
|
|
116
|
-
},
|
|
117
|
-
"error": {
|
|
118
|
-
"$ref": "#/$defs/colorValue",
|
|
119
|
-
"description": "Error states"
|
|
120
|
-
},
|
|
121
|
-
"warning": {
|
|
122
|
-
"$ref": "#/$defs/colorValue",
|
|
123
|
-
"description": "Warning states"
|
|
124
|
-
},
|
|
125
|
-
"muted": {
|
|
126
|
-
"$ref": "#/$defs/colorValue",
|
|
127
|
-
"description": "Secondary/dimmed text"
|
|
128
|
-
},
|
|
129
|
-
"dim": {
|
|
130
|
-
"$ref": "#/$defs/colorValue",
|
|
131
|
-
"description": "Very dimmed text (more subtle than muted)"
|
|
132
|
-
},
|
|
133
|
-
"text": {
|
|
134
|
-
"$ref": "#/$defs/colorValue",
|
|
135
|
-
"description": "Default text color (usually empty string)"
|
|
136
|
-
},
|
|
137
|
-
"thinkingText": {
|
|
138
|
-
"$ref": "#/$defs/colorValue",
|
|
139
|
-
"description": "Thinking block text color"
|
|
140
|
-
},
|
|
141
|
-
"selectedBg": {
|
|
142
|
-
"$ref": "#/$defs/colorValue",
|
|
143
|
-
"description": "Selected item background"
|
|
144
|
-
},
|
|
145
|
-
"scrollbarTrack": {
|
|
146
|
-
"$ref": "#/$defs/colorValue",
|
|
147
|
-
"description": "Fullscreen scrollbar track foreground (falls back to muted when omitted)"
|
|
148
|
-
},
|
|
149
|
-
"scrollbarThumb": {
|
|
150
|
-
"$ref": "#/$defs/colorValue",
|
|
151
|
-
"description": "Fullscreen scrollbar thumb foreground (falls back to text when omitted)"
|
|
152
|
-
},
|
|
153
|
-
"searchMatchBg": {
|
|
154
|
-
"$ref": "#/$defs/colorValue",
|
|
155
|
-
"description": "Transcript search match background and current-match text (falls back to selectedBg when omitted)"
|
|
156
|
-
},
|
|
157
|
-
"searchMatchText": {
|
|
158
|
-
"$ref": "#/$defs/colorValue",
|
|
159
|
-
"description": "Transcript search match text and current-match background (falls back to text when omitted)"
|
|
160
|
-
},
|
|
161
|
-
"userMessageBg": {
|
|
162
|
-
"$ref": "#/$defs/colorValue",
|
|
163
|
-
"description": "User message background"
|
|
164
|
-
},
|
|
165
|
-
"userMessageText": {
|
|
166
|
-
"$ref": "#/$defs/colorValue",
|
|
167
|
-
"description": "User message text color"
|
|
168
|
-
},
|
|
169
|
-
"customMessageBg": {
|
|
170
|
-
"$ref": "#/$defs/colorValue",
|
|
171
|
-
"description": "Custom message background (hook-injected messages)"
|
|
172
|
-
},
|
|
173
|
-
"customMessageText": {
|
|
174
|
-
"$ref": "#/$defs/colorValue",
|
|
175
|
-
"description": "Custom message text color"
|
|
176
|
-
},
|
|
177
|
-
"customMessageLabel": {
|
|
178
|
-
"$ref": "#/$defs/colorValue",
|
|
179
|
-
"description": "Custom message type label color"
|
|
180
|
-
},
|
|
181
|
-
"toolPendingBg": {
|
|
182
|
-
"$ref": "#/$defs/colorValue",
|
|
183
|
-
"description": "Tool execution box (pending state)"
|
|
184
|
-
},
|
|
185
|
-
"toolSuccessBg": {
|
|
186
|
-
"$ref": "#/$defs/colorValue",
|
|
187
|
-
"description": "Tool execution box (success state)"
|
|
188
|
-
},
|
|
189
|
-
"toolErrorBg": {
|
|
190
|
-
"$ref": "#/$defs/colorValue",
|
|
191
|
-
"description": "Tool execution box (error state)"
|
|
192
|
-
},
|
|
193
|
-
"toolTitle": {
|
|
194
|
-
"$ref": "#/$defs/colorValue",
|
|
195
|
-
"description": "Tool execution box title color"
|
|
196
|
-
},
|
|
197
|
-
"toolOutput": {
|
|
198
|
-
"$ref": "#/$defs/colorValue",
|
|
199
|
-
"description": "Tool execution box output text color"
|
|
200
|
-
},
|
|
201
|
-
"mdHeading": {
|
|
202
|
-
"$ref": "#/$defs/colorValue",
|
|
203
|
-
"description": "Markdown heading text"
|
|
204
|
-
},
|
|
205
|
-
"mdLink": {
|
|
206
|
-
"$ref": "#/$defs/colorValue",
|
|
207
|
-
"description": "Markdown link text"
|
|
208
|
-
},
|
|
209
|
-
"mdLinkUrl": {
|
|
210
|
-
"$ref": "#/$defs/colorValue",
|
|
211
|
-
"description": "Markdown link URL"
|
|
212
|
-
},
|
|
213
|
-
"mdCode": {
|
|
214
|
-
"$ref": "#/$defs/colorValue",
|
|
215
|
-
"description": "Markdown inline code"
|
|
216
|
-
},
|
|
217
|
-
"mdCodeBlock": {
|
|
218
|
-
"$ref": "#/$defs/colorValue",
|
|
219
|
-
"description": "Markdown code block content"
|
|
220
|
-
},
|
|
221
|
-
"mdCodeBlockBorder": {
|
|
222
|
-
"$ref": "#/$defs/colorValue",
|
|
223
|
-
"description": "Markdown code block fences"
|
|
224
|
-
},
|
|
225
|
-
"mdQuote": {
|
|
226
|
-
"$ref": "#/$defs/colorValue",
|
|
227
|
-
"description": "Markdown blockquote text"
|
|
228
|
-
},
|
|
229
|
-
"mdQuoteBorder": {
|
|
230
|
-
"$ref": "#/$defs/colorValue",
|
|
231
|
-
"description": "Markdown blockquote border"
|
|
232
|
-
},
|
|
233
|
-
"mdHr": {
|
|
234
|
-
"$ref": "#/$defs/colorValue",
|
|
235
|
-
"description": "Markdown horizontal rule"
|
|
236
|
-
},
|
|
237
|
-
"mdListBullet": {
|
|
238
|
-
"$ref": "#/$defs/colorValue",
|
|
239
|
-
"description": "Markdown list bullets/numbers"
|
|
240
|
-
},
|
|
241
|
-
"toolDiffAdded": {
|
|
242
|
-
"$ref": "#/$defs/colorValue",
|
|
243
|
-
"description": "Added lines in tool diffs"
|
|
244
|
-
},
|
|
245
|
-
"toolDiffRemoved": {
|
|
246
|
-
"$ref": "#/$defs/colorValue",
|
|
247
|
-
"description": "Removed lines in tool diffs"
|
|
248
|
-
},
|
|
249
|
-
"toolDiffContext": {
|
|
250
|
-
"$ref": "#/$defs/colorValue",
|
|
251
|
-
"description": "Context lines in tool diffs"
|
|
252
|
-
},
|
|
253
|
-
"syntaxComment": {
|
|
254
|
-
"$ref": "#/$defs/colorValue",
|
|
255
|
-
"description": "Syntax highlighting: comments"
|
|
256
|
-
},
|
|
257
|
-
"syntaxKeyword": {
|
|
258
|
-
"$ref": "#/$defs/colorValue",
|
|
259
|
-
"description": "Syntax highlighting: keywords"
|
|
260
|
-
},
|
|
261
|
-
"syntaxFunction": {
|
|
262
|
-
"$ref": "#/$defs/colorValue",
|
|
263
|
-
"description": "Syntax highlighting: function names"
|
|
264
|
-
},
|
|
265
|
-
"syntaxVariable": {
|
|
266
|
-
"$ref": "#/$defs/colorValue",
|
|
267
|
-
"description": "Syntax highlighting: variable names"
|
|
268
|
-
},
|
|
269
|
-
"syntaxString": {
|
|
270
|
-
"$ref": "#/$defs/colorValue",
|
|
271
|
-
"description": "Syntax highlighting: string literals"
|
|
272
|
-
},
|
|
273
|
-
"syntaxNumber": {
|
|
274
|
-
"$ref": "#/$defs/colorValue",
|
|
275
|
-
"description": "Syntax highlighting: number literals"
|
|
276
|
-
},
|
|
277
|
-
"syntaxType": {
|
|
278
|
-
"$ref": "#/$defs/colorValue",
|
|
279
|
-
"description": "Syntax highlighting: type names"
|
|
280
|
-
},
|
|
281
|
-
"syntaxOperator": {
|
|
282
|
-
"$ref": "#/$defs/colorValue",
|
|
283
|
-
"description": "Syntax highlighting: operators"
|
|
284
|
-
},
|
|
285
|
-
"syntaxPunctuation": {
|
|
286
|
-
"$ref": "#/$defs/colorValue",
|
|
287
|
-
"description": "Syntax highlighting: punctuation"
|
|
288
|
-
},
|
|
289
|
-
"thinkingOff": {
|
|
290
|
-
"$ref": "#/$defs/colorValue",
|
|
291
|
-
"description": "Thinking level border: off"
|
|
292
|
-
},
|
|
293
|
-
"thinkingMinimal": {
|
|
294
|
-
"$ref": "#/$defs/colorValue",
|
|
295
|
-
"description": "Thinking level border: minimal"
|
|
296
|
-
},
|
|
297
|
-
"thinkingLow": {
|
|
298
|
-
"$ref": "#/$defs/colorValue",
|
|
299
|
-
"description": "Thinking level border: low"
|
|
300
|
-
},
|
|
301
|
-
"thinkingMedium": {
|
|
302
|
-
"$ref": "#/$defs/colorValue",
|
|
303
|
-
"description": "Thinking level border: medium"
|
|
304
|
-
},
|
|
305
|
-
"thinkingHigh": {
|
|
306
|
-
"$ref": "#/$defs/colorValue",
|
|
307
|
-
"description": "Thinking level border: high"
|
|
308
|
-
},
|
|
309
|
-
"thinkingXhigh": {
|
|
310
|
-
"$ref": "#/$defs/colorValue",
|
|
311
|
-
"description": "Thinking level border: xhigh"
|
|
312
|
-
},
|
|
313
|
-
"thinkingMax": {
|
|
314
|
-
"$ref": "#/$defs/colorValue",
|
|
315
|
-
"description": "Thinking level border: max (falls back to thinkingXhigh when omitted)"
|
|
316
|
-
},
|
|
317
|
-
"bashMode": {
|
|
318
|
-
"$ref": "#/$defs/colorValue",
|
|
319
|
-
"description": "Editor border color in bash mode"
|
|
320
|
-
}
|
|
321
|
-
},
|
|
322
|
-
"additionalProperties": false
|
|
323
|
-
},
|
|
324
|
-
"export": {
|
|
325
|
-
"type": "object",
|
|
326
|
-
"description": "Optional colors for HTML export (defaults derived from userMessageBg if not specified)",
|
|
327
|
-
"properties": {
|
|
328
|
-
"pageBg": {
|
|
329
|
-
"$ref": "#/$defs/colorValue",
|
|
330
|
-
"description": "Page background color"
|
|
331
|
-
},
|
|
332
|
-
"cardBg": {
|
|
333
|
-
"$ref": "#/$defs/colorValue",
|
|
334
|
-
"description": "Card/container background color"
|
|
335
|
-
},
|
|
336
|
-
"infoBg": {
|
|
337
|
-
"$ref": "#/$defs/colorValue",
|
|
338
|
-
"description": "Info sections background (system prompt, notices)"
|
|
339
|
-
}
|
|
340
|
-
},
|
|
341
|
-
"additionalProperties": false
|
|
342
|
-
}
|
|
343
|
-
},
|
|
344
|
-
"additionalProperties": false,
|
|
345
|
-
"$defs": {
|
|
346
|
-
"colorValue": {
|
|
347
|
-
"oneOf": [
|
|
348
|
-
{
|
|
349
|
-
"type": "string",
|
|
350
|
-
"description": "Hex color (#RGB or #RRGGBB), OKLCH or OKHSL color, variable reference, or empty string for terminal default"
|
|
351
|
-
},
|
|
352
|
-
{
|
|
353
|
-
"type": "integer",
|
|
354
|
-
"minimum": 0,
|
|
355
|
-
"maximum": 255,
|
|
356
|
-
"description": "256-color palette index (0-255)"
|
|
357
|
-
}
|
|
358
|
-
]
|
|
359
|
-
}
|
|
360
|
-
}
|
|
361
|
-
}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
# Web Search
|
|
2
|
-
|
|
3
|
-
`web_search` is a Pi-native tool for querying live web information through MiniMax and DeepSeek search engines.
|
|
4
|
-
|
|
5
|
-
When both engines are configured, searches run concurrently and results are fused with reciprocal-rank scoring: URLs are normalized (tracking parameters and fragments stripped), duplicates are merged, and high-ranked results from both engines remain represented.
|
|
6
|
-
|
|
7
|
-
| Engine mode | Requirement |
|
|
8
|
-
|---|---|
|
|
9
|
-
| `dual` | Both MiniMax and DeepSeek keys configured |
|
|
10
|
-
| `minimax` | Only a MiniMax key configured |
|
|
11
|
-
| `deepseek` | Only a DeepSeek key configured |
|
|
12
|
-
| `none` | No key found — the tool reports itself disabled |
|
|
13
|
-
|
|
14
|
-
## Credentials
|
|
15
|
-
|
|
16
|
-
Keys are resolved per provider through the runtime's canonical auth chain (`ModelRuntime.getAuth`: runtime API key → `auth.json` → `models.json` → environment). When no runtime is available (or it does not know the provider), the extension falls back to reading `auth.json` directly (provider IDs `minimax-cn`, `minimax`, `deepseek`, including command-configured keys such as `"!op read ..."`) and then the environment variables `MINIMAX_CN_API_KEY`, `MINIMAX_API_KEY`, `DEEPSEEK_API_KEY`.
|
|
17
|
-
|
|
18
|
-
The MiniMax CN account (`minimax-cn`) is preferred over the global one (`minimax`) and selects the `api.minimaxi.com` search host; the global account uses `api.minimax.io`, overridable via `MINIMAX_API_HOST`.
|
|
19
|
-
|
|
20
|
-
Configure with `/login minimax-cn` or `/login deepseek`, or by exporting the environment variables above.
|
|
21
|
-
|
|
22
|
-
When no key is configured, `web_search` is removed from the model's tool set and system prompt entirely — the model never sees or calls it. This is re-evaluated on every session start (`startup`, `/new`, `/reload`, resume, fork). When credentials are available, the extension leaves the host's active-tool set unchanged: normal registration keeps the tool available by default, while an explicit `/tools` or SDK-host disable remains respected until that host enables it again. The tool always stays registered for `/tools` and historical rendering; force-enabling it without keys returns the disabled message.
|
|
23
|
-
|
|
24
|
-
## Usage
|
|
25
|
-
|
|
26
|
-
### Parameters
|
|
27
|
-
|
|
28
|
-
- `query`: the search query, up to 500 characters — 3–5 keywords work best; include a year when freshness matters.
|
|
29
|
-
|
|
30
|
-
### Output
|
|
31
|
-
|
|
32
|
-
The model-facing payload is Markdown containing up to 12 HTTP(S) source results. Titles and snippets are bounded to 200 characters each, source URLs to 2048 characters, DeepSeek synthesis to 6000 characters, and up to 8 related searches to 200 characters each. Results found by both providers are tagged as such; this means the URL appeared in both result sets, not that its claims were independently verified. When structured source URLs are present, the tool result reminds the model to cite the relevant URLs without prescribing a heading or response format.
|
|
33
|
-
|
|
34
|
-
## Limits
|
|
35
|
-
|
|
36
|
-
- With no configured key the tool is hidden from the model (see Credentials); the disabled message only appears when the tool was force-enabled via `/tools` without keys.
|
|
37
|
-
- Engine failures are independent: if one engine errors, the other's results are still returned; the tool errors only when every configured engine fails. Error outcomes are marked as protocol-level tool errors; the credential-disabled warning is not.
|
|
38
|
-
- MiniMax search uses the Coding Plan Search endpoint (`POST /v1/coding_plan/search`), which requires a Coding Plan key — a standard MiniMax API key may be rejected upstream.
|
|
39
|
-
- DeepSeek search goes through the Anthropic-compatible endpoint (`/anthropic/v1/messages`, model `claude-sonnet-search`) with the server-side `web_search_20250305` tool; the request uses `max_tokens: 1024`, followed by the local output bound above. A response must contain a structured `web_search_tool_result`: an empty result array is a valid zero-result search, while text-only, malformed, or structured-error responses count as a provider failure and their synthesis is discarded.
|
|
40
|
-
- Requests time out after 60 seconds (MiniMax) or 90 seconds (DeepSeek) and surface as Pi tool errors. Successful upstream response bodies are limited to 2 MiB, error bodies to 200 bytes, and model-facing error messages to 500 characters.
|
|
41
|
-
|
|
42
|
-
## Implementation notes
|
|
43
|
-
|
|
44
|
-
The extension keeps presentation Pi-native: the call line shows the query, in-flight renders show the engine label with elapsed time past 2s, the collapsed result shows hit count, engines, duration, and a top-domain preview with the configured expand hint, and expanding renders the result sections from `details` — without the model-facing agent directives — falling back to the raw payload for legacy entries.
|
|
45
|
-
|
|
46
|
-
Credential resolution never inspects `getProviderAuthStatus` — that probe returns a truthy `AuthStatus` object even when nothing is configured and carries no key. Only `getAuth` returns usable key material.
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
# `@earendil-works/pi-example-plugin`
|
|
2
|
-
|
|
3
|
-
This package provides conventional `session` and `tui` Chord facets. The Session-worker facet provides a remote greeting service. The TUI facet contributes `/hello` and calls that service.
|
|
4
|
-
|
|
5
|
-
The package needs no build script. Pi asks Chord to discover `src/session.ts` and `src/tui.ts`, builds both entries into its server-owned plugin cache, and sends the TUI artifact to clients.
|
|
6
|
-
|
|
7
|
-
From this directory's parent of parents (the repository root):
|
|
8
|
-
|
|
9
|
-
```bash
|
|
10
|
-
PI_EXPERIMENTAL=1 pi experimental server \
|
|
11
|
-
-e "$PWD/examples/plugins/pi-example-plugin"
|
|
12
|
-
```
|
|
13
|
-
|
|
14
|
-
Alternatively, a client can select the plugin for the Session it creates or resumes on one local server:
|
|
15
|
-
|
|
16
|
-
```bash
|
|
17
|
-
PI_EXPERIMENTAL=1 pi experimental client \
|
|
18
|
-
-e "$PWD/examples/plugins/pi-example-plugin"
|
|
19
|
-
```
|
|
20
|
-
|
|
21
|
-
Repeat `-e` to select multiple plugin packages. Client paths are resolved locally and sent only to a Unix server; Radius clients cannot select server filesystem paths. The Session and matching TUI facets are stored with that Session, so later server generations and clients can resume it without plugin arguments. Other Sessions and their workers are unaffected. An active Session rejects a different package selection instead of being restarted.
|
|
22
|
-
|
|
23
|
-
`server -e` establishes the server profile's default Session and TUI facets. Starting an explicit foreground server without `-e` clears that default. Client selection never changes the server's root facet generation.
|
|
24
|
-
|
|
25
|
-
Run `/hello Armin` in the TUI. After editing a facet, run `/reload`. The server atomically rebuilds the package, reloads the attached Session-worker generation, updates the current TUI generation, and serves the new artifact to future clients.
|
|
26
|
-
|
|
27
|
-
Package metadata can override or disable conventional entries:
|
|
28
|
-
|
|
29
|
-
```json
|
|
30
|
-
{
|
|
31
|
-
"chord": {
|
|
32
|
-
"facets": {
|
|
33
|
-
"session": "./src/worker.ts",
|
|
34
|
-
"tui": false
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
```
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { type Context, defineService, type ReplicatedState } from "@earendil-works/chord";
|
|
2
|
-
|
|
3
|
-
export interface ExampleFacetReply {
|
|
4
|
-
readonly message: string;
|
|
5
|
-
readonly workerActivations: number;
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
export interface ExampleFacetService {
|
|
9
|
-
readonly workerActivations: ReplicatedState<{ count: number }>;
|
|
10
|
-
greet(input: { readonly name: string }, context: Context): Promise<ExampleFacetReply>;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export const ExampleFacetService = defineService<ExampleFacetService>("pi.example-plugin.greeting");
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { defineFacet } from "@earendil-works/chord";
|
|
2
|
-
import { BACKGROUND_CONTEXT } from "@earendil-works/chord/context";
|
|
3
|
-
import { ExampleFacetService } from "./contract.ts";
|
|
4
|
-
|
|
5
|
-
export default defineFacet({
|
|
6
|
-
id: "@earendil-works/pi-example-plugin/session",
|
|
7
|
-
setup(env) {
|
|
8
|
-
const workerActivations = env.replicatedState({ count: 0 });
|
|
9
|
-
env.provide(ExampleFacetService, {
|
|
10
|
-
workerActivations,
|
|
11
|
-
async greet({ name }) {
|
|
12
|
-
return {
|
|
13
|
-
message: `Hello ${name} from the bundled Session worker facet!!!`,
|
|
14
|
-
workerActivations: workerActivations.value.count,
|
|
15
|
-
};
|
|
16
|
-
},
|
|
17
|
-
});
|
|
18
|
-
env.onActivate(() => {
|
|
19
|
-
workerActivations.change(BACKGROUND_CONTEXT, (draft) => {
|
|
20
|
-
draft.count += 1;
|
|
21
|
-
});
|
|
22
|
-
});
|
|
23
|
-
},
|
|
24
|
-
});
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { AgentController, PresentationUI, SlashCommands } from "@astralyn/pi/experimental/plugin";
|
|
2
|
-
import { defineFacet } from "@earendil-works/chord";
|
|
3
|
-
import { ExampleFacetService } from "./contract.ts";
|
|
4
|
-
|
|
5
|
-
export default defineFacet({
|
|
6
|
-
id: "@earendil-works/pi-example-plugin/tui",
|
|
7
|
-
setup(env) {
|
|
8
|
-
const example = env.use(ExampleFacetService);
|
|
9
|
-
const commands = env.use(SlashCommands);
|
|
10
|
-
const controller = env.use(AgentController);
|
|
11
|
-
const ui = env.use(PresentationUI);
|
|
12
|
-
env.onActivate(() => {
|
|
13
|
-
env.own(
|
|
14
|
-
commands.replace({
|
|
15
|
-
name: "hello",
|
|
16
|
-
description: "Call the bundled Session worker facet",
|
|
17
|
-
argumentHint: "<name>",
|
|
18
|
-
async run(args, context) {
|
|
19
|
-
const message = args.length === 0 ? "from the TUI" : args;
|
|
20
|
-
const reply = await example.greet({ name: message }, context);
|
|
21
|
-
ui.showStatus(
|
|
22
|
-
`We got this: ${reply.message} Worker activations: ${reply.workerActivations}.`,
|
|
23
|
-
context,
|
|
24
|
-
);
|
|
25
|
-
return controller.prompt({ message: `pong: ${message}`, images: null }, context);
|
|
26
|
-
},
|
|
27
|
-
}),
|
|
28
|
-
);
|
|
29
|
-
});
|
|
30
|
-
},
|
|
31
|
-
});
|