@otto-code/server 0.5.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/.env.example +31 -0
- package/README.md +111 -0
- package/dist/scripts/dev-runner.js +37 -0
- package/dist/scripts/mcp-stdio-socket-bridge-cli.mjs +62 -0
- package/dist/scripts/supervisor-entrypoint.js +141 -0
- package/dist/scripts/supervisor-log-config.js +31 -0
- package/dist/scripts/supervisor.js +252 -0
- package/dist/server/executable-resolution/executable-resolution.d.ts +10 -0
- package/dist/server/executable-resolution/executable-resolution.js +118 -0
- package/dist/server/executable-resolution/windows.d.ts +18 -0
- package/dist/server/executable-resolution/windows.js +65 -0
- package/dist/server/server/agent/activity-curator.d.ts +28 -0
- package/dist/server/server/agent/activity-curator.js +227 -0
- package/dist/server/server/agent/agent-archive.d.ts +11 -0
- package/dist/server/server/agent/agent-archive.js +16 -0
- package/dist/server/server/agent/agent-loading.d.ts +14 -0
- package/dist/server/server/agent/agent-loading.js +54 -0
- package/dist/server/server/agent/agent-manager.d.ts +470 -0
- package/dist/server/server/agent/agent-manager.js +3049 -0
- package/dist/server/server/agent/agent-personalities.d.ts +59 -0
- package/dist/server/server/agent/agent-personalities.js +103 -0
- package/dist/server/server/agent/agent-projections.d.ts +35 -0
- package/dist/server/server/agent/agent-projections.js +488 -0
- package/dist/server/server/agent/agent-prompt.d.ts +76 -0
- package/dist/server/server/agent/agent-prompt.js +230 -0
- package/dist/server/server/agent/agent-response-loop.d.ts +72 -0
- package/dist/server/server/agent/agent-response-loop.js +333 -0
- package/dist/server/server/agent/agent-sdk-types.d.ts +736 -0
- package/dist/server/server/agent/agent-sdk-types.js +22 -0
- package/dist/server/server/agent/agent-storage.d.ts +147 -0
- package/dist/server/server/agent/agent-storage.js +326 -0
- package/dist/server/server/agent/agent-stream-coalescer.d.ts +41 -0
- package/dist/server/server/agent/agent-stream-coalescer.js +166 -0
- package/dist/server/server/agent/agent-timeline-store-types.d.ts +50 -0
- package/dist/server/server/agent/agent-timeline-store-types.js +2 -0
- package/dist/server/server/agent/agent-timeline-store.d.ts +27 -0
- package/dist/server/server/agent/agent-timeline-store.js +230 -0
- package/dist/server/server/agent/audio-utils.d.ts +3 -0
- package/dist/server/server/agent/audio-utils.js +19 -0
- package/dist/server/server/agent/create-agent/create.d.ts +91 -0
- package/dist/server/server/agent/create-agent/create.js +370 -0
- package/dist/server/server/agent/create-agent-lifecycle-dispatch.d.ts +54 -0
- package/dist/server/server/agent/create-agent-lifecycle-dispatch.js +152 -0
- package/dist/server/server/agent/create-agent-mode.d.ts +13 -0
- package/dist/server/server/agent/create-agent-mode.js +62 -0
- package/dist/server/server/agent/create-agent-title.d.ts +10 -0
- package/dist/server/server/agent/create-agent-title.js +34 -0
- package/dist/server/server/agent/dictation-debug.d.ts +13 -0
- package/dist/server/server/agent/dictation-debug.js +50 -0
- package/dist/server/server/agent/effort-levels.d.ts +2 -0
- package/dist/server/server/agent/effort-levels.js +7 -0
- package/dist/server/server/agent/foreground-run-state.d.ts +50 -0
- package/dist/server/server/agent/foreground-run-state.js +160 -0
- package/dist/server/server/agent/import-sessions.d.ts +47 -0
- package/dist/server/server/agent/import-sessions.js +145 -0
- package/dist/server/server/agent/lifecycle-command.d.ts +73 -0
- package/dist/server/server/agent/lifecycle-command.js +92 -0
- package/dist/server/server/agent/mcp-server.d.ts +5 -0
- package/dist/server/server/agent/mcp-server.js +66 -0
- package/dist/server/server/agent/mcp-shared.d.ts +192 -0
- package/dist/server/server/agent/mcp-shared.js +201 -0
- package/dist/server/server/agent/pcm16-resampler.d.ts +14 -0
- package/dist/server/server/agent/pcm16-resampler.js +63 -0
- package/dist/server/server/agent/permission-response.d.ts +15 -0
- package/dist/server/server/agent/permission-response.js +14 -0
- package/dist/server/server/agent/personality-stats-store.d.ts +23 -0
- package/dist/server/server/agent/personality-stats-store.js +65 -0
- package/dist/server/server/agent/prompt-attachments.d.ts +7 -0
- package/dist/server/server/agent/prompt-attachments.js +117 -0
- package/dist/server/server/agent/provider-history-timestamps.d.ts +2 -0
- package/dist/server/server/agent/provider-history-timestamps.js +16 -0
- package/dist/server/server/agent/provider-launch-config.d.ts +43 -0
- package/dist/server/server/agent/provider-launch-config.js +167 -0
- package/dist/server/server/agent/provider-notices.d.ts +3 -0
- package/dist/server/server/agent/provider-notices.js +5 -0
- package/dist/server/server/agent/provider-registry.d.ts +41 -0
- package/dist/server/server/agent/provider-registry.js +532 -0
- package/dist/server/server/agent/provider-session-import.d.ts +10 -0
- package/dist/server/server/agent/provider-session-import.js +49 -0
- package/dist/server/server/agent/provider-snapshot-manager.d.ts +142 -0
- package/dist/server/server/agent/provider-snapshot-manager.js +690 -0
- package/dist/server/server/agent/providers/acp-agent.d.ts +353 -0
- package/dist/server/server/agent/providers/acp-agent.js +2439 -0
- package/dist/server/server/agent/providers/claude/agent.d.ts +66 -0
- package/dist/server/server/agent/providers/claude/agent.js +4535 -0
- package/dist/server/server/agent/providers/claude/feature-definitions.d.ts +8 -0
- package/dist/server/server/agent/providers/claude/feature-definitions.js +24 -0
- package/dist/server/server/agent/providers/claude/model-manifest.d.ts +90 -0
- package/dist/server/server/agent/providers/claude/model-manifest.js +205 -0
- package/dist/server/server/agent/providers/claude/models.d.ts +11 -0
- package/dist/server/server/agent/providers/claude/models.js +97 -0
- package/dist/server/server/agent/providers/claude/partial-json.d.ts +5 -0
- package/dist/server/server/agent/providers/claude/partial-json.js +306 -0
- package/dist/server/server/agent/providers/claude/project-dir.d.ts +6 -0
- package/dist/server/server/agent/providers/claude/project-dir.js +57 -0
- package/dist/server/server/agent/providers/claude/query.d.ts +17 -0
- package/dist/server/server/agent/providers/claude/query.js +86 -0
- package/dist/server/server/agent/providers/claude/rewind.d.ts +30 -0
- package/dist/server/server/agent/providers/claude/rewind.js +30 -0
- package/dist/server/server/agent/providers/claude/sidechain-tracker.d.ts +22 -0
- package/dist/server/server/agent/providers/claude/sidechain-tracker.js +232 -0
- package/dist/server/server/agent/providers/claude/task-notification-tool-call.d.ts +35 -0
- package/dist/server/server/agent/providers/claude/task-notification-tool-call.js +272 -0
- package/dist/server/server/agent/providers/claude/test-rewind-claude-sdk.d.ts +24 -0
- package/dist/server/server/agent/providers/claude/test-rewind-claude-sdk.js +23 -0
- package/dist/server/server/agent/providers/claude/tool-call-detail-parser.d.ts +3 -0
- package/dist/server/server/agent/providers/claude/tool-call-detail-parser.js +130 -0
- package/dist/server/server/agent/providers/claude/tool-call-mapper.d.ts +16 -0
- package/dist/server/server/agent/providers/claude/tool-call-mapper.js +129 -0
- package/dist/server/server/agent/providers/codex/app-server-transport.d.ts +90 -0
- package/dist/server/server/agent/providers/codex/app-server-transport.js +262 -0
- package/dist/server/server/agent/providers/codex/rewind.d.ts +21 -0
- package/dist/server/server/agent/providers/codex/rewind.js +46 -0
- package/dist/server/server/agent/providers/codex/test-utils/fake-app-server.d.ts +36 -0
- package/dist/server/server/agent/providers/codex/test-utils/fake-app-server.js +217 -0
- package/dist/server/server/agent/providers/codex/tool-call-detail-parser.d.ts +12 -0
- package/dist/server/server/agent/providers/codex/tool-call-detail-parser.js +104 -0
- package/dist/server/server/agent/providers/codex/tool-call-mapper.d.ts +24 -0
- package/dist/server/server/agent/providers/codex/tool-call-mapper.js +830 -0
- package/dist/server/server/agent/providers/codex-app-server-agent.d.ts +308 -0
- package/dist/server/server/agent/providers/codex-app-server-agent.js +4515 -0
- package/dist/server/server/agent/providers/codex-feature-definitions.d.ts +11 -0
- package/dist/server/server/agent/providers/codex-feature-definitions.js +45 -0
- package/dist/server/server/agent/providers/copilot-acp-agent.d.ts +26 -0
- package/dist/server/server/agent/providers/copilot-acp-agent.js +188 -0
- package/dist/server/server/agent/providers/cursor-acp-agent.d.ts +15 -0
- package/dist/server/server/agent/providers/cursor-acp-agent.js +18 -0
- package/dist/server/server/agent/providers/diagnostic-utils.d.ts +36 -0
- package/dist/server/server/agent/providers/diagnostic-utils.js +355 -0
- package/dist/server/server/agent/providers/generic-acp-agent.d.ts +42 -0
- package/dist/server/server/agent/providers/generic-acp-agent.js +160 -0
- package/dist/server/server/agent/providers/kiro-acp-agent.d.ts +17 -0
- package/dist/server/server/agent/providers/kiro-acp-agent.js +78 -0
- package/dist/server/server/agent/providers/mock-load-test-agent.d.ts +85 -0
- package/dist/server/server/agent/providers/mock-load-test-agent.js +1010 -0
- package/dist/server/server/agent/providers/mock-slow-provider.d.ts +14 -0
- package/dist/server/server/agent/providers/mock-slow-provider.js +39 -0
- package/dist/server/server/agent/providers/openai-compat-agent.d.ts +422 -0
- package/dist/server/server/agent/providers/openai-compat-agent.js +2536 -0
- package/dist/server/server/agent/providers/openai-compat-feature-definitions.d.ts +40 -0
- package/dist/server/server/agent/providers/openai-compat-feature-definitions.js +82 -0
- package/dist/server/server/agent/providers/openai-compat-mcp.d.ts +87 -0
- package/dist/server/server/agent/providers/openai-compat-mcp.js +353 -0
- package/dist/server/server/agent/providers/openai-compat-otto-tool-permissions.d.ts +29 -0
- package/dist/server/server/agent/providers/openai-compat-otto-tool-permissions.js +96 -0
- package/dist/server/server/agent/providers/openai-compat-tools.d.ts +69 -0
- package/dist/server/server/agent/providers/openai-compat-tools.js +1224 -0
- package/dist/server/server/agent/providers/opencode/paths.d.ts +2 -0
- package/dist/server/server/agent/providers/opencode/paths.js +7 -0
- package/dist/server/server/agent/providers/opencode/rewind.d.ts +18 -0
- package/dist/server/server/agent/providers/opencode/rewind.js +14 -0
- package/dist/server/server/agent/providers/opencode/server-manager.d.ts +91 -0
- package/dist/server/server/agent/providers/opencode/server-manager.js +425 -0
- package/dist/server/server/agent/providers/opencode/test-server-manager.d.ts +25 -0
- package/dist/server/server/agent/providers/opencode/test-server-manager.js +39 -0
- package/dist/server/server/agent/providers/opencode/test-utils/test-opencode-harness.d.ts +92 -0
- package/dist/server/server/agent/providers/opencode/test-utils/test-opencode-harness.js +260 -0
- package/dist/server/server/agent/providers/opencode/tool-call-detail-parser.d.ts +3 -0
- package/dist/server/server/agent/providers/opencode/tool-call-detail-parser.js +256 -0
- package/dist/server/server/agent/providers/opencode/tool-call-mapper.d.ts +13 -0
- package/dist/server/server/agent/providers/opencode/tool-call-mapper.js +53 -0
- package/dist/server/server/agent/providers/opencode-agent.d.ts +286 -0
- package/dist/server/server/agent/providers/opencode-agent.js +2830 -0
- package/dist/server/server/agent/providers/pi/agent.d.ts +132 -0
- package/dist/server/server/agent/providers/pi/agent.js +1649 -0
- package/dist/server/server/agent/providers/pi/cli-runtime.d.ts +21 -0
- package/dist/server/server/agent/providers/pi/cli-runtime.js +261 -0
- package/dist/server/server/agent/providers/pi/history-mapper.d.ts +9 -0
- package/dist/server/server/agent/providers/pi/history-mapper.js +140 -0
- package/dist/server/server/agent/providers/pi/rewind.d.ts +8 -0
- package/dist/server/server/agent/providers/pi/rewind.js +8 -0
- package/dist/server/server/agent/providers/pi/rpc-types.d.ts +208 -0
- package/dist/server/server/agent/providers/pi/rpc-types.js +2 -0
- package/dist/server/server/agent/providers/pi/runtime.d.ts +57 -0
- package/dist/server/server/agent/providers/pi/runtime.js +56 -0
- package/dist/server/server/agent/providers/pi/session-descriptor.d.ts +16 -0
- package/dist/server/server/agent/providers/pi/session-descriptor.js +346 -0
- package/dist/server/server/agent/providers/pi/test-utils/fake-pi.d.ts +83 -0
- package/dist/server/server/agent/providers/pi/test-utils/fake-pi.js +184 -0
- package/dist/server/server/agent/providers/pi/tool-call-mapper.d.ts +112 -0
- package/dist/server/server/agent/providers/pi/tool-call-mapper.js +284 -0
- package/dist/server/server/agent/providers/provider-image-output.d.ts +25 -0
- package/dist/server/server/agent/providers/provider-image-output.js +111 -0
- package/dist/server/server/agent/providers/provider-runner.d.ts +27 -0
- package/dist/server/server/agent/providers/provider-runner.js +81 -0
- package/dist/server/server/agent/providers/test-utils/session-stream-adapter.d.ts +3 -0
- package/dist/server/server/agent/providers/test-utils/session-stream-adapter.js +60 -0
- package/dist/server/server/agent/providers/tool-call-detail-primitives.d.ts +884 -0
- package/dist/server/server/agent/providers/tool-call-detail-primitives.js +778 -0
- package/dist/server/server/agent/providers/tool-call-mapper-utils.d.ts +25 -0
- package/dist/server/server/agent/providers/tool-call-mapper-utils.js +208 -0
- package/dist/server/server/agent/providers/trae-acp-agent.d.ts +15 -0
- package/dist/server/server/agent/providers/trae-acp-agent.js +18 -0
- package/dist/server/server/agent/recordings-debug.d.ts +3 -0
- package/dist/server/server/agent/recordings-debug.js +19 -0
- package/dist/server/server/agent/rewind/rewind.d.ts +10 -0
- package/dist/server/server/agent/rewind/rewind.js +29 -0
- package/dist/server/server/agent/rewind/test-rewind-session.d.ts +48 -0
- package/dist/server/server/agent/rewind/test-rewind-session.js +88 -0
- package/dist/server/server/agent/runtime-mcp-config.d.ts +14 -0
- package/dist/server/server/agent/runtime-mcp-config.js +53 -0
- package/dist/server/server/agent/structured-generation-providers.d.ts +29 -0
- package/dist/server/server/agent/structured-generation-providers.js +236 -0
- package/dist/server/server/agent/stt-debug.d.ts +10 -0
- package/dist/server/server/agent/stt-debug.js +33 -0
- package/dist/server/server/agent/stt-manager.d.ts +38 -0
- package/dist/server/server/agent/stt-manager.js +246 -0
- package/dist/server/server/agent/system-prompt.d.ts +2 -0
- package/dist/server/server/agent/system-prompt.js +8 -0
- package/dist/server/server/agent/timeline-append.d.ts +10 -0
- package/dist/server/server/agent/timeline-append.js +27 -0
- package/dist/server/server/agent/timeline-projection.d.ts +71 -0
- package/dist/server/server/agent/timeline-projection.js +373 -0
- package/dist/server/server/agent/tools/otto-tools.d.ts +80 -0
- package/dist/server/server/agent/tools/otto-tools.js +2912 -0
- package/dist/server/server/agent/tools/types.d.ts +36 -0
- package/dist/server/server/agent/tools/types.js +2 -0
- package/dist/server/server/agent/tts-debug.d.ts +8 -0
- package/dist/server/server/agent/tts-debug.js +24 -0
- package/dist/server/server/agent/tts-manager.d.ts +41 -0
- package/dist/server/server/agent/tts-manager.js +375 -0
- package/dist/server/server/agent-attention-policy.d.ts +29 -0
- package/dist/server/server/agent-attention-policy.js +36 -0
- package/dist/server/server/artifact/artifact-prompt.d.ts +2 -0
- package/dist/server/server/artifact/artifact-prompt.js +15 -0
- package/dist/server/server/artifact/artifact-service.d.ts +91 -0
- package/dist/server/server/artifact/artifact-service.js +419 -0
- package/dist/server/server/artifact/artifact-store.d.ts +24 -0
- package/dist/server/server/artifact/artifact-store.js +168 -0
- package/dist/server/server/artifact/artifact-watcher.d.ts +34 -0
- package/dist/server/server/artifact/artifact-watcher.js +146 -0
- package/dist/server/server/artifact/html-validator.d.ts +26 -0
- package/dist/server/server/artifact/html-validator.js +92 -0
- package/dist/server/server/atomic-file.d.ts +5 -0
- package/dist/server/server/atomic-file.js +19 -0
- package/dist/server/server/auth.d.ts +38 -0
- package/dist/server/server/auth.js +143 -0
- package/dist/server/server/auto-archive-on-merge/archive-if-safe.d.ts +40 -0
- package/dist/server/server/auto-archive-on-merge/archive-if-safe.js +92 -0
- package/dist/server/server/auto-archive-on-merge/index.d.ts +8 -0
- package/dist/server/server/auto-archive-on-merge/index.js +15 -0
- package/dist/server/server/bootstrap.d.ts +127 -0
- package/dist/server/server/bootstrap.js +1331 -0
- package/dist/server/server/browser-tools/broker.d.ts +45 -0
- package/dist/server/server/browser-tools/broker.js +390 -0
- package/dist/server/server/browser-tools/errors.d.ts +22 -0
- package/dist/server/server/browser-tools/errors.js +27 -0
- package/dist/server/server/browser-tools/policy.d.ts +10 -0
- package/dist/server/server/browser-tools/policy.js +16 -0
- package/dist/server/server/browser-tools/tools.d.ts +24 -0
- package/dist/server/server/browser-tools/tools.js +967 -0
- package/dist/server/server/chat/chat-mentions.d.ts +47 -0
- package/dist/server/server/chat/chat-mentions.js +113 -0
- package/dist/server/server/chat/chat-service.d.ts +78 -0
- package/dist/server/server/chat/chat-service.js +337 -0
- package/dist/server/server/checkout/status-projection.d.ts +19 -0
- package/dist/server/server/checkout/status-projection.js +117 -0
- package/dist/server/server/checkout-diff-manager.d.ts +41 -0
- package/dist/server/server/checkout-diff-manager.js +189 -0
- package/dist/server/server/checkout-git-utils.d.ts +11 -0
- package/dist/server/server/checkout-git-utils.js +34 -0
- package/dist/server/server/client-message-id.d.ts +3 -0
- package/dist/server/server/client-message-id.js +12 -0
- package/dist/server/server/config.d.ts +22 -0
- package/dist/server/server/config.js +330 -0
- package/dist/server/server/connection-offer.d.ts +20 -0
- package/dist/server/server/connection-offer.js +59 -0
- package/dist/server/server/daemon-config-store.d.ts +44 -0
- package/dist/server/server/daemon-config-store.js +530 -0
- package/dist/server/server/daemon-keypair.d.ts +8 -0
- package/dist/server/server/daemon-keypair.js +42 -0
- package/dist/server/server/daemon-version.d.ts +5 -0
- package/dist/server/server/daemon-version.js +22 -0
- package/dist/server/server/daemon-worker.d.ts +2 -0
- package/dist/server/server/daemon-worker.js +251 -0
- package/dist/server/server/dictation/dictation-stream-manager.d.ts +87 -0
- package/dist/server/server/dictation/dictation-stream-manager.js +572 -0
- package/dist/server/server/exports.d.ts +24 -0
- package/dist/server/server/exports.js +24 -0
- package/dist/server/server/file-download/token-store.d.ts +24 -0
- package/dist/server/server/file-download/token-store.js +40 -0
- package/dist/server/server/file-explorer/code-index.d.ts +28 -0
- package/dist/server/server/file-explorer/code-index.js +127 -0
- package/dist/server/server/file-explorer/file-search.d.ts +72 -0
- package/dist/server/server/file-explorer/file-search.js +297 -0
- package/dist/server/server/file-explorer/file-watcher.d.ts +40 -0
- package/dist/server/server/file-explorer/file-watcher.js +0 -0
- package/dist/server/server/file-explorer/gitignore.d.ts +39 -0
- package/dist/server/server/file-explorer/gitignore.js +191 -0
- package/dist/server/server/file-explorer/service.d.ts +103 -0
- package/dist/server/server/file-explorer/service.js +420 -0
- package/dist/server/server/file-upload/index.d.ts +27 -0
- package/dist/server/server/file-upload/index.js +158 -0
- package/dist/server/server/hostnames.d.ts +13 -0
- package/dist/server/server/hostnames.js +94 -0
- package/dist/server/server/json-utils.d.ts +11 -0
- package/dist/server/server/json-utils.js +45 -0
- package/dist/server/server/lifecycle-reasons.d.ts +4 -0
- package/dist/server/server/lifecycle-reasons.js +6 -0
- package/dist/server/server/logger.d.ts +29 -0
- package/dist/server/server/logger.js +125 -0
- package/dist/server/server/loop-service.d.ts +234 -0
- package/dist/server/server/loop-service.js +804 -0
- package/dist/server/server/managed-processes/managed-processes.d.ts +76 -0
- package/dist/server/server/managed-processes/managed-processes.js +326 -0
- package/dist/server/server/messages.d.ts +9 -0
- package/dist/server/server/messages.js +29 -0
- package/dist/server/server/migrations/backfill-workspace-id.migration.d.ts +9 -0
- package/dist/server/server/migrations/backfill-workspace-id.migration.js +64 -0
- package/dist/server/server/otto-env.d.ts +13 -0
- package/dist/server/server/otto-env.js +53 -0
- package/dist/server/server/otto-home.d.ts +2 -0
- package/dist/server/server/otto-home.js +19 -0
- package/dist/server/server/otto-worktree-service.d.ts +52 -0
- package/dist/server/server/otto-worktree-service.js +294 -0
- package/dist/server/server/package-version.d.ts +19 -0
- package/dist/server/server/package-version.js +60 -0
- package/dist/server/server/pagination/cursor.d.ts +16 -0
- package/dist/server/server/pagination/cursor.js +62 -0
- package/dist/server/server/pagination/sortable-pager.d.ts +24 -0
- package/dist/server/server/pagination/sortable-pager.js +68 -0
- package/dist/server/server/pairing-offer.d.ts +18 -0
- package/dist/server/server/pairing-offer.js +47 -0
- package/dist/server/server/pairing-qr.d.ts +7 -0
- package/dist/server/server/pairing-qr.js +45 -0
- package/dist/server/server/path-utils.d.ts +5 -0
- package/dist/server/server/path-utils.js +34 -0
- package/dist/server/server/persisted-config.d.ts +417 -0
- package/dist/server/server/persisted-config.js +471 -0
- package/dist/server/server/persistence-hooks.d.ts +31 -0
- package/dist/server/server/persistence-hooks.js +93 -0
- package/dist/server/server/pid-lock.d.ts +32 -0
- package/dist/server/server/pid-lock.js +170 -0
- package/dist/server/server/preview/dev-server-manager.d.ts +108 -0
- package/dist/server/server/preview/dev-server-manager.js +426 -0
- package/dist/server/server/preview/launch-config.d.ts +37 -0
- package/dist/server/server/preview/launch-config.js +63 -0
- package/dist/server/server/preview/preview-tools.d.ts +30 -0
- package/dist/server/server/preview/preview-tools.js +249 -0
- package/dist/server/server/private-files.d.ts +6 -0
- package/dist/server/server/private-files.js +37 -0
- package/dist/server/server/process-diagnostics.d.ts +17 -0
- package/dist/server/server/process-diagnostics.js +22 -0
- package/dist/server/server/push/notifications.d.ts +9 -0
- package/dist/server/server/push/notifications.js +15 -0
- package/dist/server/server/push/push-service.d.ts +20 -0
- package/dist/server/server/push/push-service.js +66 -0
- package/dist/server/server/push/token-store.d.ts +18 -0
- package/dist/server/server/push/token-store.js +68 -0
- package/dist/server/server/relay-transport.d.ts +31 -0
- package/dist/server/server/relay-transport.js +514 -0
- package/dist/server/server/resolve-workspace-id-for-path.d.ts +3 -0
- package/dist/server/server/resolve-workspace-id-for-path.js +41 -0
- package/dist/server/server/resolve-worktree-creation-intent.d.ts +32 -0
- package/dist/server/server/resolve-worktree-creation-intent.js +121 -0
- package/dist/server/server/schedule/cron.d.ts +4 -0
- package/dist/server/server/schedule/cron.js +81 -0
- package/dist/server/server/schedule/service.d.ts +89 -0
- package/dist/server/server/schedule/service.js +882 -0
- package/dist/server/server/schedule/store.d.ts +27 -0
- package/dist/server/server/schedule/store.js +190 -0
- package/dist/server/server/script-health-monitor.d.ts +39 -0
- package/dist/server/server/script-health-monitor.js +159 -0
- package/dist/server/server/script-proxy.d.ts +3 -0
- package/dist/server/server/script-proxy.js +2 -0
- package/dist/server/server/script-route-branch-handler.d.ts +10 -0
- package/dist/server/server/script-route-branch-handler.js +11 -0
- package/dist/server/server/script-status-projection.d.ts +36 -0
- package/dist/server/server/script-status-projection.js +200 -0
- package/dist/server/server/server-id.d.ts +17 -0
- package/dist/server/server/server-id.js +68 -0
- package/dist/server/server/service-proxy.d.ts +237 -0
- package/dist/server/server/service-proxy.js +714 -0
- package/dist/server/server/session/agent-config/agent-config-session.d.ts +59 -0
- package/dist/server/server/session/agent-config/agent-config-session.js +110 -0
- package/dist/server/server/session/agent-updates/agent-updates-service.d.ts +65 -0
- package/dist/server/server/session/agent-updates/agent-updates-service.js +232 -0
- package/dist/server/server/session/artifact/artifact-session.d.ts +45 -0
- package/dist/server/server/session/artifact/artifact-session.js +293 -0
- package/dist/server/server/session/chat/chat-schedule-loop-session.d.ts +120 -0
- package/dist/server/server/session/chat/chat-schedule-loop-session.js +489 -0
- package/dist/server/server/session/checkout/checkout-session.d.ts +146 -0
- package/dist/server/server/session/checkout/checkout-session.js +1000 -0
- package/dist/server/server/session/checkout/git-metadata-generator.d.ts +53 -0
- package/dist/server/server/session/checkout/git-metadata-generator.js +159 -0
- package/dist/server/server/session/daemon/daemon-self-update-session-controller.d.ts +32 -0
- package/dist/server/server/session/daemon/daemon-self-update-session-controller.js +88 -0
- package/dist/server/server/session/daemon/daemon-self-updater.d.ts +32 -0
- package/dist/server/server/session/daemon/daemon-self-updater.js +56 -0
- package/dist/server/server/session/daemon/daemon-session.d.ts +76 -0
- package/dist/server/server/session/daemon/daemon-session.js +148 -0
- package/dist/server/server/session/daemon/diagnostics.d.ts +41 -0
- package/dist/server/server/session/daemon/diagnostics.js +431 -0
- package/dist/server/server/session/daemon/install-origin.d.ts +7 -0
- package/dist/server/server/session/daemon/install-origin.js +64 -0
- package/dist/server/server/session/daemon/npm-global-cli.d.ts +29 -0
- package/dist/server/server/session/daemon/npm-global-cli.js +98 -0
- package/dist/server/server/session/files/workspace-files-session.d.ts +60 -0
- package/dist/server/server/session/files/workspace-files-session.js +518 -0
- package/dist/server/server/session/git-mutation/git-mutation-service.d.ts +34 -0
- package/dist/server/server/session/git-mutation/git-mutation-service.js +71 -0
- package/dist/server/server/session/project-config/project-config-session.d.ts +34 -0
- package/dist/server/server/session/project-config/project-config-session.js +125 -0
- package/dist/server/server/session/provider/provider-catalog-session.d.ts +74 -0
- package/dist/server/server/session/provider/provider-catalog-session.js +343 -0
- package/dist/server/server/session/voice/voice-session.d.ts +167 -0
- package/dist/server/server/session/voice/voice-session.js +912 -0
- package/dist/server/server/session/voice/voice-turn-controller.d.ts +38 -0
- package/dist/server/server/session/voice/voice-turn-controller.js +393 -0
- package/dist/server/server/session/workspace-git-observer/workspace-git-observer-service.d.ts +36 -0
- package/dist/server/server/session/workspace-git-observer/workspace-git-observer-service.js +134 -0
- package/dist/server/server/session/workspace-provisioning/workspace-provisioning-service.d.ts +34 -0
- package/dist/server/server/session/workspace-provisioning/workspace-provisioning-service.js +190 -0
- package/dist/server/server/session/workspace-scripts/workspace-scripts-service.d.ts +41 -0
- package/dist/server/server/session/workspace-scripts/workspace-scripts-service.js +100 -0
- package/dist/server/server/session.d.ts +450 -0
- package/dist/server/server/session.js +4763 -0
- package/dist/server/server/speech/audio.d.ts +10 -0
- package/dist/server/server/speech/audio.js +101 -0
- package/dist/server/server/speech/provider-resolver.d.ts +3 -0
- package/dist/server/server/speech/provider-resolver.js +7 -0
- package/dist/server/server/speech/providers/local/config.d.ts +30 -0
- package/dist/server/server/speech/providers/local/config.js +133 -0
- package/dist/server/server/speech/providers/local/models.d.ts +13 -0
- package/dist/server/server/speech/providers/local/models.js +21 -0
- package/dist/server/server/speech/providers/local/runtime.d.ts +31 -0
- package/dist/server/server/speech/providers/local/runtime.js +135 -0
- package/dist/server/server/speech/providers/local/sherpa/assets/silero_vad.onnx +0 -0
- package/dist/server/server/speech/providers/local/sherpa/model-catalog.d.ts +109 -0
- package/dist/server/server/speech/providers/local/sherpa/model-catalog.js +129 -0
- package/dist/server/server/speech/providers/local/sherpa/model-downloader.d.ts +16 -0
- package/dist/server/server/speech/providers/local/sherpa/model-downloader.js +195 -0
- package/dist/server/server/speech/providers/local/sherpa/sherpa-offline-recognizer.d.ts +49 -0
- package/dist/server/server/speech/providers/local/sherpa/sherpa-offline-recognizer.js +73 -0
- package/dist/server/server/speech/providers/local/sherpa/sherpa-onnx-node-loader.d.ts +9 -0
- package/dist/server/server/speech/providers/local/sherpa/sherpa-onnx-node-loader.js +107 -0
- package/dist/server/server/speech/providers/local/sherpa/sherpa-parakeet-realtime-session.d.ts +28 -0
- package/dist/server/server/speech/providers/local/sherpa/sherpa-parakeet-realtime-session.js +137 -0
- package/dist/server/server/speech/providers/local/sherpa/sherpa-parakeet-stt.d.ts +21 -0
- package/dist/server/server/speech/providers/local/sherpa/sherpa-parakeet-stt.js +133 -0
- package/dist/server/server/speech/providers/local/sherpa/sherpa-runtime-env.d.ts +18 -0
- package/dist/server/server/speech/providers/local/sherpa/sherpa-runtime-env.js +84 -0
- package/dist/server/server/speech/providers/local/sherpa/sherpa-tts.d.ts +24 -0
- package/dist/server/server/speech/providers/local/sherpa/sherpa-tts.js +145 -0
- package/dist/server/server/speech/providers/local/sherpa/silero-vad-provider.d.ts +19 -0
- package/dist/server/server/speech/providers/local/sherpa/silero-vad-provider.js +49 -0
- package/dist/server/server/speech/providers/local/sherpa/silero-vad-session.d.ts +38 -0
- package/dist/server/server/speech/providers/local/sherpa/silero-vad-session.js +176 -0
- package/dist/server/server/speech/providers/local/sherpa/tts-voices.d.ts +10 -0
- package/dist/server/server/speech/providers/local/sherpa/tts-voices.js +86 -0
- package/dist/server/server/speech/providers/local/worker-bytes.d.ts +4 -0
- package/dist/server/server/speech/providers/local/worker-bytes.js +9 -0
- package/dist/server/server/speech/providers/local/worker-client.d.ts +93 -0
- package/dist/server/server/speech/providers/local/worker-client.js +591 -0
- package/dist/server/server/speech/providers/local/worker-process.d.ts +2 -0
- package/dist/server/server/speech/providers/local/worker-process.js +270 -0
- package/dist/server/server/speech/providers/local/worker-protocol.d.ts +96 -0
- package/dist/server/server/speech/providers/local/worker-protocol.js +2 -0
- package/dist/server/server/speech/providers/openai/config.d.ts +19 -0
- package/dist/server/server/speech/providers/openai/config.js +160 -0
- package/dist/server/server/speech/providers/openai/runtime.d.ts +29 -0
- package/dist/server/server/speech/providers/openai/runtime.js +102 -0
- package/dist/server/server/speech/providers/openai/stt.d.ts +23 -0
- package/dist/server/server/speech/providers/openai/stt.js +209 -0
- package/dist/server/server/speech/providers/openai/tts.d.ts +20 -0
- package/dist/server/server/speech/providers/openai/tts.js +70 -0
- package/dist/server/server/speech/speech-config-resolver.d.ts +11 -0
- package/dist/server/server/speech/speech-config-resolver.js +132 -0
- package/dist/server/server/speech/speech-provider.d.ts +71 -0
- package/dist/server/server/speech/speech-provider.js +2 -0
- package/dist/server/server/speech/speech-runtime.d.ts +67 -0
- package/dist/server/server/speech/speech-runtime.js +615 -0
- package/dist/server/server/speech/speech-settings-options.d.ts +14 -0
- package/dist/server/server/speech/speech-settings-options.js +73 -0
- package/dist/server/server/speech/speech-types.d.ts +22 -0
- package/dist/server/server/speech/speech-types.js +8 -0
- package/dist/server/server/speech/turn-detection-provider.d.ts +23 -0
- package/dist/server/server/speech/turn-detection-provider.js +2 -0
- package/dist/server/server/utils/diff-highlighter.d.ts +57 -0
- package/dist/server/server/utils/diff-highlighter.js +279 -0
- package/dist/server/server/voice-config.d.ts +15 -0
- package/dist/server/server/voice-config.js +54 -0
- package/dist/server/server/voice-permission-policy.d.ts +4 -0
- package/dist/server/server/voice-permission-policy.js +13 -0
- package/dist/server/server/voice-types.d.ts +12 -0
- package/dist/server/server/voice-types.js +2 -0
- package/dist/server/server/web-ui.d.ts +10 -0
- package/dist/server/server/web-ui.js +205 -0
- package/dist/server/server/websocket/runtime-metrics.d.ts +94 -0
- package/dist/server/server/websocket/runtime-metrics.js +148 -0
- package/dist/server/server/websocket-server.d.ts +187 -0
- package/dist/server/server/websocket-server.js +1766 -0
- package/dist/server/server/workspace-archive-service.d.ts +65 -0
- package/dist/server/server/workspace-archive-service.js +229 -0
- package/dist/server/server/workspace-auto-name.d.ts +55 -0
- package/dist/server/server/workspace-auto-name.js +128 -0
- package/dist/server/server/workspace-bootstrap-dedupe.d.ts +34 -0
- package/dist/server/server/workspace-bootstrap-dedupe.js +23 -0
- package/dist/server/server/workspace-directory.d.ts +93 -0
- package/dist/server/server/workspace-directory.js +422 -0
- package/dist/server/server/workspace-git-metadata.d.ts +24 -0
- package/dist/server/server/workspace-git-metadata.js +55 -0
- package/dist/server/server/workspace-git-service.d.ts +270 -0
- package/dist/server/server/workspace-git-service.js +1423 -0
- package/dist/server/server/workspace-reconciliation-service.d.ts +57 -0
- package/dist/server/server/workspace-reconciliation-service.js +278 -0
- package/dist/server/server/workspace-registry-bootstrap.d.ts +13 -0
- package/dist/server/server/workspace-registry-bootstrap.js +121 -0
- package/dist/server/server/workspace-registry-model.d.ts +55 -0
- package/dist/server/server/workspace-registry-model.js +190 -0
- package/dist/server/server/workspace-registry.d.ts +117 -0
- package/dist/server/server/workspace-registry.js +194 -0
- package/dist/server/server/workspace-script-runtime-store.d.ts +28 -0
- package/dist/server/server/workspace-script-runtime-store.js +78 -0
- package/dist/server/server/workspace-service-env.d.ts +18 -0
- package/dist/server/server/workspace-service-env.js +85 -0
- package/dist/server/server/workspace-service-port-registry.d.ts +19 -0
- package/dist/server/server/workspace-service-port-registry.js +59 -0
- package/dist/server/server/worktree/commands.d.ts +55 -0
- package/dist/server/server/worktree/commands.js +107 -0
- package/dist/server/server/worktree-bootstrap.d.ts +76 -0
- package/dist/server/server/worktree-bootstrap.js +720 -0
- package/dist/server/server/worktree-branch-name-generator.d.ts +35 -0
- package/dist/server/server/worktree-branch-name-generator.js +91 -0
- package/dist/server/server/worktree-core.d.ts +31 -0
- package/dist/server/server/worktree-core.js +105 -0
- package/dist/server/server/worktree-errors.d.ts +12 -0
- package/dist/server/server/worktree-errors.js +28 -0
- package/dist/server/server/worktree-session.d.ts +152 -0
- package/dist/server/server/worktree-session.js +466 -0
- package/dist/server/services/git-hosting/bitbucket-cloud-service.d.ts +24 -0
- package/dist/server/services/git-hosting/bitbucket-cloud-service.js +754 -0
- package/dist/server/services/git-hosting/github-hosting-service.d.ts +4 -0
- package/dist/server/services/git-hosting/github-hosting-service.js +11 -0
- package/dist/server/services/git-hosting/hosting-http-client.d.ts +20 -0
- package/dist/server/services/git-hosting/hosting-http-client.js +131 -0
- package/dist/server/services/git-hosting/request-cache.d.ts +20 -0
- package/dist/server/services/git-hosting/request-cache.js +68 -0
- package/dist/server/services/git-hosting/resolver.d.ts +32 -0
- package/dist/server/services/git-hosting/resolver.js +152 -0
- package/dist/server/services/git-hosting/router.d.ts +4 -0
- package/dist/server/services/git-hosting/router.js +105 -0
- package/dist/server/services/git-hosting/status-poller.d.ts +39 -0
- package/dist/server/services/git-hosting/status-poller.js +149 -0
- package/dist/server/services/git-hosting/types.d.ts +53 -0
- package/dist/server/services/git-hosting/types.js +75 -0
- package/dist/server/services/github-service.d.ts +339 -0
- package/dist/server/services/github-service.js +2109 -0
- package/dist/server/services/quota-fetcher/manifest.d.ts +4 -0
- package/dist/server/services/quota-fetcher/manifest.js +52 -0
- package/dist/server/services/quota-fetcher/provider.d.ts +17 -0
- package/dist/server/services/quota-fetcher/provider.js +2 -0
- package/dist/server/services/quota-fetcher/providers/claude.d.ts +26 -0
- package/dist/server/services/quota-fetcher/providers/claude.js +217 -0
- package/dist/server/services/quota-fetcher/providers/codex.d.ts +23 -0
- package/dist/server/services/quota-fetcher/providers/codex.js +211 -0
- package/dist/server/services/quota-fetcher/providers/copilot.d.ts +17 -0
- package/dist/server/services/quota-fetcher/providers/copilot.js +75 -0
- package/dist/server/services/quota-fetcher/providers/cursor.d.ts +17 -0
- package/dist/server/services/quota-fetcher/providers/cursor.js +123 -0
- package/dist/server/services/quota-fetcher/providers/grok.d.ts +18 -0
- package/dist/server/services/quota-fetcher/providers/grok.js +89 -0
- package/dist/server/services/quota-fetcher/providers/kimi.d.ts +20 -0
- package/dist/server/services/quota-fetcher/providers/kimi.js +89 -0
- package/dist/server/services/quota-fetcher/providers/minimax.d.ts +29 -0
- package/dist/server/services/quota-fetcher/providers/minimax.js +227 -0
- package/dist/server/services/quota-fetcher/providers/zai.d.ts +17 -0
- package/dist/server/services/quota-fetcher/providers/zai.js +58 -0
- package/dist/server/services/quota-fetcher/service.d.ts +28 -0
- package/dist/server/services/quota-fetcher/service.js +58 -0
- package/dist/server/services/quota-fetcher/usage.d.ts +22 -0
- package/dist/server/services/quota-fetcher/usage.js +49 -0
- package/dist/server/terminal/activity/terminal-activity-tracker.d.ts +20 -0
- package/dist/server/terminal/activity/terminal-activity-tracker.js +59 -0
- package/dist/server/terminal/agent-hooks/agent-hook-installer.d.ts +62 -0
- package/dist/server/terminal/agent-hooks/agent-hook-installer.js +117 -0
- package/dist/server/terminal/agent-hooks/claude/claude-settings.d.ts +7 -0
- package/dist/server/terminal/agent-hooks/claude/claude-settings.js +88 -0
- package/dist/server/terminal/agent-hooks/claude/claude.d.ts +4 -0
- package/dist/server/terminal/agent-hooks/claude/claude.js +47 -0
- package/dist/server/terminal/agent-hooks/codex/codex-settings.d.ts +7 -0
- package/dist/server/terminal/agent-hooks/codex/codex-settings.js +99 -0
- package/dist/server/terminal/agent-hooks/codex/codex.d.ts +4 -0
- package/dist/server/terminal/agent-hooks/codex/codex.js +30 -0
- package/dist/server/terminal/agent-hooks/opencode/opencode-plugin.d.ts +4 -0
- package/dist/server/terminal/agent-hooks/opencode/opencode-plugin.js +46 -0
- package/dist/server/terminal/agent-hooks/opencode/opencode.d.ts +3 -0
- package/dist/server/terminal/agent-hooks/opencode/opencode.js +23 -0
- package/dist/server/terminal/agent-hooks/provider-registry.d.ts +24 -0
- package/dist/server/terminal/agent-hooks/provider-registry.js +36 -0
- package/dist/server/terminal/agent-hooks/terminal-agent-hook-setting.d.ts +10 -0
- package/dist/server/terminal/agent-hooks/terminal-agent-hook-setting.js +26 -0
- package/dist/server/terminal/shell-integration/zsh/.zshenv +17 -0
- package/dist/server/terminal/shell-integration/zsh/otto-integration.zsh +32 -0
- package/dist/server/terminal/terminal-capture.d.ts +12 -0
- package/dist/server/terminal/terminal-capture.js +43 -0
- package/dist/server/terminal/terminal-manager-factory.d.ts +6 -0
- package/dist/server/terminal/terminal-manager-factory.js +5 -0
- package/dist/server/terminal/terminal-manager.d.ts +78 -0
- package/dist/server/terminal/terminal-manager.js +319 -0
- package/dist/server/terminal/terminal-output-coalescer.d.ts +34 -0
- package/dist/server/terminal/terminal-output-coalescer.js +73 -0
- package/dist/server/terminal/terminal-restore.d.ts +18 -0
- package/dist/server/terminal/terminal-restore.js +52 -0
- package/dist/server/terminal/terminal-session-controller.d.ts +85 -0
- package/dist/server/terminal/terminal-session-controller.js +819 -0
- package/dist/server/terminal/terminal-ts-loader.mjs +20 -0
- package/dist/server/terminal/terminal-worker-process.d.ts +2 -0
- package/dist/server/terminal/terminal-worker-process.js +304 -0
- package/dist/server/terminal/terminal-worker-protocol.d.ts +119 -0
- package/dist/server/terminal/terminal-worker-protocol.js +2 -0
- package/dist/server/terminal/terminal.d.ts +151 -0
- package/dist/server/terminal/terminal.js +1155 -0
- package/dist/server/terminal/worker-terminal-manager.d.ts +20 -0
- package/dist/server/terminal/worker-terminal-manager.js +688 -0
- package/dist/server/utils/build-metadata-prompt.d.ts +19 -0
- package/dist/server/utils/build-metadata-prompt.js +29 -0
- package/dist/server/utils/checkout-git.d.ts +253 -0
- package/dist/server/utils/checkout-git.js +2241 -0
- package/dist/server/utils/directory-suggestions.d.ts +26 -0
- package/dist/server/utils/directory-suggestions.js +830 -0
- package/dist/server/utils/git-rev-parse-path.d.ts +3 -0
- package/dist/server/utils/git-rev-parse-path.js +21 -0
- package/dist/server/utils/github-remote.d.ts +9 -0
- package/dist/server/utils/github-remote.js +62 -0
- package/dist/server/utils/otto-config-file.d.ts +30 -0
- package/dist/server/utils/otto-config-file.js +90 -0
- package/dist/server/utils/path.d.ts +18 -0
- package/dist/server/utils/path.js +123 -0
- package/dist/server/utils/project-icon.d.ts +39 -0
- package/dist/server/utils/project-icon.js +364 -0
- package/dist/server/utils/promise-timeout.d.ts +9 -0
- package/dist/server/utils/promise-timeout.js +25 -0
- package/dist/server/utils/run-git-command.d.ts +37 -0
- package/dist/server/utils/run-git-command.js +232 -0
- package/dist/server/utils/spawn.d.ts +25 -0
- package/dist/server/utils/spawn.js +59 -0
- package/dist/server/utils/string-command-shell.d.ts +13 -0
- package/dist/server/utils/string-command-shell.js +37 -0
- package/dist/server/utils/tree-kill.d.ts +18 -0
- package/dist/server/utils/tree-kill.js +77 -0
- package/dist/server/utils/windows-command.d.ts +15 -0
- package/dist/server/utils/windows-command.js +41 -0
- package/dist/server/utils/worktree-metadata.d.ts +39 -0
- package/dist/server/utils/worktree-metadata.js +174 -0
- package/dist/server/utils/worktree.d.ts +205 -0
- package/dist/server/utils/worktree.js +1120 -0
- package/dist/server/web-ui/_expo/static/css/xterm-3bb1704bf6cb0876640973dc0244b4cb.css +1 -0
- package/dist/server/web-ui/_expo/static/css/xterm-3bb1704bf6cb0876640973dc0244b4cb.css.br +0 -0
- package/dist/server/web-ui/_expo/static/css/xterm-3bb1704bf6cb0876640973dc0244b4cb.css.gz +0 -0
- package/dist/server/web-ui/_expo/static/js/web/desktop-attachment-bridge-a25c6055b348629689f75618db2c83e1.js +1 -0
- package/dist/server/web-ui/_expo/static/js/web/desktop-attachment-bridge-a25c6055b348629689f75618db2c83e1.js.br +0 -0
- package/dist/server/web-ui/_expo/static/js/web/desktop-attachment-bridge-a25c6055b348629689f75618db2c83e1.js.gz +0 -0
- package/dist/server/web-ui/_expo/static/js/web/desktop-attachment-store-7dc26ea1611eb9d7c2971a6745e5bf5c.js +1 -0
- package/dist/server/web-ui/_expo/static/js/web/desktop-attachment-store-7dc26ea1611eb9d7c2971a6745e5bf5c.js.br +0 -0
- package/dist/server/web-ui/_expo/static/js/web/desktop-attachment-store-7dc26ea1611eb9d7c2971a6745e5bf5c.js.gz +0 -0
- package/dist/server/web-ui/_expo/static/js/web/index-ea91f496cee180fa5bf308c8cc177646.js +3199 -0
- package/dist/server/web-ui/_expo/static/js/web/index-ea91f496cee180fa5bf308c8cc177646.js.br +0 -0
- package/dist/server/web-ui/_expo/static/js/web/index-ea91f496cee180fa5bf308c8cc177646.js.gz +0 -0
- package/dist/server/web-ui/_expo/static/js/web/indexeddb-attachment-store-b6b853a967343babf305512fe8c5958c.js +1 -0
- package/dist/server/web-ui/_expo/static/js/web/indexeddb-attachment-store-b6b853a967343babf305512fe8c5958c.js.br +0 -0
- package/dist/server/web-ui/_expo/static/js/web/indexeddb-attachment-store-b6b853a967343babf305512fe8c5958c.js.gz +0 -0
- package/dist/server/web-ui/_expo/static/js/web/native-file-attachment-store-17223e158406802adc686d02d946573d.js +3 -0
- package/dist/server/web-ui/_expo/static/js/web/native-file-attachment-store-17223e158406802adc686d02d946573d.js.br +0 -0
- package/dist/server/web-ui/_expo/static/js/web/native-file-attachment-store-17223e158406802adc686d02d946573d.js.gz +0 -0
- package/dist/server/web-ui/apple-touch-icon.png +0 -0
- package/dist/server/web-ui/assets/__node_modules/@expo-google-fonts/inter/400Regular/Inter_400Regular.51b6ad87261f18b6433ec52871ddfabc.ttf +0 -0
- package/dist/server/web-ui/assets/__node_modules/@expo-google-fonts/jetbrains-mono/400Regular/JetBrainsMono_400Regular.a0147b5ab9e4946e81879aef45313def.ttf +0 -0
- package/dist/server/web-ui/assets/__node_modules/@react-navigation/elements/lib/module/assets/back-icon-mask.0a328cd9c1afd0afe8e3b1ec5165b1b4.png +0 -0
- package/dist/server/web-ui/assets/__node_modules/@react-navigation/elements/lib/module/assets/back-icon.35ba0eaec5a4f5ed12ca16fabeae451d.png +0 -0
- package/dist/server/web-ui/assets/__node_modules/@react-navigation/elements/lib/module/assets/clear-icon.c94f6478e7ae0cdd9f15de1fcb9e5e55.png +0 -0
- package/dist/server/web-ui/assets/__node_modules/@react-navigation/elements/lib/module/assets/clear-icon.c94f6478e7ae0cdd9f15de1fcb9e5e55@2x.png +0 -0
- package/dist/server/web-ui/assets/__node_modules/@react-navigation/elements/lib/module/assets/clear-icon.c94f6478e7ae0cdd9f15de1fcb9e5e55@3x.png +0 -0
- package/dist/server/web-ui/assets/__node_modules/@react-navigation/elements/lib/module/assets/clear-icon.c94f6478e7ae0cdd9f15de1fcb9e5e55@4x.png +0 -0
- package/dist/server/web-ui/assets/__node_modules/@react-navigation/elements/lib/module/assets/close-icon.808e1b1b9b53114ec2838071a7e6daa7.png +0 -0
- package/dist/server/web-ui/assets/__node_modules/@react-navigation/elements/lib/module/assets/close-icon.808e1b1b9b53114ec2838071a7e6daa7@2x.png +0 -0
- package/dist/server/web-ui/assets/__node_modules/@react-navigation/elements/lib/module/assets/close-icon.808e1b1b9b53114ec2838071a7e6daa7@3x.png +0 -0
- package/dist/server/web-ui/assets/__node_modules/@react-navigation/elements/lib/module/assets/close-icon.808e1b1b9b53114ec2838071a7e6daa7@4x.png +0 -0
- package/dist/server/web-ui/assets/__node_modules/@react-navigation/elements/lib/module/assets/search-icon.286d67d3f74808a60a78d3ebf1a5fb57.png +0 -0
- package/dist/server/web-ui/assets/__node_modules/expo-router/assets/arrow_down.017bc6ba3fc25503e5eb5e53826d48a8.png +0 -0
- package/dist/server/web-ui/assets/__node_modules/expo-router/assets/error.d1ea1496f9057eb392d5bbf3732a61b7.png +0 -0
- package/dist/server/web-ui/assets/__node_modules/expo-router/assets/file.19eeb73b9593a38f8e9f418337fc7d10.png +0 -0
- package/dist/server/web-ui/assets/__node_modules/expo-router/assets/forward.d8b800c443b8972542883e0b9de2bdc6.png +0 -0
- package/dist/server/web-ui/assets/__node_modules/expo-router/assets/pkg.ab19f4cbc543357183a20571f68380a3.png +0 -0
- package/dist/server/web-ui/assets/__node_modules/expo-router/assets/sitemap.412dd9275b6b48ad28f5e3d81bb1f626.png +0 -0
- package/dist/server/web-ui/assets/__node_modules/expo-router/assets/unmatched.20e71bdf79e3a97bf55fd9e164041578.png +0 -0
- package/dist/server/web-ui/assets/assets/images/editor-apps/antigravity.6e91a685c33435e0b466a56db86cf141.png +0 -0
- package/dist/server/web-ui/assets/assets/images/editor-apps/clion.baa1f4eb572e962a6117bdbee95749e4.png +0 -0
- package/dist/server/web-ui/assets/assets/images/editor-apps/cursor.c31d6bce4fe9aadc3fe59962f4c4fcf3.png +0 -0
- package/dist/server/web-ui/assets/assets/images/editor-apps/finder.7f68fc2c475621a672e1be09309d5567.png +0 -0
- package/dist/server/web-ui/assets/assets/images/editor-apps/goland.0796ab2b9be2637fd1cdcde891fad3ca.png +0 -0
- package/dist/server/web-ui/assets/assets/images/editor-apps/intellij-idea.33bc9ff9c0815d8ad43f618c8c244401.png +0 -0
- package/dist/server/web-ui/assets/assets/images/editor-apps/phpstorm.c60b33bc7a8309143d232e14b76554c5.png +0 -0
- package/dist/server/web-ui/assets/assets/images/editor-apps/pycharm.88f25ac484989c45c25323e0adccfa9f.png +0 -0
- package/dist/server/web-ui/assets/assets/images/editor-apps/rider.1a1091dc3a0ede0461f0aa38a54f080a.png +0 -0
- package/dist/server/web-ui/assets/assets/images/editor-apps/rubymine.0e5b66fd7d43f8cbac0f05bba97c9a21.png +0 -0
- package/dist/server/web-ui/assets/assets/images/editor-apps/rustrover.3590ef05482369f41d3484c90272570d.png +0 -0
- package/dist/server/web-ui/assets/assets/images/editor-apps/vscode.832bdb4c685d930f1c864c793703600b.png +0 -0
- package/dist/server/web-ui/assets/assets/images/editor-apps/webstorm.aa5dc2cd8c20cc0a155c4c5c5ab3c5f5.png +0 -0
- package/dist/server/web-ui/assets/assets/images/editor-apps/zed.f3a670b7f9aa226da4fe53fb86f1abbd.png +0 -0
- package/dist/server/web-ui/assets/assets/images/favicon-dark-attention.3b2c331d11122d8f743c73a5878593be.png +0 -0
- package/dist/server/web-ui/assets/assets/images/favicon-dark-running.6077c2ab71021b31c82a42e0b42ad837.png +0 -0
- package/dist/server/web-ui/assets/assets/images/favicon-dark.12984efe6d435a13794a74cd2f858dcd.png +0 -0
- package/dist/server/web-ui/assets/assets/images/favicon-light-attention.3b2c331d11122d8f743c73a5878593be.png +0 -0
- package/dist/server/web-ui/assets/assets/images/favicon-light-running.6077c2ab71021b31c82a42e0b42ad837.png +0 -0
- package/dist/server/web-ui/assets/assets/images/favicon-light.12984efe6d435a13794a74cd2f858dcd.png +0 -0
- package/dist/server/web-ui/assets/assets/images/notification-icon.2394c3b427c0f5ee2bb84864d8fb0f45.png +0 -0
- package/dist/server/web-ui/favicon.ico +0 -0
- package/dist/server/web-ui/index.html +147 -0
- package/dist/server/web-ui/index.html.br +0 -0
- package/dist/server/web-ui/index.html.gz +0 -0
- package/dist/server/web-ui/manifest.json +27 -0
- package/dist/server/web-ui/manifest.json.br +0 -0
- package/dist/server/web-ui/manifest.json.gz +0 -0
- package/dist/server/web-ui/metadata.json +1 -0
- package/dist/server/web-ui/metadata.json.br +1 -0
- package/dist/server/web-ui/metadata.json.gz +0 -0
- package/dist/server/web-ui/pwa-icon-192.png +0 -0
- package/dist/server/web-ui/pwa-icon-512.png +0 -0
- package/dist/server/web-ui/robots.txt +2 -0
- package/dist/src/executable-resolution/executable-resolution.js +118 -0
- package/dist/src/executable-resolution/windows.js +65 -0
- package/dist/src/server/agent/provider-launch-config.js +167 -0
- package/dist/src/server/otto-env.js +53 -0
- package/dist/src/server/otto-home.js +19 -0
- package/dist/src/server/persisted-config.js +471 -0
- package/dist/src/server/pid-lock.js +170 -0
- package/dist/src/server/private-files.js +37 -0
- package/dist/src/server/speech/providers/local/sherpa/sherpa-runtime-env.js +84 -0
- package/dist/src/terminal/shell-integration/zsh/.zshenv +17 -0
- package/dist/src/terminal/shell-integration/zsh/otto-integration.zsh +32 -0
- package/dist/src/utils/spawn.js +59 -0
- package/dist/src/utils/windows-command.js +41 -0
- package/package.json +118 -0
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { AgentCapabilityFlags, AgentClient, AgentLaunchContext, AgentPersistenceHandle, AgentProvider, AgentSession, AgentSessionConfig, FetchCatalogOptions, ProviderCatalog } from "../agent-sdk-types.js";
|
|
2
|
+
export declare const MOCK_SLOW_PROVIDER_ID = "mock-slow";
|
|
3
|
+
export declare class MockSlowProviderClient implements AgentClient {
|
|
4
|
+
readonly provider: AgentProvider;
|
|
5
|
+
readonly capabilities: AgentCapabilityFlags;
|
|
6
|
+
isAvailable(): Promise<boolean>;
|
|
7
|
+
fetchCatalog(_options: FetchCatalogOptions): Promise<ProviderCatalog>;
|
|
8
|
+
getDiagnostic(): Promise<{
|
|
9
|
+
diagnostic: string;
|
|
10
|
+
}>;
|
|
11
|
+
createSession(_config: AgentSessionConfig, _launchContext?: AgentLaunchContext): Promise<AgentSession>;
|
|
12
|
+
resumeSession(_handle: AgentPersistenceHandle, _overrides?: Partial<AgentSessionConfig>, _launchContext?: AgentLaunchContext): Promise<AgentSession>;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=mock-slow-provider.d.ts.map
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
export const MOCK_SLOW_PROVIDER_ID = "mock-slow";
|
|
2
|
+
const CAPABILITIES = {
|
|
3
|
+
supportsStreaming: false,
|
|
4
|
+
supportsSessionPersistence: false,
|
|
5
|
+
supportsDynamicModes: false,
|
|
6
|
+
supportsMcpServers: false,
|
|
7
|
+
supportsReasoningStream: false,
|
|
8
|
+
supportsToolInvocations: false,
|
|
9
|
+
supportsRewindConversation: false,
|
|
10
|
+
supportsRewindFiles: false,
|
|
11
|
+
supportsRewindBoth: false,
|
|
12
|
+
};
|
|
13
|
+
function neverResolves() {
|
|
14
|
+
return new Promise(() => { });
|
|
15
|
+
}
|
|
16
|
+
export class MockSlowProviderClient {
|
|
17
|
+
constructor() {
|
|
18
|
+
this.provider = MOCK_SLOW_PROVIDER_ID;
|
|
19
|
+
this.capabilities = CAPABILITIES;
|
|
20
|
+
}
|
|
21
|
+
async isAvailable() {
|
|
22
|
+
return process.env.OTTO_ENABLE_MOCK_SLOW === "true";
|
|
23
|
+
}
|
|
24
|
+
async fetchCatalog(_options) {
|
|
25
|
+
return neverResolves();
|
|
26
|
+
}
|
|
27
|
+
async getDiagnostic() {
|
|
28
|
+
return {
|
|
29
|
+
diagnostic: "Mock slow provider: dev-only. fetchCatalog() never resolves so the snapshot manager will time out.",
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
createSession(_config, _launchContext) {
|
|
33
|
+
throw new Error("Mock slow provider is dev-only; sessions are not supported.");
|
|
34
|
+
}
|
|
35
|
+
resumeSession(_handle, _overrides, _launchContext) {
|
|
36
|
+
throw new Error("Mock slow provider is dev-only; sessions are not supported.");
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=mock-slow-provider.js.map
|
|
@@ -0,0 +1,422 @@
|
|
|
1
|
+
import type { Logger } from "pino";
|
|
2
|
+
import type { AgentCapabilityFlags, AgentClient, AgentContextUsage, AgentFeature, AgentLaunchContext, AgentMode, AgentPersistenceHandle, AgentPermissionRequest, AgentPermissionResponse, AgentPermissionResult, AgentPersonalityUpdate, AgentPromptInput, AgentProvider, AgentRunOptions, AgentRunResult, AgentRuntimeInfo, AgentSession, AgentSessionConfig, AgentSlashCommand, AgentStreamEvent, FetchCatalogOptions, ProviderCatalog } from "../agent-sdk-types.js";
|
|
3
|
+
import type { OttoToolCatalog } from "../tools/types.js";
|
|
4
|
+
import { type OttoToolGroup } from "@otto-code/protocol/provider-config";
|
|
5
|
+
import type { McpServerConfig } from "../agent-sdk-types.js";
|
|
6
|
+
import type { ManagedProcessRegistry } from "../../managed-processes/managed-processes.js";
|
|
7
|
+
import type { McpToolPermissionMode, ProviderCompactionConfig } from "@otto-code/protocol/provider-config";
|
|
8
|
+
/**
|
|
9
|
+
* Native provider for OpenAI-compatible HTTP endpoints (LM Studio, Ollama,
|
|
10
|
+
* vLLM, llama.cpp server, gateways). The daemon talks to the endpoint
|
|
11
|
+
* directly — model discovery via GET {base}/models, streaming chat via
|
|
12
|
+
* POST {base}/chat/completions. No external agent binary is involved, so
|
|
13
|
+
* availability means "the server is reachable", not "a CLI is installed".
|
|
14
|
+
*
|
|
15
|
+
* Tool support: the daemon is the tool runtime. Function-calling models get a
|
|
16
|
+
* built-in coding toolset (read/list/grep/write/edit/shell) executed in the
|
|
17
|
+
* agent's cwd, with permission gating per mode.
|
|
18
|
+
*/
|
|
19
|
+
export declare const OPENAI_COMPAT_EXTENDS = "openai-compatible";
|
|
20
|
+
/**
|
|
21
|
+
* True when a tool result carries no signal worth keeping in context — empty
|
|
22
|
+
* output, zero-match searches, or a bare timeout/no-op acknowledgement. These
|
|
23
|
+
* are elided wholesale during pruning. Kept conservative on purpose: anything
|
|
24
|
+
* ambiguous is left intact for the summarizer to judge.
|
|
25
|
+
*/
|
|
26
|
+
export declare function isUneventfulToolResult(content: string): boolean;
|
|
27
|
+
export declare const OPENAI_COMPAT_MODES: AgentMode[];
|
|
28
|
+
interface ToolCallPayload {
|
|
29
|
+
id: string;
|
|
30
|
+
type: "function";
|
|
31
|
+
function: {
|
|
32
|
+
name: string;
|
|
33
|
+
arguments: string;
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
type ChatMessage =
|
|
37
|
+
/**
|
|
38
|
+
* messageId is provider-internal bookkeeping for user messages: it ties the
|
|
39
|
+
* persisted conversation to the durable timeline's user_message items so
|
|
40
|
+
* revertConversation can find its truncation point. Stripped from the wire
|
|
41
|
+
* payload before requests — strict servers reject unknown message fields.
|
|
42
|
+
*/
|
|
43
|
+
{
|
|
44
|
+
role: "system" | "user";
|
|
45
|
+
content: string;
|
|
46
|
+
messageId?: string;
|
|
47
|
+
isCompactionSummary?: boolean;
|
|
48
|
+
} | {
|
|
49
|
+
role: "assistant";
|
|
50
|
+
content: string;
|
|
51
|
+
tool_calls?: ToolCallPayload[];
|
|
52
|
+
reasoning?: string;
|
|
53
|
+
} | {
|
|
54
|
+
role: "tool";
|
|
55
|
+
content: string;
|
|
56
|
+
tool_call_id: string;
|
|
57
|
+
};
|
|
58
|
+
export interface OpenAICompatAgentClientOptions {
|
|
59
|
+
logger?: Logger;
|
|
60
|
+
providerId: string;
|
|
61
|
+
label: string;
|
|
62
|
+
env?: Record<string, string>;
|
|
63
|
+
/** Otto tool groups to inject; undefined = all groups, [] = none. */
|
|
64
|
+
ottoToolGroups?: readonly OttoToolGroup[] | null;
|
|
65
|
+
/** Provider-level MCP servers; merged with per-agent config (per-agent wins). */
|
|
66
|
+
mcpServers?: Record<string, McpServerConfig> | null;
|
|
67
|
+
/** MCP permission strictness in acceptEdits mode; defaults to "always-ask". */
|
|
68
|
+
mcpToolPermissions?: McpToolPermissionMode | null;
|
|
69
|
+
/** Provider-level compaction defaults; per-agent feature values win. */
|
|
70
|
+
compaction?: ProviderCompactionConfig | null;
|
|
71
|
+
managedProcesses?: ManagedProcessRegistry | null;
|
|
72
|
+
}
|
|
73
|
+
export declare function normalizeOpenAICompatBaseUrl(value: string): string;
|
|
74
|
+
export declare class OpenAICompatAgentClient implements AgentClient {
|
|
75
|
+
readonly provider: AgentProvider;
|
|
76
|
+
readonly capabilities: AgentCapabilityFlags;
|
|
77
|
+
private readonly logger?;
|
|
78
|
+
private readonly label;
|
|
79
|
+
private readonly env?;
|
|
80
|
+
private readonly ottoToolGroups?;
|
|
81
|
+
private readonly mcpServers;
|
|
82
|
+
private readonly mcpToolPermissions;
|
|
83
|
+
private readonly compaction;
|
|
84
|
+
private readonly managedProcesses;
|
|
85
|
+
constructor(options: OpenAICompatAgentClientOptions);
|
|
86
|
+
isAvailable(): Promise<boolean>;
|
|
87
|
+
fetchCatalog(options: FetchCatalogOptions): Promise<ProviderCatalog>;
|
|
88
|
+
getDiagnostic(): Promise<{
|
|
89
|
+
diagnostic: string;
|
|
90
|
+
}>;
|
|
91
|
+
listFeatures(config: AgentSessionConfig): Promise<AgentFeature[]>;
|
|
92
|
+
createSession(config: AgentSessionConfig, launchContext?: AgentLaunchContext): Promise<AgentSession>;
|
|
93
|
+
resumeSession(handle: AgentPersistenceHandle, overrides?: Partial<AgentSessionConfig>, launchContext?: AgentLaunchContext): Promise<AgentSession>;
|
|
94
|
+
}
|
|
95
|
+
export declare class OpenAICompatAgentSession implements AgentSession {
|
|
96
|
+
readonly provider: AgentProvider;
|
|
97
|
+
readonly capabilities: AgentCapabilityFlags;
|
|
98
|
+
readonly id: string;
|
|
99
|
+
private readonly label;
|
|
100
|
+
private readonly env?;
|
|
101
|
+
private readonly logger?;
|
|
102
|
+
private readonly cwd;
|
|
103
|
+
private readonly listeners;
|
|
104
|
+
private readonly eventHistory;
|
|
105
|
+
private readonly messages;
|
|
106
|
+
private readonly pendingPermissions;
|
|
107
|
+
/** Otto's tool catalog, injected natively since this provider can't host an MCP client. */
|
|
108
|
+
private readonly ottoTools;
|
|
109
|
+
/** Which Otto tool groups to expose; null/undefined = all groups. */
|
|
110
|
+
private readonly ottoToolGroups?;
|
|
111
|
+
/** Daemon-hosted MCP client for the configured servers; null when none are configured. */
|
|
112
|
+
private readonly mcpManager;
|
|
113
|
+
private readonly mcpToolPermissions;
|
|
114
|
+
/** Connection failures already surfaced as timeline warnings. */
|
|
115
|
+
private mcpFailuresAnnounced;
|
|
116
|
+
private modelId;
|
|
117
|
+
private modeId;
|
|
118
|
+
private reasoningEffort;
|
|
119
|
+
/** Provider-level default for the auto_compact feature select. */
|
|
120
|
+
private autoCompactDefault;
|
|
121
|
+
/**
|
|
122
|
+
* Provider config hides the per-agent auto_compact select: the feature is
|
|
123
|
+
* omitted from `features` and persisted per-agent values are ignored, so
|
|
124
|
+
* the provider default always applies.
|
|
125
|
+
*/
|
|
126
|
+
private autoCompactHidden;
|
|
127
|
+
/** Effective auto-compact setting: "off" or the trigger percentage. */
|
|
128
|
+
private autoCompact;
|
|
129
|
+
/**
|
|
130
|
+
* Loop protection: set when an auto-compaction failed or couldn't bring
|
|
131
|
+
* usage back under the threshold, so the next round doesn't immediately
|
|
132
|
+
* retry. Cleared once measured usage drops below the threshold again
|
|
133
|
+
* (rewind, manual /compact, model switch to a larger window).
|
|
134
|
+
*/
|
|
135
|
+
private autoCompactDisarmed;
|
|
136
|
+
/** Recent-conversation budget kept verbatim through compaction. */
|
|
137
|
+
private keepRecentTokens;
|
|
138
|
+
private activeTurn;
|
|
139
|
+
/** Resolved context window for the active model; null until (or unless) discovered. */
|
|
140
|
+
private contextWindowMaxTokens;
|
|
141
|
+
/** Model the cached context window was resolved for; re-probe after a model switch. */
|
|
142
|
+
private contextWindowProbedModel;
|
|
143
|
+
/** Exact context size (prompt + completion tokens) measured by the server on the last round. */
|
|
144
|
+
private lastContextTokens;
|
|
145
|
+
/** Session config stored so the system prompt can be rebuilt after compaction. */
|
|
146
|
+
private readonly config;
|
|
147
|
+
constructor(options: {
|
|
148
|
+
providerId: string;
|
|
149
|
+
label: string;
|
|
150
|
+
env?: Record<string, string>;
|
|
151
|
+
config: AgentSessionConfig;
|
|
152
|
+
sessionId: string;
|
|
153
|
+
messages: ChatMessage[];
|
|
154
|
+
logger?: Logger;
|
|
155
|
+
ottoTools?: OttoToolCatalog | null;
|
|
156
|
+
ottoToolGroups?: readonly OttoToolGroup[] | null;
|
|
157
|
+
mcpServers?: Record<string, McpServerConfig> | null;
|
|
158
|
+
mcpToolPermissions?: McpToolPermissionMode;
|
|
159
|
+
compaction?: ProviderCompactionConfig | null;
|
|
160
|
+
managedProcesses?: ManagedProcessRegistry | null;
|
|
161
|
+
});
|
|
162
|
+
/**
|
|
163
|
+
* Rebuild replayable history from the current conversation so a resumed or
|
|
164
|
+
* rewound session still backfills its transcript, tool calls included.
|
|
165
|
+
* There is no separate durable store for tool traffic — `this.messages` is
|
|
166
|
+
* the only record that survives a resume, so tool_call items are
|
|
167
|
+
* reconstructed from each assistant message's `tool_calls` plus the
|
|
168
|
+
* matching "tool" result message. User messages keep their persisted
|
|
169
|
+
* messageId so the durable timeline and the provider conversation agree on
|
|
170
|
+
* rewind targets.
|
|
171
|
+
*/
|
|
172
|
+
private rebuildEventHistory;
|
|
173
|
+
get features(): AgentFeature[];
|
|
174
|
+
setThinkingOption(thinkingOptionId: string | null): Promise<void>;
|
|
175
|
+
applyPersonality(update: AgentPersonalityUpdate): Promise<void>;
|
|
176
|
+
setFeature(featureId: string, value: unknown): Promise<void>;
|
|
177
|
+
/**
|
|
178
|
+
* Live re-apply of provider-level compaction config so settings edits reach
|
|
179
|
+
* running chats without a restart. Sessions still sitting on the old default
|
|
180
|
+
* follow the new default; an explicit per-agent pick is kept unless the
|
|
181
|
+
* selector is hidden, which always forces the default.
|
|
182
|
+
*/
|
|
183
|
+
applyCompactionConfig(compaction: ProviderCompactionConfig | null): boolean;
|
|
184
|
+
private buildSystemPrompt;
|
|
185
|
+
/**
|
|
186
|
+
* Workflow doctrine for the preview/browser tool families. Tool descriptions
|
|
187
|
+
* alone don't reliably steer local models, so when both families are exposed
|
|
188
|
+
* the system prompt spells out the split: preview_start owns dev servers and
|
|
189
|
+
* their designated tab; browser_new_tab is for everything else.
|
|
190
|
+
*/
|
|
191
|
+
private buildPreviewWorkflowPrompt;
|
|
192
|
+
private availableToolSpecs;
|
|
193
|
+
private toolNeedsApproval;
|
|
194
|
+
/**
|
|
195
|
+
* Otto's injected catalog (browser_*, preview_*, agent management, …) rendered
|
|
196
|
+
* as OpenAI function specs so the local model can call them. Excluded in
|
|
197
|
+
* read-only "plan" mode since they can take actions; builtin coding tools win
|
|
198
|
+
* on name collisions. Empty when no catalog was injected (e.g. tools disabled).
|
|
199
|
+
*/
|
|
200
|
+
/** Whether an Otto tool's group is enabled for this provider (null groups = all). */
|
|
201
|
+
private isOttoToolGroupEnabled;
|
|
202
|
+
/**
|
|
203
|
+
* Connect the configured MCP servers before the first model round. A server
|
|
204
|
+
* that fails to connect is skipped — surfaced once as a timeline warning,
|
|
205
|
+
* never fatal to the session.
|
|
206
|
+
*/
|
|
207
|
+
private ensureMcpReady;
|
|
208
|
+
/** Built-in slash commands plus MCP prompts from connected servers. */
|
|
209
|
+
listCommands(): Promise<AgentSlashCommand[]>;
|
|
210
|
+
/**
|
|
211
|
+
* Handle `/compact [instruction]` by summarizing the older conversation
|
|
212
|
+
* history while keeping the most recent slice verbatim, then splicing the
|
|
213
|
+
* summary in ahead of the retained tail. Runs entirely in-process — no
|
|
214
|
+
* external compaction service. Returns the turn's usage so the caller can
|
|
215
|
+
* attach it to turn_completed.
|
|
216
|
+
*
|
|
217
|
+
* Pipeline (adapted from oh-my-pi's compaction design):
|
|
218
|
+
* 1. Prune tool outputs (zero-LLM): elide uneventful results, truncate
|
|
219
|
+
* oversized older ones, protect the newest.
|
|
220
|
+
* 2. Split at the keep-recent boundary: [system] + [older → summarize] +
|
|
221
|
+
* [recent → keep verbatim].
|
|
222
|
+
* 3. Summarize the older region. If a prior compaction summary is present,
|
|
223
|
+
* merge into it (incremental update) instead of re-summarizing a summary.
|
|
224
|
+
* 4. Rebuild: [system, summary, ...recent].
|
|
225
|
+
*/
|
|
226
|
+
private handleCompact;
|
|
227
|
+
/**
|
|
228
|
+
* Auto-compaction check, run at turn start (before the new user message
|
|
229
|
+
* joins the conversation, so it always survives verbatim) and before every
|
|
230
|
+
* subsequent model round. Uses the freshest server-measured context size —
|
|
231
|
+
* the active turn's last round, falling back to the previous turn's final
|
|
232
|
+
* figure. Endpoints that report no context length never auto-compact:
|
|
233
|
+
* without a denominator there is no percentage (manual /compact still
|
|
234
|
+
* works).
|
|
235
|
+
*
|
|
236
|
+
* Loop protection: a compaction that fails or can't bring usage back under
|
|
237
|
+
* the threshold disarms the trigger. Without that, a conversation whose
|
|
238
|
+
* retained tail alone exceeds the threshold would re-summarize on every
|
|
239
|
+
* round, burning a model call each time for no reclaimed space. The trigger
|
|
240
|
+
* re-arms once measured usage drops below the threshold by other means
|
|
241
|
+
* (rewind, manual /compact, a model switch to a larger window) or when the
|
|
242
|
+
* user changes the auto-compact setting.
|
|
243
|
+
*
|
|
244
|
+
* Auto-compaction failures never fail the user's turn — the turn proceeds
|
|
245
|
+
* with the uncompacted conversation (interrupts still propagate).
|
|
246
|
+
*/
|
|
247
|
+
private maybeAutoCompact;
|
|
248
|
+
/**
|
|
249
|
+
* Pre-summarization pruning (zero-LLM). Mutates the message array in place:
|
|
250
|
+
* elides uneventful tool results everywhere, then truncates oversized tool
|
|
251
|
+
* results older than the protected-recent window to head + tail. Structure is
|
|
252
|
+
* never changed (only tool `content`), so tool_call ordering stays valid.
|
|
253
|
+
*/
|
|
254
|
+
private pruneToolOutputs;
|
|
255
|
+
/**
|
|
256
|
+
* Index of the first message (after the system prompt at 0) to keep verbatim
|
|
257
|
+
* through compaction: walk newest → oldest accumulating token estimates until
|
|
258
|
+
* the keep-recent budget is exceeded, then advance past any leading tool
|
|
259
|
+
* results so the retained tail never starts with a tool message orphaned from
|
|
260
|
+
* its assistant tool_calls. Returns messages.length when the whole
|
|
261
|
+
* conversation is older than the budget (summarize everything, keep none).
|
|
262
|
+
*/
|
|
263
|
+
private computeCompactionKeepFromIndex;
|
|
264
|
+
/**
|
|
265
|
+
* POST a non-streaming chat completion for compaction and return the assistant
|
|
266
|
+
* text plus raw usage. Throws on transport failure or an empty response.
|
|
267
|
+
*/
|
|
268
|
+
private runCompactionCompletion;
|
|
269
|
+
/**
|
|
270
|
+
* Local estimate of the full next-request context: conversation messages
|
|
271
|
+
* (including the system prompt) plus the tool schemas that are re-sent with
|
|
272
|
+
* every request. Char-based, so it's approximate — the next real turn's
|
|
273
|
+
* server-measured usage replaces it.
|
|
274
|
+
*/
|
|
275
|
+
private estimateFullContextTokens;
|
|
276
|
+
/**
|
|
277
|
+
* Serialize the given conversation messages into a text blob suitable for a
|
|
278
|
+
* compaction prompt. Tool calls are summarized rather than included verbatim
|
|
279
|
+
* to keep the payload manageable.
|
|
280
|
+
*/
|
|
281
|
+
private serializeConversationForCompaction;
|
|
282
|
+
/**
|
|
283
|
+
* System prompt for a fresh compaction summary. The older conversation is
|
|
284
|
+
* summarized while recent messages are kept verbatim, so this summary becomes
|
|
285
|
+
* the model's memory of the distant past — it must preserve exact references,
|
|
286
|
+
* not paraphrase them away. Modeled on oh-my-pi's structured handoff format.
|
|
287
|
+
*/
|
|
288
|
+
private buildCompactionSystemPrompt;
|
|
289
|
+
/**
|
|
290
|
+
* System prompt for an incremental compaction: merge newer messages into an
|
|
291
|
+
* existing summary rather than re-summarizing a summary (which degrades fast
|
|
292
|
+
* across repeated compacts). The prior summary arrives in <previous-summary>
|
|
293
|
+
* tags and the newer messages in <new-messages> tags.
|
|
294
|
+
*/
|
|
295
|
+
private buildCompactionUpdateSystemPrompt;
|
|
296
|
+
/**
|
|
297
|
+
* When the typed prompt is `/mcp_{server}_{prompt} args`, resolve it via
|
|
298
|
+
* prompts/get and feed the resolved text to the model. The remainder of the
|
|
299
|
+
* line maps to the prompt's first declared argument (multi-argument prompts
|
|
300
|
+
* receive only that one). Any resolution failure falls back to sending the
|
|
301
|
+
* raw text as a plain prompt, matching the opencode provider.
|
|
302
|
+
*/
|
|
303
|
+
private resolveMcpPromptText;
|
|
304
|
+
/**
|
|
305
|
+
* MCP tools rendered as OpenAI function specs under namespaced
|
|
306
|
+
* mcp_{server}_{tool} names. Hard-excluded in read-only "plan" mode — MCP
|
|
307
|
+
* tools are opaque and may take actions regardless of what they claim.
|
|
308
|
+
*/
|
|
309
|
+
private buildMcpToolPayload;
|
|
310
|
+
private buildOttoToolPayload;
|
|
311
|
+
run(prompt: AgentPromptInput, options?: AgentRunOptions): Promise<AgentRunResult>;
|
|
312
|
+
startTurn(prompt: AgentPromptInput, options?: AgentRunOptions): Promise<{
|
|
313
|
+
turnId: string;
|
|
314
|
+
}>;
|
|
315
|
+
private executeTurn;
|
|
316
|
+
private runToolLoop;
|
|
317
|
+
private parseToolCallArgs;
|
|
318
|
+
private executeToolCall;
|
|
319
|
+
/**
|
|
320
|
+
* MCP tools are opaque — the daemon cannot know whether one is destructive.
|
|
321
|
+
* default mode always asks; acceptEdits asks unless the provider opted into
|
|
322
|
+
* "trust-read-only" AND the server self-declares readOnlyHint (that
|
|
323
|
+
* annotation is untrusted, so it never skips prompts in default mode);
|
|
324
|
+
* bypassPermissions auto-approves like everything else. Plan mode never
|
|
325
|
+
* reaches here — MCP tools are excluded from the payload entirely.
|
|
326
|
+
*/
|
|
327
|
+
private mcpToolNeedsApproval;
|
|
328
|
+
private executeMcpToolCall;
|
|
329
|
+
/**
|
|
330
|
+
* Otto tools skip prompts only when classified read-only; "interact" tools
|
|
331
|
+
* are auto-approved in acceptEdits like file edits, and "execute" tools
|
|
332
|
+
* always prompt outside bypassPermissions. CLI providers get this gating
|
|
333
|
+
* from their own permission system in front of the MCP client — here the
|
|
334
|
+
* daemon is the runtime, so it prompts itself.
|
|
335
|
+
* See openai-compat-otto-tool-permissions.ts.
|
|
336
|
+
*/
|
|
337
|
+
private ottoToolNeedsApproval;
|
|
338
|
+
private executeOttoToolCall;
|
|
339
|
+
private emitToolItem;
|
|
340
|
+
private requestPermission;
|
|
341
|
+
private streamCompletion;
|
|
342
|
+
private applyStreamPayload;
|
|
343
|
+
/**
|
|
344
|
+
* Emit a usage_updated event so the agent manager updates agent.lastUsage
|
|
345
|
+
* and pushes the context usage to the client immediately, rather than
|
|
346
|
+
* waiting for turn_completed at the end of the entire tool loop.
|
|
347
|
+
*
|
|
348
|
+
* resolveContextWindowMaxTokens() is async (it may probe the endpoint) and
|
|
349
|
+
* this runs on the hot streaming path, so only the already-cached value is
|
|
350
|
+
* included. The event is always emitted regardless — the client and agent
|
|
351
|
+
* manager handle partial usage snapshots correctly.
|
|
352
|
+
*/
|
|
353
|
+
private emitStreamUsageUpdated;
|
|
354
|
+
/**
|
|
355
|
+
* A turn can end (interrupt or failure) between an assistant message's
|
|
356
|
+
* tool_calls and their tool results — e.g. the user interrupts during call
|
|
357
|
+
* #1 of 3. Strict OpenAI-compatible servers reject the next request over
|
|
358
|
+
* such a conversation with a 400, so append synthetic results for the
|
|
359
|
+
* unanswered calls. Resume gets the equivalent repair from
|
|
360
|
+
* sanitizeRestoredMessages; this covers the live conversation.
|
|
361
|
+
*/
|
|
362
|
+
private repairDanglingToolCalls;
|
|
363
|
+
private settleTurnFailure;
|
|
364
|
+
private failPendingPermissions;
|
|
365
|
+
private resolveModel;
|
|
366
|
+
/**
|
|
367
|
+
* Best-effort context window discovery, cached per model. Checks the
|
|
368
|
+
* standard /v1/models listing for extended context-length fields first,
|
|
369
|
+
* then LM Studio's native /api/v0/models listing (same host, /v1 stripped),
|
|
370
|
+
* which reports the loaded instance's actual window. Servers that expose
|
|
371
|
+
* neither leave the meter without a max — never an error.
|
|
372
|
+
*/
|
|
373
|
+
private resolveContextWindowMaxTokens;
|
|
374
|
+
/**
|
|
375
|
+
* Promote the raw per-request token counts into AgentUsage. The final
|
|
376
|
+
* round's prompt already contains the full conversation, so prompt +
|
|
377
|
+
* completion tokens is the context content size as the server measured it.
|
|
378
|
+
*/
|
|
379
|
+
private buildTurnUsage;
|
|
380
|
+
/**
|
|
381
|
+
* Context makeup for the client's popup. The daemon owns this provider's
|
|
382
|
+
* entire prompt (system message, tool schemas, conversation), so the split
|
|
383
|
+
* is computed locally: char-based estimates per category, scaled so the
|
|
384
|
+
* counted total matches the server-measured context size when one exists.
|
|
385
|
+
*/
|
|
386
|
+
getContextUsage(): Promise<AgentContextUsage | null>;
|
|
387
|
+
subscribe(callback: (event: AgentStreamEvent) => void): () => void;
|
|
388
|
+
streamHistory(): AsyncGenerator<AgentStreamEvent>;
|
|
389
|
+
getRuntimeInfo(): Promise<AgentRuntimeInfo>;
|
|
390
|
+
getAvailableModes(): Promise<AgentMode[]>;
|
|
391
|
+
getCurrentMode(): Promise<string | null>;
|
|
392
|
+
setMode(modeId: string): Promise<void>;
|
|
393
|
+
getPendingPermissions(): AgentPermissionRequest[];
|
|
394
|
+
respondToPermission(requestId: string, response: AgentPermissionResponse): Promise<AgentPermissionResult | void>;
|
|
395
|
+
describePersistence(): AgentPersistenceHandle | null;
|
|
396
|
+
setModel(modelId: string | null): Promise<void>;
|
|
397
|
+
/**
|
|
398
|
+
* Rewind the daemon-owned conversation to just before the given user
|
|
399
|
+
* message. The full conversation persists (no message cap), so any
|
|
400
|
+
* previous user message is a valid rewind target — the not-found error
|
|
401
|
+
* below only fires for a truly unknown messageId.
|
|
402
|
+
*/
|
|
403
|
+
revertConversation(input: {
|
|
404
|
+
messageId: string;
|
|
405
|
+
}): Promise<void>;
|
|
406
|
+
interrupt(): Promise<void>;
|
|
407
|
+
close(): Promise<void>;
|
|
408
|
+
/**
|
|
409
|
+
* Retain what streamHistory replays: user messages, assistant messages
|
|
410
|
+
* (coalesced per messageId so streamed deltas don't accumulate one event
|
|
411
|
+
* each), reasoning (coalesced per contiguous block), and tool calls
|
|
412
|
+
* (coalesced per callId so a call's running → completed/failed/canceled
|
|
413
|
+
* transitions collapse to its latest status instead of replaying every
|
|
414
|
+
* intermediate state). Usage and permission events aren't part of the
|
|
415
|
+
* displayed transcript and are dropped. Copies are stored so coalescing
|
|
416
|
+
* never mutates an event a listener already received.
|
|
417
|
+
*/
|
|
418
|
+
private retainForHistory;
|
|
419
|
+
private emit;
|
|
420
|
+
}
|
|
421
|
+
export {};
|
|
422
|
+
//# sourceMappingURL=openai-compat-agent.d.ts.map
|