@songsid/agend 2.3.4-beta.7 → 2.3.5-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/README.zh-TW.md +2 -0
- package/THIRD_PARTY_NOTICES.md +53 -0
- package/dist/agent-endpoint.d.ts +5 -1
- package/dist/agent-endpoint.js +12 -2
- package/dist/agent-endpoint.js.map +1 -1
- package/dist/auth-api.d.ts +21 -0
- package/dist/auth-api.js +89 -2
- package/dist/auth-api.js.map +1 -1
- package/dist/authority/web-authority.d.ts +12 -2
- package/dist/authority/web-authority.js +25 -4
- package/dist/authority/web-authority.js.map +1 -1
- package/dist/backend/claude-code.d.ts +15 -12
- package/dist/backend/claude-code.js +152 -133
- package/dist/backend/claude-code.js.map +1 -1
- package/dist/backend/codex-package.d.ts +5 -2
- package/dist/backend/codex-package.js +1 -5
- package/dist/backend/codex-package.js.map +1 -1
- package/dist/backend/codex.d.ts +136 -113
- package/dist/backend/codex.js +1281 -1219
- package/dist/backend/codex.js.map +1 -1
- package/dist/backend/grok-model-cache.d.ts +7 -0
- package/dist/backend/grok-model-cache.js +65 -0
- package/dist/backend/grok-model-cache.js.map +1 -0
- package/dist/backend/grok.d.ts +2 -0
- package/dist/backend/grok.js +22 -0
- package/dist/backend/grok.js.map +1 -1
- package/dist/backend/native-pane.d.ts +9 -0
- package/dist/backend/native-pane.js +59 -0
- package/dist/backend/native-pane.js.map +1 -0
- package/dist/backend/types.d.ts +7 -0
- package/dist/backend/types.js.map +1 -1
- package/dist/channel/ipc-bridge.d.ts +2 -0
- package/dist/channel/mcp-tools.js +1 -1
- package/dist/channel/mcp-tools.js.map +1 -1
- package/dist/cli.js +3 -0
- package/dist/cli.js.map +1 -1
- package/dist/config-validator.js +71 -1
- package/dist/config-validator.js.map +1 -1
- package/dist/config.js +16 -0
- package/dist/config.js.map +1 -1
- package/dist/daemon.d.ts +67 -5
- package/dist/daemon.js +823 -266
- package/dist/daemon.js.map +1 -1
- package/dist/delivery-consumed-watch.d.ts +15 -3
- package/dist/delivery-consumed-watch.js +23 -1
- package/dist/delivery-consumed-watch.js.map +1 -1
- package/dist/delivery-outbox.d.ts +5 -0
- package/dist/delivery-outbox.js +32 -4
- package/dist/delivery-outbox.js.map +1 -1
- package/dist/delivery-reconciliation.d.ts +2 -35
- package/dist/delivery-reconciliation.js +2 -156
- package/dist/delivery-reconciliation.js.map +1 -1
- package/dist/fleet-context.d.ts +2 -2
- package/dist/fleet-level-config.d.ts +1 -1
- package/dist/fleet-level-config.js +2 -0
- package/dist/fleet-level-config.js.map +1 -1
- package/dist/fleet-manager.d.ts +238 -3
- package/dist/fleet-manager.js +1826 -104
- package/dist/fleet-manager.js.map +1 -1
- package/dist/fleet-windows-runtime.d.ts +92 -0
- package/dist/fleet-windows-runtime.js +380 -0
- package/dist/fleet-windows-runtime.js.map +1 -0
- package/dist/general-binding.d.ts +85 -0
- package/dist/general-binding.js +298 -0
- package/dist/general-binding.js.map +1 -0
- package/dist/general-host-owner.d.ts +8 -0
- package/dist/general-host-owner.js +26 -0
- package/dist/general-host-owner.js.map +1 -0
- package/dist/general-instance.d.ts +7 -0
- package/dist/general-instance.js +20 -3
- package/dist/general-instance.js.map +1 -1
- package/dist/general-role.d.ts +5 -0
- package/dist/general-role.js +26 -0
- package/dist/general-role.js.map +1 -0
- package/dist/instance-config-impact.js +4 -0
- package/dist/instance-config-impact.js.map +1 -1
- package/dist/instance-lifecycle.d.ts +21 -3
- package/dist/instance-lifecycle.js +378 -162
- package/dist/instance-lifecycle.js.map +1 -1
- package/dist/instructions.d.ts +2 -0
- package/dist/instructions.js +6 -0
- package/dist/instructions.js.map +1 -1
- package/dist/local-pane-endpoint.d.ts +46 -0
- package/dist/local-pane-endpoint.js +189 -0
- package/dist/local-pane-endpoint.js.map +1 -0
- package/dist/local-pane-launcher.d.ts +2 -0
- package/dist/local-pane-launcher.js +38 -0
- package/dist/local-pane-launcher.js.map +1 -0
- package/dist/local-pane-stage.ps1 +101 -0
- package/dist/locale.js +85 -0
- package/dist/locale.js.map +1 -1
- package/dist/model-catalog-defaults.d.ts +14 -0
- package/dist/model-catalog-defaults.js +20 -0
- package/dist/model-catalog-defaults.js.map +1 -0
- package/dist/native-agent-admission.d.ts +7 -0
- package/dist/native-agent-admission.js +26 -0
- package/dist/native-agent-admission.js.map +1 -0
- package/dist/native-daemon-client.d.ts +13 -0
- package/dist/native-daemon-client.js +28 -0
- package/dist/native-daemon-client.js.map +1 -0
- package/dist/native-instance-api.d.ts +14 -0
- package/dist/native-instance-api.js +205 -0
- package/dist/native-instance-api.js.map +1 -0
- package/dist/native-instance-input.d.ts +84 -0
- package/dist/native-instance-input.js +54 -0
- package/dist/native-instance-input.js.map +1 -0
- package/dist/native-instance-registry.d.ts +32 -0
- package/dist/native-instance-registry.js +105 -0
- package/dist/native-instance-registry.js.map +1 -0
- package/dist/native-mcp.d.ts +40 -0
- package/dist/native-mcp.js +278 -0
- package/dist/native-mcp.js.map +1 -0
- package/dist/native-model-catalog.d.ts +5 -0
- package/dist/native-model-catalog.js +76 -0
- package/dist/native-model-catalog.js.map +1 -0
- package/dist/native-pane-crash-budget.d.ts +20 -0
- package/dist/native-pane-crash-budget.js +60 -0
- package/dist/native-pane-crash-budget.js.map +1 -0
- package/dist/native-pane-create.d.ts +26 -0
- package/dist/native-pane-create.js +53 -0
- package/dist/native-pane-create.js.map +1 -0
- package/dist/native-pane-lifecycle.d.ts +65 -0
- package/dist/native-pane-lifecycle.js +230 -0
- package/dist/native-pane-lifecycle.js.map +1 -0
- package/dist/native-pane-manager.d.ts +59 -0
- package/dist/native-pane-manager.js +584 -0
- package/dist/native-pane-manager.js.map +1 -0
- package/dist/native-pane-output-log.d.ts +15 -0
- package/dist/native-pane-output-log.js +108 -0
- package/dist/native-pane-output-log.js.map +1 -0
- package/dist/native-pane-reconciliation.d.ts +4 -0
- package/dist/native-pane-reconciliation.js +40 -0
- package/dist/native-pane-reconciliation.js.map +1 -0
- package/dist/native-pane-recovery.d.ts +12 -0
- package/dist/native-pane-recovery.js +10 -0
- package/dist/native-pane-recovery.js.map +1 -0
- package/dist/native-pane-tools.d.ts +2 -0
- package/dist/native-pane-tools.js +14 -0
- package/dist/native-pane-tools.js.map +1 -0
- package/dist/needs-you-hub.d.ts +2 -0
- package/dist/needs-you-hub.js +2 -1
- package/dist/needs-you-hub.js.map +1 -1
- package/dist/needs-you.d.ts +19 -1
- package/dist/needs-you.js +12 -2
- package/dist/needs-you.js.map +1 -1
- package/dist/outbound-handlers.d.ts +16 -2
- package/dist/outbound-handlers.js +67 -3
- package/dist/outbound-handlers.js.map +1 -1
- package/dist/outbound-schemas.d.ts +38 -0
- package/dist/outbound-schemas.js +12 -0
- package/dist/outbound-schemas.js.map +1 -1
- package/dist/pane-port.d.ts +118 -0
- package/dist/pane-port.js +2 -0
- package/dist/pane-port.js.map +1 -0
- package/dist/public-web-gateway.js +9 -0
- package/dist/public-web-gateway.js.map +1 -1
- package/dist/public-web-link.d.ts +5 -0
- package/dist/public-web-link.js +4 -0
- package/dist/public-web-link.js.map +1 -1
- package/dist/quickstart-api.js +9 -5
- package/dist/quickstart-api.js.map +1 -1
- package/dist/quickstart.d.ts +1 -0
- package/dist/quickstart.js +4 -1
- package/dist/quickstart.js.map +1 -1
- package/dist/runtime-api.d.ts +8 -0
- package/dist/runtime-api.js +96 -0
- package/dist/runtime-api.js.map +1 -0
- package/dist/runtime-assets/@xterm/addon-serialize/LICENSE +21 -0
- package/dist/runtime-assets/@xterm/addon-serialize/lib/addon-serialize.js +2 -0
- package/dist/runtime-assets/@xterm/addon-serialize/lib/addon-serialize.mjs +19 -0
- package/dist/runtime-assets/@xterm/addon-serialize/package.json +29 -0
- package/dist/runtime-assets/@xterm/headless/LICENSE +21 -0
- package/dist/runtime-assets/@xterm/headless/lib-headless/xterm-headless.js +2 -0
- package/dist/runtime-assets/@xterm/headless/lib-headless/xterm-headless.mjs +46 -0
- package/dist/runtime-assets/@xterm/headless/package.json +29 -0
- package/dist/runtime-assets/node-pty/CONPTY-LICENSE +21 -0
- package/dist/runtime-assets/node-pty/CONPTY-NOTICE.md +503 -0
- package/dist/runtime-assets/node-pty/LICENSE +69 -0
- package/dist/runtime-assets/node-pty/lib/conpty_console_list_agent.js +16 -0
- package/dist/runtime-assets/node-pty/lib/eventEmitter2.js +47 -0
- package/dist/runtime-assets/node-pty/lib/index.js +52 -0
- package/dist/runtime-assets/node-pty/lib/interfaces.js +7 -0
- package/dist/runtime-assets/node-pty/lib/shared/conout.js +11 -0
- package/dist/runtime-assets/node-pty/lib/terminal.js +190 -0
- package/dist/runtime-assets/node-pty/lib/types.js +7 -0
- package/dist/runtime-assets/node-pty/lib/unixTerminal.js +346 -0
- package/dist/runtime-assets/node-pty/lib/utils.js +39 -0
- package/dist/runtime-assets/node-pty/lib/windowsConoutConnection.js +125 -0
- package/dist/runtime-assets/node-pty/lib/windowsPtyAgent.js +320 -0
- package/dist/runtime-assets/node-pty/lib/windowsTerminal.js +199 -0
- package/dist/runtime-assets/node-pty/lib/worker/conoutSocketWorker.js +22 -0
- package/dist/runtime-assets/node-pty/package.json +64 -0
- package/dist/runtime-assets/node-pty/prebuilds/win32-arm64/conpty/OpenConsole.exe +0 -0
- package/dist/runtime-assets/node-pty/prebuilds/win32-arm64/conpty/conpty.dll +0 -0
- package/dist/runtime-assets/node-pty/prebuilds/win32-arm64/conpty.node +0 -0
- package/dist/runtime-assets/node-pty/prebuilds/win32-arm64/conpty_console_list.node +0 -0
- package/dist/runtime-assets/node-pty/prebuilds/win32-x64/conpty/OpenConsole.exe +0 -0
- package/dist/runtime-assets/node-pty/prebuilds/win32-x64/conpty/conpty.dll +0 -0
- package/dist/runtime-assets/node-pty/prebuilds/win32-x64/conpty.node +0 -0
- package/dist/runtime-assets/node-pty/prebuilds/win32-x64/conpty_console_list.node +0 -0
- package/dist/runtime-bundle.d.ts +17 -0
- package/dist/runtime-bundle.js +150 -0
- package/dist/runtime-bundle.js.map +1 -0
- package/dist/runtime-cli.d.ts +2 -0
- package/dist/runtime-cli.js +117 -0
- package/dist/runtime-cli.js.map +1 -0
- package/dist/runtime-client-store.d.ts +49 -0
- package/dist/runtime-client-store.js +292 -0
- package/dist/runtime-client-store.js.map +1 -0
- package/dist/runtime-client.d.ts +100 -0
- package/dist/runtime-client.js +700 -0
- package/dist/runtime-client.js.map +1 -0
- package/dist/runtime-coordinator.d.ts +82 -0
- package/dist/runtime-coordinator.js +864 -0
- package/dist/runtime-coordinator.js.map +1 -0
- package/dist/runtime-general-protocol.d.ts +22 -0
- package/dist/runtime-general-protocol.js +57 -0
- package/dist/runtime-general-protocol.js.map +1 -0
- package/dist/runtime-general-workspace.d.ts +17 -0
- package/dist/runtime-general-workspace.js +213 -0
- package/dist/runtime-general-workspace.js.map +1 -0
- package/dist/runtime-pane-assets.d.ts +17 -0
- package/dist/runtime-pane-assets.js +23 -0
- package/dist/runtime-pane-assets.js.map +1 -0
- package/dist/runtime-pane-boot.d.ts +2 -0
- package/dist/runtime-pane-boot.js +24 -0
- package/dist/runtime-pane-boot.js.map +1 -0
- package/dist/runtime-pane-codex-index.d.ts +1 -0
- package/dist/runtime-pane-codex-index.js +47 -0
- package/dist/runtime-pane-codex-index.js.map +1 -0
- package/dist/runtime-pane-config.d.ts +16 -0
- package/dist/runtime-pane-config.js +54 -0
- package/dist/runtime-pane-config.js.map +1 -0
- package/dist/runtime-pane-host.d.ts +44 -0
- package/dist/runtime-pane-host.js +424 -0
- package/dist/runtime-pane-host.js.map +1 -0
- package/dist/runtime-pane-job-owner.d.ts +1 -0
- package/dist/runtime-pane-job-owner.js +29 -0
- package/dist/runtime-pane-job-owner.js.map +1 -0
- package/dist/runtime-pane-job.ps1 +116 -0
- package/dist/runtime-pane-link.d.ts +40 -0
- package/dist/runtime-pane-link.js +246 -0
- package/dist/runtime-pane-link.js.map +1 -0
- package/dist/runtime-pane-mcp-protocol.d.ts +32 -0
- package/dist/runtime-pane-mcp-protocol.js +39 -0
- package/dist/runtime-pane-mcp-protocol.js.map +1 -0
- package/dist/runtime-pane-mcp-relay.d.ts +17 -0
- package/dist/runtime-pane-mcp-relay.js +70 -0
- package/dist/runtime-pane-mcp-relay.js.map +1 -0
- package/dist/runtime-pane-mcp.d.ts +51 -0
- package/dist/runtime-pane-mcp.js +150 -0
- package/dist/runtime-pane-mcp.js.map +1 -0
- package/dist/runtime-pane-native.d.ts +45 -0
- package/dist/runtime-pane-native.js +65 -0
- package/dist/runtime-pane-native.js.map +1 -0
- package/dist/runtime-pane-output.d.ts +19 -0
- package/dist/runtime-pane-output.js +53 -0
- package/dist/runtime-pane-output.js.map +1 -0
- package/dist/runtime-pane-port.d.ts +139 -0
- package/dist/runtime-pane-port.js +558 -0
- package/dist/runtime-pane-port.js.map +1 -0
- package/dist/runtime-pane-private.d.ts +14 -0
- package/dist/runtime-pane-private.js +51 -0
- package/dist/runtime-pane-private.js.map +1 -0
- package/dist/runtime-pane-private.ps1 +14 -0
- package/dist/runtime-pane-process.d.ts +4 -0
- package/dist/runtime-pane-process.js +108 -0
- package/dist/runtime-pane-process.js.map +1 -0
- package/dist/runtime-pane-protocol.d.ts +172 -0
- package/dist/runtime-pane-protocol.js +195 -0
- package/dist/runtime-pane-protocol.js.map +1 -0
- package/dist/runtime-pane-screen.d.ts +19 -0
- package/dist/runtime-pane-screen.js +76 -0
- package/dist/runtime-pane-screen.js.map +1 -0
- package/dist/runtime-pane-service.d.ts +11 -0
- package/dist/runtime-pane-service.js +221 -0
- package/dist/runtime-pane-service.js.map +1 -0
- package/dist/runtime-pane-stdio-protocol.d.ts +54 -0
- package/dist/runtime-pane-stdio-protocol.js +94 -0
- package/dist/runtime-pane-stdio-protocol.js.map +1 -0
- package/dist/runtime-pane-stdio.d.ts +3 -0
- package/dist/runtime-pane-stdio.js +123 -0
- package/dist/runtime-pane-stdio.js.map +1 -0
- package/dist/runtime-pane-store.d.ts +33 -0
- package/dist/runtime-pane-store.js +164 -0
- package/dist/runtime-pane-store.js.map +1 -0
- package/dist/runtime-pane-transcript-protocol.d.ts +43 -0
- package/dist/runtime-pane-transcript-protocol.js +58 -0
- package/dist/runtime-pane-transcript-protocol.js.map +1 -0
- package/dist/runtime-pane-transcript.d.ts +45 -0
- package/dist/runtime-pane-transcript.js +605 -0
- package/dist/runtime-pane-transcript.js.map +1 -0
- package/dist/runtime-pane-worker.d.ts +1 -0
- package/dist/runtime-pane-worker.js +154 -0
- package/dist/runtime-pane-worker.js.map +1 -0
- package/dist/runtime-protocol.d.ts +149 -0
- package/dist/runtime-protocol.js +19 -0
- package/dist/runtime-protocol.js.map +1 -0
- package/dist/runtime-switches.d.ts +79 -0
- package/dist/runtime-switches.js +90 -0
- package/dist/runtime-switches.js.map +1 -0
- package/dist/runtime-transcript-delta-reader.d.ts +23 -0
- package/dist/runtime-transcript-delta-reader.js +74 -0
- package/dist/runtime-transcript-delta-reader.js.map +1 -0
- package/dist/runtime-transcript-source.d.ts +36 -0
- package/dist/runtime-transcript-source.js +189 -0
- package/dist/runtime-transcript-source.js.map +1 -0
- package/dist/runtime-windows-bridge.d.ts +41 -0
- package/dist/runtime-windows-bridge.js +157 -0
- package/dist/runtime-windows-bridge.js.map +1 -0
- package/dist/settings-api.d.ts +5 -0
- package/dist/settings-api.js +95 -1
- package/dist/settings-api.js.map +1 -1
- package/dist/settings-baseline.d.ts +1 -0
- package/dist/settings-baseline.js +1 -1
- package/dist/settings-baseline.js.map +1 -1
- package/dist/settings-change.js +28 -0
- package/dist/settings-change.js.map +1 -1
- package/dist/settings-confirmation.d.ts +16 -1
- package/dist/settings-confirmation.js +47 -9
- package/dist/settings-confirmation.js.map +1 -1
- package/dist/settings-effect.d.ts +4 -0
- package/dist/settings-effect.js +58 -1
- package/dist/settings-effect.js.map +1 -1
- package/dist/settings-http-confirmation.d.ts +1 -0
- package/dist/settings-http-confirmation.js +15 -2
- package/dist/settings-http-confirmation.js.map +1 -1
- package/dist/settings-request-capability.d.ts +2 -0
- package/dist/settings-request-capability.js +4 -0
- package/dist/settings-request-capability.js.map +1 -1
- package/dist/settings-route-lifetime.d.ts +14 -0
- package/dist/settings-route-lifetime.js +48 -0
- package/dist/settings-route-lifetime.js.map +1 -0
- package/dist/settings-transaction.d.ts +4 -0
- package/dist/settings-transaction.js +9 -0
- package/dist/settings-transaction.js.map +1 -1
- package/dist/setup-form.js +6 -3
- package/dist/setup-form.js.map +1 -1
- package/dist/setup-i18n.js +3 -0
- package/dist/setup-i18n.js.map +1 -1
- package/dist/tmux-control.d.ts +2 -1
- package/dist/tmux-control.js.map +1 -1
- package/dist/tmux-manager.d.ts +2 -1
- package/dist/tmux-manager.js.map +1 -1
- package/dist/tmux-pane-host.d.ts +26 -0
- package/dist/tmux-pane-host.js +25 -0
- package/dist/tmux-pane-host.js.map +1 -0
- package/dist/tool-permissions.js +2 -1
- package/dist/tool-permissions.js.map +1 -1
- package/dist/topic-commands.js +3 -0
- package/dist/topic-commands.js.map +1 -1
- package/dist/transcript-delta-reader.d.ts +1 -1
- package/dist/transcript-delta-reader.js +1 -1
- package/dist/transcript-delta-reader.js.map +1 -1
- package/dist/transcript-monitor.d.ts +3 -0
- package/dist/transcript-monitor.js +22 -46
- package/dist/transcript-monitor.js.map +1 -1
- package/dist/transcript-needles.d.ts +35 -0
- package/dist/transcript-needles.js +158 -0
- package/dist/transcript-needles.js.map +1 -0
- package/dist/transcript-records.d.ts +21 -0
- package/dist/transcript-records.js +140 -0
- package/dist/transcript-records.js.map +1 -0
- package/dist/transcript-sources.d.ts +5 -0
- package/dist/transcript-sources.js +8 -79
- package/dist/transcript-sources.js.map +1 -1
- package/dist/types.d.ts +23 -0
- package/dist/ui/agent-proposals.js +90 -0
- package/dist/ui/agent-runtime.js +106 -0
- package/dist/ui/chat-store.js +13 -2
- package/dist/ui/chat-strings.js +48 -0
- package/dist/ui/cli-picker.js +42 -0
- package/dist/ui/general-location.js +71 -0
- package/dist/ui/native-instance-settings.js +47 -0
- package/dist/ui/native-pane-recovery.js +45 -0
- package/dist/ui/panel-chat.js +63 -32
- package/dist/ui/panel-details.js +2 -1
- package/dist/ui/panel-fleet.js +99 -18
- package/dist/ui/panel-needs.js +154 -3
- package/dist/ui/panel-runtimes.js +231 -0
- package/dist/ui/panel-settings.js +19 -9
- package/dist/ui/panel-windows-agent.js +86 -0
- package/dist/ui/panel-windows-cli.js +143 -0
- package/dist/ui/provider-marks.js +83 -0
- package/dist/ui/runtime-catalog.js +55 -0
- package/dist/ui/settings-catalog.js +37 -10
- package/dist/ui/settings-confirm.js +3 -1
- package/dist/ui/settings-dialogs.js +22 -7
- package/dist/ui/settings-model.js +2 -1
- package/dist/ui/settings-outside.js +176 -0
- package/dist/ui/settings-registry.js +6 -0
- package/dist/ui/settings-strings.js +16 -0
- package/dist/ui/shared/app-i18n.js +2 -2
- package/dist/ui/shared/app-route.js +6 -2
- package/dist/ui/shared/app-shell.js +3 -2
- package/dist/ui/shared/app-store.js +1 -0
- package/dist/ui/shared/app-stream.js +3 -1
- package/dist/ui/shared/app.css +301 -0
- package/dist/ui/shared/app.js +4 -0
- package/dist/ui/shared/header-tools.js +6 -4
- package/dist/ui/shared/instance-nav.js +33 -7
- package/dist/ui/shared/instance-switch.js +4 -3
- package/dist/ui/shared/qrcode.module.js +2237 -0
- package/dist/ui/shared/signin.js +39 -5
- package/dist/ui/shared/ui-menu.js +28 -8
- package/dist/ui/shared/vendor/qrcode-generator.LICENSE +27 -0
- package/dist/ui/shared/vendor/vendor.json +19 -2
- package/dist/ui/shared/view-strings.js +8 -0
- package/dist/ui/windows-agents-nav.js +2 -0
- package/dist/ui/windows-cli-catalog.js +79 -0
- package/dist/web-api.d.ts +37 -0
- package/dist/web-api.js +248 -6
- package/dist/web-api.js.map +1 -1
- package/dist/web-chat-history.d.ts +19 -2
- package/dist/web-chat-history.js +72 -3
- package/dist/web-chat-history.js.map +1 -1
- package/dist/web-only-fleet.d.ts +20 -0
- package/dist/web-only-fleet.js +21 -0
- package/dist/web-only-fleet.js.map +1 -1
- package/dist/web-remote-access.d.ts +152 -0
- package/dist/web-remote-access.js +368 -0
- package/dist/web-remote-access.js.map +1 -0
- package/dist/web-session.d.ts +7 -0
- package/dist/web-session.js +2 -0
- package/dist/web-session.js.map +1 -1
- package/dist/web-shell-routes.d.ts +4 -1
- package/dist/web-shell-routes.js +7 -2
- package/dist/web-shell-routes.js.map +1 -1
- package/dist/windows-agents.d.ts +124 -0
- package/dist/windows-agents.js +487 -0
- package/dist/windows-agents.js.map +1 -0
- package/dist/windows-cli-api.d.ts +23 -0
- package/dist/windows-cli-api.js +158 -0
- package/dist/windows-cli-api.js.map +1 -0
- package/dist/windows-cli-providers.d.ts +115 -0
- package/dist/windows-cli-providers.js +429 -0
- package/dist/windows-cli-providers.js.map +1 -0
- package/dist/windows-cli-worker.d.ts +58 -0
- package/dist/windows-cli-worker.js +479 -0
- package/dist/windows-cli-worker.js.map +1 -0
- package/dist/windows-cli.d.ts +115 -0
- package/dist/windows-cli.js +402 -0
- package/dist/windows-cli.js.map +1 -0
- package/dist/windows-native-mcp.d.ts +19 -0
- package/dist/windows-native-mcp.js +143 -0
- package/dist/windows-native-mcp.js.map +1 -0
- package/dist/windows-pane-mcp.d.ts +26 -0
- package/dist/windows-pane-mcp.js +187 -0
- package/dist/windows-pane-mcp.js.map +1 -0
- package/package.json +9 -3
- package/templates/runtime-assets/conpty-LICENSE +21 -0
- package/templates/runtime-assets/conpty-NOTICE.md +503 -0
- package/templates/runtime-assets/local-pane-stage.ps1 +101 -0
- package/templates/runtime-assets/runtime-pane-job.ps1 +116 -0
- package/templates/runtime-assets/runtime-pane-private.ps1 +14 -0
- package/templates/runtime-assets/xterm-LICENSE +21 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-authority.js","sourceRoot":"","sources":["../../src/authority/web-authority.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"web-authority.js","sourceRoot":"","sources":["../../src/authority/web-authority.ts"],"names":[],"mappings":"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"}
|
|
@@ -211,8 +211,8 @@ export declare function claudeFileSendCardActive(pane: string): boolean;
|
|
|
211
211
|
export declare const CLAUDE_DANGEROUS_COMMAND_BLOCKED_NOTICE = "[system:dangerous-command-blocked]\nThe previous command was classified as dangerous and was automatically denied. Do not retry it. Use a safe form instead (for example `${VAR:?}` validation, a literal path, or skip the destructive operation).";
|
|
212
212
|
/** Startup budget for a resuming claude-code launch (fresh starts keep the default). */
|
|
213
213
|
export declare const CLAUDE_RESUME_STARTUP_BUDGET_MS = 60000;
|
|
214
|
-
|
|
215
|
-
|
|
214
|
+
/** Pane-only detectors: construction performs no provider, config or session discovery. */
|
|
215
|
+
export declare class ClaudePaneDetectors {
|
|
216
216
|
readonly binaryName = "claude";
|
|
217
217
|
readonly replyCompletionGuard = true;
|
|
218
218
|
/**
|
|
@@ -224,14 +224,6 @@ export declare class ClaudeCodeBackend implements CliBackend {
|
|
|
224
224
|
getStartupBudgetMs(ctx: {
|
|
225
225
|
resume: boolean;
|
|
226
226
|
}): number | undefined;
|
|
227
|
-
private binaryPath;
|
|
228
|
-
constructor(instanceDir: string);
|
|
229
|
-
/** #1811: what the last launch left out and why — the Log tab and daemon.log, never a channel. */
|
|
230
|
-
private quietLaunchNotes;
|
|
231
|
-
consumeQuietLaunchNotes(): string[];
|
|
232
|
-
buildCommand(config: CliBackendConfig): string;
|
|
233
|
-
private hasProjectSession;
|
|
234
|
-
writeConfig(config: CliBackendConfig): void;
|
|
235
227
|
/**
|
|
236
228
|
* `❯` is the input box, which Claude Code renders persistently — it is on screen
|
|
237
229
|
* while the agent works, not only when it is waiting. So this marks "the TUI has
|
|
@@ -327,8 +319,6 @@ export declare class ClaudeCodeBackend implements CliBackend {
|
|
|
327
319
|
* the transcript shows a turn open.
|
|
328
320
|
*/
|
|
329
321
|
isPeriodicRedrawIdlePane(pane: string): boolean;
|
|
330
|
-
getContextUsage(): number | null;
|
|
331
|
-
getSessionId(): string | null;
|
|
332
322
|
getErrorPatterns(): ErrorPattern[];
|
|
333
323
|
getStartupDialogs(): StartupDialog[];
|
|
334
324
|
getRuntimeDialogs(): RuntimeDialog[];
|
|
@@ -336,6 +326,19 @@ export declare class ClaudeCodeBackend implements CliBackend {
|
|
|
336
326
|
getCompactCommand(): string;
|
|
337
327
|
getClearCommand(): string;
|
|
338
328
|
getCancelKey(): string;
|
|
329
|
+
}
|
|
330
|
+
export declare class ClaudeCodeBackend extends ClaudePaneDetectors implements CliBackend {
|
|
331
|
+
private instanceDir;
|
|
332
|
+
private binaryPath;
|
|
333
|
+
constructor(instanceDir: string);
|
|
334
|
+
/** #1811: what the last launch left out and why — the Log tab and daemon.log, never a channel. */
|
|
335
|
+
private quietLaunchNotes;
|
|
336
|
+
consumeQuietLaunchNotes(): string[];
|
|
337
|
+
buildCommand(config: CliBackendConfig): string;
|
|
338
|
+
private hasProjectSession;
|
|
339
|
+
writeConfig(config: CliBackendConfig): void;
|
|
340
|
+
getContextUsage(): number | null;
|
|
341
|
+
getSessionId(): string | null;
|
|
339
342
|
/** #1217: Claude's own words for a session that is not there to resume. */
|
|
340
343
|
resumeMissingPattern(): RegExp;
|
|
341
344
|
quitBlockedByDialog(pane: string): boolean;
|
|
@@ -7,6 +7,9 @@ import { homedir } from "node:os";
|
|
|
7
7
|
import { createHash } from "node:crypto";
|
|
8
8
|
import { credentialHomeSpec, credentialProfileHome, prepareCredentialProfileHome, resolveCredentialProfile } from "./credential-profile.js";
|
|
9
9
|
import { getAgendHome } from "../paths.js";
|
|
10
|
+
import { t } from "../locale.js";
|
|
11
|
+
import { selectedGeneralHostSession } from "../general-binding.js";
|
|
12
|
+
import { ResumeBlockedError } from "./types.js";
|
|
10
13
|
import { CLI_PROBE_LONGEST_LEAF_MS, promptCacheTtl, resolveBinary, shellQuote, validateModel, warnIfModelMismatch } from "./types.js";
|
|
11
14
|
/** Mirror Claude Code's ~/.claude/projects key for a working directory. Exported for the detection-signal seam. */
|
|
12
15
|
export function claudeProjectKey(cwd) {
|
|
@@ -1079,8 +1082,8 @@ const CLAUDE_BYPASS_ENTRIES = [
|
|
|
1079
1082
|
];
|
|
1080
1083
|
/** Startup budget for a resuming claude-code launch (fresh starts keep the default). */
|
|
1081
1084
|
export const CLAUDE_RESUME_STARTUP_BUDGET_MS = 60_000;
|
|
1082
|
-
|
|
1083
|
-
|
|
1085
|
+
/** Pane-only detectors: construction performs no provider, config or session discovery. */
|
|
1086
|
+
export class ClaudePaneDetectors {
|
|
1084
1087
|
binaryName = "claude";
|
|
1085
1088
|
replyCompletionGuard = true;
|
|
1086
1089
|
/**
|
|
@@ -1092,116 +1095,6 @@ export class ClaudeCodeBackend {
|
|
|
1092
1095
|
getStartupBudgetMs(ctx) {
|
|
1093
1096
|
return ctx.resume ? CLAUDE_RESUME_STARTUP_BUDGET_MS : undefined;
|
|
1094
1097
|
}
|
|
1095
|
-
binaryPath;
|
|
1096
|
-
constructor(instanceDir) {
|
|
1097
|
-
this.instanceDir = instanceDir;
|
|
1098
|
-
this.binaryPath = resolveBinary("claude");
|
|
1099
|
-
}
|
|
1100
|
-
/** #1811: what the last launch left out and why — the Log tab and daemon.log, never a channel. */
|
|
1101
|
-
quietLaunchNotes = [];
|
|
1102
|
-
consumeQuietLaunchNotes() { const notes = this.quietLaunchNotes; this.quietLaunchNotes = []; return notes; }
|
|
1103
|
-
buildCommand(config) {
|
|
1104
|
-
const settingsPath = join(this.instanceDir, "claude-settings.json");
|
|
1105
|
-
const mcpConfigPath = join(this.instanceDir, "mcp-config.json");
|
|
1106
|
-
const envPrefix = ["CMUX_CLAUDE_HOOKS_DISABLED=1", "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1"];
|
|
1107
|
-
// #1699: a named credential profile is its own config dir — its login, account, trust and conversations. No profile:
|
|
1108
|
-
// nothing added, nothing created (the command is exactly what it was).
|
|
1109
|
-
const profileDir = claudeProfileConfigDir(config.backendOptions);
|
|
1110
|
-
if (profileDir) {
|
|
1111
|
-
prepareCredentialProfileHome(credentialHomeSpec("claude-code"), profileDir);
|
|
1112
|
-
// #1754: the project's auto-memory is the shared one, as on the default login.
|
|
1113
|
-
linkSharedClaudeMemory(profileDir, config.workingDirectory, credentialHomeSpec("claude-code").sharedRoot());
|
|
1114
|
-
envPrefix.push(`CLAUDE_CONFIG_DIR=${shellQuote(profileDir)}`);
|
|
1115
|
-
}
|
|
1116
|
-
if (process.env.ANTHROPIC_BASE_URL)
|
|
1117
|
-
envPrefix.push(`ANTHROPIC_BASE_URL=${shellQuote(process.env.ANTHROPIC_BASE_URL)}`);
|
|
1118
|
-
// #2010: an opt-in prompt-cache TTL for the main thread and its subagents. Unset: nothing added, the CLI chooses.
|
|
1119
|
-
const ttl = promptCacheTtl(config.backendOptions);
|
|
1120
|
-
if (ttl)
|
|
1121
|
-
envPrefix.push(`CLAUDE_CODE_PROMPT_CACHE_TTL=${ttl}`, `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL=${ttl}`);
|
|
1122
|
-
// The fleet's API key only where this instance's own config dir has no OAuth login: a key in the environment wins
|
|
1123
|
-
// over the login, so reading another dir here bills the wrong account (#1699).
|
|
1124
|
-
if (process.env.ANTHROPIC_API_KEY && !this.hasOAuthSession(profileDir)) {
|
|
1125
|
-
envPrefix.push(`ANTHROPIC_API_KEY=${shellQuote(process.env.ANTHROPIC_API_KEY)}`);
|
|
1126
|
-
}
|
|
1127
|
-
let cmd = `${envPrefix.join(" ")} ${this.binaryPath} --settings ${settingsPath} --mcp-config ${mcpConfigPath}`;
|
|
1128
|
-
if (config.skipPermissions !== false)
|
|
1129
|
-
cmd += " --dangerously-skip-permissions";
|
|
1130
|
-
const sessionIdFile = join(this.instanceDir, "session-id");
|
|
1131
|
-
// `session-id` belongs to the instance, not the backend. A ClassicBot can
|
|
1132
|
-
// switch from Kiro (or another CLI) to Claude while retaining that marker.
|
|
1133
|
-
// Claude's bare `--continue` then looks for a conversation in this cwd and
|
|
1134
|
-
// exits when the workspace has never had a Claude session. Treat Claude's
|
|
1135
|
-
// own project transcript as the source of truth instead of the generic
|
|
1136
|
-
// marker alone. This also makes an empty/missing Classic workspace start
|
|
1137
|
-
// fresh rather than entering a resume crash loop.
|
|
1138
|
-
if (!config.skipResume && existsSync(sessionIdFile) && this.hasProjectSession(config.workingDirectory, profileDir)) {
|
|
1139
|
-
cmd += " --continue";
|
|
1140
|
-
}
|
|
1141
|
-
if (config.model) {
|
|
1142
|
-
const model = validateModel(config.model);
|
|
1143
|
-
warnIfModelMismatch("claude-code", model);
|
|
1144
|
-
cmd += ` --model ${shellQuote(model)}`;
|
|
1145
|
-
}
|
|
1146
|
-
// #1811: the configured effort, where this claude takes it (launch-effort.ts); else a quiet note.
|
|
1147
|
-
const effort = flagEffort("claude-code", config.effort, this.binaryPath);
|
|
1148
|
-
if (effort.arg)
|
|
1149
|
-
cmd += effort.arg;
|
|
1150
|
-
this.quietLaunchNotes = effort.note ? [effort.note] : [];
|
|
1151
|
-
// Additive system prompt: append fleet instructions without overriding Claude's built-in prompt
|
|
1152
|
-
const instrFile = join(this.instanceDir, "fleet-instructions.md");
|
|
1153
|
-
if (existsSync(instrFile)) {
|
|
1154
|
-
cmd += ` --append-system-prompt-file ${instrFile}`;
|
|
1155
|
-
}
|
|
1156
|
-
return cmd;
|
|
1157
|
-
}
|
|
1158
|
-
hasProjectSession(workingDirectory, profileDir) {
|
|
1159
|
-
const cwd = workingDirectory.trim();
|
|
1160
|
-
if (!cwd)
|
|
1161
|
-
return false;
|
|
1162
|
-
const configDir = claudeConfigDirFor(profileDir);
|
|
1163
|
-
const encodedCwd = claudeProjectKey(cwd);
|
|
1164
|
-
try {
|
|
1165
|
-
return readdirSync(join(configDir, "projects", encodedCwd), { withFileTypes: true })
|
|
1166
|
-
.some(entry => entry.isFile() && entry.name.endsWith(".jsonl"));
|
|
1167
|
-
}
|
|
1168
|
-
catch {
|
|
1169
|
-
return false;
|
|
1170
|
-
}
|
|
1171
|
-
}
|
|
1172
|
-
writeConfig(config) {
|
|
1173
|
-
// 1. Write mcp-config.json to instance dir (loaded via --mcp-config)
|
|
1174
|
-
const mcpConfigPath = join(this.instanceDir, "mcp-config.json");
|
|
1175
|
-
const mcpConfig = { mcpServers: config.mcpServers };
|
|
1176
|
-
writeFileSync(mcpConfigPath, JSON.stringify(mcpConfig, null, 2));
|
|
1177
|
-
// 2. Write statusline script
|
|
1178
|
-
const statusLineCommand = this.writeStatusLineScript();
|
|
1179
|
-
// 3. Write claude-settings.json (permissions handled by --dangerously-skip-permissions)
|
|
1180
|
-
const settings = {
|
|
1181
|
-
statusLine: {
|
|
1182
|
-
type: "command",
|
|
1183
|
-
command: statusLineCommand,
|
|
1184
|
-
},
|
|
1185
|
-
};
|
|
1186
|
-
// The Bypass Permissions warning appears on a first run (and whenever the
|
|
1187
|
-
// user's own settings have not recorded the acceptance) for every launch
|
|
1188
|
-
// with --dangerously-skip-permissions. AgEnD passes that flag deliberately,
|
|
1189
|
-
// so record the acceptance in the flag-level settings this file is loaded as
|
|
1190
|
-
// (--settings): claude 2.1.286 then never paints the dialog (verified live).
|
|
1191
|
-
// Only when the flag is actually passed — see buildCommand.
|
|
1192
|
-
if (config.skipPermissions !== false)
|
|
1193
|
-
settings.skipDangerousModePermissionPrompt = true;
|
|
1194
|
-
writeFileSync(join(this.instanceDir, "claude-settings.json"), JSON.stringify(settings));
|
|
1195
|
-
// 4. Pre-approve API key to skip interactive prompt on startup
|
|
1196
|
-
this.preApproveApiKey(config);
|
|
1197
|
-
// 5. Write fleet instructions file (loaded via --append-system-prompt-file)
|
|
1198
|
-
if (config.instructions) {
|
|
1199
|
-
try {
|
|
1200
|
-
writeFileSync(join(this.instanceDir, "fleet-instructions.md"), config.instructions);
|
|
1201
|
-
}
|
|
1202
|
-
catch { /* best effort */ }
|
|
1203
|
-
}
|
|
1204
|
-
}
|
|
1205
1098
|
/**
|
|
1206
1099
|
* `❯` is the input box, which Claude Code renders persistently — it is on screen
|
|
1207
1100
|
* while the agent works, not only when it is waiting. So this marks "the TUI has
|
|
@@ -1312,27 +1205,6 @@ export class ClaudeCodeBackend {
|
|
|
1312
1205
|
const box = readClaudeInputBox(pane);
|
|
1313
1206
|
return box !== null && box.queued !== true && !this.getBusyPattern().test(pane);
|
|
1314
1207
|
}
|
|
1315
|
-
getContextUsage() {
|
|
1316
|
-
try {
|
|
1317
|
-
const sf = join(this.instanceDir, "statusline.json");
|
|
1318
|
-
const data = JSON.parse(readFileSync(sf, "utf-8"));
|
|
1319
|
-
return data.context_window?.used_percentage ?? null;
|
|
1320
|
-
}
|
|
1321
|
-
catch (err) {
|
|
1322
|
-
// File may not exist yet during startup — return null to signal unavailable
|
|
1323
|
-
return null;
|
|
1324
|
-
}
|
|
1325
|
-
}
|
|
1326
|
-
getSessionId() {
|
|
1327
|
-
try {
|
|
1328
|
-
const sf = join(this.instanceDir, "statusline.json");
|
|
1329
|
-
const data = JSON.parse(readFileSync(sf, "utf-8"));
|
|
1330
|
-
return data.session_id ?? null;
|
|
1331
|
-
}
|
|
1332
|
-
catch {
|
|
1333
|
-
return null;
|
|
1334
|
-
}
|
|
1335
|
-
}
|
|
1336
1208
|
getErrorPatterns() {
|
|
1337
1209
|
return [
|
|
1338
1210
|
{ pattern: /API Error: Rate limit/i, type: "rate_limit", action: "failover", message: "API rate limit reached" },
|
|
@@ -1627,6 +1499,153 @@ export class ClaudeCodeBackend {
|
|
|
1627
1499
|
getCompactCommand() { return "/compact"; }
|
|
1628
1500
|
getClearCommand() { return "/clear"; }
|
|
1629
1501
|
getCancelKey() { return "Escape"; }
|
|
1502
|
+
}
|
|
1503
|
+
export class ClaudeCodeBackend extends ClaudePaneDetectors {
|
|
1504
|
+
instanceDir;
|
|
1505
|
+
binaryPath;
|
|
1506
|
+
constructor(instanceDir) {
|
|
1507
|
+
super();
|
|
1508
|
+
this.instanceDir = instanceDir;
|
|
1509
|
+
this.binaryPath = resolveBinary("claude");
|
|
1510
|
+
}
|
|
1511
|
+
/** #1811: what the last launch left out and why — the Log tab and daemon.log, never a channel. */
|
|
1512
|
+
quietLaunchNotes = [];
|
|
1513
|
+
consumeQuietLaunchNotes() { const notes = this.quietLaunchNotes; this.quietLaunchNotes = []; return notes; }
|
|
1514
|
+
buildCommand(config) {
|
|
1515
|
+
const settingsPath = join(this.instanceDir, "claude-settings.json");
|
|
1516
|
+
const mcpConfigPath = join(this.instanceDir, "mcp-config.json");
|
|
1517
|
+
const envPrefix = ["CMUX_CLAUDE_HOOKS_DISABLED=1", "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1"];
|
|
1518
|
+
// #1699: a named credential profile is its own config dir — its login, account, trust and conversations. No profile:
|
|
1519
|
+
// nothing added, nothing created (the command is exactly what it was).
|
|
1520
|
+
const profileDir = claudeProfileConfigDir(config.backendOptions);
|
|
1521
|
+
if (profileDir) {
|
|
1522
|
+
prepareCredentialProfileHome(credentialHomeSpec("claude-code"), profileDir);
|
|
1523
|
+
// #1754: the project's auto-memory is the shared one, as on the default login.
|
|
1524
|
+
linkSharedClaudeMemory(profileDir, config.workingDirectory, credentialHomeSpec("claude-code").sharedRoot());
|
|
1525
|
+
envPrefix.push(`CLAUDE_CONFIG_DIR=${shellQuote(profileDir)}`);
|
|
1526
|
+
}
|
|
1527
|
+
if (process.env.ANTHROPIC_BASE_URL)
|
|
1528
|
+
envPrefix.push(`ANTHROPIC_BASE_URL=${shellQuote(process.env.ANTHROPIC_BASE_URL)}`);
|
|
1529
|
+
// #2010: an opt-in prompt-cache TTL for the main thread and its subagents. Unset: nothing added, the CLI chooses.
|
|
1530
|
+
const ttl = promptCacheTtl(config.backendOptions);
|
|
1531
|
+
if (ttl)
|
|
1532
|
+
envPrefix.push(`CLAUDE_CODE_PROMPT_CACHE_TTL=${ttl}`, `CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL=${ttl}`);
|
|
1533
|
+
// The fleet's API key only where this instance's own config dir has no OAuth login: a key in the environment wins
|
|
1534
|
+
// over the login, so reading another dir here bills the wrong account (#1699).
|
|
1535
|
+
if (process.env.ANTHROPIC_API_KEY && !this.hasOAuthSession(profileDir)) {
|
|
1536
|
+
envPrefix.push(`ANTHROPIC_API_KEY=${shellQuote(process.env.ANTHROPIC_API_KEY)}`);
|
|
1537
|
+
}
|
|
1538
|
+
let cmd = `${envPrefix.join(" ")} ${this.binaryPath} --settings ${settingsPath} --mcp-config ${mcpConfigPath}`;
|
|
1539
|
+
if (config.skipPermissions !== false)
|
|
1540
|
+
cmd += " --dangerously-skip-permissions";
|
|
1541
|
+
const sessionIdFile = join(this.instanceDir, "session-id");
|
|
1542
|
+
// `session-id` belongs to the instance, not the backend. A ClassicBot can
|
|
1543
|
+
// switch from Kiro (or another CLI) to Claude while retaining that marker.
|
|
1544
|
+
// Claude's bare `--continue` then looks for a conversation in this cwd and
|
|
1545
|
+
// exits when the workspace has never had a Claude session. Treat Claude's
|
|
1546
|
+
// own project transcript as the source of truth instead of the generic
|
|
1547
|
+
// marker alone. This also makes an empty/missing Classic workspace start
|
|
1548
|
+
// fresh rather than entering a resume crash loop.
|
|
1549
|
+
const retainedGeneral = selectedGeneralHostSession(this.instanceDir, config.instanceName, "claude-code", config.workingDirectory);
|
|
1550
|
+
if (retainedGeneral) {
|
|
1551
|
+
const path = join(claudeConfigDirFor(profileDir), "projects", claudeProjectKey(config.workingDirectory), `${retainedGeneral}.jsonl`);
|
|
1552
|
+
try {
|
|
1553
|
+
if (!lstatSync(path).isFile())
|
|
1554
|
+
throw Error("not regular");
|
|
1555
|
+
}
|
|
1556
|
+
catch {
|
|
1557
|
+
throw new ResumeBlockedError(t("general_location.start_failed"), t("general_location.start_failed"));
|
|
1558
|
+
}
|
|
1559
|
+
cmd += ` --resume ${shellQuote(retainedGeneral)}`;
|
|
1560
|
+
}
|
|
1561
|
+
else if (!config.skipResume && existsSync(sessionIdFile) && this.hasProjectSession(config.workingDirectory, profileDir)) {
|
|
1562
|
+
cmd += " --continue";
|
|
1563
|
+
}
|
|
1564
|
+
if (config.model) {
|
|
1565
|
+
const model = validateModel(config.model);
|
|
1566
|
+
warnIfModelMismatch("claude-code", model);
|
|
1567
|
+
cmd += ` --model ${shellQuote(model)}`;
|
|
1568
|
+
}
|
|
1569
|
+
// #1811: the configured effort, where this claude takes it (launch-effort.ts); else a quiet note.
|
|
1570
|
+
const effort = flagEffort("claude-code", config.effort, this.binaryPath);
|
|
1571
|
+
if (effort.arg)
|
|
1572
|
+
cmd += effort.arg;
|
|
1573
|
+
this.quietLaunchNotes = effort.note ? [effort.note] : [];
|
|
1574
|
+
// Additive system prompt: append fleet instructions without overriding Claude's built-in prompt
|
|
1575
|
+
const instrFile = join(this.instanceDir, "fleet-instructions.md");
|
|
1576
|
+
if (existsSync(instrFile)) {
|
|
1577
|
+
cmd += ` --append-system-prompt-file ${instrFile}`;
|
|
1578
|
+
}
|
|
1579
|
+
return cmd;
|
|
1580
|
+
}
|
|
1581
|
+
hasProjectSession(workingDirectory, profileDir) {
|
|
1582
|
+
const cwd = workingDirectory.trim();
|
|
1583
|
+
if (!cwd)
|
|
1584
|
+
return false;
|
|
1585
|
+
const configDir = claudeConfigDirFor(profileDir);
|
|
1586
|
+
const encodedCwd = claudeProjectKey(cwd);
|
|
1587
|
+
try {
|
|
1588
|
+
return readdirSync(join(configDir, "projects", encodedCwd), { withFileTypes: true })
|
|
1589
|
+
.some(entry => entry.isFile() && entry.name.endsWith(".jsonl"));
|
|
1590
|
+
}
|
|
1591
|
+
catch {
|
|
1592
|
+
return false;
|
|
1593
|
+
}
|
|
1594
|
+
}
|
|
1595
|
+
writeConfig(config) {
|
|
1596
|
+
// 1. Write mcp-config.json to instance dir (loaded via --mcp-config)
|
|
1597
|
+
const mcpConfigPath = join(this.instanceDir, "mcp-config.json");
|
|
1598
|
+
const mcpConfig = { mcpServers: config.mcpServers };
|
|
1599
|
+
writeFileSync(mcpConfigPath, JSON.stringify(mcpConfig, null, 2));
|
|
1600
|
+
// 2. Write statusline script
|
|
1601
|
+
const statusLineCommand = this.writeStatusLineScript();
|
|
1602
|
+
// 3. Write claude-settings.json (permissions handled by --dangerously-skip-permissions)
|
|
1603
|
+
const settings = {
|
|
1604
|
+
statusLine: {
|
|
1605
|
+
type: "command",
|
|
1606
|
+
command: statusLineCommand,
|
|
1607
|
+
},
|
|
1608
|
+
};
|
|
1609
|
+
// The Bypass Permissions warning appears on a first run (and whenever the
|
|
1610
|
+
// user's own settings have not recorded the acceptance) for every launch
|
|
1611
|
+
// with --dangerously-skip-permissions. AgEnD passes that flag deliberately,
|
|
1612
|
+
// so record the acceptance in the flag-level settings this file is loaded as
|
|
1613
|
+
// (--settings): claude 2.1.286 then never paints the dialog (verified live).
|
|
1614
|
+
// Only when the flag is actually passed — see buildCommand.
|
|
1615
|
+
if (config.skipPermissions !== false)
|
|
1616
|
+
settings.skipDangerousModePermissionPrompt = true;
|
|
1617
|
+
writeFileSync(join(this.instanceDir, "claude-settings.json"), JSON.stringify(settings));
|
|
1618
|
+
// 4. Pre-approve API key to skip interactive prompt on startup
|
|
1619
|
+
this.preApproveApiKey(config);
|
|
1620
|
+
// 5. Write fleet instructions file (loaded via --append-system-prompt-file)
|
|
1621
|
+
if (config.instructions) {
|
|
1622
|
+
try {
|
|
1623
|
+
writeFileSync(join(this.instanceDir, "fleet-instructions.md"), config.instructions);
|
|
1624
|
+
}
|
|
1625
|
+
catch { /* best effort */ }
|
|
1626
|
+
}
|
|
1627
|
+
}
|
|
1628
|
+
getContextUsage() {
|
|
1629
|
+
try {
|
|
1630
|
+
const sf = join(this.instanceDir, "statusline.json");
|
|
1631
|
+
const data = JSON.parse(readFileSync(sf, "utf-8"));
|
|
1632
|
+
return data.context_window?.used_percentage ?? null;
|
|
1633
|
+
}
|
|
1634
|
+
catch (err) {
|
|
1635
|
+
// File may not exist yet during startup — return null to signal unavailable
|
|
1636
|
+
return null;
|
|
1637
|
+
}
|
|
1638
|
+
}
|
|
1639
|
+
getSessionId() {
|
|
1640
|
+
try {
|
|
1641
|
+
const sf = join(this.instanceDir, "statusline.json");
|
|
1642
|
+
const data = JSON.parse(readFileSync(sf, "utf-8"));
|
|
1643
|
+
return data.session_id ?? null;
|
|
1644
|
+
}
|
|
1645
|
+
catch {
|
|
1646
|
+
return null;
|
|
1647
|
+
}
|
|
1648
|
+
}
|
|
1630
1649
|
/** #1217: Claude's own words for a session that is not there to resume. */
|
|
1631
1650
|
resumeMissingPattern() {
|
|
1632
1651
|
return /no conversation found|no conversation to (continue|resume)|no previous (session|conversation)/i;
|