@provos/ironcurtain 0.5.1 → 0.7.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.
Files changed (217) hide show
  1. package/README.md +85 -66
  2. package/dist/cli-help.d.ts +63 -0
  3. package/dist/cli-help.js +102 -0
  4. package/dist/cli-help.js.map +1 -0
  5. package/dist/cli.js +78 -52
  6. package/dist/cli.js.map +1 -1
  7. package/dist/config/config-command.js +136 -2
  8. package/dist/config/config-command.js.map +1 -1
  9. package/dist/config/generated/tool-annotations.json +487 -338
  10. package/dist/config/index.d.ts +21 -1
  11. package/dist/config/index.js +12 -4
  12. package/dist/config/index.js.map +1 -1
  13. package/dist/config/mcp-servers.json +2 -8
  14. package/dist/config/paths.d.ts +30 -0
  15. package/dist/config/paths.js +58 -0
  16. package/dist/config/paths.js.map +1 -1
  17. package/dist/config/tool-description-hints.json +15 -0
  18. package/dist/config/types.d.ts +13 -0
  19. package/dist/config/user-config.d.ts +21 -0
  20. package/dist/config/user-config.js +8 -0
  21. package/dist/config/user-config.js.map +1 -1
  22. package/dist/cron/compile-task-policy.d.ts +17 -0
  23. package/dist/cron/compile-task-policy.js +39 -0
  24. package/dist/cron/compile-task-policy.js.map +1 -0
  25. package/dist/cron/cron-scheduler.d.ts +65 -0
  26. package/dist/cron/cron-scheduler.js +184 -0
  27. package/dist/cron/cron-scheduler.js.map +1 -0
  28. package/dist/cron/file-lock.d.ts +41 -0
  29. package/dist/cron/file-lock.js +156 -0
  30. package/dist/cron/file-lock.js.map +1 -0
  31. package/dist/cron/format-utils.d.ts +18 -0
  32. package/dist/cron/format-utils.js +145 -0
  33. package/dist/cron/format-utils.js.map +1 -0
  34. package/dist/cron/git-sync.d.ts +22 -0
  35. package/dist/cron/git-sync.js +121 -0
  36. package/dist/cron/git-sync.js.map +1 -0
  37. package/dist/cron/headless-transport.d.ts +27 -0
  38. package/dist/cron/headless-transport.js +43 -0
  39. package/dist/cron/headless-transport.js.map +1 -0
  40. package/dist/cron/job-commands.d.ts +39 -0
  41. package/dist/cron/job-commands.js +522 -0
  42. package/dist/cron/job-commands.js.map +1 -0
  43. package/dist/cron/job-store.d.ts +35 -0
  44. package/dist/cron/job-store.js +111 -0
  45. package/dist/cron/job-store.js.map +1 -0
  46. package/dist/cron/types.d.ts +127 -0
  47. package/dist/cron/types.js +25 -0
  48. package/dist/cron/types.js.map +1 -0
  49. package/dist/daemon/control-socket.d.ts +127 -0
  50. package/dist/daemon/control-socket.js +261 -0
  51. package/dist/daemon/control-socket.js.map +1 -0
  52. package/dist/daemon/daemon-command.d.ts +13 -0
  53. package/dist/daemon/daemon-command.js +230 -0
  54. package/dist/daemon/daemon-command.js.map +1 -0
  55. package/dist/daemon/ironcurtain-daemon.d.ts +90 -0
  56. package/dist/daemon/ironcurtain-daemon.js +548 -0
  57. package/dist/daemon/ironcurtain-daemon.js.map +1 -0
  58. package/dist/docker/adapters/claude-code.js +8 -48
  59. package/dist/docker/adapters/claude-code.js.map +1 -1
  60. package/dist/docker/adapters/goose.d.ts +58 -0
  61. package/dist/docker/adapters/goose.js +250 -0
  62. package/dist/docker/adapters/goose.js.map +1 -0
  63. package/dist/docker/adapters/shared-scripts.d.ts +29 -0
  64. package/dist/docker/adapters/shared-scripts.js +80 -0
  65. package/dist/docker/adapters/shared-scripts.js.map +1 -0
  66. package/dist/docker/agent-adapter.d.ts +12 -0
  67. package/dist/docker/agent-adapter.js.map +1 -1
  68. package/dist/docker/agent-registry.d.ts +6 -1
  69. package/dist/docker/agent-registry.js +10 -1
  70. package/dist/docker/agent-registry.js.map +1 -1
  71. package/dist/docker/docker-agent-session.d.ts +2 -25
  72. package/dist/docker/docker-agent-session.js +7 -106
  73. package/dist/docker/docker-agent-session.js.map +1 -1
  74. package/dist/docker/docker-infrastructure.d.ts +8 -0
  75. package/dist/docker/docker-infrastructure.js +22 -14
  76. package/dist/docker/docker-infrastructure.js.map +1 -1
  77. package/dist/docker/mitm-proxy.d.ts +5 -2
  78. package/dist/docker/mitm-proxy.js +169 -46
  79. package/dist/docker/mitm-proxy.js.map +1 -1
  80. package/dist/docker/oauth-credentials.d.ts +15 -2
  81. package/dist/docker/oauth-credentials.js +92 -8
  82. package/dist/docker/oauth-credentials.js.map +1 -1
  83. package/dist/docker/oauth-token-manager.d.ts +80 -0
  84. package/dist/docker/oauth-token-manager.js +133 -0
  85. package/dist/docker/oauth-token-manager.js.map +1 -0
  86. package/dist/docker/pty-session.d.ts +2 -0
  87. package/dist/docker/pty-session.js +17 -8
  88. package/dist/docker/pty-session.js.map +1 -1
  89. package/dist/escalation/escalation-watcher.d.ts +2 -0
  90. package/dist/escalation/escalation-watcher.js +5 -0
  91. package/dist/escalation/escalation-watcher.js.map +1 -1
  92. package/dist/escalation/listener-command.js +9 -58
  93. package/dist/escalation/listener-command.js.map +1 -1
  94. package/dist/escalation/listener-lock.d.ts +20 -0
  95. package/dist/escalation/listener-lock.js +69 -0
  96. package/dist/escalation/listener-lock.js.map +1 -0
  97. package/dist/escalation/session-registry.js +1 -14
  98. package/dist/escalation/session-registry.js.map +1 -1
  99. package/dist/index.js +51 -2
  100. package/dist/index.js.map +1 -1
  101. package/dist/mux/mux-app.d.ts +24 -0
  102. package/dist/mux/mux-app.js +450 -0
  103. package/dist/mux/mux-app.js.map +1 -0
  104. package/dist/mux/mux-command.d.ts +7 -0
  105. package/dist/mux/mux-command.js +104 -0
  106. package/dist/mux/mux-command.js.map +1 -0
  107. package/dist/mux/mux-escalation-manager.d.ts +48 -0
  108. package/dist/mux/mux-escalation-manager.js +162 -0
  109. package/dist/mux/mux-escalation-manager.js.map +1 -0
  110. package/dist/mux/mux-input-handler.d.ts +54 -0
  111. package/dist/mux/mux-input-handler.js +512 -0
  112. package/dist/mux/mux-input-handler.js.map +1 -0
  113. package/dist/mux/mux-renderer.d.ts +106 -0
  114. package/dist/mux/mux-renderer.js +850 -0
  115. package/dist/mux/mux-renderer.js.map +1 -0
  116. package/dist/mux/mux-splash.d.ts +17 -0
  117. package/dist/mux/mux-splash.js +323 -0
  118. package/dist/mux/mux-splash.js.map +1 -0
  119. package/dist/mux/paste-interceptor.d.ts +22 -0
  120. package/dist/mux/paste-interceptor.js +143 -0
  121. package/dist/mux/paste-interceptor.js.map +1 -0
  122. package/dist/mux/pty-bridge.d.ts +79 -0
  123. package/dist/mux/pty-bridge.js +151 -0
  124. package/dist/mux/pty-bridge.js.map +1 -0
  125. package/dist/mux/trusted-input.d.ts +27 -0
  126. package/dist/mux/trusted-input.js +27 -0
  127. package/dist/mux/trusted-input.js.map +1 -0
  128. package/dist/mux/types.d.ts +99 -0
  129. package/dist/mux/types.js +57 -0
  130. package/dist/mux/types.js.map +1 -0
  131. package/dist/pipeline/annotate.js +2 -1
  132. package/dist/pipeline/annotate.js.map +1 -1
  133. package/dist/pipeline/compile.d.ts +4 -34
  134. package/dist/pipeline/compile.js +29 -568
  135. package/dist/pipeline/compile.js.map +1 -1
  136. package/dist/pipeline/constitution-compiler.js +1 -1
  137. package/dist/pipeline/mcp-connections.d.ts +16 -0
  138. package/dist/pipeline/mcp-connections.js +61 -0
  139. package/dist/pipeline/mcp-connections.js.map +1 -0
  140. package/dist/pipeline/pipeline-runner.d.ts +86 -0
  141. package/dist/pipeline/pipeline-runner.js +554 -0
  142. package/dist/pipeline/pipeline-runner.js.map +1 -0
  143. package/dist/pipeline/pipeline-shared.d.ts +29 -2
  144. package/dist/pipeline/pipeline-shared.js +68 -12
  145. package/dist/pipeline/pipeline-shared.js.map +1 -1
  146. package/dist/pipeline/refresh-lists.js +38 -12
  147. package/dist/pipeline/refresh-lists.js.map +1 -1
  148. package/dist/pipeline/scenario-generator.js +2 -1
  149. package/dist/pipeline/scenario-generator.js.map +1 -1
  150. package/dist/pipeline/tool-annotator.d.ts +3 -3
  151. package/dist/pipeline/tool-annotator.js +96 -4
  152. package/dist/pipeline/tool-annotator.js.map +1 -1
  153. package/dist/pipeline/types.d.ts +52 -0
  154. package/dist/sandbox/index.js +40 -1
  155. package/dist/sandbox/index.js.map +1 -1
  156. package/dist/session/agent-session.d.ts +3 -0
  157. package/dist/session/agent-session.js +13 -1
  158. package/dist/session/agent-session.js.map +1 -1
  159. package/dist/session/index.js +65 -9
  160. package/dist/session/index.js.map +1 -1
  161. package/dist/session/preflight.js +26 -6
  162. package/dist/session/preflight.js.map +1 -1
  163. package/dist/session/prompts.d.ts +14 -0
  164. package/dist/session/prompts.js +39 -2
  165. package/dist/session/prompts.js.map +1 -1
  166. package/dist/session/session-manager.d.ts +105 -0
  167. package/dist/session/session-manager.js +134 -0
  168. package/dist/session/session-manager.js.map +1 -0
  169. package/dist/session/types.d.ts +33 -0
  170. package/dist/session/workspace-validation.d.ts +19 -0
  171. package/dist/session/workspace-validation.js +66 -0
  172. package/dist/session/workspace-validation.js.map +1 -0
  173. package/dist/signal/bot-command.d.ts +2 -0
  174. package/dist/signal/bot-command.js +8 -0
  175. package/dist/signal/bot-command.js.map +1 -1
  176. package/dist/signal/format.d.ts +27 -0
  177. package/dist/signal/format.js +59 -0
  178. package/dist/signal/format.js.map +1 -1
  179. package/dist/signal/signal-bot-daemon.d.ts +27 -25
  180. package/dist/signal/signal-bot-daemon.js +145 -130
  181. package/dist/signal/signal-bot-daemon.js.map +1 -1
  182. package/dist/signal/signal-container.js +63 -19
  183. package/dist/signal/signal-container.js.map +1 -1
  184. package/dist/signal/signal-transport.js +3 -8
  185. package/dist/signal/signal-transport.js.map +1 -1
  186. package/dist/trusted-process/auto-approver.d.ts +13 -4
  187. package/dist/trusted-process/auto-approver.js +12 -5
  188. package/dist/trusted-process/auto-approver.js.map +1 -1
  189. package/dist/trusted-process/domain-utils.d.ts +38 -4
  190. package/dist/trusted-process/domain-utils.js +118 -11
  191. package/dist/trusted-process/domain-utils.js.map +1 -1
  192. package/dist/trusted-process/escalation.js +5 -0
  193. package/dist/trusted-process/escalation.js.map +1 -1
  194. package/dist/trusted-process/index.js +6 -2
  195. package/dist/trusted-process/index.js.map +1 -1
  196. package/dist/trusted-process/mcp-client-manager.js +11 -5
  197. package/dist/trusted-process/mcp-client-manager.js.map +1 -1
  198. package/dist/trusted-process/mcp-proxy-server.d.ts +2 -0
  199. package/dist/trusted-process/mcp-proxy-server.js +98 -32
  200. package/dist/trusted-process/mcp-proxy-server.js.map +1 -1
  201. package/dist/trusted-process/permissive-output-validator.d.ts +23 -0
  202. package/dist/trusted-process/permissive-output-validator.js +10 -0
  203. package/dist/trusted-process/permissive-output-validator.js.map +1 -0
  204. package/dist/trusted-process/policy-engine.d.ts +27 -4
  205. package/dist/trusted-process/policy-engine.js +152 -57
  206. package/dist/trusted-process/policy-engine.js.map +1 -1
  207. package/dist/trusted-process/tool-description-hints.d.ts +19 -0
  208. package/dist/trusted-process/tool-description-hints.js +53 -0
  209. package/dist/trusted-process/tool-description-hints.js.map +1 -0
  210. package/dist/types/argument-roles.d.ts +33 -1
  211. package/dist/types/argument-roles.js +129 -1
  212. package/dist/types/argument-roles.js.map +1 -1
  213. package/docker/Dockerfile.goose +34 -0
  214. package/docker/entrypoint-goose.sh +30 -0
  215. package/package.json +6 -1
  216. package/src/config/generated/tool-annotations.json +487 -338
  217. package/src/config/mcp-servers.json +2 -8
@@ -11,15 +11,12 @@
11
11
  * 2. sendMessage() -- docker exec agent command, wait for exit, collect output
12
12
  * 3. close() -- stop container, stop proxies, clean up
13
13
  */
14
- import { mkdirSync, readdirSync, readFileSync, writeFileSync, existsSync, copyFileSync, rmSync } from 'node:fs';
15
- import { resolve, dirname } from 'node:path';
16
- import { mkdtempSync } from 'node:fs';
17
- import { tmpdir, arch } from 'node:os';
14
+ import { mkdirSync, writeFileSync, existsSync } from 'node:fs';
15
+ import { resolve } from 'node:path';
18
16
  import { quote } from 'shell-quote';
19
- import { createHash } from 'node:crypto';
20
- import { fileURLToPath } from 'node:url';
21
17
  import { CONTAINER_WORKSPACE_DIR } from './agent-adapter.js';
22
18
  import { AuditLogTailer } from './audit-log-tailer.js';
19
+ import { ensureImage } from './docker-infrastructure.js';
23
20
  import { prepareSession } from './orientation.js';
24
21
  import { INTERNAL_NETWORK_NAME, INTERNAL_NETWORK_SUBNET, INTERNAL_NETWORK_GATEWAY } from './platform.js';
25
22
  import { SessionNotReadyError, SessionClosedError } from '../session/errors.js';
@@ -53,6 +50,7 @@ export class DockerAgentSession {
53
50
  cumulativeCostUsd = 0;
54
51
  onEscalation;
55
52
  onEscalationExpired;
53
+ onEscalationResolved;
56
54
  onDiagnostic;
57
55
  preBuiltInfrastructure;
58
56
  constructor(deps) {
@@ -71,6 +69,7 @@ export class DockerAgentSession {
71
69
  this.useTcp = deps.useTcp ?? false;
72
70
  this.onEscalation = deps.onEscalation;
73
71
  this.onEscalationExpired = deps.onEscalationExpired;
72
+ this.onEscalationResolved = deps.onEscalationResolved;
74
73
  this.onDiagnostic = deps.onDiagnostic;
75
74
  this.preBuiltInfrastructure = deps.preBuiltInfrastructure;
76
75
  this.createdAt = new Date().toISOString();
@@ -130,7 +129,7 @@ export class DockerAgentSession {
130
129
  this.systemPrompt = systemPrompt;
131
130
  // 5. Ensure Docker image exists (build if needed, with CA cert)
132
131
  image = await this.adapter.getImage();
133
- await this.ensureImage(image);
132
+ await ensureImage(image, this.docker, this.ca);
134
133
  }
135
134
  // 6. Create and start container
136
135
  const shortId = this.sessionId.substring(0, 12);
@@ -246,6 +245,7 @@ export class DockerAgentSession {
246
245
  this.escalationWatcher = createEscalationWatcher(this.escalationDir, {
247
246
  onEscalation: (request) => this.onEscalation?.(request),
248
247
  onEscalationExpired: () => this.onEscalationExpired?.(),
248
+ onEscalationResolved: (id, decision) => this.onEscalationResolved?.(id, decision),
249
249
  });
250
250
  this.escalationWatcher.start();
251
251
  // Create the audit log file so fs.watch() can attach to it.
@@ -405,105 +405,6 @@ export class DockerAgentSession {
405
405
  // Ignore write failures
406
406
  }
407
407
  }
408
- /**
409
- * Ensures the Docker image exists and is up-to-date, building it
410
- * (and the base image) if needed.
411
- *
412
- * Staleness detection uses a content hash of all build inputs
413
- * (Dockerfiles, entrypoint scripts, CA certificate) stored as
414
- * Docker image labels.
415
- */
416
- async ensureImage(image) {
417
- const packageRoot = resolve(dirname(fileURLToPath(import.meta.url)), '..', '..');
418
- const dockerDir = resolve(packageRoot, 'docker');
419
- // On arm64 hosts (Apple Silicon), use the lightweight arm64-native Dockerfile
420
- // instead of the amd64-only devcontainers/universal image.
421
- const baseDockerfile = arch() === 'arm64' && existsSync(resolve(dockerDir, 'Dockerfile.base.arm64'))
422
- ? 'Dockerfile.base.arm64'
423
- : 'Dockerfile.base';
424
- // Build base image with CA cert baked in (if stale or missing)
425
- const baseImage = 'ironcurtain-base:latest';
426
- const baseBuildHash = this.computeBuildHash(dockerDir, [baseDockerfile]);
427
- const baseRebuilt = await this.ensureBaseImage(baseImage, dockerDir, baseDockerfile, baseBuildHash);
428
- // Build the agent-specific image (if stale, missing, or base was rebuilt)
429
- const agentName = image.replace('ironcurtain-', '').replace(':latest', '');
430
- const dockerfile = `Dockerfile.${agentName}`;
431
- const agentDockerfilePath = resolve(dockerDir, dockerfile);
432
- if (!existsSync(agentDockerfilePath)) {
433
- throw new Error(`Dockerfile not found for agent "${agentName}": ${agentDockerfilePath}`);
434
- }
435
- const agentBuildHash = this.computeBuildHash(dockerDir, [dockerfile], baseBuildHash);
436
- const needsAgentBuild = baseRebuilt || (await this.isImageStale(image, agentBuildHash));
437
- if (needsAgentBuild) {
438
- logger.info(`Building Docker image ${image}...`);
439
- await this.docker.buildImage(image, agentDockerfilePath, dockerDir, {
440
- 'ironcurtain.build-hash': agentBuildHash,
441
- });
442
- logger.info(`Docker image ${image} built successfully`);
443
- }
444
- }
445
- /**
446
- * Ensures the base image exists and is up-to-date.
447
- * Returns true if the base image was (re)built.
448
- */
449
- async ensureBaseImage(baseImage, dockerDir, dockerfile, buildHash) {
450
- if (!(await this.isImageStale(baseImage, buildHash)))
451
- return false;
452
- logger.info('Building base Docker image (this may take a while on first run)...');
453
- // Create temporary build context with CA cert
454
- const tmpContext = mkdtempSync(resolve(tmpdir(), 'ironcurtain-build-'));
455
- try {
456
- // Copy Dockerfile and entrypoint scripts
457
- for (const file of readdirSync(dockerDir)) {
458
- copyFileSync(resolve(dockerDir, file), resolve(tmpContext, file));
459
- }
460
- // Copy CA cert into build context
461
- copyFileSync(this.ca.certPath, resolve(tmpContext, 'ironcurtain-ca-cert.pem'));
462
- await this.docker.buildImage(baseImage, resolve(tmpContext, dockerfile), tmpContext, {
463
- 'ironcurtain.build-hash': buildHash,
464
- });
465
- }
466
- finally {
467
- rmSync(tmpContext, { recursive: true, force: true });
468
- }
469
- logger.info('Base Docker image built successfully');
470
- return true;
471
- }
472
- /**
473
- * Checks if an image needs (re)building by comparing the stored
474
- * build hash label against the expected hash.
475
- */
476
- async isImageStale(image, expectedHash) {
477
- if (!(await this.docker.imageExists(image)))
478
- return true;
479
- const storedHash = await this.docker.getImageLabel(image, 'ironcurtain.build-hash');
480
- return storedHash !== expectedHash;
481
- }
482
- /**
483
- * Computes a SHA-256 content hash of all files in the docker directory
484
- * plus the CA certificate. This captures changes to Dockerfiles,
485
- * entrypoint scripts, and the CA cert.
486
- */
487
- computeBuildHash(dockerDir, dockerfiles, parentHash) {
488
- const hash = createHash('sha256');
489
- // Hash specified Dockerfiles and all entrypoint scripts
490
- const files = readdirSync(dockerDir).sort();
491
- for (const file of files) {
492
- // Include requested Dockerfiles and all entrypoint/script files
493
- if (dockerfiles.includes(file) || file.endsWith('.sh')) {
494
- hash.update(`file:${file}\n`);
495
- hash.update(readFileSync(resolve(dockerDir, file)));
496
- }
497
- }
498
- // Hash CA certificate content
499
- hash.update('ca-cert\n');
500
- hash.update(this.ca.certPem);
501
- // Chain parent hash for agent images (so base rebuild triggers agent rebuild)
502
- if (parentHash) {
503
- hash.update(`parent:${parentHash}\n`);
504
- }
505
- return hash.digest('hex');
506
- }
507
408
  }
508
409
  /** Formats a command array for logging, truncating long arguments. */
509
410
  function formatCommand(args) {
@@ -1 +1 @@
1
- {"version":3,"file":"docker-agent-session.js","sourceRoot":"","sources":["../../src/docker/docker-agent-session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"docker-agent-session.js","sourceRoot":"","sources":["../../src/docker/docker-agent-session.ts"],"names":[],"mappings":"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"}
@@ -49,3 +49,11 @@ export interface DockerInfrastructure {
49
49
  export declare function prepareDockerInfrastructure(config: IronCurtainConfig, mode: SessionMode & {
50
50
  kind: 'docker';
51
51
  }, sessionDir: string, sandboxDir: string, escalationDir: string, auditLogPath: string, sessionId: string): Promise<DockerInfrastructure>;
52
+ /**
53
+ * Ensures the Docker image exists and is up-to-date, building it
54
+ * (and the base image) if needed.
55
+ *
56
+ * Exported so DockerAgentSession can reuse this logic in its legacy
57
+ * (non-preBuiltInfrastructure) initialization path.
58
+ */
59
+ export declare function ensureImage(image: string, docker: DockerManager, ca: CertificateAuthority): Promise<void>;
@@ -7,10 +7,12 @@
7
7
  */
8
8
  import { resolve, dirname } from 'node:path';
9
9
  import { fileURLToPath } from 'node:url';
10
- import { existsSync, readdirSync, readFileSync, copyFileSync, mkdtempSync, rmSync } from 'node:fs';
10
+ import { existsSync, readdirSync, readFileSync, copyFileSync, mkdtempSync, rmSync, mkdirSync } from 'node:fs';
11
11
  import { arch, tmpdir } from 'node:os';
12
12
  import { createHash } from 'node:crypto';
13
13
  import * as logger from '../logger.js';
14
+ /** Hosts that use Anthropic OAuth credentials when available. */
15
+ const ANTHROPIC_HOSTS = new Set(['api.anthropic.com', 'platform.claude.com']);
14
16
  /**
15
17
  * Prepares all Docker infrastructure needed to run a session.
16
18
  *
@@ -30,17 +32,19 @@ export async function prepareDockerInfrastructure(config, mode, sessionDir, sand
30
32
  const { useTcpTransport } = await import('./platform.js');
31
33
  const { getIronCurtainHome } = await import('../config/paths.js');
32
34
  const { prepareSession } = await import('./orientation.js');
33
- const { mkdirSync } = await import('node:fs');
34
35
  const { detectAuthMethod } = await import('./oauth-credentials.js');
35
- await registerBuiltinAdapters();
36
+ const { OAuthTokenManager } = await import('./oauth-token-manager.js');
37
+ await registerBuiltinAdapters(config.userConfig);
36
38
  const adapter = getAgent(mode.agent);
37
39
  const useTcp = useTcpTransport();
38
- // Detect authentication method. When preflight already determined the auth kind,
39
- // pass it as a hint to skip potentially slow/interactive sources (e.g., macOS
40
- // Keychain) that were already checked during preflight.
41
- const authMethod = detectAuthMethod(config);
40
+ // Detect authentication method. Adapters with detectCredential() handle
41
+ // their own credential detection (e.g., Goose checks provider-specific keys).
42
+ // Adapters without it fall back to detectAuthMethod() (Anthropic OAuth + API key).
43
+ const authMethod = adapter.detectCredential ? adapter.detectCredential(config) : detectAuthMethod(config);
42
44
  if (authMethod.kind === 'none') {
43
- throw new Error('No credentials available for Docker session. ' + 'Log in with `claude login` (OAuth) or set ANTHROPIC_API_KEY.');
45
+ throw new Error(adapter.credentialHelpText ??
46
+ 'No credentials available for Docker session. ' +
47
+ 'Log in with `claude login` (OAuth) or set ANTHROPIC_API_KEY.');
44
48
  }
45
49
  const authKind = authMethod.kind;
46
50
  // Stamp auth kind onto the caller's session config so buildEnv() can read it.
@@ -65,6 +69,9 @@ export async function prepareDockerInfrastructure(config, mode, sessionDir, sand
65
69
  // Providers sharing the same fakeKeyPrefix (and thus the same real credential)
66
70
  // reuse the same fake key so a single container token authenticates against all hosts.
67
71
  const oauthAccessToken = authMethod.kind === 'oauth' ? authMethod.credentials.accessToken : undefined;
72
+ const tokenManager = authMethod.kind === 'oauth'
73
+ ? new OAuthTokenManager(authMethod.credentials, { canRefresh: authMethod.source === 'file' })
74
+ : undefined;
68
75
  const providers = adapter.getProviders(authKind);
69
76
  const fakeKeys = new Map();
70
77
  const providerMappings = [];
@@ -77,7 +84,9 @@ export async function prepareDockerInfrastructure(config, mode, sessionDir, sand
77
84
  }
78
85
  fakeKeys.set(providerConfig.host, fakeKey);
79
86
  const realKey = resolveRealKey(providerConfig.host, config, oauthAccessToken);
80
- providerMappings.push({ config: providerConfig, fakeKey, realKey });
87
+ // Attach the token manager only to Anthropic hosts (the ones using OAuth)
88
+ const hostTokenManager = tokenManager && ANTHROPIC_HOSTS.has(providerConfig.host) ? tokenManager : undefined;
89
+ providerMappings.push({ config: providerConfig, fakeKey, realKey, tokenManager: hostTokenManager });
81
90
  }
82
91
  const mitmProxy = useTcp
83
92
  ? createMitmProxy({
@@ -156,8 +165,7 @@ export async function prepareDockerInfrastructure(config, mode, sessionDir, sand
156
165
  * For all other cases, falls back to the API key from config.
157
166
  */
158
167
  function resolveRealKey(host, config, oauthAccessToken) {
159
- // OAuth access token replaces API key for Anthropic hosts
160
- if (oauthAccessToken && (host === 'api.anthropic.com' || host === 'platform.claude.com')) {
168
+ if (oauthAccessToken && ANTHROPIC_HOSTS.has(host)) {
161
169
  return oauthAccessToken;
162
170
  }
163
171
  let key;
@@ -185,10 +193,10 @@ function resolveRealKey(host, config, oauthAccessToken) {
185
193
  * Ensures the Docker image exists and is up-to-date, building it
186
194
  * (and the base image) if needed.
187
195
  *
188
- * Extracted from DockerAgentSession.ensureImage() so both standard
189
- * and PTY paths can use it.
196
+ * Exported so DockerAgentSession can reuse this logic in its legacy
197
+ * (non-preBuiltInfrastructure) initialization path.
190
198
  */
191
- async function ensureImage(image, docker, ca) {
199
+ export async function ensureImage(image, docker, ca) {
192
200
  const packageRoot = resolve(dirname(fileURLToPath(import.meta.url)), '..', '..');
193
201
  const dockerDir = resolve(packageRoot, 'docker');
194
202
  // On arm64 hosts (Apple Silicon), use the lightweight arm64-native Dockerfile
@@ -1 +1 @@
1
- {"version":3,"file":"docker-infrastructure.js","sourceRoot":"","sources":["../../src/docker/docker-infrastructure.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"docker-infrastructure.js","sourceRoot":"","sources":["../../src/docker/docker-infrastructure.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@
14
14
  */
15
15
  import { type CertificateAuthority } from './ca.js';
16
16
  import { type ProviderConfig } from './provider-config.js';
17
+ import type { OAuthTokenManager } from './oauth-token-manager.js';
17
18
  export interface MitmProxy {
18
19
  /** Start listening on the UDS or TCP port. Pre-warms cert cache for all providers. */
19
20
  start(): Promise<{
@@ -40,7 +41,9 @@ export interface ProviderKeyMapping {
40
41
  readonly config: ProviderConfig;
41
42
  /** The fake sentinel key given to the container. */
42
43
  readonly fakeKey: string;
43
- /** The real API key to inject in upstream requests. */
44
- readonly realKey: string;
44
+ /** The real API key to inject in upstream requests. Mutable for token refresh. */
45
+ realKey: string;
46
+ /** Optional token manager for OAuth providers — enables proactive refresh and 401 retry. */
47
+ readonly tokenManager?: OAuthTokenManager;
45
48
  }
46
49
  export declare function createMitmProxy(options: MitmProxyOptions): MitmProxy;