catui-agent 1.0.0-beta.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/LICENSE +674 -0
- package/README.md +267 -0
- package/dist/build-meta.json +6 -0
- package/dist/builtin-extensions.d.ts +47 -0
- package/dist/builtin-extensions.js +1 -0
- package/dist/catui-defaults.d.ts +555 -0
- package/dist/catui-defaults.js +22 -0
- package/dist/cli/args.d.ts +70 -0
- package/dist/cli/args.js +158 -0
- package/dist/cli/config-selector.d.ts +10 -0
- package/dist/cli/config-selector.js +1 -0
- package/dist/cli/file-processor.d.ts +11 -0
- package/dist/cli/file-processor.js +6 -0
- package/dist/cli/list-models.d.ts +12 -0
- package/dist/cli/list-models.js +2 -0
- package/dist/cli/session-picker.d.ts +5 -0
- package/dist/cli/session-picker.js +1 -0
- package/dist/cli.d.ts +2 -0
- package/dist/cli.js +2 -0
- package/dist/config.d.ts +103 -0
- package/dist/config.js +1 -0
- package/dist/core/agent-dir/agent-dir-context.d.ts +60 -0
- package/dist/core/agent-dir/agent-dir-context.js +1 -0
- package/dist/core/agent-dir/agent-metadata.d.ts +48 -0
- package/dist/core/agent-dir/agent-metadata.js +1 -0
- package/dist/core/agent-dir/migration-tool.d.ts +40 -0
- package/dist/core/agent-dir/migration-tool.js +7 -0
- package/dist/core/export-html/AGENT.md +12 -0
- package/dist/core/export-html/ansi-to-html.d.ts +9 -0
- package/dist/core/export-html/ansi-to-html.js +2 -0
- package/dist/core/export-html/index.d.ts +39 -0
- package/dist/core/export-html/index.js +2 -0
- package/dist/core/export-html/template.css +971 -0
- package/dist/core/export-html/template.html +54 -0
- package/dist/core/export-html/template.js +66 -0
- package/dist/core/export-html/tool-renderer.d.ts +28 -0
- package/dist/core/export-html/tool-renderer.js +1 -0
- package/dist/core/export-html/vendor/highlight.min.js +4 -0
- package/dist/core/export-html/vendor/marked.min.js +56 -0
- package/dist/core/extensions-host/index.d.ts +13 -0
- package/dist/core/extensions-host/index.js +1 -0
- package/dist/core/extensions-host/loader.d.ts +21 -0
- package/dist/core/extensions-host/loader.js +1 -0
- package/dist/core/extensions-host/runner.d.ts +233 -0
- package/dist/core/extensions-host/runner.js +3 -0
- package/dist/core/extensions-host/types.d.ts +1079 -0
- package/dist/core/extensions-host/types.js +1 -0
- package/dist/core/extensions-host/wrapper.d.ts +29 -0
- package/dist/core/extensions-host/wrapper.js +2 -0
- package/dist/core/index.d.ts +17 -0
- package/dist/core/index.js +1 -0
- package/dist/core/lib/agent-core/src/agent-loop-continuations.d.ts +17 -0
- package/dist/core/lib/agent-core/src/agent-loop-continuations.js +1 -0
- package/dist/core/lib/agent-core/src/agent-loop-stream-events.d.ts +19 -0
- package/dist/core/lib/agent-core/src/agent-loop-stream-events.js +1 -0
- package/dist/core/lib/agent-core/src/agent-loop-tool-results.d.ts +10 -0
- package/dist/core/lib/agent-core/src/agent-loop-tool-results.js +3 -0
- package/dist/core/lib/agent-core/src/agent-loop-tool-summaries.d.ts +22 -0
- package/dist/core/lib/agent-core/src/agent-loop-tool-summaries.js +1 -0
- package/dist/core/lib/agent-core/src/agent-loop.d.ts +26 -0
- package/dist/core/lib/agent-core/src/agent-loop.js +4 -0
- package/dist/core/lib/agent-core/src/agent-run-result.d.ts +9 -0
- package/dist/core/lib/agent-core/src/agent-run-result.js +1 -0
- package/dist/core/lib/agent-core/src/agent.d.ts +215 -0
- package/dist/core/lib/agent-core/src/agent.js +1 -0
- package/dist/core/lib/agent-core/src/errors.d.ts +62 -0
- package/dist/core/lib/agent-core/src/errors.js +1 -0
- package/dist/core/lib/agent-core/src/index.d.ts +14 -0
- package/dist/core/lib/agent-core/src/index.js +1 -0
- package/dist/core/lib/agent-core/src/proxy.d.ts +91 -0
- package/dist/core/lib/agent-core/src/proxy.js +2 -0
- package/dist/core/lib/agent-core/src/structured-adaptive-agent-loop.d.ts +15 -0
- package/dist/core/lib/agent-core/src/structured-adaptive-agent-loop.js +2 -0
- package/dist/core/lib/agent-core/src/structured-adaptive-streaming-tool-executor.d.ts +33 -0
- package/dist/core/lib/agent-core/src/structured-adaptive-streaming-tool-executor.js +1 -0
- package/dist/core/lib/agent-core/src/structured-adaptive-tool-orchestration.d.ts +35 -0
- package/dist/core/lib/agent-core/src/structured-adaptive-tool-orchestration.js +3 -0
- package/dist/core/lib/agent-core/src/types.d.ts +417 -0
- package/dist/core/lib/agent-core/src/types.js +1 -0
- package/dist/core/lib/ai/src/api-registry.d.ts +27 -0
- package/dist/core/lib/ai/src/api-registry.js +1 -0
- package/dist/core/lib/ai/src/config-path.d.ts +1 -0
- package/dist/core/lib/ai/src/config-path.js +1 -0
- package/dist/core/lib/ai/src/debug-logger.d.ts +94 -0
- package/dist/core/lib/ai/src/debug-logger.js +4 -0
- package/dist/core/lib/ai/src/env-api-keys.d.ts +8 -0
- package/dist/core/lib/ai/src/env-api-keys.js +1 -0
- package/dist/core/lib/ai/src/env.d.ts +7 -0
- package/dist/core/lib/ai/src/env.js +1 -0
- package/dist/core/lib/ai/src/events.d.ts +8 -0
- package/dist/core/lib/ai/src/events.js +1 -0
- package/dist/core/lib/ai/src/index.d.ts +27 -0
- package/dist/core/lib/ai/src/index.js +1 -0
- package/dist/core/lib/ai/src/json.d.ts +7 -0
- package/dist/core/lib/ai/src/json.js +1 -0
- package/dist/core/lib/ai/src/models.d.ts +31 -0
- package/dist/core/lib/ai/src/models.generated.d.ts +15315 -0
- package/dist/core/lib/ai/src/models.generated.js +1 -0
- package/dist/core/lib/ai/src/models.js +1 -0
- package/dist/core/lib/ai/src/overflow.d.ts +7 -0
- package/dist/core/lib/ai/src/overflow.js +1 -0
- package/dist/core/lib/ai/src/providers/amazon-bedrock.d.ts +20 -0
- package/dist/core/lib/ai/src/providers/amazon-bedrock.js +1 -0
- package/dist/core/lib/ai/src/providers/anthropic.d.ts +38 -0
- package/dist/core/lib/ai/src/providers/anthropic.js +2 -0
- package/dist/core/lib/ai/src/providers/azure-openai-responses.d.ts +21 -0
- package/dist/core/lib/ai/src/providers/azure-openai-responses.js +1 -0
- package/dist/core/lib/ai/src/providers/github-copilot-headers.d.ts +13 -0
- package/dist/core/lib/ai/src/providers/github-copilot-headers.js +1 -0
- package/dist/core/lib/ai/src/providers/google-gemini-cli.d.ts +79 -0
- package/dist/core/lib/ai/src/providers/google-gemini-cli.js +2 -0
- package/dist/core/lib/ai/src/providers/google-shared.d.ts +70 -0
- package/dist/core/lib/ai/src/providers/google-shared.js +2 -0
- package/dist/core/lib/ai/src/providers/google-vertex.d.ts +20 -0
- package/dist/core/lib/ai/src/providers/google-vertex.js +1 -0
- package/dist/core/lib/ai/src/providers/google.d.ts +18 -0
- package/dist/core/lib/ai/src/providers/google.js +1 -0
- package/dist/core/lib/ai/src/providers/openai-codex-responses.d.ts +8 -0
- package/dist/core/lib/ai/src/providers/openai-codex-responses.js +7 -0
- package/dist/core/lib/ai/src/providers/openai-completions.d.ts +20 -0
- package/dist/core/lib/ai/src/providers/openai-completions.js +6 -0
- package/dist/core/lib/ai/src/providers/openai-responses-shared.d.ts +22 -0
- package/dist/core/lib/ai/src/providers/openai-responses-shared.js +10 -0
- package/dist/core/lib/ai/src/providers/openai-responses.d.ts +19 -0
- package/dist/core/lib/ai/src/providers/openai-responses.js +1 -0
- package/dist/core/lib/ai/src/providers/register-builtins.d.ts +8 -0
- package/dist/core/lib/ai/src/providers/register-builtins.js +1 -0
- package/dist/core/lib/ai/src/providers/simple-options.d.ts +13 -0
- package/dist/core/lib/ai/src/providers/simple-options.js +1 -0
- package/dist/core/lib/ai/src/providers/transform-messages.d.ts +13 -0
- package/dist/core/lib/ai/src/providers/transform-messages.js +1 -0
- package/dist/core/lib/ai/src/registry.d.ts +8 -0
- package/dist/core/lib/ai/src/registry.js +1 -0
- package/dist/core/lib/ai/src/schema.d.ts +10 -0
- package/dist/core/lib/ai/src/schema.js +1 -0
- package/dist/core/lib/ai/src/stream.d.ts +33 -0
- package/dist/core/lib/ai/src/stream.js +1 -0
- package/dist/core/lib/ai/src/types.d.ts +331 -0
- package/dist/core/lib/ai/src/types.js +0 -0
- package/dist/core/lib/ai/src/utils/event-stream-types.d.ts +12 -0
- package/dist/core/lib/ai/src/utils/event-stream-types.js +0 -0
- package/dist/core/lib/ai/src/utils/event-stream.d.ts +31 -0
- package/dist/core/lib/ai/src/utils/event-stream.js +1 -0
- package/dist/core/lib/ai/src/utils/http-proxy.d.ts +13 -0
- package/dist/core/lib/ai/src/utils/http-proxy.js +1 -0
- package/dist/core/lib/ai/src/utils/json-parse.d.ts +14 -0
- package/dist/core/lib/ai/src/utils/json-parse.js +1 -0
- package/dist/core/lib/ai/src/utils/oauth/anthropic.d.ts +22 -0
- package/dist/core/lib/ai/src/utils/oauth/anthropic.js +1 -0
- package/dist/core/lib/ai/src/utils/oauth/decode-credential.d.ts +12 -0
- package/dist/core/lib/ai/src/utils/oauth/decode-credential.js +1 -0
- package/dist/core/lib/ai/src/utils/oauth/github-copilot.d.ts +35 -0
- package/dist/core/lib/ai/src/utils/oauth/github-copilot.js +1 -0
- package/dist/core/lib/ai/src/utils/oauth/google-antigravity.d.ts +31 -0
- package/dist/core/lib/ai/src/utils/oauth/google-antigravity.js +1 -0
- package/dist/core/lib/ai/src/utils/oauth/google-gemini-cli.d.ts +31 -0
- package/dist/core/lib/ai/src/utils/oauth/google-gemini-cli.js +1 -0
- package/dist/core/lib/ai/src/utils/oauth/index.d.ts +60 -0
- package/dist/core/lib/ai/src/utils/oauth/index.js +1 -0
- package/dist/core/lib/ai/src/utils/oauth/openai-codex.d.ts +39 -0
- package/dist/core/lib/ai/src/utils/oauth/openai-codex.js +11 -0
- package/dist/core/lib/ai/src/utils/oauth/pkce.d.ts +18 -0
- package/dist/core/lib/ai/src/utils/oauth/pkce.js +1 -0
- package/dist/core/lib/ai/src/utils/oauth/types.d.ts +52 -0
- package/dist/core/lib/ai/src/utils/oauth/types.js +0 -0
- package/dist/core/lib/ai/src/utils/overflow.d.ts +57 -0
- package/dist/core/lib/ai/src/utils/overflow.js +1 -0
- package/dist/core/lib/ai/src/utils/sanitize-unicode.d.ts +16 -0
- package/dist/core/lib/ai/src/utils/sanitize-unicode.js +1 -0
- package/dist/core/lib/ai/src/utils/typebox-helpers.d.ts +22 -0
- package/dist/core/lib/ai/src/utils/typebox-helpers.js +1 -0
- package/dist/core/lib/ai/src/utils/validation.d.ts +23 -0
- package/dist/core/lib/ai/src/utils/validation.js +6 -0
- package/dist/core/lib/tui/src/autocomplete.d.ts +62 -0
- package/dist/core/lib/tui/src/autocomplete.js +2 -0
- package/dist/core/lib/tui/src/components/box.d.ts +27 -0
- package/dist/core/lib/tui/src/components/box.js +1 -0
- package/dist/core/lib/tui/src/components/cached-container.d.ts +42 -0
- package/dist/core/lib/tui/src/components/cached-container.js +1 -0
- package/dist/core/lib/tui/src/components/cancellable-loader.d.ts +27 -0
- package/dist/core/lib/tui/src/components/cancellable-loader.js +1 -0
- package/dist/core/lib/tui/src/components/editor.d.ts +222 -0
- package/dist/core/lib/tui/src/components/editor.js +21 -0
- package/dist/core/lib/tui/src/components/image.d.ts +33 -0
- package/dist/core/lib/tui/src/components/image.js +1 -0
- package/dist/core/lib/tui/src/components/input.d.ts +42 -0
- package/dist/core/lib/tui/src/components/input.js +2 -0
- package/dist/core/lib/tui/src/components/loader.d.ts +26 -0
- package/dist/core/lib/tui/src/components/loader.js +1 -0
- package/dist/core/lib/tui/src/components/markdown.d.ts +100 -0
- package/dist/core/lib/tui/src/components/markdown.js +7 -0
- package/dist/core/lib/tui/src/components/select-list.d.ts +37 -0
- package/dist/core/lib/tui/src/components/select-list.js +1 -0
- package/dist/core/lib/tui/src/components/settings-list.d.ts +55 -0
- package/dist/core/lib/tui/src/components/settings-list.js +1 -0
- package/dist/core/lib/tui/src/components/spacer.d.ts +17 -0
- package/dist/core/lib/tui/src/components/spacer.js +1 -0
- package/dist/core/lib/tui/src/components/text.d.ts +24 -0
- package/dist/core/lib/tui/src/components/text.js +1 -0
- package/dist/core/lib/tui/src/components/truncated-text.d.ts +18 -0
- package/dist/core/lib/tui/src/components/truncated-text.js +2 -0
- package/dist/core/lib/tui/src/editor-component.d.ts +51 -0
- package/dist/core/lib/tui/src/editor-component.js +0 -0
- package/dist/core/lib/tui/src/fuzzy.d.ts +32 -0
- package/dist/core/lib/tui/src/fuzzy.js +1 -0
- package/dist/core/lib/tui/src/index.d.ts +29 -0
- package/dist/core/lib/tui/src/index.js +1 -0
- package/dist/core/lib/tui/src/keybindings.d.ts +44 -0
- package/dist/core/lib/tui/src/keybindings.js +1 -0
- package/dist/core/lib/tui/src/keys.d.ts +149 -0
- package/dist/core/lib/tui/src/keys.js +5 -0
- package/dist/core/lib/tui/src/kill-ring.d.ts +33 -0
- package/dist/core/lib/tui/src/kill-ring.js +1 -0
- package/dist/core/lib/tui/src/stdin-buffer.d.ts +38 -0
- package/dist/core/lib/tui/src/stdin-buffer.js +1 -0
- package/dist/core/lib/tui/src/terminal-image.d.ts +73 -0
- package/dist/core/lib/tui/src/terminal-image.js +1 -0
- package/dist/core/lib/tui/src/terminal.d.ts +86 -0
- package/dist/core/lib/tui/src/terminal.js +1 -0
- package/dist/core/lib/tui/src/tui.d.ts +220 -0
- package/dist/core/lib/tui/src/tui.js +12 -0
- package/dist/core/lib/tui/src/undo-stack.d.ts +22 -0
- package/dist/core/lib/tui/src/undo-stack.js +1 -0
- package/dist/core/lib/tui/src/utils.d.ts +83 -0
- package/dist/core/lib/tui/src/utils.js +2 -0
- package/dist/core/mcp/figma-auth.d.ts +21 -0
- package/dist/core/mcp/figma-auth.js +22 -0
- package/dist/core/mcp/index.d.ts +11 -0
- package/dist/core/mcp/index.js +1 -0
- package/dist/core/mcp/mcp-adapter.d.ts +21 -0
- package/dist/core/mcp/mcp-adapter.js +3 -0
- package/dist/core/mcp/mcp-client.d.ts +91 -0
- package/dist/core/mcp/mcp-client.js +6 -0
- package/dist/core/mcp/mcp-config.d.ts +55 -0
- package/dist/core/mcp/mcp-config.js +1 -0
- package/dist/core/mcp/mcp-guidance.d.ts +52 -0
- package/dist/core/mcp/mcp-guidance.js +54 -0
- package/dist/core/mcp/mcp-manager.d.ts +51 -0
- package/dist/core/mcp/mcp-manager.js +1 -0
- package/dist/core/mcp/mcp-types.d.ts +62 -0
- package/dist/core/mcp/mcp-types.js +0 -0
- package/dist/core/messages.d.ts +77 -0
- package/dist/core/messages.js +17 -0
- package/dist/core/model/custom-providers.d.ts +34 -0
- package/dist/core/model/custom-providers.js +1 -0
- package/dist/core/model/discovery-cache.d.ts +65 -0
- package/dist/core/model/discovery-cache.js +1 -0
- package/dist/core/model/discovery-cache.test.d.ts +7 -0
- package/dist/core/model/discovery-cache.test.js +1 -0
- package/dist/core/model/discovery.d.ts +79 -0
- package/dist/core/model/discovery.js +1 -0
- package/dist/core/model/discovery.test.d.ts +7 -0
- package/dist/core/model/discovery.test.js +1 -0
- package/dist/core/model/index.d.ts +10 -0
- package/dist/core/model/index.js +1 -0
- package/dist/core/model/known-models.d.ts +65 -0
- package/dist/core/model/known-models.generated.d.ts +2 -0
- package/dist/core/model/known-models.generated.js +1 -0
- package/dist/core/model/known-models.js +1 -0
- package/dist/core/model/switcher.d.ts +80 -0
- package/dist/core/model/switcher.js +1 -0
- package/dist/core/model-registry.d.ts +186 -0
- package/dist/core/model-registry.js +9 -0
- package/dist/core/model-resolver.d.ts +106 -0
- package/dist/core/model-resolver.js +1 -0
- package/dist/core/package-manager.d.ts +156 -0
- package/dist/core/package-manager.js +3 -0
- package/dist/core/persona/persona-manager.d.ts +35 -0
- package/dist/core/persona/persona-manager.js +5 -0
- package/dist/core/platform/abort-slot.d.ts +26 -0
- package/dist/core/platform/abort-slot.js +1 -0
- package/dist/core/platform/config/auth-storage.d.ts +126 -0
- package/dist/core/platform/config/auth-storage.js +1 -0
- package/dist/core/platform/config/defaults.d.ts +8 -0
- package/dist/core/platform/config/defaults.js +1 -0
- package/dist/core/platform/config/diagnostics.d.ts +20 -0
- package/dist/core/platform/config/diagnostics.js +0 -0
- package/dist/core/platform/config/resolve-config-value.d.ts +12 -0
- package/dist/core/platform/config/resolve-config-value.js +1 -0
- package/dist/core/platform/config/resource-loader.d.ts +188 -0
- package/dist/core/platform/config/resource-loader.js +2 -0
- package/dist/core/platform/config/settings-manager.d.ts +314 -0
- package/dist/core/platform/config/settings-manager.js +1 -0
- package/dist/core/platform/exec/bash-executor.d.ts +41 -0
- package/dist/core/platform/exec/bash-executor.js +1 -0
- package/dist/core/platform/exec/exec.d.ts +25 -0
- package/dist/core/platform/exec/exec.js +1 -0
- package/dist/core/platform/i18n/index.d.ts +26 -0
- package/dist/core/platform/i18n/index.js +1 -0
- package/dist/core/platform/i18n/messages.d.ts +56 -0
- package/dist/core/platform/i18n/messages.js +1 -0
- package/dist/core/platform/i18n/messages.zh.d.ts +56 -0
- package/dist/core/platform/i18n/messages.zh.js +1 -0
- package/dist/core/platform/i18n/slash-commands.d.ts +53 -0
- package/dist/core/platform/i18n/slash-commands.js +1 -0
- package/dist/core/platform/i18n/slash-commands.zh.d.ts +53 -0
- package/dist/core/platform/i18n/slash-commands.zh.js +1 -0
- package/dist/core/platform/i18n/themes.d.ts +11 -0
- package/dist/core/platform/i18n/themes.js +1 -0
- package/dist/core/platform/i18n/themes.zh.d.ts +11 -0
- package/dist/core/platform/i18n/themes.zh.js +1 -0
- package/dist/core/platform/keybindings.d.ts +61 -0
- package/dist/core/platform/keybindings.js +1 -0
- package/dist/core/platform/listeners.d.ts +21 -0
- package/dist/core/platform/listeners.js +1 -0
- package/dist/core/platform/telemetry/batching-dispatcher.d.ts +41 -0
- package/dist/core/platform/telemetry/batching-dispatcher.js +1 -0
- package/dist/core/platform/telemetry/build-meta.d.ts +12 -0
- package/dist/core/platform/telemetry/build-meta.js +1 -0
- package/dist/core/platform/telemetry/caller-context.d.ts +32 -0
- package/dist/core/platform/telemetry/caller-context.js +1 -0
- package/dist/core/platform/telemetry/credentials.d.ts +27 -0
- package/dist/core/platform/telemetry/credentials.js +1 -0
- package/dist/core/platform/telemetry/ext-events.d.ts +89 -0
- package/dist/core/platform/telemetry/ext-events.js +1 -0
- package/dist/core/platform/telemetry/index.d.ts +13 -0
- package/dist/core/platform/telemetry/index.js +1 -0
- package/dist/core/platform/telemetry/insforge-base.d.ts +37 -0
- package/dist/core/platform/telemetry/insforge-base.js +1 -0
- package/dist/core/platform/telemetry/types.d.ts +33 -0
- package/dist/core/platform/telemetry/types.js +0 -0
- package/dist/core/platform/timings.d.ts +2 -0
- package/dist/core/platform/timings.js +3 -0
- package/dist/core/platform/utils/logger.d.ts +75 -0
- package/dist/core/platform/utils/logger.js +1 -0
- package/dist/core/platform/utils/shell.d.ts +25 -0
- package/dist/core/platform/utils/shell.js +9 -0
- package/dist/core/platform/utils/sleep.d.ts +7 -0
- package/dist/core/platform/utils/sleep.js +1 -0
- package/dist/core/platform/utils/tools-manager.d.ts +19 -0
- package/dist/core/platform/utils/tools-manager.js +1 -0
- package/dist/core/prompt/prompt-templates.d.ts +49 -0
- package/dist/core/prompt/prompt-templates.js +2 -0
- package/dist/core/prompt/system-prompt.d.ts +24 -0
- package/dist/core/prompt/system-prompt.js +139 -0
- package/dist/core/runtime/agent-session.d.ts +676 -0
- package/dist/core/runtime/agent-session.js +15 -0
- package/dist/core/runtime/bash-runner.d.ts +56 -0
- package/dist/core/runtime/bash-runner.js +2 -0
- package/dist/core/runtime/catui-agent.d.ts +182 -0
- package/dist/core/runtime/catui-agent.js +1 -0
- package/dist/core/runtime/compaction-controller.d.ts +43 -0
- package/dist/core/runtime/compaction-controller.js +1 -0
- package/dist/core/runtime/default-tools.d.ts +9 -0
- package/dist/core/runtime/default-tools.js +1 -0
- package/dist/core/runtime/event-bridge.d.ts +21 -0
- package/dist/core/runtime/event-bridge.js +1 -0
- package/dist/core/runtime/event-bus.d.ts +8 -0
- package/dist/core/runtime/event-bus.js +1 -0
- package/dist/core/runtime/export-bridge.d.ts +23 -0
- package/dist/core/runtime/export-bridge.js +1 -0
- package/dist/core/runtime/extension-core-bindings.d.ts +46 -0
- package/dist/core/runtime/extension-core-bindings.js +3 -0
- package/dist/core/runtime/model-controller.d.ts +84 -0
- package/dist/core/runtime/model-controller.js +1 -0
- package/dist/core/runtime/model-cycle.d.ts +20 -0
- package/dist/core/runtime/model-cycle.js +1 -0
- package/dist/core/runtime/prompt-assembly.d.ts +20 -0
- package/dist/core/runtime/prompt-assembly.js +3 -0
- package/dist/core/runtime/retry-coordinator.d.ts +84 -0
- package/dist/core/runtime/retry-coordinator.js +1 -0
- package/dist/core/runtime/sdk.d.ts +163 -0
- package/dist/core/runtime/sdk.js +1 -0
- package/dist/core/runtime/session-context.d.ts +155 -0
- package/dist/core/runtime/session-context.js +0 -0
- package/dist/core/runtime/session-lifecycle-controller.d.ts +42 -0
- package/dist/core/runtime/session-lifecycle-controller.js +1 -0
- package/dist/core/runtime/session-tree-controller.d.ts +40 -0
- package/dist/core/runtime/session-tree-controller.js +1 -0
- package/dist/core/runtime/slash-command-catalog.d.ts +27 -0
- package/dist/core/runtime/slash-command-catalog.js +1 -0
- package/dist/core/runtime/thinking-levels.d.ts +31 -0
- package/dist/core/runtime/thinking-levels.js +1 -0
- package/dist/core/runtime/tool-runtime-controller.d.ts +35 -0
- package/dist/core/runtime/tool-runtime-controller.js +1 -0
- package/dist/core/runtime/turn-context.d.ts +52 -0
- package/dist/core/runtime/turn-context.js +1 -0
- package/dist/core/session/compaction/branch-summarization.d.ts +85 -0
- package/dist/core/session/compaction/branch-summarization.js +38 -0
- package/dist/core/session/compaction/compaction.d.ts +120 -0
- package/dist/core/session/compaction/compaction.js +104 -0
- package/dist/core/session/compaction/index.d.ts +9 -0
- package/dist/core/session/compaction/index.js +1 -0
- package/dist/core/session/compaction/utils.d.ts +37 -0
- package/dist/core/session/compaction/utils.js +17 -0
- package/dist/core/session/session-manager.d.ts +359 -0
- package/dist/core/session/session-manager.js +14 -0
- package/dist/core/skills.d.ts +57 -0
- package/dist/core/skills.js +4 -0
- package/dist/core/slash-commands.d.ts +36 -0
- package/dist/core/slash-commands.js +1 -0
- package/dist/core/soul-integration.d.ts +77 -0
- package/dist/core/soul-integration.js +1 -0
- package/dist/core/soul-options-contract.d.ts +10 -0
- package/dist/core/soul-options-contract.js +0 -0
- package/dist/core/sub-agent/agent-definition-loader.d.ts +96 -0
- package/dist/core/sub-agent/agent-definition-loader.js +2 -0
- package/dist/core/sub-agent/agent-definition.d.ts +162 -0
- package/dist/core/sub-agent/agent-definition.js +6 -0
- package/dist/core/sub-agent/agent-handoff-safety.d.ts +39 -0
- package/dist/core/sub-agent/agent-handoff-safety.js +1 -0
- package/dist/core/sub-agent/agent-input-output.d.ts +143 -0
- package/dist/core/sub-agent/agent-input-output.js +1 -0
- package/dist/core/sub-agent/agent-output-persistence.d.ts +43 -0
- package/dist/core/sub-agent/agent-output-persistence.js +3 -0
- package/dist/core/sub-agent/agent-prompt-builder.d.ts +37 -0
- package/dist/core/sub-agent/agent-prompt-builder.js +2 -0
- package/dist/core/sub-agent/agent-registry.d.ts +145 -0
- package/dist/core/sub-agent/agent-registry.js +1 -0
- package/dist/core/sub-agent/agent-result-extractor.d.ts +28 -0
- package/dist/core/sub-agent/agent-result-extractor.js +3 -0
- package/dist/core/sub-agent/agent-telemetry.d.ts +71 -0
- package/dist/core/sub-agent/agent-telemetry.js +1 -0
- package/dist/core/sub-agent/agent-tool-filter.d.ts +89 -0
- package/dist/core/sub-agent/agent-tool-filter.js +2 -0
- package/dist/core/sub-agent/agent-tool.d.ts +69 -0
- package/dist/core/sub-agent/agent-tool.js +11 -0
- package/dist/core/sub-agent/index.d.ts +26 -0
- package/dist/core/sub-agent/index.js +1 -0
- package/dist/core/sub-agent/send-message-tool.d.ts +33 -0
- package/dist/core/sub-agent/send-message-tool.js +2 -0
- package/dist/core/sub-agent/sub-agent-backend.d.ts +26 -0
- package/dist/core/sub-agent/sub-agent-backend.js +7 -0
- package/dist/core/sub-agent/sub-agent-runtime.d.ts +34 -0
- package/dist/core/sub-agent/sub-agent-runtime.js +1 -0
- package/dist/core/sub-agent/sub-agent-types.d.ts +138 -0
- package/dist/core/sub-agent/sub-agent-types.js +0 -0
- package/dist/core/sub-agent/subprocess-backend.d.ts +35 -0
- package/dist/core/sub-agent/subprocess-backend.js +1 -0
- package/dist/core/sub-agent/subprocess-worker.d.ts +12 -0
- package/dist/core/sub-agent/subprocess-worker.js +1 -0
- package/dist/core/theme-contract.d.ts +32 -0
- package/dist/core/theme-contract.js +0 -0
- package/dist/core/tools/bash.d.ts +73 -0
- package/dist/core/tools/bash.js +21 -0
- package/dist/core/tools/edit-diff.d.ts +58 -0
- package/dist/core/tools/edit-diff.js +16 -0
- package/dist/core/tools/edit.d.ts +46 -0
- package/dist/core/tools/edit.js +1 -0
- package/dist/core/tools/file-state-cache.d.ts +30 -0
- package/dist/core/tools/file-state-cache.js +1 -0
- package/dist/core/tools/find.d.ts +46 -0
- package/dist/core/tools/find.js +8 -0
- package/dist/core/tools/grep.d.ts +58 -0
- package/dist/core/tools/grep.js +13 -0
- package/dist/core/tools/index.d.ts +116 -0
- package/dist/core/tools/index.js +1 -0
- package/dist/core/tools/input-validation.d.ts +13 -0
- package/dist/core/tools/input-validation.js +1 -0
- package/dist/core/tools/ls.d.ts +45 -0
- package/dist/core/tools/ls.js +4 -0
- package/dist/core/tools/orchestrator.d.ts +76 -0
- package/dist/core/tools/orchestrator.js +1 -0
- package/dist/core/tools/path-utils.d.ts +7 -0
- package/dist/core/tools/path-utils.js +1 -0
- package/dist/core/tools/pdf-extract.d.ts +11 -0
- package/dist/core/tools/pdf-extract.js +1 -0
- package/dist/core/tools/read.d.ts +46 -0
- package/dist/core/tools/read.js +11 -0
- package/dist/core/tools/source.d.ts +78 -0
- package/dist/core/tools/source.js +1 -0
- package/dist/core/tools/time.d.ts +19 -0
- package/dist/core/tools/time.js +2 -0
- package/dist/core/tools/truncate.d.ts +66 -0
- package/dist/core/tools/truncate.js +5 -0
- package/dist/core/tools/write-guard.d.ts +2 -0
- package/dist/core/tools/write-guard.js +1 -0
- package/dist/core/tools/write.d.ts +36 -0
- package/dist/core/tools/write.js +1 -0
- package/dist/core/workspace/index.d.ts +8 -0
- package/dist/core/workspace/index.js +1 -0
- package/dist/core/workspace/worktree-manager.d.ts +73 -0
- package/dist/core/workspace/worktree-manager.js +3 -0
- package/dist/extensions/builtin/AGENT.md +115 -0
- package/dist/extensions/builtin/ask-user-question/ask-user-question-tool.d.ts +9 -0
- package/dist/extensions/builtin/ask-user-question/ask-user-question-tool.js +4 -0
- package/dist/extensions/builtin/ask-user-question/index.d.ts +8 -0
- package/dist/extensions/builtin/ask-user-question/index.js +1 -0
- package/dist/extensions/builtin/ask-user-question/prompt.d.ts +14 -0
- package/dist/extensions/builtin/ask-user-question/prompt.js +30 -0
- package/dist/extensions/builtin/ask-user-question/types.d.ts +69 -0
- package/dist/extensions/builtin/ask-user-question/types.js +1 -0
- package/dist/extensions/builtin/browser/AGENT.md +17 -0
- package/dist/extensions/builtin/browser/agent-workspace/agent_helpers.py +12 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/amazon/product-search.md +198 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/archive-org/scraping.md +341 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/arxiv/scraping.md +311 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/arxiv-bulk/scraping.md +333 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/atlas/overview.md +70 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/booking-com/scraping.md +578 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/capterra/scraping.md +440 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/centilebrain/generate-estimates.md +110 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/coingecko/scraping.md +325 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/coinmarketcap/scraping.md +463 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/coursera/scraping.md +360 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/craigslist/scraping.md +390 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/crossref/scraping.md +568 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/dev-to/scraping.md +323 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/duckduckgo/scraping.md +349 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/ebay/scraping.md +435 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/etsy/scraping.md +506 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/eventbrite/scraping.md +363 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/expedia/automation.md +168 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/facebook/groups.md +236 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/facebook/pages.md +295 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/framer/editor.md +108 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/fred/scraping.md +493 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/g2/scraping.md +580 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/genius/scraping.md +511 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/github/repo-actions.md +65 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/github/scraping.md +184 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/glassdoor/scraping.md +543 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/gmail/compose.md +122 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/goodreads/scraping.md +461 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/gutenberg/scraping.md +383 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/hackernews/scraping.md +243 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/howlongtobeat/scraping.md +473 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/imdb/scraping.md +271 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/itch-io/scraping.md +436 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/job-boards/indeed-glassdoor.md +1021 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/letterboxd/scraping.md +349 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/linkedin/invitation-manager.md +109 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/loom/folder-enumeration.md +170 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/macrotrends/scraping.md +537 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/medium/article-hydration.md +120 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/medium/scraping.md +414 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/metacritic/scraping.md +477 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/musicbrainz/scraping.md +478 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/nasa/scraping.md +339 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/news-aggregation/multi-source.md +205 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/open-library/scraping.md +472 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/openalex/scraping.md +470 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/openstreetmap/scraping.md +490 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/package-registries/npm-pypi.md +478 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/polymarket/scraping.md +234 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/producthunt/scraping.md +307 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/pubmed/scraping.md +421 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/quora/scraping.md +364 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/rawg/scraping.md +352 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/reddit/scraping.md +124 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/rest-countries/scraping.md +233 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/sec-edgar/scraping.md +361 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/shopify-admin/README.md +36 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/shopify-admin/embedded-apps.md +72 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/shopify-admin/knowledge-base.md +109 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/shopify-admin/polaris-inputs.md +137 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/soundcloud/scraping.md +362 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/spotify/scraping.md +339 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/stackoverflow/scraping.md +435 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/steam/scraping.md +575 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/substack/scraping.md +338 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/thetechgeeks/pricing.md +52 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/tiktok/upload.md +107 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/tradingview/scraping.md +309 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/trello/boards-and-lists.md +88 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/trustpilot/scraping.md +375 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/walmart/scraping.md +444 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/wayback-machine/scraping.md +306 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/weather/scraping.md +398 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/wellfound/scraping.md +596 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/world-bank/scraping.md +356 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/xiaohongshu/scraping.md +84 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/youtube/scraping.md +418 -0
- package/dist/extensions/builtin/browser/agent-workspace/domain-skills/zillow/scraping.md +433 -0
- package/dist/extensions/builtin/browser/browser.md +73 -0
- package/dist/extensions/builtin/browser/index.d.ts +8 -0
- package/dist/extensions/builtin/browser/index.js +15 -0
- package/dist/extensions/builtin/browser/install.md +142 -0
- package/dist/extensions/builtin/browser/interaction-skills/connection.md +48 -0
- package/dist/extensions/builtin/browser/interaction-skills/cookies.md +3 -0
- package/dist/extensions/builtin/browser/interaction-skills/cross-origin-iframes.md +3 -0
- package/dist/extensions/builtin/browser/interaction-skills/dialogs.md +64 -0
- package/dist/extensions/builtin/browser/interaction-skills/downloads.md +3 -0
- package/dist/extensions/builtin/browser/interaction-skills/drag-and-drop.md +3 -0
- package/dist/extensions/builtin/browser/interaction-skills/dropdowns.md +3 -0
- package/dist/extensions/builtin/browser/interaction-skills/iframes.md +3 -0
- package/dist/extensions/builtin/browser/interaction-skills/network-requests.md +3 -0
- package/dist/extensions/builtin/browser/interaction-skills/print-as-pdf.md +3 -0
- package/dist/extensions/builtin/browser/interaction-skills/profile-sync.md +90 -0
- package/dist/extensions/builtin/browser/interaction-skills/screenshots.md +17 -0
- package/dist/extensions/builtin/browser/interaction-skills/scrolling.md +3 -0
- package/dist/extensions/builtin/browser/interaction-skills/shadow-dom.md +3 -0
- package/dist/extensions/builtin/browser/interaction-skills/tabs.md +69 -0
- package/dist/extensions/builtin/browser/interaction-skills/uploads.md +1 -0
- package/dist/extensions/builtin/browser/interaction-skills/viewport.md +3 -0
- package/dist/extensions/builtin/browser/src/browser_harness/AGENT.md +15 -0
- package/dist/extensions/builtin/browser/src/browser_harness/__init__.py +8 -0
- package/dist/extensions/builtin/browser/src/browser_harness/_ipc.py +90 -0
- package/dist/extensions/builtin/browser/src/browser_harness/admin.py +722 -0
- package/dist/extensions/builtin/browser/src/browser_harness/daemon.py +328 -0
- package/dist/extensions/builtin/browser/src/browser_harness/helpers.py +396 -0
- package/dist/extensions/builtin/browser/src/browser_harness/run.py +103 -0
- package/dist/extensions/builtin/btw/index.d.ts +8 -0
- package/dist/extensions/builtin/btw/index.js +15 -0
- package/dist/extensions/builtin/debug/collectors.d.ts +96 -0
- package/dist/extensions/builtin/debug/collectors.js +7 -0
- package/dist/extensions/builtin/debug/index.d.ts +8 -0
- package/dist/extensions/builtin/debug/index.js +49 -0
- package/dist/extensions/builtin/diagnostics/diagnostic-buffer.d.ts +19 -0
- package/dist/extensions/builtin/diagnostics/diagnostic-buffer.js +1 -0
- package/dist/extensions/builtin/diagnostics/index.d.ts +8 -0
- package/dist/extensions/builtin/diagnostics/index.js +1 -0
- package/dist/extensions/builtin/diagnostics/redaction.d.ts +8 -0
- package/dist/extensions/builtin/diagnostics/redaction.js +1 -0
- package/dist/extensions/builtin/diagnostics/reporter.d.ts +17 -0
- package/dist/extensions/builtin/diagnostics/reporter.js +1 -0
- package/dist/extensions/builtin/diagnostics/types.d.ts +62 -0
- package/dist/extensions/builtin/diagnostics/types.js +1 -0
- package/dist/extensions/builtin/discipline/index.d.ts +8 -0
- package/dist/extensions/builtin/discipline/index.js +7 -0
- package/dist/extensions/builtin/discipline/skills/brainstorming/SKILL.md +33 -0
- package/dist/extensions/builtin/discipline/skills/executing-plans/SKILL.md +25 -0
- package/dist/extensions/builtin/discipline/skills/finishing-development-branch/SKILL.md +25 -0
- package/dist/extensions/builtin/discipline/skills/receiving-code-review/SKILL.md +22 -0
- package/dist/extensions/builtin/discipline/skills/requesting-code-review/SKILL.md +31 -0
- package/dist/extensions/builtin/discipline/skills/systematic-debugging/SKILL.md +28 -0
- package/dist/extensions/builtin/discipline/skills/test-driven-development/SKILL.md +32 -0
- package/dist/extensions/builtin/discipline/skills/using-git-worktrees/SKILL.md +25 -0
- package/dist/extensions/builtin/discipline/skills/verification-before-completion/SKILL.md +27 -0
- package/dist/extensions/builtin/discipline/skills/writing-plans/SKILL.md +26 -0
- package/dist/extensions/builtin/goal/README.md +67 -0
- package/dist/extensions/builtin/goal/goal-command.d.ts +13 -0
- package/dist/extensions/builtin/goal/goal-command.js +9 -0
- package/dist/extensions/builtin/goal/goal-controller.d.ts +143 -0
- package/dist/extensions/builtin/goal/goal-controller.js +1 -0
- package/dist/extensions/builtin/goal/goal-format.d.ts +52 -0
- package/dist/extensions/builtin/goal/goal-format.js +1 -0
- package/dist/extensions/builtin/goal/goal-parser.d.ts +27 -0
- package/dist/extensions/builtin/goal/goal-parser.js +2 -0
- package/dist/extensions/builtin/goal/goal-prompts.d.ts +15 -0
- package/dist/extensions/builtin/goal/goal-prompts.js +5 -0
- package/dist/extensions/builtin/goal/goal-store.d.ts +28 -0
- package/dist/extensions/builtin/goal/goal-store.js +1 -0
- package/dist/extensions/builtin/goal/goal-tools.d.ts +26 -0
- package/dist/extensions/builtin/goal/goal-tools.js +3 -0
- package/dist/extensions/builtin/goal/goal-types.d.ts +87 -0
- package/dist/extensions/builtin/goal/goal-types.js +1 -0
- package/dist/extensions/builtin/goal/index.d.ts +8 -0
- package/dist/extensions/builtin/goal/index.js +10 -0
- package/dist/extensions/builtin/grub/README.md +112 -0
- package/dist/extensions/builtin/grub/grub-controller.d.ts +67 -0
- package/dist/extensions/builtin/grub/grub-controller.js +1 -0
- package/dist/extensions/builtin/grub/grub-decision.d.ts +8 -0
- package/dist/extensions/builtin/grub/grub-decision.js +1 -0
- package/dist/extensions/builtin/grub/grub-feature-list.d.ts +54 -0
- package/dist/extensions/builtin/grub/grub-feature-list.js +2 -0
- package/dist/extensions/builtin/grub/grub-format.d.ts +13 -0
- package/dist/extensions/builtin/grub/grub-format.js +4 -0
- package/dist/extensions/builtin/grub/grub-harness.d.ts +9 -0
- package/dist/extensions/builtin/grub/grub-harness.js +3 -0
- package/dist/extensions/builtin/grub/grub-i18n.d.ts +166 -0
- package/dist/extensions/builtin/grub/grub-i18n.js +1 -0
- package/dist/extensions/builtin/grub/grub-parser.d.ts +24 -0
- package/dist/extensions/builtin/grub/grub-parser.js +2 -0
- package/dist/extensions/builtin/grub/grub-persistence.d.ts +17 -0
- package/dist/extensions/builtin/grub/grub-persistence.js +2 -0
- package/dist/extensions/builtin/grub/grub-prompts.d.ts +12 -0
- package/dist/extensions/builtin/grub/grub-prompts.js +97 -0
- package/dist/extensions/builtin/grub/grub-turn.d.ts +16 -0
- package/dist/extensions/builtin/grub/grub-turn.js +1 -0
- package/dist/extensions/builtin/grub/grub-types.d.ts +110 -0
- package/dist/extensions/builtin/grub/grub-types.js +1 -0
- package/dist/extensions/builtin/grub/index.d.ts +8 -0
- package/dist/extensions/builtin/grub/index.js +6 -0
- package/dist/extensions/builtin/idle-think/curiosity.d.ts +46 -0
- package/dist/extensions/builtin/idle-think/curiosity.js +2 -0
- package/dist/extensions/builtin/idle-think/idle-think-runtime.d.ts +46 -0
- package/dist/extensions/builtin/idle-think/idle-think-runtime.js +1 -0
- package/dist/extensions/builtin/idle-think/index.d.ts +15 -0
- package/dist/extensions/builtin/idle-think/index.js +1 -0
- package/dist/extensions/builtin/idle-think/insights.d.ts +27 -0
- package/dist/extensions/builtin/idle-think/insights.js +5 -0
- package/dist/extensions/builtin/idle-think/thinker.d.ts +26 -0
- package/dist/extensions/builtin/idle-think/thinker.js +9 -0
- package/dist/extensions/builtin/insights/html-report.d.ts +21 -0
- package/dist/extensions/builtin/insights/html-report.js +463 -0
- package/dist/extensions/builtin/insights/index.d.ts +24 -0
- package/dist/extensions/builtin/insights/index.js +2 -0
- package/dist/extensions/builtin/insights/insights-engine.d.ts +18 -0
- package/dist/extensions/builtin/insights/insights-engine.js +39 -0
- package/dist/extensions/builtin/insights/prompts.d.ts +17 -0
- package/dist/extensions/builtin/insights/prompts.js +180 -0
- package/dist/extensions/builtin/insights/session-scanner.d.ts +27 -0
- package/dist/extensions/builtin/insights/session-scanner.js +19 -0
- package/dist/extensions/builtin/insights/stats.d.ts +13 -0
- package/dist/extensions/builtin/insights/stats.js +1 -0
- package/dist/extensions/builtin/insights/types.d.ts +199 -0
- package/dist/extensions/builtin/insights/types.js +0 -0
- package/dist/extensions/builtin/link-world/agent-workspace/README.md +16 -0
- package/dist/extensions/builtin/link-world/index.d.ts +8 -0
- package/dist/extensions/builtin/link-world/index.js +19 -0
- package/dist/extensions/builtin/link-world/internet-search/internet-search.md +65 -0
- package/dist/extensions/builtin/link-world/link-world-agent.md +82 -0
- package/dist/extensions/builtin/link-world/linkworld.md +313 -0
- package/dist/extensions/builtin/link-world/network-routing/network-routing.md +67 -0
- package/dist/extensions/builtin/loop/README.md +92 -0
- package/dist/extensions/builtin/loop/cron/cron-parser.d.ts +56 -0
- package/dist/extensions/builtin/loop/cron/cron-parser.js +1 -0
- package/dist/extensions/builtin/loop/cron/cron-scheduler.d.ts +85 -0
- package/dist/extensions/builtin/loop/cron/cron-scheduler.js +10 -0
- package/dist/extensions/builtin/loop/cron/cron-tasks-lock.d.ts +42 -0
- package/dist/extensions/builtin/loop/cron/cron-tasks-lock.js +1 -0
- package/dist/extensions/builtin/loop/cron/cron-tasks.d.ts +200 -0
- package/dist/extensions/builtin/loop/cron/cron-tasks.js +2 -0
- package/dist/extensions/builtin/loop/cron/index.d.ts +18 -0
- package/dist/extensions/builtin/loop/cron/index.js +1 -0
- package/dist/extensions/builtin/loop/cron-tools/cron-create-tool.d.ts +35 -0
- package/dist/extensions/builtin/loop/cron-tools/cron-create-tool.js +1 -0
- package/dist/extensions/builtin/loop/cron-tools/cron-delete-tool.d.ts +29 -0
- package/dist/extensions/builtin/loop/cron-tools/cron-delete-tool.js +1 -0
- package/dist/extensions/builtin/loop/cron-tools/cron-list-tool.d.ts +25 -0
- package/dist/extensions/builtin/loop/cron-tools/cron-list-tool.js +2 -0
- package/dist/extensions/builtin/loop/cron-tools/index.d.ts +16 -0
- package/dist/extensions/builtin/loop/cron-tools/index.js +1 -0
- package/dist/extensions/builtin/loop/cron-tools/prompt.d.ts +35 -0
- package/dist/extensions/builtin/loop/cron-tools/prompt.js +38 -0
- package/dist/extensions/builtin/loop/index.d.ts +19 -0
- package/dist/extensions/builtin/loop/index.js +2 -0
- package/dist/extensions/builtin/loop/loop-skill.d.ts +18 -0
- package/dist/extensions/builtin/loop/loop-skill.js +58 -0
- package/dist/extensions/builtin/lsp/index.d.ts +8 -0
- package/dist/extensions/builtin/lsp/index.js +1 -0
- package/dist/extensions/builtin/lsp/lsp-client.d.ts +22 -0
- package/dist/extensions/builtin/lsp/lsp-client.js +1 -0
- package/dist/extensions/builtin/lsp/lsp-config.d.ts +8 -0
- package/dist/extensions/builtin/lsp/lsp-config.js +1 -0
- package/dist/extensions/builtin/lsp/lsp-formatters.d.ts +15 -0
- package/dist/extensions/builtin/lsp/lsp-formatters.js +18 -0
- package/dist/extensions/builtin/lsp/lsp-server-instance.d.ts +24 -0
- package/dist/extensions/builtin/lsp/lsp-server-instance.js +1 -0
- package/dist/extensions/builtin/lsp/lsp-server-manager.d.ts +21 -0
- package/dist/extensions/builtin/lsp/lsp-server-manager.js +1 -0
- package/dist/extensions/builtin/lsp/lsp-tool.d.ts +33 -0
- package/dist/extensions/builtin/lsp/lsp-tool.js +2 -0
- package/dist/extensions/builtin/lsp/types.d.ts +31 -0
- package/dist/extensions/builtin/lsp/types.js +1 -0
- package/dist/extensions/builtin/mcp/figma-design.md +68 -0
- package/dist/extensions/builtin/mcp/index.d.ts +14 -0
- package/dist/extensions/builtin/mcp/index.js +25 -0
- package/dist/extensions/builtin/mcp/mcp-management.md +85 -0
- package/dist/extensions/builtin/plan/clear-context-state.d.ts +8 -0
- package/dist/extensions/builtin/plan/clear-context-state.js +1 -0
- package/dist/extensions/builtin/plan/enter-plan-mode-tool.d.ts +11 -0
- package/dist/extensions/builtin/plan/enter-plan-mode-tool.js +2 -0
- package/dist/extensions/builtin/plan/exit-plan-mode-tool.d.ts +18 -0
- package/dist/extensions/builtin/plan/exit-plan-mode-tool.js +13 -0
- package/dist/extensions/builtin/plan/index.d.ts +8 -0
- package/dist/extensions/builtin/plan/index.js +24 -0
- package/dist/extensions/builtin/plan/plan-agents.d.ts +23 -0
- package/dist/extensions/builtin/plan/plan-agents.js +43 -0
- package/dist/extensions/builtin/plan/plan-file-manager.d.ts +26 -0
- package/dist/extensions/builtin/plan/plan-file-manager.js +1 -0
- package/dist/extensions/builtin/plan/plan-permissions.d.ts +15 -0
- package/dist/extensions/builtin/plan/plan-permissions.js +12 -0
- package/dist/extensions/builtin/plan/plan-validation.d.ts +18 -0
- package/dist/extensions/builtin/plan/plan-validation.js +5 -0
- package/dist/extensions/builtin/plan/plan-workflow-prompt.d.ts +18 -0
- package/dist/extensions/builtin/plan/plan-workflow-prompt.js +102 -0
- package/dist/extensions/builtin/plan/teammate-approval.d.ts +49 -0
- package/dist/extensions/builtin/plan/teammate-approval.js +3 -0
- package/dist/extensions/builtin/plan/types.d.ts +133 -0
- package/dist/extensions/builtin/plan/types.js +1 -0
- package/dist/extensions/builtin/presence/index.d.ts +40 -0
- package/dist/extensions/builtin/presence/index.js +15 -0
- package/dist/extensions/builtin/presence/presence-memory.d.ts +47 -0
- package/dist/extensions/builtin/presence/presence-memory.js +1 -0
- package/dist/extensions/builtin/recap/AGENT.md +15 -0
- package/dist/extensions/builtin/recap/index.d.ts +8 -0
- package/dist/extensions/builtin/recap/index.js +1 -0
- package/dist/extensions/builtin/recap/recap-budget.d.ts +24 -0
- package/dist/extensions/builtin/recap/recap-budget.js +1 -0
- package/dist/extensions/builtin/recap/recap-extractor.d.ts +34 -0
- package/dist/extensions/builtin/recap/recap-extractor.js +3 -0
- package/dist/extensions/builtin/recap/recap-renderer.d.ts +19 -0
- package/dist/extensions/builtin/recap/recap-renderer.js +2 -0
- package/dist/extensions/builtin/recap/recap-synthesizer.d.ts +51 -0
- package/dist/extensions/builtin/recap/recap-synthesizer.js +19 -0
- package/dist/extensions/builtin/recap/recap-types.d.ts +40 -0
- package/dist/extensions/builtin/recap/recap-types.js +1 -0
- package/dist/extensions/builtin/sal/README.md +72 -0
- package/dist/extensions/builtin/sal/anchors.d.ts +46 -0
- package/dist/extensions/builtin/sal/anchors.js +1 -0
- package/dist/extensions/builtin/sal/eval/index.d.ts +18 -0
- package/dist/extensions/builtin/sal/eval/index.js +1 -0
- package/dist/extensions/builtin/sal/eval/insforge-sink.d.ts +30 -0
- package/dist/extensions/builtin/sal/eval/insforge-sink.js +1 -0
- package/dist/extensions/builtin/sal/eval/jsonl-sink.d.ts +27 -0
- package/dist/extensions/builtin/sal/eval/jsonl-sink.js +3 -0
- package/dist/extensions/builtin/sal/eval/noop-sink.d.ts +8 -0
- package/dist/extensions/builtin/sal/eval/noop-sink.js +1 -0
- package/dist/extensions/builtin/sal/eval/types.d.ts +60 -0
- package/dist/extensions/builtin/sal/eval/types.js +1 -0
- package/dist/extensions/builtin/sal/index.d.ts +12 -0
- package/dist/extensions/builtin/sal/index.js +7 -0
- package/dist/extensions/builtin/sal/sal-config.d.ts +46 -0
- package/dist/extensions/builtin/sal/sal-config.js +1 -0
- package/dist/extensions/builtin/sal/sal-context.d.ts +11 -0
- package/dist/extensions/builtin/sal/sal-context.js +2 -0
- package/dist/extensions/builtin/sal/sal-runtime.d.ts +72 -0
- package/dist/extensions/builtin/sal/sal-runtime.js +0 -0
- package/dist/extensions/builtin/sal/sal-trace.d.ts +11 -0
- package/dist/extensions/builtin/sal/sal-trace.js +1 -0
- package/dist/extensions/builtin/sal/terrain.d.ts +73 -0
- package/dist/extensions/builtin/sal/terrain.js +3 -0
- package/dist/extensions/builtin/sal/weights.d.ts +28 -0
- package/dist/extensions/builtin/sal/weights.js +1 -0
- package/dist/extensions/builtin/security-audit/README.md +289 -0
- package/dist/extensions/builtin/security-audit/engine/detector.d.ts +44 -0
- package/dist/extensions/builtin/security-audit/engine/detector.js +1 -0
- package/dist/extensions/builtin/security-audit/engine/interceptor.d.ts +61 -0
- package/dist/extensions/builtin/security-audit/engine/interceptor.js +27 -0
- package/dist/extensions/builtin/security-audit/engine/logger.d.ts +65 -0
- package/dist/extensions/builtin/security-audit/engine/logger.js +65 -0
- package/dist/extensions/builtin/security-audit/index.d.ts +13 -0
- package/dist/extensions/builtin/security-audit/index.js +49 -0
- package/dist/extensions/builtin/security-audit/interface.d.ts +167 -0
- package/dist/extensions/builtin/security-audit/interface.js +1 -0
- package/dist/extensions/builtin/soul/index.d.ts +13 -0
- package/dist/extensions/builtin/soul/index.js +1 -0
- package/dist/extensions/builtin/subagent/index.d.ts +8 -0
- package/dist/extensions/builtin/subagent/index.js +8 -0
- package/dist/extensions/builtin/subagent/subagent-parser.d.ts +30 -0
- package/dist/extensions/builtin/subagent/subagent-parser.js +15 -0
- package/dist/extensions/builtin/subagent/subagent-runner.d.ts +49 -0
- package/dist/extensions/builtin/subagent/subagent-runner.js +8 -0
- package/dist/extensions/builtin/subagent/subagent-types.d.ts +57 -0
- package/dist/extensions/builtin/subagent/subagent-types.js +0 -0
- package/dist/extensions/builtin/task/index.d.ts +8 -0
- package/dist/extensions/builtin/task/index.js +1 -0
- package/dist/extensions/builtin/task/task-store.d.ts +42 -0
- package/dist/extensions/builtin/task/task-store.js +1 -0
- package/dist/extensions/builtin/task/task-tools/task-create-tool.d.ts +37 -0
- package/dist/extensions/builtin/task/task-tools/task-create-tool.js +40 -0
- package/dist/extensions/builtin/task/task-tools/task-get-tool.d.ts +31 -0
- package/dist/extensions/builtin/task/task-tools/task-get-tool.js +23 -0
- package/dist/extensions/builtin/task/task-tools/task-list-tool.d.ts +27 -0
- package/dist/extensions/builtin/task/task-tools/task-list-tool.js +22 -0
- package/dist/extensions/builtin/task/task-tools/task-output-tool.d.ts +32 -0
- package/dist/extensions/builtin/task/task-tools/task-output-tool.js +10 -0
- package/dist/extensions/builtin/task/task-tools/task-stop-tool.d.ts +31 -0
- package/dist/extensions/builtin/task/task-tools/task-stop-tool.js +5 -0
- package/dist/extensions/builtin/task/task-tools/task-update-tool.d.ts +47 -0
- package/dist/extensions/builtin/task/task-tools/task-update-tool.js +77 -0
- package/dist/extensions/builtin/task/task-tools/tool-search-tool.d.ts +34 -0
- package/dist/extensions/builtin/task/task-tools/tool-search-tool.js +14 -0
- package/dist/extensions/builtin/task/task-types.d.ts +30 -0
- package/dist/extensions/builtin/task/task-types.js +1 -0
- package/dist/extensions/builtin/teach/README.md +197 -0
- package/dist/extensions/builtin/teach/index.d.ts +12 -0
- package/dist/extensions/builtin/teach/index.js +6 -0
- package/dist/extensions/builtin/teach/references/analogy-library.md +153 -0
- package/dist/extensions/builtin/teach/references/learning-paths.md +214 -0
- package/dist/extensions/builtin/teach/references/source-verification.md +268 -0
- package/dist/extensions/builtin/teach/references/teaching-template.md +237 -0
- package/dist/extensions/builtin/teach/teach-format.d.ts +35 -0
- package/dist/extensions/builtin/teach/teach-format.js +6 -0
- package/dist/extensions/builtin/teach/teach-i18n.d.ts +47 -0
- package/dist/extensions/builtin/teach/teach-i18n.js +1 -0
- package/dist/extensions/builtin/teach/teach-persistence.d.ts +36 -0
- package/dist/extensions/builtin/teach/teach-persistence.js +35 -0
- package/dist/extensions/builtin/teach/teach-prompts.d.ts +52 -0
- package/dist/extensions/builtin/teach/teach-prompts.js +35 -0
- package/dist/extensions/builtin/teach/teach-runtime.d.ts +93 -0
- package/dist/extensions/builtin/teach/teach-runtime.js +9 -0
- package/dist/extensions/builtin/teach/teach-types.d.ts +81 -0
- package/dist/extensions/builtin/teach/teach-types.js +0 -0
- package/dist/extensions/builtin/team/AGENT.md +112 -0
- package/dist/extensions/builtin/team/TESTING.md +299 -0
- package/dist/extensions/builtin/team/index.d.ts +26 -0
- package/dist/extensions/builtin/team/index.js +11 -0
- package/dist/extensions/builtin/team/team-dashboard.d.ts +13 -0
- package/dist/extensions/builtin/team/team-dashboard.js +1 -0
- package/dist/extensions/builtin/team/team-harness.d.ts +35 -0
- package/dist/extensions/builtin/team/team-harness.js +18 -0
- package/dist/extensions/builtin/team/team-mailbox.d.ts +50 -0
- package/dist/extensions/builtin/team/team-mailbox.js +4 -0
- package/dist/extensions/builtin/team/team-orchestrator.d.ts +39 -0
- package/dist/extensions/builtin/team/team-orchestrator.js +5 -0
- package/dist/extensions/builtin/team/team-parser.d.ts +84 -0
- package/dist/extensions/builtin/team/team-parser.js +38 -0
- package/dist/extensions/builtin/team/team-permissions.d.ts +63 -0
- package/dist/extensions/builtin/team/team-permissions.js +1 -0
- package/dist/extensions/builtin/team/team-presets.d.ts +45 -0
- package/dist/extensions/builtin/team/team-presets.js +2 -0
- package/dist/extensions/builtin/team/team-psyche.d.ts +14 -0
- package/dist/extensions/builtin/team/team-psyche.js +5 -0
- package/dist/extensions/builtin/team/team-runtime-helpers.d.ts +48 -0
- package/dist/extensions/builtin/team/team-runtime-helpers.js +2 -0
- package/dist/extensions/builtin/team/team-runtime.d.ts +91 -0
- package/dist/extensions/builtin/team/team-runtime.js +3 -0
- package/dist/extensions/builtin/team/team-state-store.d.ts +29 -0
- package/dist/extensions/builtin/team/team-state-store.js +2 -0
- package/dist/extensions/builtin/team/team-task-store.d.ts +35 -0
- package/dist/extensions/builtin/team/team-task-store.js +2 -0
- package/dist/extensions/builtin/team/team-transcript.d.ts +31 -0
- package/dist/extensions/builtin/team/team-transcript.js +2 -0
- package/dist/extensions/builtin/team/team-types.d.ts +250 -0
- package/dist/extensions/builtin/team/team-types.js +0 -0
- package/dist/extensions/builtin/team/team-ui.d.ts +50 -0
- package/dist/extensions/builtin/team/team-ui.js +2 -0
- package/dist/extensions/builtin/token-save/README.md +56 -0
- package/dist/extensions/builtin/token-save/config.d.ts +8 -0
- package/dist/extensions/builtin/token-save/config.js +1 -0
- package/dist/extensions/builtin/token-save/filters.d.ts +14 -0
- package/dist/extensions/builtin/token-save/filters.js +24 -0
- package/dist/extensions/builtin/token-save/index.d.ts +8 -0
- package/dist/extensions/builtin/token-save/index.js +4 -0
- package/dist/extensions/builtin/token-save/lexer.d.ts +11 -0
- package/dist/extensions/builtin/token-save/lexer.js +1 -0
- package/dist/extensions/builtin/token-save/recovery.d.ts +1 -0
- package/dist/extensions/builtin/token-save/recovery.js +1 -0
- package/dist/extensions/builtin/token-save/rewrite.d.ts +19 -0
- package/dist/extensions/builtin/token-save/rewrite.js +1 -0
- package/dist/extensions/builtin/token-save/runner.d.ts +14 -0
- package/dist/extensions/builtin/token-save/runner.js +3 -0
- package/dist/extensions/builtin/token-save/stream.d.ts +20 -0
- package/dist/extensions/builtin/token-save/stream.js +1 -0
- package/dist/extensions/builtin/token-save/toml-dsl.d.ts +25 -0
- package/dist/extensions/builtin/token-save/toml-dsl.js +3 -0
- package/dist/extensions/builtin/token-save/tracking.d.ts +24 -0
- package/dist/extensions/builtin/token-save/tracking.js +8 -0
- package/dist/extensions/optional/AGENT.md +11 -0
- package/dist/extensions/optional/export-html/index.d.ts +41 -0
- package/dist/extensions/optional/export-html/index.js +2 -0
- package/dist/extensions/optional/simplify/index.d.ts +35 -0
- package/dist/extensions/optional/simplify/index.js +77 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.js +1 -0
- package/dist/main.d.ts +7 -0
- package/dist/main.js +41 -0
- package/dist/migrations.d.ts +30 -0
- package/dist/migrations.js +4 -0
- package/dist/models.d.ts +7 -0
- package/dist/models.js +1 -0
- package/dist/modes/acp/acp-mode.d.ts +30 -0
- package/dist/modes/acp/acp-mode.js +25 -0
- package/dist/modes/index.d.ts +14 -0
- package/dist/modes/index.js +1 -0
- package/dist/modes/interactive/agent-loop-status.d.ts +8 -0
- package/dist/modes/interactive/agent-loop-status.js +1 -0
- package/dist/modes/interactive/components/apikey-input.d.ts +10 -0
- package/dist/modes/interactive/components/apikey-input.js +3 -0
- package/dist/modes/interactive/components/armin.d.ts +39 -0
- package/dist/modes/interactive/components/armin.js +1 -0
- package/dist/modes/interactive/components/assistant-message.d.ts +21 -0
- package/dist/modes/interactive/components/assistant-message.js +1 -0
- package/dist/modes/interactive/components/attachments-bar.d.ts +37 -0
- package/dist/modes/interactive/components/attachments-bar.js +1 -0
- package/dist/modes/interactive/components/bash-execution.d.ts +40 -0
- package/dist/modes/interactive/components/bash-execution.js +13 -0
- package/dist/modes/interactive/components/bordered-loader.d.ts +21 -0
- package/dist/modes/interactive/components/bordered-loader.js +1 -0
- package/dist/modes/interactive/components/branch-summary-message.d.ts +21 -0
- package/dist/modes/interactive/components/branch-summary-message.js +3 -0
- package/dist/modes/interactive/components/buddy/pet-sprites.d.ts +31 -0
- package/dist/modes/interactive/components/buddy/pet-sprites.js +1 -0
- package/dist/modes/interactive/components/catui-loader.d.ts +55 -0
- package/dist/modes/interactive/components/catui-loader.js +1 -0
- package/dist/modes/interactive/components/compaction-summary-message.d.ts +21 -0
- package/dist/modes/interactive/components/compaction-summary-message.js +3 -0
- package/dist/modes/interactive/components/config-selector.d.ts +76 -0
- package/dist/modes/interactive/components/config-selector.js +1 -0
- package/dist/modes/interactive/components/countdown-timer.d.ts +19 -0
- package/dist/modes/interactive/components/countdown-timer.js +1 -0
- package/dist/modes/interactive/components/custom-editor.d.ts +37 -0
- package/dist/modes/interactive/components/custom-editor.js +1 -0
- package/dist/modes/interactive/components/custom-message.d.ts +26 -0
- package/dist/modes/interactive/components/custom-message.js +2 -0
- package/dist/modes/interactive/components/daxnuts.d.ts +28 -0
- package/dist/modes/interactive/components/daxnuts.js +1 -0
- package/dist/modes/interactive/components/diff.d.ts +17 -0
- package/dist/modes/interactive/components/diff.js +3 -0
- package/dist/modes/interactive/components/dynamic-border.d.ts +20 -0
- package/dist/modes/interactive/components/dynamic-border.js +1 -0
- package/dist/modes/interactive/components/editor-buddy-layout.d.ts +17 -0
- package/dist/modes/interactive/components/editor-buddy-layout.js +1 -0
- package/dist/modes/interactive/components/extension-editor.d.ts +25 -0
- package/dist/modes/interactive/components/extension-editor.js +1 -0
- package/dist/modes/interactive/components/extension-input.d.ts +29 -0
- package/dist/modes/interactive/components/extension-input.js +2 -0
- package/dist/modes/interactive/components/extension-selector.d.ts +32 -0
- package/dist/modes/interactive/components/extension-selector.js +2 -0
- package/dist/modes/interactive/components/footer.d.ts +34 -0
- package/dist/modes/interactive/components/footer.js +1 -0
- package/dist/modes/interactive/components/index.d.ts +44 -0
- package/dist/modes/interactive/components/index.js +1 -0
- package/dist/modes/interactive/components/keybinding-hints.d.ts +46 -0
- package/dist/modes/interactive/components/keybinding-hints.js +1 -0
- package/dist/modes/interactive/components/login-dialog.d.ts +47 -0
- package/dist/modes/interactive/components/login-dialog.js +1 -0
- package/dist/modes/interactive/components/memory-stats.d.ts +14 -0
- package/dist/modes/interactive/components/memory-stats.js +2 -0
- package/dist/modes/interactive/components/model-selector.d.ts +59 -0
- package/dist/modes/interactive/components/model-selector.js +2 -0
- package/dist/modes/interactive/components/notification-queue.d.ts +49 -0
- package/dist/modes/interactive/components/notification-queue.js +1 -0
- package/dist/modes/interactive/components/oauth-selector.d.ts +30 -0
- package/dist/modes/interactive/components/oauth-selector.js +1 -0
- package/dist/modes/interactive/components/persona-selector.d.ts +24 -0
- package/dist/modes/interactive/components/persona-selector.js +1 -0
- package/dist/modes/interactive/components/plan-progress-panel.d.ts +24 -0
- package/dist/modes/interactive/components/plan-progress-panel.js +1 -0
- package/dist/modes/interactive/components/provider-selector.d.ts +25 -0
- package/dist/modes/interactive/components/provider-selector.js +1 -0
- package/dist/modes/interactive/components/raw-text.d.ts +19 -0
- package/dist/modes/interactive/components/raw-text.js +3 -0
- package/dist/modes/interactive/components/scoped-models-selector.d.ts +54 -0
- package/dist/modes/interactive/components/scoped-models-selector.js +1 -0
- package/dist/modes/interactive/components/session-selector-search.d.ts +28 -0
- package/dist/modes/interactive/components/session-selector-search.js +1 -0
- package/dist/modes/interactive/components/session-selector.d.ts +100 -0
- package/dist/modes/interactive/components/session-selector.js +2 -0
- package/dist/modes/interactive/components/settings-selector.d.ts +77 -0
- package/dist/modes/interactive/components/settings-selector.js +1 -0
- package/dist/modes/interactive/components/show-images-selector.d.ts +15 -0
- package/dist/modes/interactive/components/show-images-selector.js +1 -0
- package/dist/modes/interactive/components/skill-invocation-message.d.ts +22 -0
- package/dist/modes/interactive/components/skill-invocation-message.js +3 -0
- package/dist/modes/interactive/components/soul-stats.d.ts +15 -0
- package/dist/modes/interactive/components/soul-stats.js +2 -0
- package/dist/modes/interactive/components/sub-agent-panel.d.ts +24 -0
- package/dist/modes/interactive/components/sub-agent-panel.js +1 -0
- package/dist/modes/interactive/components/task-status-panel.d.ts +36 -0
- package/dist/modes/interactive/components/task-status-panel.js +1 -0
- package/dist/modes/interactive/components/theme-selector.d.ts +16 -0
- package/dist/modes/interactive/components/theme-selector.js +1 -0
- package/dist/modes/interactive/components/thinking-selector.d.ts +16 -0
- package/dist/modes/interactive/components/thinking-selector.js +1 -0
- package/dist/modes/interactive/components/tool-execution.d.ts +80 -0
- package/dist/modes/interactive/components/tool-execution.js +58 -0
- package/dist/modes/interactive/components/tree-selector.d.ts +73 -0
- package/dist/modes/interactive/components/tree-selector.js +1 -0
- package/dist/modes/interactive/components/user-message-selector.d.ts +35 -0
- package/dist/modes/interactive/components/user-message-selector.js +1 -0
- package/dist/modes/interactive/components/user-message.d.ts +13 -0
- package/dist/modes/interactive/components/user-message.js +1 -0
- package/dist/modes/interactive/components/visual-truncate.d.ts +29 -0
- package/dist/modes/interactive/components/visual-truncate.js +1 -0
- package/dist/modes/interactive/controllers/auth-provider-config-controller.d.ts +64 -0
- package/dist/modes/interactive/controllers/auth-provider-config-controller.js +1 -0
- package/dist/modes/interactive/controllers/extension-ui/custom-overlay-host.d.ts +38 -0
- package/dist/modes/interactive/controllers/extension-ui/custom-overlay-host.js +1 -0
- package/dist/modes/interactive/controllers/extension-ui/editor-component-adapter.d.ts +37 -0
- package/dist/modes/interactive/controllers/extension-ui/editor-component-adapter.js +1 -0
- package/dist/modes/interactive/controllers/extension-ui/persistent-surface-registry.d.ts +53 -0
- package/dist/modes/interactive/controllers/extension-ui/persistent-surface-registry.js +1 -0
- package/dist/modes/interactive/controllers/extension-ui/prompt-host.d.ts +52 -0
- package/dist/modes/interactive/controllers/extension-ui/prompt-host.js +2 -0
- package/dist/modes/interactive/controllers/image-pipeline-controller.d.ts +106 -0
- package/dist/modes/interactive/controllers/image-pipeline-controller.js +1 -0
- package/dist/modes/interactive/controllers/input-submit-controller.d.ts +80 -0
- package/dist/modes/interactive/controllers/input-submit-controller.js +2 -0
- package/dist/modes/interactive/controllers/interrupt-controller.d.ts +75 -0
- package/dist/modes/interactive/controllers/interrupt-controller.js +1 -0
- package/dist/modes/interactive/controllers/model-overlay-controller.d.ts +127 -0
- package/dist/modes/interactive/controllers/model-overlay-controller.js +3 -0
- package/dist/modes/interactive/controllers/self-update-controller.d.ts +71 -0
- package/dist/modes/interactive/controllers/self-update-controller.js +24 -0
- package/dist/modes/interactive/controllers/settings-overlay-controller.d.ts +56 -0
- package/dist/modes/interactive/controllers/settings-overlay-controller.js +2 -0
- package/dist/modes/interactive/controllers/slash-dispatcher-controller.d.ts +74 -0
- package/dist/modes/interactive/controllers/slash-dispatcher-controller.js +1 -0
- package/dist/modes/interactive/controllers/stream-render-controller.d.ts +110 -0
- package/dist/modes/interactive/controllers/stream-render-controller.js +2 -0
- package/dist/modes/interactive/controllers/tree-overlay-controller.d.ts +55 -0
- package/dist/modes/interactive/controllers/tree-overlay-controller.js +1 -0
- package/dist/modes/interactive/footer-data-provider.d.ts +32 -0
- package/dist/modes/interactive/footer-data-provider.js +1 -0
- package/dist/modes/interactive/interactive-mode.d.ts +303 -0
- package/dist/modes/interactive/interactive-mode.js +119 -0
- package/dist/modes/interactive/services/tips.d.ts +20 -0
- package/dist/modes/interactive/services/tips.js +1 -0
- package/dist/modes/interactive/slash-command-arguments.d.ts +28 -0
- package/dist/modes/interactive/slash-command-arguments.js +1 -0
- package/dist/modes/interactive/state/interactive-state.d.ts +74 -0
- package/dist/modes/interactive/state/interactive-state.js +1 -0
- package/dist/modes/interactive/theme/dark.json +85 -0
- package/dist/modes/interactive/theme/light.json +84 -0
- package/dist/modes/interactive/theme/theme-schema.json +335 -0
- package/dist/modes/interactive/theme/theme.d.ts +81 -0
- package/dist/modes/interactive/theme/theme.js +16 -0
- package/dist/modes/interactive/theme/warm.json +81 -0
- package/dist/modes/print-mode.d.ts +38 -0
- package/dist/modes/print-mode.js +2 -0
- package/dist/modes/rpc/rpc-client.d.ts +221 -0
- package/dist/modes/rpc/rpc-client.js +2 -0
- package/dist/modes/rpc/rpc-mode.d.ts +14 -0
- package/dist/modes/rpc/rpc-mode.js +1 -0
- package/dist/modes/rpc/rpc-types.d.ts +449 -0
- package/dist/modes/rpc/rpc-types.js +0 -0
- package/dist/modes/utils/agent-loop-result-format.d.ts +10 -0
- package/dist/modes/utils/agent-loop-result-format.js +1 -0
- package/dist/modes/utils/clipboard-image.d.ts +10 -0
- package/dist/modes/utils/clipboard-image.js +1 -0
- package/dist/modes/utils/clipboard-native.d.ts +11 -0
- package/dist/modes/utils/clipboard-native.js +1 -0
- package/dist/modes/utils/clipboard.d.ts +1 -0
- package/dist/modes/utils/clipboard.js +1 -0
- package/dist/modes/utils/image-convert.d.ts +8 -0
- package/dist/modes/utils/image-convert.js +1 -0
- package/dist/modes/utils/image-resize.d.ts +41 -0
- package/dist/modes/utils/image-resize.js +1 -0
- package/dist/node_modules/@catui/agent-core/dist/agent-loop-continuations.js +1 -0
- package/dist/node_modules/@catui/agent-core/dist/agent-loop-stream-events.js +1 -0
- package/dist/node_modules/@catui/agent-core/dist/agent-loop-tool-results.js +3 -0
- package/dist/node_modules/@catui/agent-core/dist/agent-loop-tool-summaries.js +1 -0
- package/dist/node_modules/@catui/agent-core/dist/agent-loop.js +4 -0
- package/dist/node_modules/@catui/agent-core/dist/agent-run-result.js +1 -0
- package/dist/node_modules/@catui/agent-core/dist/agent.js +1 -0
- package/dist/node_modules/@catui/agent-core/dist/errors.js +1 -0
- package/dist/node_modules/@catui/agent-core/dist/index.js +1 -0
- package/dist/node_modules/@catui/agent-core/dist/proxy.js +2 -0
- package/dist/node_modules/@catui/agent-core/dist/structured-adaptive-agent-loop.js +2 -0
- package/dist/node_modules/@catui/agent-core/dist/structured-adaptive-streaming-tool-executor.js +1 -0
- package/dist/node_modules/@catui/agent-core/dist/structured-adaptive-tool-orchestration.js +3 -0
- package/dist/node_modules/@catui/agent-core/dist/types.js +1 -0
- package/dist/node_modules/@catui/agent-core/package.json +28 -0
- package/dist/node_modules/@catui/ai/dist/api-registry.js +1 -0
- package/dist/node_modules/@catui/ai/dist/cli.js +21 -0
- package/dist/node_modules/@catui/ai/dist/config-path.js +1 -0
- package/dist/node_modules/@catui/ai/dist/debug-logger.js +4 -0
- package/dist/node_modules/@catui/ai/dist/env-api-keys.js +1 -0
- package/dist/node_modules/@catui/ai/dist/env.js +1 -0
- package/dist/node_modules/@catui/ai/dist/events.js +1 -0
- package/dist/node_modules/@catui/ai/dist/index.js +1 -0
- package/dist/node_modules/@catui/ai/dist/json.js +1 -0
- package/dist/node_modules/@catui/ai/dist/models.generated.js +1 -0
- package/dist/node_modules/@catui/ai/dist/models.js +1 -0
- package/dist/node_modules/@catui/ai/dist/overflow.js +1 -0
- package/dist/node_modules/@catui/ai/dist/providers/amazon-bedrock.js +1 -0
- package/dist/node_modules/@catui/ai/dist/providers/anthropic.js +2 -0
- package/dist/node_modules/@catui/ai/dist/providers/azure-openai-responses.js +1 -0
- package/dist/node_modules/@catui/ai/dist/providers/github-copilot-headers.js +1 -0
- package/dist/node_modules/@catui/ai/dist/providers/google-gemini-cli.js +2 -0
- package/dist/node_modules/@catui/ai/dist/providers/google-shared.js +2 -0
- package/dist/node_modules/@catui/ai/dist/providers/google-vertex.js +1 -0
- package/dist/node_modules/@catui/ai/dist/providers/google.js +1 -0
- package/dist/node_modules/@catui/ai/dist/providers/openai-codex-responses.js +7 -0
- package/dist/node_modules/@catui/ai/dist/providers/openai-completions.js +6 -0
- package/dist/node_modules/@catui/ai/dist/providers/openai-responses-shared.js +10 -0
- package/dist/node_modules/@catui/ai/dist/providers/openai-responses.js +1 -0
- package/dist/node_modules/@catui/ai/dist/providers/register-builtins.js +1 -0
- package/dist/node_modules/@catui/ai/dist/providers/simple-options.js +1 -0
- package/dist/node_modules/@catui/ai/dist/providers/transform-messages.js +1 -0
- package/dist/node_modules/@catui/ai/dist/registry.js +1 -0
- package/dist/node_modules/@catui/ai/dist/schema.js +1 -0
- package/dist/node_modules/@catui/ai/dist/stream.js +1 -0
- package/dist/node_modules/@catui/ai/dist/types.js +0 -0
- package/dist/node_modules/@catui/ai/dist/utils/event-stream-types.js +0 -0
- package/dist/node_modules/@catui/ai/dist/utils/event-stream.js +1 -0
- package/dist/node_modules/@catui/ai/dist/utils/http-proxy.js +1 -0
- package/dist/node_modules/@catui/ai/dist/utils/json-parse.js +1 -0
- package/dist/node_modules/@catui/ai/dist/utils/oauth/anthropic.js +1 -0
- package/dist/node_modules/@catui/ai/dist/utils/oauth/decode-credential.js +1 -0
- package/dist/node_modules/@catui/ai/dist/utils/oauth/github-copilot.js +1 -0
- package/dist/node_modules/@catui/ai/dist/utils/oauth/google-antigravity.js +1 -0
- package/dist/node_modules/@catui/ai/dist/utils/oauth/google-gemini-cli.js +1 -0
- package/dist/node_modules/@catui/ai/dist/utils/oauth/index.js +1 -0
- package/dist/node_modules/@catui/ai/dist/utils/oauth/openai-codex.js +11 -0
- package/dist/node_modules/@catui/ai/dist/utils/oauth/pkce.js +1 -0
- package/dist/node_modules/@catui/ai/dist/utils/oauth/types.js +0 -0
- package/dist/node_modules/@catui/ai/dist/utils/overflow.js +1 -0
- package/dist/node_modules/@catui/ai/dist/utils/sanitize-unicode.js +1 -0
- package/dist/node_modules/@catui/ai/dist/utils/typebox-helpers.js +1 -0
- package/dist/node_modules/@catui/ai/dist/utils/validation.js +6 -0
- package/dist/node_modules/@catui/ai/package.json +106 -0
- package/dist/node_modules/@catui/tui/dist/autocomplete.js +2 -0
- package/dist/node_modules/@catui/tui/dist/components/box.js +1 -0
- package/dist/node_modules/@catui/tui/dist/components/cached-container.js +1 -0
- package/dist/node_modules/@catui/tui/dist/components/cancellable-loader.js +1 -0
- package/dist/node_modules/@catui/tui/dist/components/editor.js +21 -0
- package/dist/node_modules/@catui/tui/dist/components/image.js +1 -0
- package/dist/node_modules/@catui/tui/dist/components/input.js +2 -0
- package/dist/node_modules/@catui/tui/dist/components/loader.js +1 -0
- package/dist/node_modules/@catui/tui/dist/components/markdown.js +7 -0
- package/dist/node_modules/@catui/tui/dist/components/select-list.js +1 -0
- package/dist/node_modules/@catui/tui/dist/components/settings-list.js +1 -0
- package/dist/node_modules/@catui/tui/dist/components/spacer.js +1 -0
- package/dist/node_modules/@catui/tui/dist/components/text.js +1 -0
- package/dist/node_modules/@catui/tui/dist/components/truncated-text.js +2 -0
- package/dist/node_modules/@catui/tui/dist/editor-component.js +0 -0
- package/dist/node_modules/@catui/tui/dist/fuzzy.js +1 -0
- package/dist/node_modules/@catui/tui/dist/index.js +1 -0
- package/dist/node_modules/@catui/tui/dist/keybindings.js +1 -0
- package/dist/node_modules/@catui/tui/dist/keys.js +5 -0
- package/dist/node_modules/@catui/tui/dist/kill-ring.js +1 -0
- package/dist/node_modules/@catui/tui/dist/stdin-buffer.js +1 -0
- package/dist/node_modules/@catui/tui/dist/terminal-image.js +1 -0
- package/dist/node_modules/@catui/tui/dist/terminal.js +1 -0
- package/dist/node_modules/@catui/tui/dist/tui.js +12 -0
- package/dist/node_modules/@catui/tui/dist/undo-stack.js +1 -0
- package/dist/node_modules/@catui/tui/dist/utils.js +2 -0
- package/dist/node_modules/@catui/tui/package.json +37 -0
- package/dist/packages/mem-core/src/store.d.ts +21 -0
- package/dist/packages/mem-core/src/store.js +1 -0
- package/dist/packages/mem-core/src/types.d.ts +329 -0
- package/dist/packages/mem-core/src/types.js +0 -0
- package/dist/packages/protocol/src/commands.d.ts +33 -0
- package/dist/packages/protocol/src/commands.js +0 -0
- package/dist/packages/protocol/src/flags.d.ts +20 -0
- package/dist/packages/protocol/src/flags.js +0 -0
- package/dist/packages/protocol/src/hooks.d.ts +17 -0
- package/dist/packages/protocol/src/hooks.js +0 -0
- package/dist/packages/protocol/src/index.d.ts +15 -0
- package/dist/packages/protocol/src/index.js +1 -0
- package/dist/packages/protocol/src/lifecycle.d.ts +61 -0
- package/dist/packages/protocol/src/lifecycle.js +0 -0
- package/dist/packages/protocol/src/tools.d.ts +77 -0
- package/dist/packages/protocol/src/tools.js +0 -0
- package/dist/packages/soul-core/src/config.d.ts +20 -0
- package/dist/packages/soul-core/src/config.js +1 -0
- package/dist/packages/soul-core/src/diagnostics.d.ts +23 -0
- package/dist/packages/soul-core/src/diagnostics.js +1 -0
- package/dist/packages/soul-core/src/evolution.d.ts +75 -0
- package/dist/packages/soul-core/src/evolution.js +1 -0
- package/dist/packages/soul-core/src/index.d.ts +13 -0
- package/dist/packages/soul-core/src/index.js +1 -0
- package/dist/packages/soul-core/src/injection.d.ts +35 -0
- package/dist/packages/soul-core/src/injection.js +8 -0
- package/dist/packages/soul-core/src/manager.d.ts +101 -0
- package/dist/packages/soul-core/src/manager.js +1 -0
- package/dist/packages/soul-core/src/store.d.ts +62 -0
- package/dist/packages/soul-core/src/store.js +1 -0
- package/dist/packages/soul-core/src/types.d.ts +317 -0
- package/dist/packages/soul-core/src/types.js +0 -0
- package/dist/public-config.d.ts +12 -0
- package/dist/public-config.js +1 -0
- package/dist/runtime.d.ts +9 -0
- package/dist/runtime.js +1 -0
- package/dist/session-compaction.d.ts +7 -0
- package/dist/session-compaction.js +1 -0
- package/dist/session.d.ts +7 -0
- package/dist/session.js +1 -0
- package/dist/skills.d.ts +7 -0
- package/dist/skills.js +1 -0
- package/dist/tools.d.ts +7 -0
- package/dist/tools.js +1 -0
- package/dist/utils/changelog.d.ts +20 -0
- package/dist/utils/changelog.js +4 -0
- package/dist/utils/diagnostics.d.ts +37 -0
- package/dist/utils/diagnostics.js +1 -0
- package/dist/utils/frontmatter.d.ts +7 -0
- package/dist/utils/frontmatter.js +4 -0
- package/dist/utils/git.d.ts +25 -0
- package/dist/utils/git.js +1 -0
- package/dist/utils/mime.d.ts +1 -0
- package/dist/utils/mime.js +1 -0
- package/dist/utils/photon.d.ts +6 -0
- package/dist/utils/photon.js +1 -0
- package/dist/utils/startup-profiler.d.ts +87 -0
- package/dist/utils/startup-profiler.js +2 -0
- package/docs/codex-goal-command-impl.md +1055 -0
- package/docs/codex-goal-vs-grub.md +500 -0
- package/docs/custom-provider.md +27 -0
- package/docs/extensions.md +27 -0
- package/docs/keybindings.md +27 -0
- package/docs/loop /351/207/215/346/236/204/345/256/214/346/210/220/346/200/273/347/273/223.md" +251 -0
- package/docs/loop /351/207/215/346/236/204/345/256/214/346/210/220/346/212/245/345/221/212.md" +123 -0
- package/docs/loop /351/207/215/346/236/204/346/226/271/346/241/210.md" +1222 -0
- package/docs/loop /351/207/215/346/236/204/346/226/271/346/241/210/345/256/236/347/216/260/346/212/245/345/221/212.md" +158 -0
- package/docs/loop /351/207/215/346/236/204/346/226/271/346/241/210/345/257/271/346/257/224/345/210/206/346/236/220.md" +128 -0
- package/docs/loop /351/207/215/346/236/204/350/256/241/345/210/222.md" +321 -0
- package/docs/loop-usage-examples.md +215 -0
- package/docs/models.md +27 -0
- package/docs/packages.md +27 -0
- package/docs/pi-design-philosophy.md +457 -0
- package/docs/planmode.md +1987 -0
- package/docs/prompt-templates.md +27 -0
- package/docs/providers.md +27 -0
- package/docs/sdk.md +27 -0
- package/docs/skills.md +27 -0
- package/docs/themes.md +27 -0
- package/docs/tui.md +27 -0
- package/package.json +191 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { type EventBus } from "../runtime/event-bus.js";
|
|
2
|
+
import type { Extension, ExtensionFactory, ExtensionRuntime, LoadExtensionsResult } from "./types.js";
|
|
3
|
+
export declare function __getExtensionAliasesForTest(): Record<string, string>;
|
|
4
|
+
export declare function __getExtensionVirtualModulesForTest(): Promise<Record<string, unknown>>;
|
|
5
|
+
/**
|
|
6
|
+
* Create a runtime with throwing stubs for action methods.
|
|
7
|
+
* Runner.bindCore() replaces these with real implementations.
|
|
8
|
+
*/
|
|
9
|
+
export declare function createExtensionRuntime(): ExtensionRuntime;
|
|
10
|
+
/**
|
|
11
|
+
* Create an Extension from an inline factory function.
|
|
12
|
+
*/
|
|
13
|
+
export declare function loadExtensionFromFactory(factory: ExtensionFactory, cwd: string, agentDir: string, eventBus: EventBus, runtime: ExtensionRuntime, extensionPath?: string): Promise<Extension>;
|
|
14
|
+
/**
|
|
15
|
+
* Load extensions from paths.
|
|
16
|
+
*/
|
|
17
|
+
export declare function loadExtensions(paths: string[], cwd: string, agentDir: string, eventBus?: EventBus): Promise<LoadExtensionsResult>;
|
|
18
|
+
/**
|
|
19
|
+
* Discover and load extensions from standard locations.
|
|
20
|
+
*/
|
|
21
|
+
export declare function discoverAndLoadExtensions(configuredPaths: string[], cwd: string, agentDir?: string, eventBus?: EventBus): Promise<LoadExtensionsResult>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var _=Object.defineProperty;var a=(t,n)=>_(t,"name",{value:n,configurable:!0});import*as d from"node:fs";import{createRequire as T}from"node:module";import*as x from"node:os";import*as l from"node:path";import{fileURLToPath as w}from"node:url";import{createJiti as M}from"@mariozechner/jiti";import*as F from"@catui/agent-core";import*as k from"@catui/ai";import*as L from"@catui/ai/env";import*as C from"@catui/ai/events";import*as N from"@catui/ai/json";import*as U from"@catui/ai/models";import*as I from"@catui/ai/oauth";import*as R from"@catui/ai/overflow";import*as D from"@catui/ai/registry";import*as B from"@catui/ai/schema";import*as O from"@catui/ai/stream";import*as z from"@catui/ai/types";import*as J from"@catui/tui";import*as V from"@sinclair/typebox";import{CONFIG_DIR_NAME as W,getAgentDir as $,isBunBinary as Q}from"../../config.js";import{createEventBus as q}from"../runtime/event-bus.js";import{execCommand as H}from"../platform/exec/exec.js";const G=["types","schema","events","models","registry","stream","env","overflow","json","oauth"],K={"@catui/ai/types":z,"@catui/ai/schema":B,"@catui/ai/events":C,"@catui/ai/models":U,"@catui/ai/registry":D,"@catui/ai/stream":O,"@catui/ai/env":L,"@catui/ai/overflow":R,"@catui/ai/json":N,"@catui/ai/oauth":I};async function v(){return{"@sinclair/typebox":V,"@catui/agent-core":F,"@catui/tui":J,"@catui/ai":k,...K,"@catui/agent":await import("../../index.js"),"@pencil-agent/nano-pencil":await import("../../index.js")}}a(v,"getVirtualModules");const g=T(import.meta.url);let h=null;function E(){if(h)return h;const t=l.dirname(w(import.meta.url)),n=l.resolve(t,"../..","index.js"),c=g.resolve("@sinclair/typebox").replace(/[\\/]build[\\/]cjs[\\/]index\.js$/,""),i=Object.fromEntries(G.map(r=>[`@catui/ai/${r}`,g.resolve(`@catui/ai/${r}`)]));return h={"@catui/agent":n,"@pencil-agent/nano-pencil":n,"@catui/agent-core":g.resolve("@catui/agent-core"),"@catui/tui":g.resolve("@catui/tui"),...i,"@catui/ai":g.resolve("@catui/ai"),"@sinclair/typebox":c},h}a(E,"getAliases");function pe(){return E()}a(pe,"__getExtensionAliasesForTest");async function me(){return v()}a(me,"__getExtensionVirtualModulesForTest");const X=/[\u00A0\u2000-\u200A\u202F\u205F\u3000]/g;function Y(t){return t.replace(X," ")}a(Y,"normalizeUnicodeSpaces");function Z(t){const n=Y(t);return n.startsWith("~/")?l.join(x.homedir(),n.slice(2)):n.startsWith("~")?l.join(x.homedir(),n.slice(1)):n}a(Z,"expandPath");function S(t,n){const o=Z(t);return l.isAbsolute(o)?o:l.resolve(n,o)}a(S,"resolvePath");function ee(){const t=a(()=>{throw new Error("Extension runtime not initialized. Action methods cannot be called during extension loading.")},"notInitialized");return{sendMessage:t,sendUserMessage:t,executeCommand:a(()=>Promise.reject(new Error("Extension runtime not initialized")),"executeCommand"),isIdle:t,clearFollowUpQueue:t,appendEntry:t,setSessionName:t,getSessionName:t,setLabel:t,getActiveTools:t,getAllTools:t,setActiveTools:t,getCommands:t,setModel:a(()=>Promise.reject(new Error("Extension runtime not initialized")),"setModel"),getThinkingLevel:t,setThinkingLevel:t,flagValues:new Map,pendingProviderRegistrations:[]}}a(ee,"createExtensionRuntime");function A(t,n,o,c,i){return{cwd:o,agentDir:c,on(e,s){const u=t.handlers.get(e)??[];u.push(s),t.handlers.set(e,u)},registerTool(e){t.tools.set(e.name,{definition:e,extensionPath:t.path})},registerCommand(e,s){t.commands.set(e,{name:e,...s})},registerShortcut(e,s){t.shortcuts.set(e,{shortcut:e,extensionPath:t.path,...s})},registerFlag(e,s){t.flags.set(e,{name:e,extensionPath:t.path,...s}),s.default!==void 0&&!n.flagValues.has(e)&&n.flagValues.set(e,s.default)},registerMessageRenderer(e,s){t.messageRenderers.set(e,s)},getFlag(e){if(t.flags.has(e))return n.flagValues.get(e)},sendMessage(e,s){n.sendMessage(e,s)},sendUserMessage(e,s){n.sendUserMessage(e,s)},executeCommand(e){return n.executeCommand(e)},isIdle(){return n.isIdle()},clearFollowUpQueue(){n.clearFollowUpQueue()},appendEntry(e,s){n.appendEntry(e,s)},setSessionName(e){n.setSessionName(e)},getSessionName(){return n.getSessionName()},setLabel(e,s){n.setLabel(e,s)},exec(e,s,u){return H(e,s,u?.cwd??o,u)},getActiveTools(){return n.getActiveTools()},getAllTools(){return n.getAllTools()},setActiveTools(e){n.setActiveTools(e)},getCommands(){return n.getCommands()},setModel(e){return n.setModel(e)},getThinkingLevel(){return n.getThinkingLevel()},setThinkingLevel(e){n.setThinkingLevel(e)},registerProvider(e,s){n.pendingProviderRegistrations.push({name:e,config:s})},events:i}}a(A,"createExtensionAPI");async function te(t){const c=await M(import.meta.url,{moduleCache:!1,...Q?{virtualModules:await v(),tryNative:!1}:{alias:E()}}).import(t,{default:!0});return typeof c!="function"?void 0:c}a(te,"loadExtensionModule");function b(t,n){return{path:t,resolvedPath:n,handlers:new Map,tools:new Map,messageRenderers:new Map,commands:new Map,flags:new Map,shortcuts:new Map}}a(b,"createExtension");async function ne(t,n,o,c,i){const r=S(t,n);try{const e=await te(r);if(!e)return{extension:null,error:`Extension does not export a valid factory function: ${t}`};const s=b(t,r),u=A(s,i,n,o,c);return await e(u),{extension:s,error:null}}catch(e){return{extension:null,error:`Failed to load extension: ${e instanceof Error?e.message:String(e)}`}}}a(ne,"loadExtension");async function ge(t,n,o,c,i,r="<inline>"){const e=b(r,r),s=A(e,i,n,o,c);return await t(s),e}a(ge,"loadExtensionFromFactory");async function se(t,n,o,c){const i=[],r=[],e=c??q(),s=ee(),u=await Promise.all(t.map(f=>ne(f,n,o,e,s).then(p=>({...p,path:f}))));for(const{extension:f,error:p,path:m}of u){if(p){r.push({path:m,error:p});continue}f&&i.push(f)}return{extensions:i,errors:r,runtime:s}}a(se,"loadExtensions");function P(t){try{const n=d.readFileSync(t,"utf-8"),o=JSON.parse(n);return o.catui&&typeof o.catui=="object"?o.catui:o.nanopencil&&typeof o.nanopencil=="object"?o.nanopencil:null}catch{return null}}a(P,"readCatuiManifest");function oe(t){return t.endsWith(".ts")||t.endsWith(".js")}a(oe,"isExtensionFile");function j(t){const n=l.join(t,"package.json");if(d.existsSync(n)){const i=P(n);if(i?.extensions?.length){const r=[];for(const e of i.extensions){const s=l.resolve(t,e);d.existsSync(s)&&r.push(s)}if(r.length>0)return r}}const o=l.join(t,"index.ts"),c=l.join(t,"index.js");return d.existsSync(o)?[o]:d.existsSync(c)?[c]:null}a(j,"resolveExtensionEntries");function y(t){if(!d.existsSync(t))return[];const n=[];try{const o=d.readdirSync(t,{withFileTypes:!0});for(const c of o){const i=l.join(t,c.name);if((c.isFile()||c.isSymbolicLink())&&oe(c.name)){n.push(i);continue}if(c.isDirectory()||c.isSymbolicLink()){const r=j(i);r&&n.push(...r)}}}catch{return[]}return n}a(y,"discoverExtensionsInDir");function ie(t){const n=[],o=a(i=>{const r=l.join(i,"package.json");if(!d.existsSync(r))return;const e=P(r);if(e?.extensions?.length)for(const s of e.extensions){const u=l.resolve(i,s);d.existsSync(u)&&n.push(u)}},"scanPackage"),c=a(i=>{if(!d.existsSync(i))return;let r;try{r=d.readdirSync(i,{withFileTypes:!0})}catch{return}for(const e of r)if(!(!e.isDirectory()&&!e.isSymbolicLink())&&!(e.name===".bin"||e.name===".cache")&&!(e.name==="@catui"||e.name==="@pencil-agent")){if(e.name.startsWith("@")){const s=l.join(i,e.name);let u;try{u=d.readdirSync(s,{withFileTypes:!0})}catch{continue}for(const f of u)(f.isDirectory()||f.isSymbolicLink())&&o(l.join(s,f.name));continue}o(l.join(i,e.name))}},"scanNodeModules");for(const i of t)c(l.join(i,"node_modules"));return n}a(ie,"discoverNpmExtensions");async function he(t,n,o=$(),c){const i=[],r=new Set,e=a(f=>{for(const p of f){const m=l.resolve(p);r.has(m)||(r.add(m),i.push(p))}},"addPaths"),s=l.join(n,W,"extensions");e(y(s));const u=l.join(o,"extensions");e(y(u));for(const f of t){const p=S(f,n);if(d.existsSync(p)&&d.statSync(p).isDirectory()){const m=j(p);if(m){e(m);continue}e(y(p));continue}e([p])}return e(ie([n,o])),se(i,n,o,c)}a(he,"discoverAndLoadExtensions");export{pe as __getExtensionAliasesForTest,me as __getExtensionVirtualModulesForTest,ee as createExtensionRuntime,he as discoverAndLoadExtensions,ge as loadExtensionFromFactory,se as loadExtensions};
|
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* [WHO]: ExtensionRunner class, lifecycle management, event emission, slash-command dispatch chokepoint (invokeCommand), telemetry sink wiring (setTelemetrySink)
|
|
3
|
+
* [FROM]: Depends on agent-core, ai, tui, modes/theme, session-manager, types.ts, core/platform/telemetry (ExtensionTelemetrySink + classifyArgsSignature for the P1 ext_command_events writer)
|
|
4
|
+
* [TO]: Consumed by core/extensions-host/index.ts, core/extensions-host/wrapper.ts, core/runtime/agent-session.ts (delegates command dispatch via invokeCommand)
|
|
5
|
+
* [HERE]: core/extensions-host/runner.ts - extension execution and lifecycle management; owns the single try/catch around command.handler so telemetry can wrap every invocation regardless of caller mode
|
|
6
|
+
*/
|
|
7
|
+
import type { AgentMessage } from "@catui/agent-core";
|
|
8
|
+
import type { ImageContent } from "@catui/ai/types";
|
|
9
|
+
import type { KeyId } from "@catui/tui";
|
|
10
|
+
import type { ResourceDiagnostic } from "../platform/config/diagnostics.js";
|
|
11
|
+
import type { KeybindingsConfig } from "../platform/keybindings.js";
|
|
12
|
+
import type { ModelRegistry } from "../model-registry.js";
|
|
13
|
+
import type { SessionManager } from "../session/session-manager.js";
|
|
14
|
+
import { type ExtensionTelemetrySink, type LlmCallEventInput } from "../platform/telemetry/index.js";
|
|
15
|
+
import type { BeforeAgentStartEvent, BeforeAgentStartEventResult, ContextEvent, Extension, ExtensionActions, ExtensionCommandContext, ExtensionCommandContextActions, ExtensionContext, ExtensionContextActions, ExtensionError, ExtensionEvent, ExtensionFlag, ExtensionRuntime, ExtensionShortcut, ExtensionUIContext, InputEvent, InputEventResult, InputSource, MessageRenderer, RegisteredCommand, RegisteredTool, ResourcesDiscoverEvent, SessionBeforeCompactResult, SessionBeforeForkResult, SessionBeforeSwitchResult, SessionBeforeTreeResult, ToolCallEvent, ToolCallEventResult, ToolResultEvent, ToolResultEventResult, UserBashEvent, UserBashEventResult } from "./types.js";
|
|
16
|
+
/** Combined result from all before_agent_start handlers */
|
|
17
|
+
interface BeforeAgentStartCombinedResult {
|
|
18
|
+
messages?: NonNullable<BeforeAgentStartEventResult["message"]>[];
|
|
19
|
+
systemPrompt?: string;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Events handled by the generic emit() method.
|
|
23
|
+
* Events with dedicated emitXxx() methods are excluded for stronger type safety.
|
|
24
|
+
*/
|
|
25
|
+
type RunnerEmitEvent = Exclude<ExtensionEvent, ToolCallEvent | ToolResultEvent | UserBashEvent | ContextEvent | BeforeAgentStartEvent | ResourcesDiscoverEvent | InputEvent>;
|
|
26
|
+
type RunnerEmitResult<TEvent extends RunnerEmitEvent> = TEvent extends {
|
|
27
|
+
type: "session_before_switch";
|
|
28
|
+
} ? SessionBeforeSwitchResult | undefined : TEvent extends {
|
|
29
|
+
type: "session_before_fork";
|
|
30
|
+
} ? SessionBeforeForkResult | undefined : TEvent extends {
|
|
31
|
+
type: "session_before_compact";
|
|
32
|
+
} ? SessionBeforeCompactResult | undefined : TEvent extends {
|
|
33
|
+
type: "session_before_tree";
|
|
34
|
+
} ? SessionBeforeTreeResult | undefined : undefined;
|
|
35
|
+
export type ExtensionErrorListener = (error: ExtensionError) => void;
|
|
36
|
+
export type NewSessionHandler = (options?: {
|
|
37
|
+
parentSession?: string;
|
|
38
|
+
setup?: (sessionManager: SessionManager) => Promise<void>;
|
|
39
|
+
}) => Promise<{
|
|
40
|
+
cancelled: boolean;
|
|
41
|
+
}>;
|
|
42
|
+
export type ForkHandler = (entryId: string) => Promise<{
|
|
43
|
+
cancelled: boolean;
|
|
44
|
+
}>;
|
|
45
|
+
export type NavigateTreeHandler = (targetId: string, options?: {
|
|
46
|
+
summarize?: boolean;
|
|
47
|
+
customInstructions?: string;
|
|
48
|
+
replaceInstructions?: boolean;
|
|
49
|
+
label?: string;
|
|
50
|
+
}) => Promise<{
|
|
51
|
+
cancelled: boolean;
|
|
52
|
+
}>;
|
|
53
|
+
export type SwitchSessionHandler = (sessionPath: string) => Promise<{
|
|
54
|
+
cancelled: boolean;
|
|
55
|
+
}>;
|
|
56
|
+
export type ReloadHandler = () => Promise<void>;
|
|
57
|
+
export type ShutdownHandler = () => void;
|
|
58
|
+
/**
|
|
59
|
+
* Helper function to emit session_shutdown event to extensions.
|
|
60
|
+
* Returns true if the event was emitted, false if there were no handlers.
|
|
61
|
+
*/
|
|
62
|
+
export declare function emitSessionShutdownEvent(extensionRunner: ExtensionRunner | undefined): Promise<boolean>;
|
|
63
|
+
export declare class ExtensionRunner {
|
|
64
|
+
private extensions;
|
|
65
|
+
private runtime;
|
|
66
|
+
private uiContext;
|
|
67
|
+
private cwd;
|
|
68
|
+
private agentDir;
|
|
69
|
+
private sessionManager;
|
|
70
|
+
private modelRegistry;
|
|
71
|
+
private errorListeners;
|
|
72
|
+
private getModel;
|
|
73
|
+
private completeSimpleFn;
|
|
74
|
+
private completeSimpleWithUsageFn;
|
|
75
|
+
private completeJsonFn;
|
|
76
|
+
private isIdleFn;
|
|
77
|
+
private waitForIdleFn;
|
|
78
|
+
private abortFn;
|
|
79
|
+
private clearFollowUpQueueFn;
|
|
80
|
+
private hasPendingMessagesFn;
|
|
81
|
+
private getContextUsageFn;
|
|
82
|
+
private compactFn;
|
|
83
|
+
private getSystemPromptFn;
|
|
84
|
+
private getSoulManagerFn;
|
|
85
|
+
private getSettingsFn;
|
|
86
|
+
private getSkillsFn;
|
|
87
|
+
private newSessionHandler;
|
|
88
|
+
private forkHandler;
|
|
89
|
+
private navigateTreeHandler;
|
|
90
|
+
private switchSessionHandler;
|
|
91
|
+
private reloadHandler;
|
|
92
|
+
private shutdownHandler;
|
|
93
|
+
private shortcutDiagnostics;
|
|
94
|
+
private commandDiagnostics;
|
|
95
|
+
private telemetrySink?;
|
|
96
|
+
private _beforeAgentStartTimeoutMs;
|
|
97
|
+
private get beforeAgentStartTimeoutMs();
|
|
98
|
+
private readonly beforeAgentStartTimeoutSentinel;
|
|
99
|
+
private beforeAgentStartTimeoutLastReported;
|
|
100
|
+
constructor(extensions: Extension[], runtime: ExtensionRuntime, cwd: string, agentDir: string, sessionManager: SessionManager, modelRegistry: ModelRegistry);
|
|
101
|
+
private withTimeout;
|
|
102
|
+
private reportBeforeAgentStartTimeout;
|
|
103
|
+
bindCore(actions: ExtensionActions, contextActions: ExtensionContextActions): void;
|
|
104
|
+
bindCommandContext(actions?: ExtensionCommandContextActions): void;
|
|
105
|
+
setUIContext(uiContext?: ExtensionUIContext): void;
|
|
106
|
+
getUIContext(): ExtensionUIContext;
|
|
107
|
+
hasUI(): boolean;
|
|
108
|
+
getExtensionPaths(): string[];
|
|
109
|
+
/** Get all registered tools from all extensions (first registration per name wins). */
|
|
110
|
+
getAllRegisteredTools(): RegisteredTool[];
|
|
111
|
+
/** Get a tool definition by name. Returns undefined if not found. */
|
|
112
|
+
getToolDefinition(toolName: string): RegisteredTool["definition"] | undefined;
|
|
113
|
+
getFlags(): Map<string, ExtensionFlag>;
|
|
114
|
+
setFlagValue(name: string, value: boolean | string): void;
|
|
115
|
+
getFlagValues(): Map<string, boolean | string>;
|
|
116
|
+
getShortcuts(effectiveKeybindings: Required<KeybindingsConfig>): Map<KeyId, ExtensionShortcut>;
|
|
117
|
+
getShortcutDiagnostics(): ResourceDiagnostic[];
|
|
118
|
+
onError(listener: ExtensionErrorListener): () => void;
|
|
119
|
+
emitError(error: ExtensionError): void;
|
|
120
|
+
/** Set the timeout for before_agent_start extension hooks (default: 1500ms). */
|
|
121
|
+
setBeforeAgentStartTimeout(ms: number): void;
|
|
122
|
+
/** Clean up all handlers, listeners, and diagnostics. Call on session shutdown. */
|
|
123
|
+
dispose(): void;
|
|
124
|
+
hasHandlers(eventType: string): boolean;
|
|
125
|
+
getMessageRenderer(customType: string): MessageRenderer | undefined;
|
|
126
|
+
getRegisteredCommands(reserved?: Set<string>): RegisteredCommand[];
|
|
127
|
+
getCommandDiagnostics(): ResourceDiagnostic[];
|
|
128
|
+
getRegisteredCommandsWithPaths(): Array<{
|
|
129
|
+
command: RegisteredCommand;
|
|
130
|
+
extensionPath: string;
|
|
131
|
+
}>;
|
|
132
|
+
getCommand(name: string): RegisteredCommand | undefined;
|
|
133
|
+
/**
|
|
134
|
+
* Returns the owning Extension for a given slash command name. Used by the
|
|
135
|
+
* telemetry middleware to stamp `extension_name` on each ext_command_events
|
|
136
|
+
* row. Falls back to undefined when no extension claims the command.
|
|
137
|
+
*/
|
|
138
|
+
private findCommandOwner;
|
|
139
|
+
/**
|
|
140
|
+
* Derive a short, stable extension name from an Extension record. For
|
|
141
|
+
* built-ins (extensions/builtin/<name>) and most user extensions
|
|
142
|
+
* (packages/<name>) the directory basename is the right answer.
|
|
143
|
+
*/
|
|
144
|
+
private deriveExtensionName;
|
|
145
|
+
/**
|
|
146
|
+
* Attach (or replace) the extension telemetry sink. The runner owns sink
|
|
147
|
+
* lifecycle from this point — invokeCommand() will fire-and-forget one
|
|
148
|
+
* `ext_command_events` row per invocation, and writeLlmCallEvent() (called
|
|
149
|
+
* from extension-core-bindings) writes one `ext_llm_calls` row per
|
|
150
|
+
* extension-initiated LLM call. Passing the noop sink (the factory's
|
|
151
|
+
* default when no insforge credentials exist) is the safe way to disable
|
|
152
|
+
* telemetry without scattering null-checks at the call sites.
|
|
153
|
+
*/
|
|
154
|
+
setTelemetrySink(sink: ExtensionTelemetrySink): void;
|
|
155
|
+
/**
|
|
156
|
+
* Passthrough used by core/runtime/extension-core-bindings.ts after each
|
|
157
|
+
* extension-initiated LLM call. The runner owns the sink; the binding
|
|
158
|
+
* doesn't import it directly to keep its concerns scoped to LLM plumbing.
|
|
159
|
+
*/
|
|
160
|
+
writeLlmCallEvent(input: LlmCallEventInput): void;
|
|
161
|
+
/**
|
|
162
|
+
* Wrap an extension hook handler invocation in three layers:
|
|
163
|
+
*
|
|
164
|
+
* 1. AsyncLocalStorage frame so any LLM call placed by the handler gets
|
|
165
|
+
* attributed to this extension + hook + isUserInitiated=false in
|
|
166
|
+
* ext_llm_calls.
|
|
167
|
+
* 2. Wall-clock timing measurement (only when the sample roll passes).
|
|
168
|
+
* 3. One fire-and-forget ext_hook_events row per sampled invocation,
|
|
169
|
+
* capturing duration_ms + ok + error_code + sample_rate.
|
|
170
|
+
*
|
|
171
|
+
* High-frequency hooks (tool_*) are sampled at 10% so the table doesn't
|
|
172
|
+
* drown in tool-execution rows; the sample_rate column on each row lets
|
|
173
|
+
* dashboards extrapolate with `count(*) * 1/sample_rate`. Sampling decision
|
|
174
|
+
* sits inside the AsyncLocalStorage frame so even skipped-emit hooks still
|
|
175
|
+
* attribute their LLM calls.
|
|
176
|
+
*/
|
|
177
|
+
private invokeHookHandler;
|
|
178
|
+
/**
|
|
179
|
+
* Single chokepoint for slash command dispatch. All modes (interactive /
|
|
180
|
+
* print / rpc / acp) funnel through agent-session._tryExecuteExtensionCommand,
|
|
181
|
+
* which calls this method. The wrapper measures wall-clock duration,
|
|
182
|
+
* captures outcome (ok / error / cancelled), and emits one telemetry row
|
|
183
|
+
* per invocation. Errors are still routed through emitError() so existing
|
|
184
|
+
* UI surfaces (toasts, logs) keep working unchanged.
|
|
185
|
+
*
|
|
186
|
+
* Returns `{ found: false }` when no extension owns the command, letting
|
|
187
|
+
* the caller fall through to built-in command handling without emitting a
|
|
188
|
+
* telemetry row for an unknown command.
|
|
189
|
+
*/
|
|
190
|
+
invokeCommand(commandName: string, args: string, ctx: ExtensionCommandContext, metadata?: {
|
|
191
|
+
sessionId?: string | null;
|
|
192
|
+
runId?: string | null;
|
|
193
|
+
variant?: string | null;
|
|
194
|
+
}): Promise<{
|
|
195
|
+
found: boolean;
|
|
196
|
+
}>;
|
|
197
|
+
/**
|
|
198
|
+
* Request a graceful shutdown. Called by extension tools and event handlers.
|
|
199
|
+
* The actual shutdown behavior is provided by the mode via bindExtensions().
|
|
200
|
+
*/
|
|
201
|
+
shutdown(): void;
|
|
202
|
+
/**
|
|
203
|
+
* Create an ExtensionContext for use in event handlers and tool execution.
|
|
204
|
+
* Context values are resolved at call time, so changes via bindCore/bindUI are reflected.
|
|
205
|
+
*/
|
|
206
|
+
createContext(): ExtensionContext;
|
|
207
|
+
createCommandContext(): ExtensionCommandContext;
|
|
208
|
+
private isSessionBeforeEvent;
|
|
209
|
+
emit<TEvent extends RunnerEmitEvent>(event: TEvent): Promise<RunnerEmitResult<TEvent>>;
|
|
210
|
+
emitToolResult(event: ToolResultEvent): Promise<ToolResultEventResult | undefined>;
|
|
211
|
+
emitToolCall(event: ToolCallEvent): Promise<ToolCallEventResult | undefined>;
|
|
212
|
+
emitUserBash(event: UserBashEvent): Promise<UserBashEventResult | undefined>;
|
|
213
|
+
emitContext(messages: AgentMessage[]): Promise<AgentMessage[]>;
|
|
214
|
+
emitBeforeAgentStart(prompt: string, images: ImageContent[] | undefined, systemPrompt: string): Promise<BeforeAgentStartCombinedResult | undefined>;
|
|
215
|
+
private appendSystemPrompt;
|
|
216
|
+
emitResourcesDiscover(cwd: string, reason: ResourcesDiscoverEvent["reason"]): Promise<{
|
|
217
|
+
skillPaths: Array<{
|
|
218
|
+
path: string;
|
|
219
|
+
extensionPath: string;
|
|
220
|
+
}>;
|
|
221
|
+
promptPaths: Array<{
|
|
222
|
+
path: string;
|
|
223
|
+
extensionPath: string;
|
|
224
|
+
}>;
|
|
225
|
+
themePaths: Array<{
|
|
226
|
+
path: string;
|
|
227
|
+
extensionPath: string;
|
|
228
|
+
}>;
|
|
229
|
+
}>;
|
|
230
|
+
/** Emit input event. Transforms chain, "handled" short-circuits. */
|
|
231
|
+
emitInput(text: string, images: ImageContent[] | undefined, source: InputSource): Promise<InputEventResult>;
|
|
232
|
+
}
|
|
233
|
+
export {};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var k=Object.defineProperty;var s=(f,e)=>k(f,"name",{value:e,configurable:!0});import{theme as E}from"../../modes/interactive/theme/theme.js";import{classifyArgsSignature as F,HOOK_SAMPLE_RATES as v,runWithExtCallerContext as x}from"../platform/telemetry/index.js";const C=["interrupt","clear","exit","suspend","cycleThinkingLevel","cycleModelForward","cycleModelBackward","selectModel","selectProviderThenModel","expandTools","toggleThinking","externalEditor","followUp","submit","selectConfirm","selectCancel","copy","deleteToLineEnd"],T=s(f=>{const e={};for(const[n,t]of Object.entries(f)){const o=n,i=Array.isArray(t)?t:[t],a=C.includes(o);for(const r of i){const l=r.toLowerCase();e[l]={action:o,restrictOverride:a}}}return e},"buildBuiltinKeybindings");async function _(f){return f?.hasHandlers("session_shutdown")?(await f.emit({type:"session_shutdown"}),!0):!1}s(_,"emitSessionShutdownEvent");const p={select:s(async()=>{},"select"),confirm:s(async()=>!1,"confirm"),input:s(async()=>{},"input"),notify:s(()=>{},"notify"),onTerminalInput:s(()=>()=>{},"onTerminalInput"),setStatus:s(()=>{},"setStatus"),setWorkingMessage:s(()=>{},"setWorkingMessage"),setWidget:s(()=>{},"setWidget"),setFooter:s(()=>{},"setFooter"),setHeader:s(()=>{},"setHeader"),setTitle:s(()=>{},"setTitle"),custom:s(async()=>{},"custom"),pasteToEditor:s(()=>{},"pasteToEditor"),setEditorText:s(()=>{},"setEditorText"),getEditorText:s(()=>"","getEditorText"),editor:s(async()=>{},"editor"),openExternalEditor:s(async()=>!1,"openExternalEditor"),setEditorComponent:s(()=>{},"setEditorComponent"),get theme(){return E},getAllThemes:s(()=>[],"getAllThemes"),getTheme:s(()=>{},"getTheme"),setTheme:s(f=>({success:!1,error:"UI not available"}),"setTheme"),getToolsExpanded:s(()=>!1,"getToolsExpanded"),setToolsExpanded:s(()=>{},"setToolsExpanded")};class H{static{s(this,"ExtensionRunner")}extensions;runtime;uiContext;cwd;agentDir;sessionManager;modelRegistry;errorListeners=new Set;getModel=s(()=>{},"getModel");completeSimpleFn=s(async()=>{},"completeSimpleFn");completeSimpleWithUsageFn=s(async()=>{},"completeSimpleWithUsageFn");completeJsonFn;isIdleFn=s(()=>!0,"isIdleFn");waitForIdleFn=s(async()=>{},"waitForIdleFn");abortFn=s(()=>{},"abortFn");clearFollowUpQueueFn=s(()=>{},"clearFollowUpQueueFn");hasPendingMessagesFn=s(()=>!1,"hasPendingMessagesFn");getContextUsageFn=s(()=>{},"getContextUsageFn");compactFn=s(()=>{},"compactFn");getSystemPromptFn=s(()=>"","getSystemPromptFn");getSoulManagerFn=s(()=>{},"getSoulManagerFn");getSettingsFn=s(()=>({}),"getSettingsFn");getSkillsFn=s(()=>[],"getSkillsFn");newSessionHandler=s(async()=>({cancelled:!1}),"newSessionHandler");forkHandler=s(async()=>({cancelled:!1}),"forkHandler");navigateTreeHandler=s(async()=>({cancelled:!1}),"navigateTreeHandler");switchSessionHandler=s(async()=>({cancelled:!1}),"switchSessionHandler");reloadHandler=s(async()=>{},"reloadHandler");shutdownHandler=s(()=>{},"shutdownHandler");shortcutDiagnostics=[];commandDiagnostics=[];telemetrySink;_beforeAgentStartTimeoutMs=1500;get beforeAgentStartTimeoutMs(){return this._beforeAgentStartTimeoutMs??1500}beforeAgentStartTimeoutSentinel=Symbol("before_agent_start_timeout");beforeAgentStartTimeoutLastReported=new Map;constructor(e,n,t,o,i,a){this.extensions=e,this.runtime=n,this.uiContext=p,this.cwd=t,this.agentDir=o,this.sessionManager=i,this.modelRegistry=a}async withTimeout(e,n){return new Promise(t=>{const o=setTimeout(()=>t(this.beforeAgentStartTimeoutSentinel),n);Promise.resolve(e).then(i=>{clearTimeout(o),t(i)}).catch(()=>{clearTimeout(o),t(this.beforeAgentStartTimeoutSentinel)})})}reportBeforeAgentStartTimeout(e){const n=Date.now(),t=this.beforeAgentStartTimeoutLastReported.get(e)??0;n-t<6e4||(this.beforeAgentStartTimeoutLastReported.set(e,n),console.warn(`Extension before_agent_start timed out (${this.beforeAgentStartTimeoutMs}ms): ${e}`))}bindCore(e,n){this.runtime.sendMessage=e.sendMessage,this.runtime.sendUserMessage=e.sendUserMessage,this.runtime.executeCommand=e.executeCommand,this.runtime.appendEntry=e.appendEntry,this.runtime.setSessionName=e.setSessionName,this.runtime.getSessionName=e.getSessionName,this.runtime.setLabel=e.setLabel,this.runtime.getActiveTools=e.getActiveTools,this.runtime.getAllTools=e.getAllTools,this.runtime.setActiveTools=e.setActiveTools,this.runtime.getCommands=e.getCommands,this.runtime.setModel=e.setModel,this.runtime.getThinkingLevel=e.getThinkingLevel,this.runtime.setThinkingLevel=e.setThinkingLevel,this.getModel=n.getModel,this.completeSimpleFn=n.completeSimple,this.completeSimpleWithUsageFn=n.completeSimpleWithUsage,this.completeJsonFn=n.completeJson,this.isIdleFn=n.isIdle,this.runtime.isIdle=()=>this.isIdleFn(),this.abortFn=n.abort,this.clearFollowUpQueueFn=n.clearFollowUpQueue,this.runtime.clearFollowUpQueue=()=>this.clearFollowUpQueueFn(),this.hasPendingMessagesFn=n.hasPendingMessages,this.shutdownHandler=n.shutdown,this.getContextUsageFn=n.getContextUsage,this.compactFn=n.compact,this.getSystemPromptFn=n.getSystemPrompt,this.getSoulManagerFn=n.getSoulManager,this.getSettingsFn=n.getSettings,this.getSkillsFn=n.getSkills;for(const{name:t,config:o}of this.runtime.pendingProviderRegistrations)this.modelRegistry.registerProvider(t,o);this.runtime.pendingProviderRegistrations=[]}bindCommandContext(e){if(e){this.waitForIdleFn=e.waitForIdle,this.newSessionHandler=e.newSession,this.forkHandler=e.fork,this.navigateTreeHandler=e.navigateTree,this.switchSessionHandler=e.switchSession,this.reloadHandler=e.reload;return}this.waitForIdleFn=async()=>{},this.newSessionHandler=async()=>({cancelled:!1}),this.forkHandler=async()=>({cancelled:!1}),this.navigateTreeHandler=async()=>({cancelled:!1}),this.switchSessionHandler=async()=>({cancelled:!1}),this.reloadHandler=async()=>{}}setUIContext(e){this.uiContext=e??p}getUIContext(){return this.uiContext}hasUI(){return this.uiContext===p?!1:this.uiContext.__nonInteractive!==!0}getExtensionPaths(){return this.extensions.map(e=>e.path)}getAllRegisteredTools(){const e=new Map;for(const n of this.extensions)for(const t of n.tools.values())e.has(t.definition.name)||e.set(t.definition.name,t);return Array.from(e.values())}getToolDefinition(e){for(const n of this.extensions){const t=n.tools.get(e);if(t)return t.definition}}getFlags(){const e=new Map;for(const n of this.extensions)for(const[t,o]of n.flags)e.has(t)||e.set(t,o);return e}setFlagValue(e,n){this.runtime.flagValues.set(e,n)}getFlagValues(){return new Map(this.runtime.flagValues)}getShortcuts(e){this.shortcutDiagnostics=[];const n=T(e),t=new Map,o=s((i,a)=>{this.shortcutDiagnostics.push({type:"warning",message:i,path:a}),this.hasUI()||console.warn(i)},"addDiagnostic");for(const i of this.extensions)for(const[a,r]of i.shortcuts){const l=a.toLowerCase(),c=n[l];if(c?.restrictOverride===!0){o(`Extension shortcut '${a}' from ${r.extensionPath} conflicts with built-in shortcut. Skipping.`,r.extensionPath);continue}c?.restrictOverride===!1&&o(`Extension shortcut conflict: '${a}' is built-in shortcut for ${c.action} and ${r.extensionPath}. Using ${r.extensionPath}.`,r.extensionPath);const h=t.get(l);h&&o(`Extension shortcut conflict: '${a}' registered by both ${h.extensionPath} and ${r.extensionPath}. Using ${r.extensionPath}.`,r.extensionPath),t.set(l,r)}return t}getShortcutDiagnostics(){return this.shortcutDiagnostics}onError(e){return this.errorListeners.add(e),()=>this.errorListeners.delete(e)}emitError(e){for(const n of this.errorListeners)n(e)}setBeforeAgentStartTimeout(e){this._beforeAgentStartTimeoutMs=e}dispose(){this.errorListeners.clear(),this.beforeAgentStartTimeoutLastReported.clear(),this.shortcutDiagnostics=[],this.commandDiagnostics=[];for(const e of this.extensions)e.handlers.clear()}hasHandlers(e){for(const n of this.extensions){const t=n.handlers.get(e);if(t&&t.length>0)return!0}return!1}getMessageRenderer(e){for(const n of this.extensions){const t=n.messageRenderers.get(e);if(t)return t}}getRegisteredCommands(e){this.commandDiagnostics=[];const n=[],t=new Map;for(const o of this.extensions)for(const i of o.commands.values()){if(e?.has(i.name)){const r=`Extension command '${i.name}' from ${o.path} conflicts with built-in commands. Skipping.`;this.commandDiagnostics.push({type:"warning",message:r,path:o.path}),this.hasUI()||console.warn(r);continue}const a=t.get(i.name);if(a){const r=`Extension command '${i.name}' from ${o.path} conflicts with ${a}. Skipping.`;this.commandDiagnostics.push({type:"warning",message:r,path:o.path}),this.hasUI()||console.warn(r);continue}t.set(i.name,o.path),n.push(i)}return n}getCommandDiagnostics(){return this.commandDiagnostics}getRegisteredCommandsWithPaths(){const e=[];for(const n of this.extensions)for(const t of n.commands.values())e.push({command:t,extensionPath:n.path});return e}getCommand(e){for(const n of this.extensions){const t=n.commands.get(e);if(t)return t}}findCommandOwner(e){for(const n of this.extensions)if(n.commands.has(e))return n}deriveExtensionName(e){const t=(e.path||e.resolvedPath||"").replace(/\/+$/,"").split(/[\\/]/);return t[t.length-1]||"unknown"}setTelemetrySink(e){this.telemetrySink=e}writeLlmCallEvent(e){try{this.telemetrySink?.writeLlmCallEvent(e)}catch{}}invokeHookHandler(e,n,t){const o=this.deriveExtensionName(e),i={extensionName:o,callerContext:`hook:${n}`,isUserInitiated:!1};return x(i,async()=>{const a=v[n]??1;if(a<1&&Math.random()>=a)return await t();const r=new Date,l=performance.now();let c=!0,h=null;try{return await t()}catch(u){throw c=!1,h=u instanceof Error?u.constructor.name:"unknown",u}finally{try{this.telemetrySink?.writeHookEvent({extensionName:o,hookName:n,durationMs:Math.round(performance.now()-l),ok:c,errorCode:h,sampleRate:a,recordedAt:r})}catch{}}})}async invokeCommand(e,n,t,o){const i=this.getCommand(e);if(!i)return{found:!1};const a=this.findCommandOwner(e),r=a?this.deriveExtensionName(a):"unknown",l=new Date,c=performance.now();let h="ok",u=null,m;const d=F(n),y={extensionName:r,callerContext:d==="no-args"?`command:/${e}`:`command:/${e} ${d}`,isUserInitiated:!0,sessionId:o?.sessionId??null,runId:o?.runId??null,variant:o?.variant??null};try{await x(y,()=>i.handler(n,t))}catch(g){h="error",u=g instanceof Error?g.constructor.name:"unknown",m=g,this.emitError({extensionPath:`command:${e}`,event:"command",error:g instanceof Error?g.message:String(g)})}const S=Math.round(performance.now()-c),w=new Date;try{this.telemetrySink?.writeCommandEvent({extensionName:r,commandName:e,argsSignature:d,argsLength:n.length,outcome:h,errorCode:u,durationMs:S,startedAt:l,endedAt:w,sessionId:o?.sessionId??null,runId:o?.runId??null,variant:o?.variant??null})}catch{}return{found:!0}}shutdown(){this.shutdownHandler()}createContext(){const e=this.getModel;return{ui:this.uiContext,hasUI:this.hasUI(),cwd:this.cwd,agentDir:this.agentDir,sessionManager:this.sessionManager,modelRegistry:this.modelRegistry,get model(){return e()},completeSimple:s((n,t)=>this.completeSimpleFn(n,t),"completeSimple"),completeSimpleWithUsage:s((n,t)=>this.completeSimpleWithUsageFn(n,t),"completeSimpleWithUsage"),completeJson:this.completeJsonFn?(n,t,o,i)=>this.completeJsonFn(n,t,o,i):void 0,isIdle:s(()=>this.isIdleFn(),"isIdle"),abort:s(()=>this.abortFn(),"abort"),clearFollowUpQueue:s(()=>this.clearFollowUpQueueFn(),"clearFollowUpQueue"),hasPendingMessages:s(()=>this.hasPendingMessagesFn(),"hasPendingMessages"),shutdown:s(()=>this.shutdownHandler(),"shutdown"),getContextUsage:s(()=>this.getContextUsageFn(),"getContextUsage"),compact:s(n=>this.compactFn(n),"compact"),getSystemPrompt:s(()=>this.getSystemPromptFn(),"getSystemPrompt"),getSoulManager:s(()=>this.getSoulManagerFn(),"getSoulManager"),getSettings:s(()=>this.getSettingsFn(),"getSettings"),getSkills:s(()=>this.getSkillsFn(),"getSkills")}}createCommandContext(){return{...this.createContext(),waitForIdle:s(()=>this.waitForIdleFn(),"waitForIdle"),newSession:s(e=>this.newSessionHandler(e),"newSession"),fork:s(e=>this.forkHandler(e),"fork"),navigateTree:s((e,n)=>this.navigateTreeHandler(e,n),"navigateTree"),switchSession:s(e=>this.switchSessionHandler(e),"switchSession"),reload:s(()=>this.reloadHandler(),"reload")}}isSessionBeforeEvent(e){return e.type==="session_before_switch"||e.type==="session_before_fork"||e.type==="session_before_compact"||e.type==="session_before_tree"}async emit(e){const n=this.createContext();let t;for(const o of this.extensions){const i=o.handlers.get(e.type);if(!(!i||i.length===0))for(const a of i)try{const r=await this.invokeHookHandler(o,e.type,()=>a(e,n));if(this.isSessionBeforeEvent(e)&&r&&(t=r,t.cancel))return t}catch(r){const l=r instanceof Error?r.message:String(r),c=r instanceof Error?r.stack:void 0;this.emitError({extensionPath:o.path,event:e.type,error:l,stack:c})}}return t}async emitToolResult(e){const n=this.createContext(),t={...e};let o=!1;for(const i of this.extensions){const a=i.handlers.get("tool_result");if(!(!a||a.length===0))for(const r of a)try{const l=await this.invokeHookHandler(i,"tool_result",()=>r(t,n));if(!l)continue;l.content!==void 0&&(t.content=l.content,o=!0),l.details!==void 0&&(t.details=l.details,o=!0),l.isError!==void 0&&(t.isError=l.isError,o=!0)}catch(l){const c=l instanceof Error?l.message:String(l),h=l instanceof Error?l.stack:void 0;this.emitError({extensionPath:i.path,event:"tool_result",error:c,stack:h})}}if(o)return{content:t.content,details:t.details,isError:t.isError}}async emitToolCall(e){const n=this.createContext();let t;for(const o of this.extensions){const i=o.handlers.get("tool_call");if(!(!i||i.length===0))for(const a of i){const r=await this.invokeHookHandler(o,"tool_call",()=>a(e,n));if(r&&(t=r,t.block))return t}}return t}async emitUserBash(e){const n=this.createContext();for(const t of this.extensions){const o=t.handlers.get("user_bash");if(!(!o||o.length===0))for(const i of o)try{const a=await this.invokeHookHandler(t,"user_bash",()=>i(e,n));if(a)return a}catch(a){const r=a instanceof Error?a.message:String(a),l=a instanceof Error?a.stack:void 0;this.emitError({extensionPath:t.path,event:"user_bash",error:r,stack:l})}}}async emitContext(e){const n=this.createContext();let t=structuredClone(e);for(const o of this.extensions){const i=o.handlers.get("context");if(!(!i||i.length===0))for(const a of i)try{const r={type:"context",messages:t},l=await this.invokeHookHandler(o,"context",()=>a(r,n));l&&l.messages&&(t=l.messages)}catch(r){const l=r instanceof Error?r.message:String(r),c=r instanceof Error?r.stack:void 0;this.emitError({extensionPath:o.path,event:"context",error:l,stack:c})}}return t}async emitBeforeAgentStart(e,n,t){const o=this.createContext(),i=[];let a=t,r=!1;for(const l of this.extensions){const c=l.handlers.get("before_agent_start");if(!(!c||c.length===0))for(const h of c)try{const u={type:"before_agent_start",prompt:e,images:n,systemPrompt:a},m=await this.withTimeout(this.invokeHookHandler(l,"before_agent_start",()=>h(u,o)),this.beforeAgentStartTimeoutMs);if(m===this.beforeAgentStartTimeoutSentinel){this.reportBeforeAgentStartTimeout(l.path);continue}if(m){const d=m;d.message&&i.push(d.message),d.systemPrompt!==void 0&&(a=d.systemPrompt,r=!0),d.appendSystemPrompt!==void 0&&(a=this.appendSystemPrompt(a,d.appendSystemPrompt),r=!0)}}catch(u){const m=u instanceof Error?u.message:String(u),d=u instanceof Error?u.stack:void 0;this.emitError({extensionPath:l.path,event:"before_agent_start",error:m,stack:d})}}if(i.length>0||r)return{messages:i.length>0?i:void 0,systemPrompt:r?a:void 0}}appendSystemPrompt(e,n){const t=n.trim();return t?`${e}
|
|
2
|
+
|
|
3
|
+
${t}`:e}async emitResourcesDiscover(e,n){const t=this.createContext(),o=[],i=[],a=[];for(const r of this.extensions){const l=r.handlers.get("resources_discover");if(!(!l||l.length===0))for(const c of l)try{const h={type:"resources_discover",cwd:e,reason:n},m=await this.invokeHookHandler(r,"resources_discover",()=>c(h,t));m?.skillPaths?.length&&o.push(...m.skillPaths.map(d=>({path:d,extensionPath:r.path}))),m?.promptPaths?.length&&i.push(...m.promptPaths.map(d=>({path:d,extensionPath:r.path}))),m?.themePaths?.length&&a.push(...m.themePaths.map(d=>({path:d,extensionPath:r.path})))}catch(h){const u=h instanceof Error?h.message:String(h),m=h instanceof Error?h.stack:void 0;this.emitError({extensionPath:r.path,event:"resources_discover",error:u,stack:m})}}return{skillPaths:o,promptPaths:i,themePaths:a}}async emitInput(e,n,t){const o=this.createContext();let i=e,a=n;for(const r of this.extensions)for(const l of r.handlers.get("input")??[])try{const c={type:"input",text:i,images:a,source:t},h=await this.invokeHookHandler(r,"input",()=>l(c,o));if(h?.action==="handled")return h;h?.action==="transform"&&(i=h.text,a=h.images??a)}catch(c){this.emitError({extensionPath:r.path,event:"input",error:c instanceof Error?c.message:String(c),stack:c instanceof Error?c.stack:void 0})}return i!==e||a!==n?{action:"transform",text:i,images:a}:{action:"continue"}}}export{H as ExtensionRunner,_ as emitSessionShutdownEvent};
|