labgate 0.5.39 → 0.5.42

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 (47) hide show
  1. package/README.md +132 -248
  2. package/dist/cli.js +9 -33
  3. package/dist/cli.js.map +1 -1
  4. package/dist/lib/config.d.ts +19 -3
  5. package/dist/lib/config.js +154 -75
  6. package/dist/lib/config.js.map +1 -1
  7. package/dist/lib/container.d.ts +11 -9
  8. package/dist/lib/container.js +749 -282
  9. package/dist/lib/container.js.map +1 -1
  10. package/dist/lib/dataset-mcp.js +2 -9
  11. package/dist/lib/dataset-mcp.js.map +1 -1
  12. package/dist/lib/display-mcp.d.ts +2 -2
  13. package/dist/lib/display-mcp.js +17 -38
  14. package/dist/lib/display-mcp.js.map +1 -1
  15. package/dist/lib/doctor.js +8 -0
  16. package/dist/lib/doctor.js.map +1 -1
  17. package/dist/lib/explorer-claude.js +36 -1
  18. package/dist/lib/explorer-claude.js.map +1 -1
  19. package/dist/lib/explorer-eval.js +3 -2
  20. package/dist/lib/explorer-eval.js.map +1 -1
  21. package/dist/lib/image-pull-lock.d.ts +18 -0
  22. package/dist/lib/image-pull-lock.js +167 -0
  23. package/dist/lib/image-pull-lock.js.map +1 -0
  24. package/dist/lib/init.js +22 -19
  25. package/dist/lib/init.js.map +1 -1
  26. package/dist/lib/slurm-cli-passthrough.d.ts +12 -2
  27. package/dist/lib/slurm-cli-passthrough.js +401 -143
  28. package/dist/lib/slurm-cli-passthrough.js.map +1 -1
  29. package/dist/lib/startup-stage-lock.d.ts +21 -0
  30. package/dist/lib/startup-stage-lock.js +196 -0
  31. package/dist/lib/startup-stage-lock.js.map +1 -0
  32. package/dist/lib/ui.d.ts +40 -0
  33. package/dist/lib/ui.html +4953 -3366
  34. package/dist/lib/ui.js +1771 -297
  35. package/dist/lib/ui.js.map +1 -1
  36. package/dist/lib/web-terminal-startup-readiness.d.ts +8 -0
  37. package/dist/lib/web-terminal-startup-readiness.js +29 -0
  38. package/dist/lib/web-terminal-startup-readiness.js.map +1 -0
  39. package/dist/lib/web-terminal.d.ts +51 -0
  40. package/dist/lib/web-terminal.js +171 -1
  41. package/dist/lib/web-terminal.js.map +1 -1
  42. package/dist/mcp-bundles/dataset-mcp.bundle.mjs +144 -93
  43. package/dist/mcp-bundles/display-mcp.bundle.mjs +35 -43
  44. package/dist/mcp-bundles/explorer-mcp.bundle.mjs +263 -146
  45. package/dist/mcp-bundles/results-mcp.bundle.mjs +39 -41
  46. package/dist/mcp-bundles/slurm-mcp.bundle.mjs +19 -21
  47. package/package.json +1 -1
@@ -8,6 +8,7 @@ exports.getConfigPath = getConfigPath;
8
8
  exports.getUiSocketPath = getUiSocketPath;
9
9
  exports.getSandboxHome = getSandboxHome;
10
10
  exports.getImagesDir = getImagesDir;
11
+ exports.isImagesDirOverridden = isImagesDirOverridden;
11
12
  exports.getEmptyDir = getEmptyDir;
12
13
  exports.getSessionsDir = getSessionsDir;
13
14
  exports.getLogDir = getLogDir;
@@ -25,6 +26,11 @@ exports.getExplorerCompareArtifactDir = getExplorerCompareArtifactDir;
25
26
  exports.getExplorerLockDir = getExplorerLockDir;
26
27
  exports.getExplorerWorktreesDir = getExplorerWorktreesDir;
27
28
  exports.shouldClaudeHeadlessRunWithAllowedPermissions = shouldClaudeHeadlessRunWithAllowedPermissions;
29
+ exports.stripJsonComments = stripJsonComments;
30
+ exports.parseRawConfigText = parseRawConfigText;
31
+ exports.buildConfigFromRaw = buildConfigFromRaw;
32
+ exports.readRawConfigFile = readRawConfigFile;
33
+ exports.writeRawConfigFile = writeRawConfigFile;
28
34
  exports.validateConfig = validateConfig;
29
35
  exports.loadConfig = loadConfig;
30
36
  exports.findLockedFieldConflicts = findLockedFieldConflicts;
@@ -35,6 +41,7 @@ const os_1 = require("os");
35
41
  // ── Defaults ──────────────────────────────────────────────
36
42
  exports.DEFAULT_CONFIG = {
37
43
  runtime: 'auto',
44
+ images_dir: '',
38
45
  // Default sandbox image: includes python3 + basic build tools (git/make/g++).
39
46
  // Note: pip/venv are not included by default in Debian; users may still need a
40
47
  // custom image for richer Python workflows.
@@ -66,6 +73,7 @@ exports.DEFAULT_CONFIG = {
66
73
  'mkfs',
67
74
  'reboot', 'shutdown',
68
75
  ],
76
+ ensure_commands: ['git'],
69
77
  },
70
78
  network: {
71
79
  mode: 'host',
@@ -91,13 +99,9 @@ exports.DEFAULT_CONFIG = {
91
99
  },
92
100
  plugins: {
93
101
  files: true,
102
+ activity: true,
94
103
  datasets: false,
95
104
  results: false,
96
- charting: true,
97
- molecular: true,
98
- genomics: true,
99
- phylogenetics: true,
100
- network: true,
101
105
  slurm: true,
102
106
  explorer: true,
103
107
  automation: false,
@@ -118,7 +122,7 @@ exports.DEFAULT_CONFIG = {
118
122
  max_tokens: 1024,
119
123
  },
120
124
  headless: {
121
- claude_run_with_allowed_permissions: true,
125
+ claude_run_with_allowed_permissions: false,
122
126
  continuation_in_other_terminals: true,
123
127
  git_integration: false,
124
128
  },
@@ -146,6 +150,14 @@ exports.LABGATE_DIR = process.env.LABGATE_DIR ?? (0, path_1.join)((0, os_1.homed
146
150
  exports.CONFIG_FILE = 'config.json';
147
151
  exports.PRIVATE_DIR_MODE = 0o700;
148
152
  exports.PRIVATE_FILE_MODE = 0o600;
153
+ function resolveImagesDirOverride(raw) {
154
+ if (typeof raw !== 'string')
155
+ return null;
156
+ const trimmed = raw.trim();
157
+ if (!trimmed)
158
+ return null;
159
+ return (0, path_1.resolve)(trimmed.replace(/^~/, (0, os_1.homedir)()));
160
+ }
149
161
  function ensurePrivateDir(path) {
150
162
  (0, fs_1.mkdirSync)(path, { recursive: true, mode: exports.PRIVATE_DIR_MODE });
151
163
  try {
@@ -173,8 +185,19 @@ function getSandboxHome() {
173
185
  return (0, path_1.join)(exports.LABGATE_DIR, 'ai-home');
174
186
  }
175
187
  function getImagesDir() {
188
+ const envOverride = resolveImagesDirOverride(process.env.LABGATE_IMAGES_DIR);
189
+ if (envOverride)
190
+ return envOverride;
191
+ const configOverride = resolveImagesDirOverride(loadConfig().images_dir);
192
+ if (configOverride)
193
+ return configOverride;
176
194
  return (0, path_1.join)(exports.LABGATE_DIR, 'images');
177
195
  }
196
+ function isImagesDirOverridden() {
197
+ if (resolveImagesDirOverride(process.env.LABGATE_IMAGES_DIR))
198
+ return true;
199
+ return resolveImagesDirOverride(loadConfig().images_dir) !== null;
200
+ }
178
201
  function getEmptyDir() {
179
202
  return (0, path_1.join)(exports.LABGATE_DIR, 'empty');
180
203
  }
@@ -223,13 +246,114 @@ function getExplorerLockDir(experimentId) {
223
246
  function getExplorerWorktreesDir(experimentId) {
224
247
  return (0, path_1.join)(getExplorerWorktreesRootDir(), experimentId);
225
248
  }
226
- function shouldClaudeHeadlessRunWithAllowedPermissions(config) {
227
- return config.headless?.claude_run_with_allowed_permissions !== false;
249
+ function shouldClaudeHeadlessRunWithAllowedPermissions(_config) {
250
+ // Intentionally hard-disabled: do not allow UI/config to bypass tool approvals.
251
+ return false;
228
252
  }
229
253
  // ── Deep clone helper ──────────────────────────────────────
230
254
  function cloneConfig(config) {
231
255
  return JSON.parse(JSON.stringify(config));
232
256
  }
257
+ function normalizeLegacyRuntime(rawRuntime, warnOnLegacyRuntime) {
258
+ if (rawRuntime === 'docker') {
259
+ if (warnOnLegacyRuntime) {
260
+ console.error('Warning: runtime "docker" is deprecated. Using "podman".');
261
+ }
262
+ return 'podman';
263
+ }
264
+ if (rawRuntime === 'singularity') {
265
+ if (warnOnLegacyRuntime) {
266
+ console.error('Warning: runtime "singularity" is deprecated. Using "apptainer".');
267
+ }
268
+ return 'apptainer';
269
+ }
270
+ return rawRuntime;
271
+ }
272
+ function stripJsonComments(rawText) {
273
+ return rawText
274
+ .split('\n')
275
+ .filter(line => !line.trimStart().startsWith('//'))
276
+ .join('\n');
277
+ }
278
+ function parseRawConfigText(rawText) {
279
+ const stripped = stripJsonComments(rawText).trim();
280
+ if (!stripped)
281
+ return {};
282
+ const parsed = JSON.parse(stripped);
283
+ if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed)) {
284
+ throw new Error('Config root must be a JSON object');
285
+ }
286
+ return parsed;
287
+ }
288
+ function buildConfigFromRaw(rawInput, options = {}) {
289
+ const raw = rawInput;
290
+ const runtime = normalizeLegacyRuntime(raw.runtime, options.warnOnLegacyRuntime ?? false);
291
+ return {
292
+ runtime: runtime ?? exports.DEFAULT_CONFIG.runtime,
293
+ images_dir: raw.images_dir ?? exports.DEFAULT_CONFIG.images_dir,
294
+ image: raw.image ?? exports.DEFAULT_CONFIG.image,
295
+ session_timeout_hours: raw.session_timeout_hours ?? exports.DEFAULT_CONFIG.session_timeout_hours,
296
+ filesystem: {
297
+ extra_paths: raw.filesystem?.extra_paths ?? [...exports.DEFAULT_CONFIG.filesystem.extra_paths],
298
+ blocked_patterns: raw.filesystem?.blocked_patterns ?? [...exports.DEFAULT_CONFIG.filesystem.blocked_patterns],
299
+ },
300
+ datasets: Array.isArray(raw.datasets) ? raw.datasets : [],
301
+ commands: {
302
+ blacklist: raw.commands?.blacklist ?? [...exports.DEFAULT_CONFIG.commands.blacklist],
303
+ ensure_commands: raw.commands?.ensure_commands ?? [...(exports.DEFAULT_CONFIG.commands.ensure_commands ?? [])],
304
+ },
305
+ network: {
306
+ mode: raw.network?.mode ?? exports.DEFAULT_CONFIG.network.mode,
307
+ allowed_domains: raw.network?.allowed_domains ?? [...exports.DEFAULT_CONFIG.network.allowed_domains],
308
+ },
309
+ slurm: {
310
+ enabled: raw.slurm?.enabled ?? exports.DEFAULT_CONFIG.slurm.enabled,
311
+ poll_interval_seconds: raw.slurm?.poll_interval_seconds ?? exports.DEFAULT_CONFIG.slurm.poll_interval_seconds,
312
+ sacct_lookback_hours: raw.slurm?.sacct_lookback_hours ?? exports.DEFAULT_CONFIG.slurm.sacct_lookback_hours,
313
+ mcp_server: raw.slurm?.mcp_server ?? exports.DEFAULT_CONFIG.slurm.mcp_server,
314
+ },
315
+ audit: {
316
+ enabled: raw.audit?.enabled ?? exports.DEFAULT_CONFIG.audit.enabled,
317
+ log_dir: raw.audit?.log_dir ?? exports.DEFAULT_CONFIG.audit.log_dir,
318
+ },
319
+ automation: {
320
+ api_key: raw.automation?.api_key ?? exports.DEFAULT_CONFIG.automation?.api_key,
321
+ model: raw.automation?.model ?? exports.DEFAULT_CONFIG.automation.model,
322
+ system_prompt: raw.automation?.system_prompt ?? exports.DEFAULT_CONFIG.automation.system_prompt,
323
+ trigger_patterns: raw.automation?.trigger_patterns ?? [...exports.DEFAULT_CONFIG.automation.trigger_patterns],
324
+ context_lines: raw.automation?.context_lines ?? exports.DEFAULT_CONFIG.automation.context_lines,
325
+ delay_ms: raw.automation?.delay_ms ?? exports.DEFAULT_CONFIG.automation.delay_ms,
326
+ max_turns: raw.automation?.max_turns ?? exports.DEFAULT_CONFIG.automation.max_turns,
327
+ max_tokens: raw.automation?.max_tokens ?? exports.DEFAULT_CONFIG.automation.max_tokens,
328
+ },
329
+ headless: {
330
+ claude_run_with_allowed_permissions: raw.headless?.claude_run_with_allowed_permissions ??
331
+ exports.DEFAULT_CONFIG.headless?.claude_run_with_allowed_permissions ??
332
+ false,
333
+ continuation_in_other_terminals: raw.headless?.continuation_in_other_terminals ??
334
+ exports.DEFAULT_CONFIG.headless?.continuation_in_other_terminals ??
335
+ true,
336
+ git_integration: raw.headless?.git_integration ??
337
+ exports.DEFAULT_CONFIG.headless?.git_integration ??
338
+ false,
339
+ },
340
+ plugins: sanitizePluginMap(raw.plugins),
341
+ };
342
+ }
343
+ function readRawConfigFile(configPath = getConfigPath()) {
344
+ if (!(0, fs_1.existsSync)(configPath))
345
+ return {};
346
+ ensurePrivateFile(configPath);
347
+ return parseRawConfigText((0, fs_1.readFileSync)(configPath, 'utf-8'));
348
+ }
349
+ function writeRawConfigFile(rawConfig, configPath = getConfigPath()) {
350
+ ensurePrivateDir((0, path_1.dirname)(configPath));
351
+ (0, fs_1.writeFileSync)(configPath, JSON.stringify(rawConfig, null, 2) + '\n', {
352
+ encoding: 'utf-8',
353
+ mode: exports.PRIVATE_FILE_MODE,
354
+ });
355
+ ensurePrivateFile(configPath);
356
+ }
233
357
  // ── Validation ────────────────────────────────────────────
234
358
  const VALID_RUNTIMES = ['auto', 'apptainer', 'podman'];
235
359
  const VALID_NETWORK_MODES = ['none', 'filtered', 'host'];
@@ -241,11 +365,15 @@ function validateConfig(config) {
241
365
  const blockedPatterns = config.filesystem?.blocked_patterns;
242
366
  const extraPaths = config.filesystem?.extra_paths;
243
367
  const blacklist = config.commands?.blacklist;
368
+ const ensureCommands = config.commands?.ensure_commands;
244
369
  const plugins = config.plugins;
245
370
  const headless = config.headless;
246
371
  if (!VALID_RUNTIMES.includes(config.runtime)) {
247
372
  errors.push(`Invalid runtime: "${config.runtime}". Must be one of: ${VALID_RUNTIMES.join(', ')}`);
248
373
  }
374
+ if (config.images_dir !== undefined && typeof config.images_dir !== 'string') {
375
+ errors.push('images_dir must be a string');
376
+ }
249
377
  if (!config.image || typeof config.image !== 'string') {
250
378
  errors.push('image must be a non-empty string');
251
379
  }
@@ -267,6 +395,22 @@ function validateConfig(config) {
267
395
  if (!Array.isArray(blacklist)) {
268
396
  errors.push('commands.blacklist must be an array');
269
397
  }
398
+ if (ensureCommands !== undefined) {
399
+ if (!Array.isArray(ensureCommands)) {
400
+ errors.push('commands.ensure_commands must be an array');
401
+ }
402
+ else {
403
+ for (let i = 0; i < ensureCommands.length; i++) {
404
+ const command = ensureCommands[i];
405
+ if (typeof command !== 'string' || !command.trim()) {
406
+ errors.push(`commands.ensure_commands[${i}] must be a non-empty string`);
407
+ }
408
+ else if (!/^[a-zA-Z0-9._+-]+$/.test(command)) {
409
+ errors.push(`commands.ensure_commands[${i}] contains invalid characters; use letters, digits, ., _, +, - only`);
410
+ }
411
+ }
412
+ }
413
+ }
270
414
  if (plugins !== undefined) {
271
415
  if (!plugins || typeof plugins !== 'object' || Array.isArray(plugins)) {
272
416
  errors.push('plugins must be an object');
@@ -413,73 +557,8 @@ function loadConfig() {
413
557
  }
414
558
  ensurePrivateFile(configPath);
415
559
  try {
416
- const rawText = (0, fs_1.readFileSync)(configPath, 'utf-8');
417
- // Strip full-line // comments (our config uses them for documentation)
418
- const stripped = rawText
419
- .split('\n')
420
- .filter(line => !line.trimStart().startsWith('//'))
421
- .join('\n');
422
- const raw = JSON.parse(stripped);
423
- const rawRuntime = raw.runtime;
424
- let runtime = rawRuntime;
425
- if (rawRuntime === 'docker') {
426
- runtime = 'podman';
427
- console.error('Warning: runtime "docker" is deprecated. Using "podman".');
428
- }
429
- else if (rawRuntime === 'singularity') {
430
- runtime = 'apptainer';
431
- console.error('Warning: runtime "singularity" is deprecated. Using "apptainer".');
432
- }
433
- // Merge with defaults so missing fields get filled in
434
- const config = {
435
- runtime: runtime ?? exports.DEFAULT_CONFIG.runtime,
436
- image: raw.image ?? exports.DEFAULT_CONFIG.image,
437
- session_timeout_hours: raw.session_timeout_hours ?? exports.DEFAULT_CONFIG.session_timeout_hours,
438
- filesystem: {
439
- extra_paths: raw.filesystem?.extra_paths ?? [...exports.DEFAULT_CONFIG.filesystem.extra_paths],
440
- blocked_patterns: raw.filesystem?.blocked_patterns ?? [...exports.DEFAULT_CONFIG.filesystem.blocked_patterns],
441
- },
442
- datasets: Array.isArray(raw.datasets) ? raw.datasets : [],
443
- commands: {
444
- blacklist: raw.commands?.blacklist ?? [...exports.DEFAULT_CONFIG.commands.blacklist],
445
- },
446
- network: {
447
- mode: raw.network?.mode ?? exports.DEFAULT_CONFIG.network.mode,
448
- allowed_domains: raw.network?.allowed_domains ?? [...exports.DEFAULT_CONFIG.network.allowed_domains],
449
- },
450
- slurm: {
451
- enabled: raw.slurm?.enabled ?? exports.DEFAULT_CONFIG.slurm.enabled,
452
- poll_interval_seconds: raw.slurm?.poll_interval_seconds ?? exports.DEFAULT_CONFIG.slurm.poll_interval_seconds,
453
- sacct_lookback_hours: raw.slurm?.sacct_lookback_hours ?? exports.DEFAULT_CONFIG.slurm.sacct_lookback_hours,
454
- mcp_server: raw.slurm?.mcp_server ?? exports.DEFAULT_CONFIG.slurm.mcp_server,
455
- },
456
- audit: {
457
- enabled: raw.audit?.enabled ?? exports.DEFAULT_CONFIG.audit.enabled,
458
- log_dir: raw.audit?.log_dir ?? exports.DEFAULT_CONFIG.audit.log_dir,
459
- },
460
- automation: {
461
- api_key: raw.automation?.api_key ?? exports.DEFAULT_CONFIG.automation?.api_key,
462
- model: raw.automation?.model ?? exports.DEFAULT_CONFIG.automation.model,
463
- system_prompt: raw.automation?.system_prompt ?? exports.DEFAULT_CONFIG.automation.system_prompt,
464
- trigger_patterns: raw.automation?.trigger_patterns ?? [...exports.DEFAULT_CONFIG.automation.trigger_patterns],
465
- context_lines: raw.automation?.context_lines ?? exports.DEFAULT_CONFIG.automation.context_lines,
466
- delay_ms: raw.automation?.delay_ms ?? exports.DEFAULT_CONFIG.automation.delay_ms,
467
- max_turns: raw.automation?.max_turns ?? exports.DEFAULT_CONFIG.automation.max_turns,
468
- max_tokens: raw.automation?.max_tokens ?? exports.DEFAULT_CONFIG.automation.max_tokens,
469
- },
470
- headless: {
471
- claude_run_with_allowed_permissions: raw.headless?.claude_run_with_allowed_permissions ??
472
- exports.DEFAULT_CONFIG.headless?.claude_run_with_allowed_permissions ??
473
- true,
474
- continuation_in_other_terminals: raw.headless?.continuation_in_other_terminals ??
475
- exports.DEFAULT_CONFIG.headless?.continuation_in_other_terminals ??
476
- true,
477
- git_integration: raw.headless?.git_integration ??
478
- exports.DEFAULT_CONFIG.headless?.git_integration ??
479
- false,
480
- },
481
- plugins: sanitizePluginMap(raw.plugins),
482
- };
560
+ const raw = readRawConfigFile(configPath);
561
+ const config = buildConfigFromRaw(raw, { warnOnLegacyRuntime: true });
483
562
  const errors = validateConfig(config);
484
563
  if (errors.length > 0) {
485
564
  console.error(`Warning: invalid config in ${configPath}:`);
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/lib/config.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,4 @@
1
1
  import { execFileSync } from 'child_process';
2
- import { mkdirSync, writeFileSync } from 'fs';
3
2
  import { LabgateConfig } from './config.js';
4
3
  export interface SessionOpts {
5
4
  agent: string;
@@ -45,16 +44,25 @@ export declare function computeMountFingerprint(config: LabgateConfig, imageOver
45
44
  */
46
45
  interface PrepareMcpServerOptions {
47
46
  stageSlurmDeps?: () => boolean;
47
+ resolveMcpPackageDir?: (pkgName: string) => string;
48
48
  }
49
49
  export declare function prepareMcpServers(session: SessionOpts, options?: PrepareMcpServerOptions): void;
50
50
  /**
51
51
  * Convert a container image URI to a local SIF filename.
52
- * e.g. "docker.io/library/ubuntu:22.04" "docker.io_library_ubuntu_22.04.sif"
52
+ * Includes a short hash suffix so distinct image refs cannot collide after sanitization.
53
53
  */
54
54
  export declare function imageToSifName(image: string): string;
55
+ export declare function isUsableApptainerSif(runtime: 'apptainer', sifPath: string): boolean;
56
+ /**
57
+ * Ensure a SIF image exists in the cache directory.
58
+ * Pulls from docker:// URI if not already cached.
59
+ */
60
+ export declare function ensureSifImage(runtime: 'apptainer', image: string): Promise<string>;
61
+ export declare function resolveSlurmProxyPathToHost(session: SessionOpts, candidatePath: string, containerCwd?: string): string | null;
55
62
  export declare function buildCodexOauthPublishSpec(port: number): string;
56
63
  export declare function buildEntrypoint(agent: string, options?: {
57
64
  disableClaudeStatusLine?: boolean;
65
+ ensureCommands?: string[];
58
66
  }): string;
59
67
  /**
60
68
  * Sets up OAuth browser handling. Always intercepts the URL via BROWSER
@@ -78,17 +86,11 @@ export declare function setupBrowserHook(options?: BrowserHookOptions): {
78
86
  };
79
87
  type AgentTokenEnvDeps = {
80
88
  env?: NodeJS.ProcessEnv;
81
- platformFn?: () => NodeJS.Platform;
82
- execFileSyncFn?: typeof execFileSync;
83
- sandboxHome?: string;
84
- mkdirSyncFn?: typeof mkdirSync;
85
- writeFileSyncFn?: typeof writeFileSync;
86
89
  };
87
90
  /**
88
91
  * Resolve agent credentials. Checks in order:
89
92
  * 1. Explicit --api-key flag (passed via apiKey parameter)
90
- * 2. macOS keychain (Claude Code OAuth tokens, Claude only)
91
- * 3. ANTHROPIC_API_KEY in host environment
93
+ * 2. ANTHROPIC_API_KEY in host environment
92
94
  *
93
95
  * Returns env args to inject into the container.
94
96
  */