@provos/ironcurtain 0.11.0 → 0.13.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/README.md +23 -19
- package/dist/cli-help.d.ts +12 -0
- package/dist/cli-help.js +21 -0
- package/dist/cli-help.js.map +1 -1
- package/dist/cli.js +14 -6
- package/dist/cli.js.map +1 -1
- package/dist/config/agent-model-guard.d.ts +14 -0
- package/dist/config/agent-model-guard.js +24 -0
- package/dist/config/agent-model-guard.js.map +1 -0
- package/dist/config/config-command.d.ts +33 -1
- package/dist/config/config-command.js +723 -11
- package/dist/config/config-command.js.map +1 -1
- package/dist/config/first-start.js +2 -8
- package/dist/config/first-start.js.map +1 -1
- package/dist/config/model-provider.d.ts +9 -0
- package/dist/config/model-provider.js +13 -0
- package/dist/config/model-provider.js.map +1 -1
- package/dist/config/openrouter-catalog.d.ts +46 -0
- package/dist/config/openrouter-catalog.js +111 -0
- package/dist/config/openrouter-catalog.js.map +1 -0
- package/dist/config/openrouter-models-fallback.d.ts +15 -0
- package/dist/config/openrouter-models-fallback.js +49 -0
- package/dist/config/openrouter-models-fallback.js.map +1 -0
- package/dist/config/paths.d.ts +48 -6
- package/dist/config/paths.js +63 -8
- package/dist/config/paths.js.map +1 -1
- package/dist/config/types.d.ts +8 -0
- package/dist/config/user-config.d.ts +179 -6
- package/dist/config/user-config.js +282 -5
- package/dist/config/user-config.js.map +1 -1
- package/dist/daemon/daemon-command.js +14 -5
- package/dist/daemon/daemon-command.js.map +1 -1
- package/dist/daemon/ironcurtain-daemon.d.ts +18 -0
- package/dist/daemon/ironcurtain-daemon.js +28 -1
- package/dist/daemon/ironcurtain-daemon.js.map +1 -1
- package/dist/daemon-client/daemon-client.d.ts +123 -0
- package/dist/daemon-client/daemon-client.js +324 -0
- package/dist/daemon-client/daemon-client.js.map +1 -0
- package/dist/docker/adapters/claude-code.js +109 -1
- package/dist/docker/adapters/claude-code.js.map +1 -1
- package/dist/docker/adapters/codex.d.ts +18 -0
- package/dist/docker/adapters/codex.js +376 -0
- package/dist/docker/adapters/codex.js.map +1 -0
- package/dist/docker/adapters/goose.js +38 -2
- package/dist/docker/adapters/goose.js.map +1 -1
- package/dist/docker/agent-adapter.d.ts +34 -6
- package/dist/docker/agent-adapter.js +2 -0
- package/dist/docker/agent-adapter.js.map +1 -1
- package/dist/docker/agent-registry.js +5 -0
- package/dist/docker/agent-registry.js.map +1 -1
- package/dist/docker/apple-container-manager.d.ts +49 -0
- package/dist/docker/apple-container-manager.js +486 -0
- package/dist/docker/apple-container-manager.js.map +1 -0
- package/dist/docker/ca.js +9 -2
- package/dist/docker/ca.js.map +1 -1
- package/dist/docker/code-mode-proxy.d.ts +11 -0
- package/dist/docker/code-mode-proxy.js +3 -1
- package/dist/docker/code-mode-proxy.js.map +1 -1
- package/dist/docker/container-lifecycle.d.ts +2 -2
- package/dist/docker/container-lifecycle.js +9 -0
- package/dist/docker/container-lifecycle.js.map +1 -1
- package/dist/docker/container-runtime.d.ts +29 -0
- package/dist/docker/container-runtime.js +76 -0
- package/dist/docker/container-runtime.js.map +1 -0
- package/dist/docker/docker-agent-session.d.ts +31 -0
- package/dist/docker/docker-agent-session.js +97 -7
- package/dist/docker/docker-agent-session.js.map +1 -1
- package/dist/docker/docker-infrastructure.d.ts +232 -15
- package/dist/docker/docker-infrastructure.js +762 -118
- package/dist/docker/docker-infrastructure.js.map +1 -1
- package/dist/docker/docker-manager.d.ts +25 -5
- package/dist/docker/docker-manager.js +388 -21
- package/dist/docker/docker-manager.js.map +1 -1
- package/dist/docker/docker-probe.d.ts +45 -0
- package/dist/docker/docker-probe.js +86 -0
- package/dist/docker/docker-probe.js.map +1 -0
- package/dist/docker/docker-progress-sink.d.ts +1 -1
- package/dist/docker/docker-resource-lifecycle.d.ts +71 -0
- package/dist/docker/docker-resource-lifecycle.js +454 -0
- package/dist/docker/docker-resource-lifecycle.js.map +1 -0
- package/dist/docker/gc-command.d.ts +2 -0
- package/dist/docker/gc-command.js +37 -0
- package/dist/docker/gc-command.js.map +1 -0
- package/dist/docker/mitm-proxy.d.ts +58 -5
- package/dist/docker/mitm-proxy.js +338 -26
- package/dist/docker/mitm-proxy.js.map +1 -1
- package/dist/docker/network-topology.d.ts +88 -0
- package/dist/docker/network-topology.js +167 -0
- package/dist/docker/network-topology.js.map +1 -0
- package/dist/docker/oauth-credentials.d.ts +13 -0
- package/dist/docker/oauth-credentials.js +125 -0
- package/dist/docker/oauth-credentials.js.map +1 -1
- package/dist/docker/openrouter.d.ts +107 -0
- package/dist/docker/openrouter.js +236 -0
- package/dist/docker/openrouter.js.map +1 -0
- package/dist/docker/orientation.js +1 -1
- package/dist/docker/orientation.js.map +1 -1
- package/dist/docker/package-types.d.ts +1 -1
- package/dist/docker/platform.d.ts +3 -1
- package/dist/docker/platform.js +3 -1
- package/dist/docker/platform.js.map +1 -1
- package/dist/docker/provider-config.d.ts +35 -1
- package/dist/docker/provider-config.js +93 -3
- package/dist/docker/provider-config.js.map +1 -1
- package/dist/docker/provision-lock.d.ts +46 -0
- package/dist/docker/provision-lock.js +152 -0
- package/dist/docker/provision-lock.js.map +1 -0
- package/dist/docker/pty-session.d.ts +22 -0
- package/dist/docker/pty-session.js +238 -84
- package/dist/docker/pty-session.js.map +1 -1
- package/dist/docker/pty-types.d.ts +15 -0
- package/dist/docker/pty-types.js +8 -0
- package/dist/docker/pty-types.js.map +1 -1
- package/dist/docker/registry-proxy.d.ts +46 -0
- package/dist/docker/registry-proxy.js +255 -1
- package/dist/docker/registry-proxy.js.map +1 -1
- package/dist/docker/resource-limits.d.ts +14 -5
- package/dist/docker/resource-limits.js +11 -8
- package/dist/docker/resource-limits.js.map +1 -1
- package/dist/docker/sse-extractor.js +55 -5
- package/dist/docker/sse-extractor.js.map +1 -1
- package/dist/docker/stream-delay.d.ts +86 -0
- package/dist/docker/stream-delay.js +218 -0
- package/dist/docker/stream-delay.js.map +1 -0
- package/dist/docker/token-stream-types.d.ts +15 -0
- package/dist/docker/trajectory-capture.d.ts +79 -0
- package/dist/docker/trajectory-capture.js +521 -0
- package/dist/docker/trajectory-capture.js.map +1 -0
- package/dist/docker/trajectory-reassembler.d.ts +286 -0
- package/dist/docker/trajectory-reassembler.js +1010 -0
- package/dist/docker/trajectory-reassembler.js.map +1 -0
- package/dist/docker/trajectory-tap.d.ts +100 -0
- package/dist/docker/trajectory-tap.js +410 -0
- package/dist/docker/trajectory-tap.js.map +1 -0
- package/dist/docker/trajectory-types.d.ts +187 -0
- package/dist/docker/trajectory-types.js +43 -0
- package/dist/docker/trajectory-types.js.map +1 -0
- package/dist/docker/types.d.ts +116 -12
- package/dist/doctor/checks.d.ts +39 -6
- package/dist/doctor/checks.js +129 -25
- package/dist/doctor/checks.js.map +1 -1
- package/dist/doctor/doctor-command.js +39 -9
- package/dist/doctor/doctor-command.js.map +1 -1
- package/dist/doctor/mcp-liveness.d.ts +1 -1
- package/dist/doctor/mcp-liveness.js +12 -4
- package/dist/doctor/mcp-liveness.js.map +1 -1
- package/dist/escalation/escalation-watcher.js +6 -0
- package/dist/escalation/escalation-watcher.js.map +1 -1
- package/dist/{mux → escalation}/trusted-input.d.ts +7 -4
- package/dist/{mux → escalation}/trusted-input.js +8 -5
- package/dist/escalation/trusted-input.js.map +1 -0
- package/dist/hash.js.map +1 -1
- package/dist/index.js +65 -16
- package/dist/index.js.map +1 -1
- package/dist/mux/mux-app.d.ts +9 -0
- package/dist/mux/mux-app.js +18 -16
- package/dist/mux/mux-app.js.map +1 -1
- package/dist/mux/mux-command.js +26 -8
- package/dist/mux/mux-command.js.map +1 -1
- package/dist/mux/mux-input-handler.d.ts +26 -2
- package/dist/mux/mux-input-handler.js +93 -11
- package/dist/mux/mux-input-handler.js.map +1 -1
- package/dist/mux/mux-renderer.d.ts +2 -1
- package/dist/mux/mux-renderer.js +67 -0
- package/dist/mux/mux-renderer.js.map +1 -1
- package/dist/mux/provider-profile-snapshot.d.ts +44 -0
- package/dist/mux/provider-profile-snapshot.js +56 -0
- package/dist/mux/provider-profile-snapshot.js.map +1 -0
- package/dist/mux/types.d.ts +3 -2
- package/dist/mux/types.js +6 -2
- package/dist/mux/types.js.map +1 -1
- package/dist/observe/observe-command.js +112 -125
- package/dist/observe/observe-command.js.map +1 -1
- package/dist/persona/broad-policy-validator.d.ts +95 -0
- package/dist/persona/broad-policy-validator.js +171 -0
- package/dist/persona/broad-policy-validator.js.map +1 -0
- package/dist/persona/compile-persona-policy.d.ts +54 -2
- package/dist/persona/compile-persona-policy.js +29 -4
- package/dist/persona/compile-persona-policy.js.map +1 -1
- package/dist/persona/event-bus-progress-reporter.d.ts +57 -0
- package/dist/persona/event-bus-progress-reporter.js +66 -0
- package/dist/persona/event-bus-progress-reporter.js.map +1 -0
- package/dist/persona/persona-command.js +46 -76
- package/dist/persona/persona-command.js.map +1 -1
- package/dist/persona/persona-compile-orchestrator.d.ts +101 -0
- package/dist/persona/persona-compile-orchestrator.js +504 -0
- package/dist/persona/persona-compile-orchestrator.js.map +1 -0
- package/dist/persona/persona-service.d.ts +137 -0
- package/dist/persona/persona-service.js +263 -0
- package/dist/persona/persona-service.js.map +1 -0
- package/dist/persona/policy-mutation-audit.d.ts +109 -0
- package/dist/persona/policy-mutation-audit.js +179 -0
- package/dist/persona/policy-mutation-audit.js.map +1 -0
- package/dist/persona/rule-delta.d.ts +30 -0
- package/dist/persona/rule-delta.js +82 -0
- package/dist/persona/rule-delta.js.map +1 -0
- package/dist/persona/types.d.ts +12 -0
- package/dist/pipeline/annotate.js +10 -2
- package/dist/pipeline/annotate.js.map +1 -1
- package/dist/pipeline/compile.js +14 -2
- package/dist/pipeline/compile.js.map +1 -1
- package/dist/pipeline/constitution-compiler.js.map +1 -1
- package/dist/pipeline/generate-with-repair.js.map +1 -1
- package/dist/pipeline/pipeline-runner.d.ts +63 -4
- package/dist/pipeline/pipeline-runner.js +159 -50
- package/dist/pipeline/pipeline-runner.js.map +1 -1
- package/dist/pipeline/pipeline-shared.d.ts +32 -3
- package/dist/pipeline/pipeline-shared.js +76 -8
- package/dist/pipeline/pipeline-shared.js.map +1 -1
- package/dist/pipeline/refresh-lists.js +3 -5
- package/dist/pipeline/refresh-lists.js.map +1 -1
- package/dist/pipeline/scenario-schema-validator.js.map +1 -1
- package/dist/{mux → pty}/pty-bridge.d.ts +41 -3
- package/dist/{mux → pty}/pty-bridge.js +71 -18
- package/dist/pty/pty-bridge.js.map +1 -0
- package/dist/pty/resolve-ironcurtain-bin.d.ts +17 -0
- package/dist/pty/resolve-ironcurtain-bin.js +22 -0
- package/dist/pty/resolve-ironcurtain-bin.js.map +1 -0
- package/dist/sandbox/index.d.ts +19 -4
- package/dist/sandbox/index.js +31 -18
- package/dist/sandbox/index.js.map +1 -1
- package/dist/servers/fetch-server.js +2 -0
- package/dist/servers/fetch-server.js.map +1 -1
- package/dist/session/index.d.ts +1 -1
- package/dist/session/index.js +20 -2
- package/dist/session/index.js.map +1 -1
- package/dist/session/preflight.d.ts +20 -35
- package/dist/session/preflight.js +92 -109
- package/dist/session/preflight.js.map +1 -1
- package/dist/session/resource-budget-tracker.js +8 -0
- package/dist/session/resource-budget-tracker.js.map +1 -1
- package/dist/session/session-manager.d.ts +7 -0
- package/dist/session/session-manager.js.map +1 -1
- package/dist/session/types.d.ts +23 -0
- package/dist/signal/bot-command.js +6 -1
- package/dist/signal/bot-command.js.map +1 -1
- package/dist/signal/setup-signal.js +1 -1
- package/dist/signal/setup-signal.js.map +1 -1
- package/dist/signal/signal-bot-daemon.d.ts +1 -0
- package/dist/signal/signal-bot-daemon.js +9 -2
- package/dist/signal/signal-bot-daemon.js.map +1 -1
- package/dist/signal/signal-container.d.ts +3 -3
- package/dist/signal/signal-container.js +2 -2
- package/dist/signal/signal-container.js.map +1 -1
- package/dist/trusted-process/call-circuit-breaker.d.ts +6 -0
- package/dist/trusted-process/call-circuit-breaker.js +22 -3
- package/dist/trusted-process/call-circuit-breaker.js.map +1 -1
- package/dist/trusted-process/container-command.d.ts +35 -0
- package/dist/trusted-process/container-command.js +49 -0
- package/dist/trusted-process/container-command.js.map +1 -0
- package/dist/trusted-process/mcp-error-utils.js +4 -1
- package/dist/trusted-process/mcp-error-utils.js.map +1 -1
- package/dist/trusted-process/mcp-proxy-server.js +37 -3
- package/dist/trusted-process/mcp-proxy-server.js.map +1 -1
- package/dist/trusted-process/policy-engine.js +13 -2
- package/dist/trusted-process/policy-engine.js.map +1 -1
- package/dist/trusted-process/tcp-server-transport.d.ts +19 -1
- package/dist/trusted-process/tcp-server-transport.js +56 -10
- package/dist/trusted-process/tcp-server-transport.js.map +1 -1
- package/dist/trusted-process/tool-call-coordinator.d.ts +22 -8
- package/dist/trusted-process/tool-call-coordinator.js +149 -65
- package/dist/trusted-process/tool-call-coordinator.js.map +1 -1
- package/dist/trusted-process/tool-call-pipeline.d.ts +8 -0
- package/dist/trusted-process/tool-call-pipeline.js +68 -34
- package/dist/trusted-process/tool-call-pipeline.js.map +1 -1
- package/dist/util/atomic-write.d.ts +31 -0
- package/dist/util/atomic-write.js +43 -0
- package/dist/util/atomic-write.js.map +1 -0
- package/dist/utils/preflight-checks.js +1 -3
- package/dist/utils/preflight-checks.js.map +1 -1
- package/dist/utils/stdio-guard.d.ts +1 -0
- package/dist/utils/stdio-guard.js +27 -0
- package/dist/utils/stdio-guard.js.map +1 -0
- package/dist/web-ui/__tests__/config-dispatch.test.d.ts +13 -0
- package/dist/web-ui/__tests__/config-dispatch.test.js +383 -0
- package/dist/web-ui/__tests__/config-dispatch.test.js.map +1 -0
- package/dist/web-ui/__tests__/json-rpc-dispatch.test.js +6 -0
- package/dist/web-ui/__tests__/json-rpc-dispatch.test.js.map +1 -1
- package/dist/web-ui/conn-registry.d.ts +14 -0
- package/dist/web-ui/conn-registry.js +25 -0
- package/dist/web-ui/conn-registry.js.map +1 -0
- package/dist/web-ui/dispatch/config-dispatch.d.ts +15 -0
- package/dist/web-ui/dispatch/config-dispatch.js +277 -0
- package/dist/web-ui/dispatch/config-dispatch.js.map +1 -0
- package/dist/web-ui/dispatch/escalation-dispatch.js +11 -2
- package/dist/web-ui/dispatch/escalation-dispatch.js.map +1 -1
- package/dist/web-ui/dispatch/persona-dispatch.d.ts +46 -2
- package/dist/web-ui/dispatch/persona-dispatch.js +209 -56
- package/dist/web-ui/dispatch/persona-dispatch.js.map +1 -1
- package/dist/web-ui/dispatch/pty-dispatch.d.ts +15 -0
- package/dist/web-ui/dispatch/pty-dispatch.js +66 -0
- package/dist/web-ui/dispatch/pty-dispatch.js.map +1 -0
- package/dist/web-ui/dispatch/session-dispatch.js +89 -6
- package/dist/web-ui/dispatch/session-dispatch.js.map +1 -1
- package/dist/web-ui/dispatch/types.d.ts +35 -0
- package/dist/web-ui/dispatch/types.js +42 -1
- package/dist/web-ui/dispatch/types.js.map +1 -1
- package/dist/web-ui/dispatch/workflow-dispatch.js +116 -5
- package/dist/web-ui/dispatch/workflow-dispatch.js.map +1 -1
- package/dist/web-ui/json-rpc-dispatch.js +4 -1
- package/dist/web-ui/json-rpc-dispatch.js.map +1 -1
- package/dist/web-ui/pty-session-manager.d.ts +234 -0
- package/dist/web-ui/pty-session-manager.js +599 -0
- package/dist/web-ui/pty-session-manager.js.map +1 -0
- package/dist/web-ui/web-event-bus.d.ts +34 -1
- package/dist/web-ui/web-event-bus.js.map +1 -1
- package/dist/web-ui/web-session-transport.js.map +1 -1
- package/dist/web-ui/web-ui-server.d.ts +22 -0
- package/dist/web-ui/web-ui-server.js +41 -0
- package/dist/web-ui/web-ui-server.js.map +1 -1
- package/dist/web-ui/web-ui-types.d.ts +212 -5
- package/dist/web-ui/web-ui-types.js.map +1 -1
- package/dist/web-ui-static/assets/index-CCVI4nEK.css +1 -0
- package/dist/web-ui-static/assets/index-Dm012gvY.js +114 -0
- package/dist/web-ui-static/index.html +2 -2
- package/dist/workflow/cli-shared.d.ts +62 -0
- package/dist/workflow/cli-shared.js +117 -0
- package/dist/workflow/cli-shared.js.map +1 -0
- package/dist/workflow/cli-support.js +0 -2
- package/dist/workflow/cli-support.js.map +1 -1
- package/dist/workflow/container-snapshots.d.ts +29 -0
- package/dist/workflow/container-snapshots.js +137 -0
- package/dist/workflow/container-snapshots.js.map +1 -0
- package/dist/workflow/daemon-gate-commands.d.ts +21 -0
- package/dist/workflow/daemon-gate-commands.js +595 -0
- package/dist/workflow/daemon-gate-commands.js.map +1 -0
- package/dist/workflow/discovery.d.ts +29 -0
- package/dist/workflow/discovery.js +67 -7
- package/dist/workflow/discovery.js.map +1 -1
- package/dist/workflow/lane-template.d.ts +89 -0
- package/dist/workflow/lane-template.js +141 -0
- package/dist/workflow/lane-template.js.map +1 -0
- package/dist/workflow/lint.d.ts +7 -1
- package/dist/workflow/lint.js +186 -3
- package/dist/workflow/lint.js.map +1 -1
- package/dist/workflow/machine-builder.d.ts +90 -2
- package/dist/workflow/machine-builder.js +222 -29
- package/dist/workflow/machine-builder.js.map +1 -1
- package/dist/workflow/message-log.d.ts +15 -1
- package/dist/workflow/message-log.js.map +1 -1
- package/dist/workflow/orchestrator.d.ts +505 -1
- package/dist/workflow/orchestrator.js +1725 -69
- package/dist/workflow/orchestrator.js.map +1 -1
- package/dist/workflow/prompt-builder.js +2 -1
- package/dist/workflow/prompt-builder.js.map +1 -1
- package/dist/workflow/run-state-command.js +1 -1
- package/dist/workflow/run-state-command.js.map +1 -1
- package/dist/workflow/shutdown-signals.d.ts +7 -0
- package/dist/workflow/shutdown-signals.js +40 -0
- package/dist/workflow/shutdown-signals.js.map +1 -0
- package/dist/workflow/status-parser.js +19 -4
- package/dist/workflow/status-parser.js.map +1 -1
- package/dist/workflow/types.d.ts +123 -23
- package/dist/workflow/types.js +2 -0
- package/dist/workflow/types.js.map +1 -1
- package/dist/workflow/validate.d.ts +23 -1
- package/dist/workflow/validate.js +311 -22
- package/dist/workflow/validate.js.map +1 -1
- package/dist/workflow/workflow-command.d.ts +0 -17
- package/dist/workflow/workflow-command.js +118 -94
- package/dist/workflow/workflow-command.js.map +1 -1
- package/dist/workflow/workflow-discovery.d.ts +2 -0
- package/dist/workflow/workflow-discovery.js +22 -1
- package/dist/workflow/workflow-discovery.js.map +1 -1
- package/dist/workflow/workflow-manager.d.ts +34 -0
- package/dist/workflow/workflow-manager.js +52 -1
- package/dist/workflow/workflow-manager.js.map +1 -1
- package/dist/workflow/workflows/design-and-code/README.md +50 -0
- package/dist/workflow/workflows/deterministic-eval-smoke/scripts/format_report.js +29 -0
- package/dist/workflow/workflows/deterministic-eval-smoke/scripts/package.json +5 -0
- package/dist/workflow/workflows/deterministic-eval-smoke/scripts/requirements.txt +1 -0
- package/dist/workflow/workflows/deterministic-eval-smoke/scripts/run_eval.py +41 -0
- package/dist/workflow/workflows/deterministic-eval-smoke/workflow.yaml +57 -0
- package/dist/workflow/workflows/deterministic-verdict-smoke/scripts/classify.py +18 -0
- package/dist/workflow/workflows/deterministic-verdict-smoke/workflow.yaml +51 -0
- package/dist/workflow/workflows/evolve/README.md +66 -0
- package/dist/workflow/workflows/evolve/scripts/LICENSE +201 -0
- package/dist/workflow/workflows/evolve/scripts/README.md +314 -0
- package/dist/workflow/workflows/evolve/scripts/evolve-brief +16 -0
- package/dist/workflow/workflows/evolve/scripts/evolve-cognition +16 -0
- package/dist/workflow/workflows/evolve/scripts/evolve-db +16 -0
- package/dist/workflow/workflows/evolve/scripts/evolve-eval +16 -0
- package/dist/workflow/workflows/evolve/scripts/evolve-files +16 -0
- package/dist/workflow/workflows/evolve/scripts/evolve-summary +16 -0
- package/dist/workflow/workflows/evolve/scripts/evolve_core/__init__.py +14 -0
- package/dist/workflow/workflows/evolve/scripts/evolve_core/algorithms/__init__.py +17 -0
- package/dist/workflow/workflows/evolve/scripts/evolve_core/algorithms/base.py +21 -0
- package/dist/workflow/workflows/evolve/scripts/evolve_core/algorithms/factory.py +90 -0
- package/dist/workflow/workflows/evolve/scripts/evolve_core/algorithms/greedy.py +17 -0
- package/dist/workflow/workflows/evolve/scripts/evolve_core/algorithms/island.py +316 -0
- package/dist/workflow/workflows/evolve/scripts/evolve_core/algorithms/random.py +18 -0
- package/dist/workflow/workflows/evolve/scripts/evolve_core/algorithms/ucb1.py +55 -0
- package/dist/workflow/workflows/evolve/scripts/evolve_core/best_snapshot.py +62 -0
- package/dist/workflow/workflows/evolve/scripts/evolve_core/cli.py +752 -0
- package/dist/workflow/workflows/evolve/scripts/evolve_core/cognition.py +127 -0
- package/dist/workflow/workflows/evolve/scripts/evolve_core/database.py +218 -0
- package/dist/workflow/workflows/evolve/scripts/evolve_core/diff.py +57 -0
- package/dist/workflow/workflows/evolve/scripts/evolve_core/embedding.py +84 -0
- package/dist/workflow/workflows/evolve/scripts/evolve_core/file_lock.py +45 -0
- package/dist/workflow/workflows/evolve/scripts/evolve_core/run_state.py +343 -0
- package/dist/workflow/workflows/evolve/scripts/evolve_core/sampling_config.py +173 -0
- package/dist/workflow/workflows/evolve/scripts/evolve_core/structures.py +93 -0
- package/dist/workflow/workflows/evolve/scripts/evolve_core/vector_index.py +191 -0
- package/dist/workflow/workflows/evolve/scripts/evolve_result.py +1503 -0
- package/dist/workflow/workflows/evolve/scripts/requirements.txt +2 -0
- package/dist/workflow/workflows/evolve/workflow.yaml +646 -0
- package/dist/workflow/workflows/test-email-summary/workflow.yaml +1 -0
- package/dist/workflow/workflows/vuln-discovery/README.md +54 -0
- package/dist/workflow/workflows/vuln-discovery/skills/harness-design-fuzzing/SKILL.md +6 -1
- package/dist/workflow/workflows/vuln-discovery/skills/memory-safety-c-cpp/SKILL.md +1 -0
- package/dist/workflow/workflows/vuln-discovery/skills/vulnerability-triage/SKILL.md +4 -0
- package/dist/workflow/workflows/vuln-discovery/workflow.yaml +13 -8
- package/docker/Dockerfile.base +22 -0
- package/docker/Dockerfile.base.arm64 +18 -0
- package/docker/Dockerfile.claude-code +3 -1
- package/docker/Dockerfile.codex +17 -0
- package/docker/Dockerfile.goose +3 -1
- package/docker/entrypoint-claude-code.sh +28 -45
- package/docker/entrypoint-codex.sh +42 -0
- package/docker/entrypoint-goose.sh +5 -24
- package/docker/entrypoint-uid-remap.sh +93 -0
- package/package.json +39 -30
- package/src/workflow/workflows/design-and-code/README.md +50 -0
- package/src/workflow/workflows/deterministic-eval-smoke/scripts/format_report.js +29 -0
- package/src/workflow/workflows/deterministic-eval-smoke/scripts/package.json +5 -0
- package/src/workflow/workflows/deterministic-eval-smoke/scripts/requirements.txt +1 -0
- package/src/workflow/workflows/deterministic-eval-smoke/scripts/run_eval.py +41 -0
- package/src/workflow/workflows/deterministic-eval-smoke/workflow.yaml +57 -0
- package/src/workflow/workflows/deterministic-verdict-smoke/scripts/classify.py +18 -0
- package/src/workflow/workflows/deterministic-verdict-smoke/workflow.yaml +51 -0
- package/src/workflow/workflows/evolve/README.md +66 -0
- package/src/workflow/workflows/evolve/scripts/LICENSE +201 -0
- package/src/workflow/workflows/evolve/scripts/README.md +314 -0
- package/src/workflow/workflows/evolve/scripts/evolve-brief +16 -0
- package/src/workflow/workflows/evolve/scripts/evolve-cognition +16 -0
- package/src/workflow/workflows/evolve/scripts/evolve-db +16 -0
- package/src/workflow/workflows/evolve/scripts/evolve-eval +16 -0
- package/src/workflow/workflows/evolve/scripts/evolve-files +16 -0
- package/src/workflow/workflows/evolve/scripts/evolve-summary +16 -0
- package/src/workflow/workflows/evolve/scripts/evolve_core/__init__.py +14 -0
- package/src/workflow/workflows/evolve/scripts/evolve_core/algorithms/__init__.py +17 -0
- package/src/workflow/workflows/evolve/scripts/evolve_core/algorithms/base.py +21 -0
- package/src/workflow/workflows/evolve/scripts/evolve_core/algorithms/factory.py +90 -0
- package/src/workflow/workflows/evolve/scripts/evolve_core/algorithms/greedy.py +17 -0
- package/src/workflow/workflows/evolve/scripts/evolve_core/algorithms/island.py +316 -0
- package/src/workflow/workflows/evolve/scripts/evolve_core/algorithms/random.py +18 -0
- package/src/workflow/workflows/evolve/scripts/evolve_core/algorithms/ucb1.py +55 -0
- package/src/workflow/workflows/evolve/scripts/evolve_core/best_snapshot.py +62 -0
- package/src/workflow/workflows/evolve/scripts/evolve_core/cli.py +752 -0
- package/src/workflow/workflows/evolve/scripts/evolve_core/cognition.py +127 -0
- package/src/workflow/workflows/evolve/scripts/evolve_core/database.py +218 -0
- package/src/workflow/workflows/evolve/scripts/evolve_core/diff.py +57 -0
- package/src/workflow/workflows/evolve/scripts/evolve_core/embedding.py +84 -0
- package/src/workflow/workflows/evolve/scripts/evolve_core/file_lock.py +45 -0
- package/src/workflow/workflows/evolve/scripts/evolve_core/run_state.py +343 -0
- package/src/workflow/workflows/evolve/scripts/evolve_core/sampling_config.py +173 -0
- package/src/workflow/workflows/evolve/scripts/evolve_core/structures.py +93 -0
- package/src/workflow/workflows/evolve/scripts/evolve_core/vector_index.py +191 -0
- package/src/workflow/workflows/evolve/scripts/evolve_result.py +1503 -0
- package/src/workflow/workflows/evolve/scripts/requirements.txt +2 -0
- package/src/workflow/workflows/evolve/workflow.yaml +646 -0
- package/src/workflow/workflows/test-email-summary/workflow.yaml +1 -0
- package/src/workflow/workflows/vuln-discovery/README.md +54 -0
- package/src/workflow/workflows/vuln-discovery/skills/harness-design-fuzzing/SKILL.md +6 -1
- package/src/workflow/workflows/vuln-discovery/skills/memory-safety-c-cpp/SKILL.md +1 -0
- package/src/workflow/workflows/vuln-discovery/skills/vulnerability-triage/SKILL.md +4 -0
- package/src/workflow/workflows/vuln-discovery/workflow.yaml +13 -8
- package/dist/mux/pty-bridge.js.map +0 -1
- package/dist/mux/trusted-input.js.map +0 -1
- package/dist/web-ui-static/assets/index-BFO5z1js.js +0 -76
- package/dist/web-ui-static/assets/index-CCUwrkIL.css +0 -1
- package/packages/web-ui/README.md +0 -113
|
@@ -37,13 +37,18 @@ export const USER_CONFIG_DEFAULTS = {
|
|
|
37
37
|
auditRedaction: {
|
|
38
38
|
enabled: true,
|
|
39
39
|
},
|
|
40
|
-
preferredMode: '
|
|
40
|
+
preferredMode: 'container',
|
|
41
41
|
dockerResources: {
|
|
42
42
|
/** Memory ceiling in MB; null means "do not pass --memory". */
|
|
43
43
|
memoryMb: 8192,
|
|
44
44
|
/** CPU ceiling (fractional ok); null means "do not pass --cpus". */
|
|
45
45
|
cpus: 4,
|
|
46
46
|
},
|
|
47
|
+
snapshot: {
|
|
48
|
+
enabled: true,
|
|
49
|
+
maxAgeDays: 7,
|
|
50
|
+
sweepIntervalHours: 24,
|
|
51
|
+
},
|
|
47
52
|
};
|
|
48
53
|
export const ESCALATION_TIMEOUT_MIN = 30;
|
|
49
54
|
export const ESCALATION_TIMEOUT_MAX = 600;
|
|
@@ -143,6 +148,24 @@ const memorySchema = z
|
|
|
143
148
|
llmApiKey: z.string().min(1).optional(),
|
|
144
149
|
})
|
|
145
150
|
.optional();
|
|
151
|
+
/**
|
|
152
|
+
* Trajectory-capture config (MITM HTTP exchange recording). Opt-in
|
|
153
|
+
* only; absent in USER_CONFIG_DEFAULTS so the `?? false` in the
|
|
154
|
+
* resolver is authoritative. See
|
|
155
|
+
* docs/designs/mitm-token-trajectory-capture.md §10.
|
|
156
|
+
*/
|
|
157
|
+
const captureSchema = z
|
|
158
|
+
.object({
|
|
159
|
+
enabled: z.boolean().optional(),
|
|
160
|
+
})
|
|
161
|
+
.optional();
|
|
162
|
+
const snapshotSchema = z
|
|
163
|
+
.object({
|
|
164
|
+
enabled: z.boolean().optional(),
|
|
165
|
+
maxAgeDays: z.number().positive().nullable().optional(),
|
|
166
|
+
sweepIntervalHours: z.number().positive().optional(),
|
|
167
|
+
})
|
|
168
|
+
.optional();
|
|
146
169
|
export const WEB_SEARCH_PROVIDERS = ['brave', 'tavily', 'serpapi'];
|
|
147
170
|
/** Human-readable labels for web search providers. */
|
|
148
171
|
export const WEB_SEARCH_PROVIDER_LABELS = {
|
|
@@ -199,8 +222,103 @@ const signalSchema = z
|
|
|
199
222
|
* defaults are merged separately so we can distinguish "missing" from "present".
|
|
200
223
|
*/
|
|
201
224
|
export const GOOSE_PROVIDERS = ['anthropic', 'openai', 'google'];
|
|
202
|
-
export const DOCKER_AGENTS = ['claude-code', 'goose'];
|
|
203
|
-
export const SESSION_MODES = ['
|
|
225
|
+
export const DOCKER_AGENTS = ['claude-code', 'goose', 'codex'];
|
|
226
|
+
export const SESSION_MODES = ['container', 'builtin'];
|
|
227
|
+
const preferredModeSchema = z.preprocess((value) => (value === 'docker' ? 'container' : value), z.enum(SESSION_MODES));
|
|
228
|
+
/**
|
|
229
|
+
* Container runtime backend for Container mode sessions. 'auto'
|
|
230
|
+
* prefers the Apple container runtime when its preflight passes
|
|
231
|
+
* (Apple silicon, macOS 26+, container CLI >= 1.0 with services
|
|
232
|
+
* running) and falls back to Docker otherwise. The
|
|
233
|
+
* IRONCURTAIN_CONTAINER_RUNTIME env var overrides this setting.
|
|
234
|
+
* See docs/designs/apple-container-runtime.md.
|
|
235
|
+
*/
|
|
236
|
+
export const CONTAINER_RUNTIMES = ['auto', 'docker', 'apple-container'];
|
|
237
|
+
// --- OpenRouter provider-profile registry (see docs/designs/openrouter-integration.md §6) ---
|
|
238
|
+
/** OpenRouter host (single host serving all three agent wire formats). */
|
|
239
|
+
export const OPENROUTER_HOST = 'openrouter.ai';
|
|
240
|
+
/** Claude Code `ANTHROPIC_BASE_URL` when routing through OpenRouter. */
|
|
241
|
+
export const OPENROUTER_BASE_URL = 'https://openrouter.ai/api';
|
|
242
|
+
/** Codex/Goose `base_url` when routing through OpenRouter. */
|
|
243
|
+
export const OPENROUTER_API_V1 = 'https://openrouter.ai/api/v1';
|
|
244
|
+
/** Default GLM slug used when no per-agent / glob mapping resolves (D2). */
|
|
245
|
+
export const DEFAULT_GLM_SLUG = 'z-ai/glm-5.2';
|
|
246
|
+
/** The implicit, always-present profile name. Reserved: users may not define it. */
|
|
247
|
+
export const NATIVE_PROFILE_NAME = 'native';
|
|
248
|
+
/**
|
|
249
|
+
* Out-of-box glob→slug mapping applied when an openrouter profile omits
|
|
250
|
+
* `modelMap`. Maps the canonical Anthropic tiers to GLM (D3 quickstart). An
|
|
251
|
+
* explicit `modelMap: []` is preserved and disables glob mapping (per-agent
|
|
252
|
+
* only mode).
|
|
253
|
+
*/
|
|
254
|
+
export const DEFAULT_MODEL_MAP = [
|
|
255
|
+
{ match: '*opus*', model: DEFAULT_GLM_SLUG },
|
|
256
|
+
{ match: '*sonnet*', model: DEFAULT_GLM_SLUG },
|
|
257
|
+
{ match: '*haiku*', model: DEFAULT_GLM_SLUG },
|
|
258
|
+
];
|
|
259
|
+
/** A single ordered glob→slug mapping rule. First match wins. */
|
|
260
|
+
const modelMapRuleSchema = z.object({
|
|
261
|
+
/** Glob matched (case-insensitively) against the REQUESTED model id. `*` = any run of chars. */
|
|
262
|
+
match: z.string().min(1),
|
|
263
|
+
/** OpenRouter slug to route to, e.g. "z-ai/glm-5.2". */
|
|
264
|
+
model: z.string().min(1),
|
|
265
|
+
});
|
|
266
|
+
/** Provider-preference passthrough for cache pinning (OpenRouter `provider` body field). */
|
|
267
|
+
const providerPreferenceSchema = z
|
|
268
|
+
.object({
|
|
269
|
+
/** Ordered provider slugs to try, e.g. ["z-ai"]. */
|
|
270
|
+
order: z.array(z.string().min(1)).optional(),
|
|
271
|
+
/** Restrict routing to exactly these provider slugs. */
|
|
272
|
+
only: z.array(z.string().min(1)).optional(),
|
|
273
|
+
/** Allow OpenRouter to fall back to other providers. Default true. */
|
|
274
|
+
allowFallbacks: z.boolean().optional(),
|
|
275
|
+
})
|
|
276
|
+
.optional();
|
|
277
|
+
/** An openrouter-type profile: EXACTLY v2's `openrouter` section fields, sans `enabled`. */
|
|
278
|
+
const openrouterProfileSchema = z.object({
|
|
279
|
+
type: z.literal('openrouter'),
|
|
280
|
+
/** OpenRouter API key (sk-or-v1-...). Env OPENROUTER_API_KEY takes precedence. Sensitive. */
|
|
281
|
+
apiKey: z.string().min(1).optional(),
|
|
282
|
+
/** Ordered glob→slug rules; first match wins. */
|
|
283
|
+
modelMap: z.array(modelMapRuleSchema).optional(),
|
|
284
|
+
/** Per-agent model override. WINS over modelMap for that agent (D1 precedence). */
|
|
285
|
+
perAgent: z
|
|
286
|
+
.object({
|
|
287
|
+
'claude-code': z.string().min(1).optional(),
|
|
288
|
+
goose: z.string().min(1).optional(),
|
|
289
|
+
codex: z.string().min(1).optional(),
|
|
290
|
+
})
|
|
291
|
+
.optional(),
|
|
292
|
+
/** Provider-preference passthrough (cache pinning). */
|
|
293
|
+
providerPreference: providerPreferenceSchema,
|
|
294
|
+
/** Inject a stable top-level session_id for GLM cache affinity. Default true. */
|
|
295
|
+
sessionAffinity: z.boolean().optional(),
|
|
296
|
+
});
|
|
297
|
+
/** A native-type profile: today's canonical Anthropic/OpenAI/ChatGPT routing. No fields. */
|
|
298
|
+
const nativeProfileSchema = z.object({ type: z.literal('native') });
|
|
299
|
+
/** v1 profile union. New provider types extend this discriminator (§16). */
|
|
300
|
+
const providerProfileSchema = z.discriminatedUnion('type', [nativeProfileSchema, openrouterProfileSchema]);
|
|
301
|
+
const modelProvidersSchema = z
|
|
302
|
+
.object({
|
|
303
|
+
/**
|
|
304
|
+
* Name of the profile used when no per-session choice is made. Must name
|
|
305
|
+
* an existing profile or "native". Absent => "native".
|
|
306
|
+
*/
|
|
307
|
+
default: z.string().min(1).optional(),
|
|
308
|
+
/** User-named profiles. A profile named "native" is REJECTED (reserved). */
|
|
309
|
+
profiles: z
|
|
310
|
+
.record(z.string().min(1), providerProfileSchema)
|
|
311
|
+
.refine((p) => !(NATIVE_PROFILE_NAME in p), {
|
|
312
|
+
message: `"${NATIVE_PROFILE_NAME}" is a reserved profile name and cannot be redefined.`,
|
|
313
|
+
})
|
|
314
|
+
.optional(),
|
|
315
|
+
})
|
|
316
|
+
// `default`, when present, must resolve to an existing profile or the reserved native name.
|
|
317
|
+
.refine((mp) => mp.default === undefined || mp.default === NATIVE_PROFILE_NAME || !!mp.profiles?.[mp.default], {
|
|
318
|
+
message: 'modelProviders.default must name a configured profile or "native".',
|
|
319
|
+
path: ['default'],
|
|
320
|
+
})
|
|
321
|
+
.optional();
|
|
204
322
|
export const userConfigSchema = z.object({
|
|
205
323
|
agentModelId: qualifiedModelId.optional(),
|
|
206
324
|
policyModelId: qualifiedModelId.optional(),
|
|
@@ -222,15 +340,19 @@ export const userConfigSchema = z.object({
|
|
|
222
340
|
autoApprove: autoApproveSchema,
|
|
223
341
|
auditRedaction: auditRedactionSchema,
|
|
224
342
|
webSearch: webSearchSchema,
|
|
343
|
+
modelProviders: modelProvidersSchema,
|
|
225
344
|
serverCredentials: z.record(z.string(), z.record(z.string(), z.string().min(1))).optional(),
|
|
226
345
|
signal: signalSchema,
|
|
227
346
|
memory: memorySchema,
|
|
228
347
|
gooseProvider: z.enum(GOOSE_PROVIDERS).optional(),
|
|
229
348
|
gooseModel: z.string().min(1).optional(),
|
|
230
349
|
preferredDockerAgent: z.enum(DOCKER_AGENTS).optional(),
|
|
231
|
-
preferredMode:
|
|
350
|
+
preferredMode: preferredModeSchema.optional(),
|
|
351
|
+
containerRuntime: z.enum(CONTAINER_RUNTIMES).optional(),
|
|
232
352
|
packageInstall: packageInstallSchema,
|
|
233
353
|
dockerResources: dockerResourcesSchema,
|
|
354
|
+
capture: captureSchema,
|
|
355
|
+
snapshot: snapshotSchema,
|
|
234
356
|
});
|
|
235
357
|
/** Known fields derived from the schema. Used for unknown-field detection. */
|
|
236
358
|
const KNOWN_FIELDS = new Set(Object.keys(userConfigSchema.shape));
|
|
@@ -241,6 +363,7 @@ const SENSITIVE_FIELDS = new Set([
|
|
|
241
363
|
'openaiApiKey',
|
|
242
364
|
'serverCredentials',
|
|
243
365
|
'webSearch',
|
|
366
|
+
'modelProviders', // Each openrouter profile may carry an sk-or-v1- API key
|
|
244
367
|
'signal', // Contains phone numbers and identity key fingerprints
|
|
245
368
|
]);
|
|
246
369
|
/** Owner-only read/write permissions for the config file (may contain API keys). */
|
|
@@ -266,6 +389,7 @@ const DEFAULT_CONFIG_CONTENT = JSON.stringify({
|
|
|
266
389
|
auditRedaction: USER_CONFIG_DEFAULTS.auditRedaction,
|
|
267
390
|
preferredMode: USER_CONFIG_DEFAULTS.preferredMode,
|
|
268
391
|
dockerResources: USER_CONFIG_DEFAULTS.dockerResources,
|
|
392
|
+
snapshot: USER_CONFIG_DEFAULTS.snapshot,
|
|
269
393
|
}, null, 2) + '\n';
|
|
270
394
|
/**
|
|
271
395
|
* Loads user configuration from ~/.ironcurtain/config.json.
|
|
@@ -463,6 +587,11 @@ function validateConfig(parsed, configPath) {
|
|
|
463
587
|
}
|
|
464
588
|
return result.data;
|
|
465
589
|
}
|
|
590
|
+
function normalizeLegacyPreferredMode(config) {
|
|
591
|
+
if (config['preferredMode'] !== 'docker')
|
|
592
|
+
return config;
|
|
593
|
+
return { ...config, preferredMode: 'container' };
|
|
594
|
+
}
|
|
466
595
|
/**
|
|
467
596
|
* Merges validated (partial) config with defaults.
|
|
468
597
|
* API key fields default to empty string when not provided.
|
|
@@ -521,12 +650,14 @@ function mergeWithDefaults(config) {
|
|
|
521
650
|
tavily: config.webSearch?.tavily ?? null,
|
|
522
651
|
serpapi: config.webSearch?.serpapi ?? null,
|
|
523
652
|
},
|
|
653
|
+
modelProviders: resolveModelProviders(config.modelProviders),
|
|
524
654
|
serverCredentials: config.serverCredentials ?? {},
|
|
525
655
|
signal: resolveSignalFromUserConfig(config),
|
|
526
656
|
gooseProvider: config.gooseProvider ?? 'anthropic',
|
|
527
657
|
gooseModel: config.gooseModel ?? 'claude-sonnet-4-20250514',
|
|
528
658
|
preferredDockerAgent: config.preferredDockerAgent ?? 'claude-code',
|
|
529
659
|
preferredMode: config.preferredMode ?? USER_CONFIG_DEFAULTS.preferredMode,
|
|
660
|
+
containerRuntime: config.containerRuntime ?? 'auto',
|
|
530
661
|
packageInstall: {
|
|
531
662
|
enabled: config.packageInstall?.enabled ?? true,
|
|
532
663
|
quarantineDays: config.packageInstall?.quarantineDays ?? 2,
|
|
@@ -539,6 +670,99 @@ function mergeWithDefaults(config) {
|
|
|
539
670
|
const { memoryMb = USER_CONFIG_DEFAULTS.dockerResources.memoryMb, cpus = USER_CONFIG_DEFAULTS.dockerResources.cpus, } = config.dockerResources ?? {};
|
|
540
671
|
return { memoryMb, cpus };
|
|
541
672
|
})(),
|
|
673
|
+
snapshot: {
|
|
674
|
+
enabled: config.snapshot?.enabled ?? USER_CONFIG_DEFAULTS.snapshot.enabled,
|
|
675
|
+
maxAgeDays: config.snapshot?.maxAgeDays !== undefined
|
|
676
|
+
? config.snapshot.maxAgeDays
|
|
677
|
+
: USER_CONFIG_DEFAULTS.snapshot.maxAgeDays,
|
|
678
|
+
sweepIntervalHours: config.snapshot?.sweepIntervalHours ?? USER_CONFIG_DEFAULTS.snapshot.sweepIntervalHours,
|
|
679
|
+
},
|
|
680
|
+
// Capture is left undefined unless the user explicitly set
|
|
681
|
+
// `capture.enabled` in the config file. The session-factory
|
|
682
|
+
// resolver applies the `?? false` default (§10).
|
|
683
|
+
...(config.capture?.enabled !== undefined ? { capture: { enabled: config.capture.enabled } } : {}),
|
|
684
|
+
};
|
|
685
|
+
}
|
|
686
|
+
/**
|
|
687
|
+
* Resolves one openrouter profile's fields to a ResolvedOpenRouterProfile.
|
|
688
|
+
* `apiKey` is resolved to `profile.apiKey ?? ''` here; the OPENROUTER_API_KEY
|
|
689
|
+
* env override is layered on for EVERY openrouter profile in applyEnvOverrides().
|
|
690
|
+
* An explicit `modelMap: []` is preserved (uses `??`, not `||`).
|
|
691
|
+
*/
|
|
692
|
+
function resolveOpenrouterProfile(profile) {
|
|
693
|
+
const perAgentInput = profile.perAgent ?? {};
|
|
694
|
+
const perAgent = Object.fromEntries(DOCKER_AGENTS.map((agent) => [agent, perAgentInput[agent]]));
|
|
695
|
+
return {
|
|
696
|
+
type: 'openrouter',
|
|
697
|
+
apiKey: profile.apiKey ?? '',
|
|
698
|
+
modelMap: profile.modelMap ?? DEFAULT_MODEL_MAP,
|
|
699
|
+
// An explicit `modelMap: []` is per-agent-only mode, distinct from omission:
|
|
700
|
+
// `[] !== undefined`, so only a truly-omitted map tracks the defaults.
|
|
701
|
+
usesDefaultMap: profile.modelMap === undefined,
|
|
702
|
+
perAgent,
|
|
703
|
+
providerPreference: profile.providerPreference,
|
|
704
|
+
sessionAffinity: profile.sessionAffinity ?? true,
|
|
705
|
+
};
|
|
706
|
+
}
|
|
707
|
+
/**
|
|
708
|
+
* Resolves the `modelProviders` registry. The implicit `native` profile is
|
|
709
|
+
* always injected; `default` resolves to 'native' when unset. A configured
|
|
710
|
+
* `default` naming a missing profile has already been rejected by the schema
|
|
711
|
+
* `.refine` at load time, so the resolved `default` always names a present key.
|
|
712
|
+
*/
|
|
713
|
+
function resolveModelProviders(config) {
|
|
714
|
+
const profiles = { [NATIVE_PROFILE_NAME]: { type: 'native' } };
|
|
715
|
+
for (const [name, profile] of Object.entries(config?.profiles ?? {})) {
|
|
716
|
+
profiles[name] = profile.type === 'openrouter' ? resolveOpenrouterProfile(profile) : { type: 'native' };
|
|
717
|
+
}
|
|
718
|
+
return {
|
|
719
|
+
default: config?.default ?? NATIVE_PROFILE_NAME,
|
|
720
|
+
profiles,
|
|
721
|
+
};
|
|
722
|
+
}
|
|
723
|
+
/**
|
|
724
|
+
* Resolves the active provider profile for a session from an optional
|
|
725
|
+
* per-session `providerProfileName`. Resolution order (§6): explicit name →
|
|
726
|
+
* `modelProviders.default` (already 'native' when unset) → the resolved
|
|
727
|
+
* profile. Throws a clear error listing the available profiles when the name
|
|
728
|
+
* is not a key of the resolved `profiles` record (guards `--provider-profile`
|
|
729
|
+
* typos and stale scripts). Pure — testable without infra.
|
|
730
|
+
*/
|
|
731
|
+
export function resolveActiveProfile(modelProviders, providerProfileName) {
|
|
732
|
+
const activeName = providerProfileName ?? modelProviders.default;
|
|
733
|
+
if (!Object.prototype.hasOwnProperty.call(modelProviders.profiles, activeName)) {
|
|
734
|
+
const available = Object.keys(modelProviders.profiles).join(', ');
|
|
735
|
+
throw new Error(`Unknown provider profile "${activeName}". Available: ${available}.`);
|
|
736
|
+
}
|
|
737
|
+
return modelProviders.profiles[activeName];
|
|
738
|
+
}
|
|
739
|
+
/**
|
|
740
|
+
* Masks an API key for display / the wire (`sk-...xyz`, `***` for short keys,
|
|
741
|
+
* `none` when absent). The mask FORMAT is a load-bearing contract: the web-ui
|
|
742
|
+
* dispatch compares an incoming wire value against `maskApiKey(currentKey)` to
|
|
743
|
+
* implement the "leave-masked-to-keep" round-trip, and the frontend depends on
|
|
744
|
+
* the same shape. Defined here (a dependency-light leaf) so both the interactive
|
|
745
|
+
* CLI editor and the daemon WS dispatch share ONE definition without either
|
|
746
|
+
* pulling in the other's imports (e.g. `@clack/prompts`).
|
|
747
|
+
*/
|
|
748
|
+
export function maskApiKey(key) {
|
|
749
|
+
if (!key)
|
|
750
|
+
return 'none';
|
|
751
|
+
if (key.length <= 6)
|
|
752
|
+
return '***';
|
|
753
|
+
return key.slice(0, 3) + '...' + key.slice(-3);
|
|
754
|
+
}
|
|
755
|
+
/**
|
|
756
|
+
* Deep-clones a provider preference into a fresh mutable object, copying the
|
|
757
|
+
* `order`/`only` arrays so callers can't alias the source. Shared by the config
|
|
758
|
+
* editor and the web-ui dispatch, which convert between the resolved, DTO, and
|
|
759
|
+
* input shapes with an identical field copy.
|
|
760
|
+
*/
|
|
761
|
+
export function cloneProviderPreference(pref) {
|
|
762
|
+
return {
|
|
763
|
+
order: pref.order ? [...pref.order] : undefined,
|
|
764
|
+
only: pref.only ? [...pref.only] : undefined,
|
|
765
|
+
allowFallbacks: pref.allowFallbacks,
|
|
542
766
|
};
|
|
543
767
|
}
|
|
544
768
|
/**
|
|
@@ -579,8 +803,24 @@ function applyEnvOverrides(config) {
|
|
|
579
803
|
anthropicBaseUrl: validateBaseUrlEnv('ANTHROPIC_BASE_URL') ?? config.anthropicBaseUrl,
|
|
580
804
|
openaiBaseUrl: validateBaseUrlEnv('OPENAI_BASE_URL') ?? config.openaiBaseUrl,
|
|
581
805
|
googleBaseUrl: validateBaseUrlEnv('GOOGLE_API_BASE_URL') ?? config.googleBaseUrl,
|
|
806
|
+
modelProviders: applyOpenrouterKeyEnv(config.modelProviders),
|
|
582
807
|
};
|
|
583
808
|
}
|
|
809
|
+
/**
|
|
810
|
+
* Layers the OPENROUTER_API_KEY env var over EVERY openrouter profile's
|
|
811
|
+
* resolved apiKey (env fills/overrides). Resolution: `env || profile.apiKey`.
|
|
812
|
+
* When the env var is unset, the config-resolved key is left unchanged.
|
|
813
|
+
*/
|
|
814
|
+
function applyOpenrouterKeyEnv(config) {
|
|
815
|
+
const envKey = process.env.OPENROUTER_API_KEY;
|
|
816
|
+
if (!envKey)
|
|
817
|
+
return config;
|
|
818
|
+
const profiles = {};
|
|
819
|
+
for (const [name, profile] of Object.entries(config.profiles)) {
|
|
820
|
+
profiles[name] = profile.type === 'openrouter' ? { ...profile, apiKey: envKey } : profile;
|
|
821
|
+
}
|
|
822
|
+
return { default: config.default, profiles };
|
|
823
|
+
}
|
|
584
824
|
/**
|
|
585
825
|
* Validates a base-URL environment variable using the same schema as the
|
|
586
826
|
* config file (`z.url()`). Returns the validated string when set, or
|
|
@@ -637,6 +877,43 @@ function deepMergeConfig(existing, changes) {
|
|
|
637
877
|
return result;
|
|
638
878
|
return Object.fromEntries(Object.entries(result).filter(([k]) => !keysToRemove.has(k)));
|
|
639
879
|
}
|
|
880
|
+
/**
|
|
881
|
+
* Prevents the `OPENROUTER_API_KEY` env value from being persisted to disk.
|
|
882
|
+
*
|
|
883
|
+
* `applyOpenrouterKeyEnv` layers the env key onto EVERY openrouter profile's
|
|
884
|
+
* resolved `apiKey` at load time, so the editor and web-UI dispatch — which read
|
|
885
|
+
* resolved config — would otherwise bake that env secret into config.json on any
|
|
886
|
+
* `modelProviders` edit (silently, since the masked apiKey diff shows no change).
|
|
887
|
+
* That defeats the point of the env var and contradicts the editor's "API keys
|
|
888
|
+
* are excluded (use env vars)" design.
|
|
889
|
+
*
|
|
890
|
+
* At the single write chokepoint, any openrouter `apiKey` in the outgoing config
|
|
891
|
+
* that equals the env value is replaced with the profile's ON-DISK key (so a
|
|
892
|
+
* genuine file-origin key survives) or omitted entirely (env-only profiles). A
|
|
893
|
+
* user-typed key that differs from the env value is untouched. No-op when the
|
|
894
|
+
* env var is unset.
|
|
895
|
+
*/
|
|
896
|
+
function stripEnvOpenrouterKeys(merged, existing) {
|
|
897
|
+
const envKey = process.env.OPENROUTER_API_KEY;
|
|
898
|
+
if (!envKey)
|
|
899
|
+
return merged;
|
|
900
|
+
const mp = merged['modelProviders'];
|
|
901
|
+
if (!isPlainObject(mp) || !isPlainObject(mp['profiles']))
|
|
902
|
+
return merged;
|
|
903
|
+
const existingMp = existing['modelProviders'];
|
|
904
|
+
const existingProfiles = isPlainObject(existingMp) && isPlainObject(existingMp['profiles']) ? existingMp['profiles'] : {};
|
|
905
|
+
for (const [name, profile] of Object.entries(mp['profiles'])) {
|
|
906
|
+
if (!isPlainObject(profile) || profile['type'] !== 'openrouter' || profile['apiKey'] !== envKey)
|
|
907
|
+
continue;
|
|
908
|
+
const fileProfile = existingProfiles[name];
|
|
909
|
+
const fileKey = isPlainObject(fileProfile) && typeof fileProfile['apiKey'] === 'string' ? fileProfile['apiKey'] : undefined;
|
|
910
|
+
if (fileKey && fileKey !== envKey)
|
|
911
|
+
profile['apiKey'] = fileKey;
|
|
912
|
+
else
|
|
913
|
+
delete profile['apiKey'];
|
|
914
|
+
}
|
|
915
|
+
return merged;
|
|
916
|
+
}
|
|
640
917
|
/**
|
|
641
918
|
* Saves user config changes to ~/.ironcurtain/config.json.
|
|
642
919
|
*
|
|
@@ -660,7 +937,7 @@ export function saveUserConfig(changes) {
|
|
|
660
937
|
else {
|
|
661
938
|
mkdirSync(dirname(configPath), { recursive: true });
|
|
662
939
|
}
|
|
663
|
-
const merged = deepMergeConfig(existing, changes);
|
|
940
|
+
const merged = normalizeLegacyPreferredMode(stripEnvOpenrouterKeys(deepMergeConfig(existing, changes), existing));
|
|
664
941
|
// Validate the merged result (only known fields)
|
|
665
942
|
const result = userConfigSchema.safeParse(merged);
|
|
666
943
|
if (!result.success) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user-config.js","sourceRoot":"","sources":["../../src/config/user-config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"user-config.js","sourceRoot":"","sources":["../../src/config/user-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,11 +10,10 @@
|
|
|
10
10
|
* control socket. If running, the command is forwarded to the daemon.
|
|
11
11
|
* Otherwise, the command operates directly on the filesystem.
|
|
12
12
|
*/
|
|
13
|
-
import { parseArgs } from 'node:util';
|
|
14
13
|
import { IronCurtainDaemon } from './ironcurtain-daemon.js';
|
|
15
14
|
import { sendControlRequest } from './control-socket.js';
|
|
16
15
|
import { formatDuration } from '../cron/format-utils.js';
|
|
17
|
-
import { checkHelp } from '../cli-help.js';
|
|
16
|
+
import { checkHelp, parseArgsStrict } from '../cli-help.js';
|
|
18
17
|
const daemonSpec = {
|
|
19
18
|
name: 'ironcurtain daemon',
|
|
20
19
|
description: 'Unified Signal + cron daemon',
|
|
@@ -41,6 +40,11 @@ const daemonSpec = {
|
|
|
41
40
|
{ flag: 'web-ui', description: 'Enable web UI server' },
|
|
42
41
|
{ flag: 'web-port', description: 'Web UI port (default: 7400)', placeholder: '<port>' },
|
|
43
42
|
{ flag: 'web-ui-dev', description: 'Skip Origin validation (for Vite dev server)' },
|
|
43
|
+
{ flag: 'capture-traces', description: 'Capture LLM API traces for every session this daemon launches' },
|
|
44
|
+
{
|
|
45
|
+
flag: 'allow-policy-mutation',
|
|
46
|
+
description: 'Enable persona policy-mutation methods over the web UI (off by default)',
|
|
47
|
+
},
|
|
44
48
|
{ flag: 'runs', description: 'Number of recent runs to show (for logs)', placeholder: '<N>' },
|
|
45
49
|
],
|
|
46
50
|
};
|
|
@@ -78,7 +82,7 @@ function handleForwardedResponse(response, successMessage) {
|
|
|
78
82
|
return true;
|
|
79
83
|
}
|
|
80
84
|
export async function runDaemonCommand(argv) {
|
|
81
|
-
const { values, positionals } =
|
|
85
|
+
const { values, positionals } = parseArgsStrict({
|
|
82
86
|
args: argv,
|
|
83
87
|
options: {
|
|
84
88
|
agent: { type: 'string', short: 'a' },
|
|
@@ -86,13 +90,14 @@ export async function runDaemonCommand(argv) {
|
|
|
86
90
|
'web-ui': { type: 'boolean' },
|
|
87
91
|
'web-port': { type: 'string' },
|
|
88
92
|
'web-ui-dev': { type: 'boolean' },
|
|
93
|
+
'capture-traces': { type: 'boolean' },
|
|
94
|
+
'allow-policy-mutation': { type: 'boolean' },
|
|
89
95
|
force: { type: 'boolean', short: 'f' },
|
|
90
96
|
runs: { type: 'string' },
|
|
91
97
|
help: { type: 'boolean', short: 'h' },
|
|
92
98
|
},
|
|
93
99
|
allowPositionals: true,
|
|
94
|
-
|
|
95
|
-
});
|
|
100
|
+
}, daemonSpec.name);
|
|
96
101
|
if (checkHelp(values, daemonSpec)) {
|
|
97
102
|
return;
|
|
98
103
|
}
|
|
@@ -115,10 +120,14 @@ export async function runDaemonCommand(argv) {
|
|
|
115
120
|
process.exit(1);
|
|
116
121
|
}
|
|
117
122
|
const webUiDev = values['web-ui-dev'];
|
|
123
|
+
const captureTracesDefault = values['capture-traces'] ?? false;
|
|
124
|
+
const allowPolicyMutation = values['allow-policy-mutation'] ?? false;
|
|
118
125
|
const daemon = new IronCurtainDaemon({
|
|
119
126
|
mode,
|
|
120
127
|
noSignal: values['no-signal'],
|
|
121
128
|
webUi: webUiEnabled ? { port: webPort, devMode: webUiDev } : undefined,
|
|
129
|
+
captureTracesDefault,
|
|
130
|
+
allowPolicyMutation,
|
|
122
131
|
});
|
|
123
132
|
// Handle shutdown signals
|
|
124
133
|
const shutdownHandler = async () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daemon-command.js","sourceRoot":"","sources":["../../src/daemon/daemon-command.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"daemon-command.js","sourceRoot":"","sources":["../../src/daemon/daemon-command.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,6 +26,20 @@ export interface IronCurtainDaemonOptions {
|
|
|
26
26
|
host?: string;
|
|
27
27
|
devMode?: boolean;
|
|
28
28
|
};
|
|
29
|
+
/**
|
|
30
|
+
* Process-wide default for trajectory capture. Set via the daemon CLI
|
|
31
|
+
* `--capture-traces` flag. Becomes the fallback for every session the
|
|
32
|
+
* daemon launches; per-session JSON-RPC overrides win when present.
|
|
33
|
+
* See docs/designs/mitm-token-trajectory-capture.md §10.
|
|
34
|
+
*/
|
|
35
|
+
readonly captureTracesDefault?: boolean;
|
|
36
|
+
/**
|
|
37
|
+
* Enables the persona policy-mutation methods over the web UI. Set via the
|
|
38
|
+
* daemon CLI `--allow-policy-mutation` flag. Off by default; CLI-only (not
|
|
39
|
+
* config-persisted). When off, every web-UI persona-mutation method returns
|
|
40
|
+
* POLICY_MUTATION_FORBIDDEN. See docs/designs/web-ui-policy-persona-management.md §7.
|
|
41
|
+
*/
|
|
42
|
+
readonly allowPolicyMutation?: boolean;
|
|
29
43
|
}
|
|
30
44
|
export declare class IronCurtainDaemon {
|
|
31
45
|
private readonly mode;
|
|
@@ -46,6 +60,10 @@ export declare class IronCurtainDaemon {
|
|
|
46
60
|
private tokenStreamBridge;
|
|
47
61
|
/** Web UI options from constructor. */
|
|
48
62
|
private readonly webUiOptions;
|
|
63
|
+
/** Daemon-process-wide capture-traces default (set via CLI). */
|
|
64
|
+
private readonly captureTracesDefault;
|
|
65
|
+
/** Persona policy-mutation kill switch (set via CLI `--allow-policy-mutation`). */
|
|
66
|
+
private readonly allowPolicyMutation;
|
|
49
67
|
/** Control request handler (saved for web UI reuse). */
|
|
50
68
|
private controlRequestHandler;
|
|
51
69
|
/**
|