@ai-hero/sandcastle 0.4.7 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (122) hide show
  1. package/README.md +258 -69
  2. package/dist/AgentProvider.d.ts +9 -0
  3. package/dist/AgentProvider.d.ts.map +1 -1
  4. package/dist/AgentProvider.js +14 -2
  5. package/dist/AgentProvider.js.map +1 -1
  6. package/dist/CopyToWorktree.d.ts +9 -0
  7. package/dist/CopyToWorktree.d.ts.map +1 -0
  8. package/dist/{CopyToWorkspace.js → CopyToWorktree.js} +9 -3
  9. package/dist/CopyToWorktree.js.map +1 -0
  10. package/dist/DockerLifecycle.d.ts +2 -0
  11. package/dist/DockerLifecycle.d.ts.map +1 -1
  12. package/dist/DockerLifecycle.js +7 -0
  13. package/dist/DockerLifecycle.js.map +1 -1
  14. package/dist/ErrorHandler.d.ts.map +1 -1
  15. package/dist/ErrorHandler.js +22 -2
  16. package/dist/ErrorHandler.js.map +1 -1
  17. package/dist/InitService.d.ts +6 -1
  18. package/dist/InitService.d.ts.map +1 -1
  19. package/dist/InitService.js +90 -56
  20. package/dist/InitService.js.map +1 -1
  21. package/dist/MountConfig.d.ts +13 -2
  22. package/dist/MountConfig.d.ts.map +1 -1
  23. package/dist/Orchestrator.d.ts +14 -2
  24. package/dist/Orchestrator.d.ts.map +1 -1
  25. package/dist/Orchestrator.js +56 -12
  26. package/dist/Orchestrator.js.map +1 -1
  27. package/dist/PodmanLifecycle.d.ts +10 -0
  28. package/dist/PodmanLifecycle.d.ts.map +1 -1
  29. package/dist/PodmanLifecycle.js +22 -0
  30. package/dist/PodmanLifecycle.js.map +1 -1
  31. package/dist/PromptPreprocessor.d.ts +2 -2
  32. package/dist/PromptPreprocessor.d.ts.map +1 -1
  33. package/dist/PromptPreprocessor.js +7 -2
  34. package/dist/PromptPreprocessor.js.map +1 -1
  35. package/dist/SandboxFactory.d.ts +13 -11
  36. package/dist/SandboxFactory.d.ts.map +1 -1
  37. package/dist/SandboxFactory.js +59 -41
  38. package/dist/SandboxFactory.js.map +1 -1
  39. package/dist/SandboxLifecycle.d.ts +23 -5
  40. package/dist/SandboxLifecycle.d.ts.map +1 -1
  41. package/dist/SandboxLifecycle.js +88 -18
  42. package/dist/SandboxLifecycle.js.map +1 -1
  43. package/dist/SandboxProvider.d.ts +11 -7
  44. package/dist/SandboxProvider.d.ts.map +1 -1
  45. package/dist/SandboxProvider.js.map +1 -1
  46. package/dist/SessionStore.d.ts +50 -0
  47. package/dist/SessionStore.d.ts.map +1 -0
  48. package/dist/SessionStore.js +120 -0
  49. package/dist/SessionStore.js.map +1 -0
  50. package/dist/WorktreeManager.d.ts +3 -3
  51. package/dist/WorktreeManager.d.ts.map +1 -1
  52. package/dist/WorktreeManager.js +14 -3
  53. package/dist/WorktreeManager.js.map +1 -1
  54. package/dist/createSandbox.d.ts +25 -10
  55. package/dist/createSandbox.d.ts.map +1 -1
  56. package/dist/createSandbox.js +253 -133
  57. package/dist/createSandbox.js.map +1 -1
  58. package/dist/createWorktree.d.ts +121 -0
  59. package/dist/createWorktree.d.ts.map +1 -0
  60. package/dist/createWorktree.js +318 -0
  61. package/dist/createWorktree.js.map +1 -0
  62. package/dist/errors.d.ts +110 -6
  63. package/dist/errors.d.ts.map +1 -1
  64. package/dist/errors.js +41 -3
  65. package/dist/errors.js.map +1 -1
  66. package/dist/index.d.ts +6 -1
  67. package/dist/index.d.ts.map +1 -1
  68. package/dist/index.js +2 -0
  69. package/dist/index.js.map +1 -1
  70. package/dist/interactive.d.ts +1 -1
  71. package/dist/interactive.d.ts.map +1 -1
  72. package/dist/interactive.js +63 -46
  73. package/dist/interactive.js.map +1 -1
  74. package/dist/run.d.ts +10 -10
  75. package/dist/run.d.ts.map +1 -1
  76. package/dist/run.js +23 -6
  77. package/dist/run.js.map +1 -1
  78. package/dist/sandboxes/daytona.js +4 -4
  79. package/dist/sandboxes/daytona.js.map +1 -1
  80. package/dist/sandboxes/docker.d.ts +9 -0
  81. package/dist/sandboxes/docker.d.ts.map +1 -1
  82. package/dist/sandboxes/docker.js +35 -5
  83. package/dist/sandboxes/docker.js.map +1 -1
  84. package/dist/sandboxes/no-sandbox.js +4 -4
  85. package/dist/sandboxes/no-sandbox.js.map +1 -1
  86. package/dist/sandboxes/podman.d.ts +9 -0
  87. package/dist/sandboxes/podman.d.ts.map +1 -1
  88. package/dist/sandboxes/podman.js +47 -5
  89. package/dist/sandboxes/podman.js.map +1 -1
  90. package/dist/sandboxes/test-bind-mount.d.ts +17 -0
  91. package/dist/sandboxes/test-bind-mount.d.ts.map +1 -0
  92. package/dist/sandboxes/test-bind-mount.js +91 -0
  93. package/dist/sandboxes/test-bind-mount.js.map +1 -0
  94. package/dist/sandboxes/test-isolated.js +5 -5
  95. package/dist/sandboxes/test-isolated.js.map +1 -1
  96. package/dist/sandboxes/vercel.js +7 -7
  97. package/dist/sandboxes/vercel.js.map +1 -1
  98. package/dist/startSandbox.d.ts +7 -6
  99. package/dist/startSandbox.d.ts.map +1 -1
  100. package/dist/startSandbox.js +38 -19
  101. package/dist/startSandbox.js.map +1 -1
  102. package/dist/syncIn.js +7 -7
  103. package/dist/syncIn.js.map +1 -1
  104. package/dist/syncOut.js +6 -6
  105. package/dist/syncOut.js.map +1 -1
  106. package/dist/templates/parallel-planner/implement-prompt.md +2 -2
  107. package/dist/templates/parallel-planner/main.mts +3 -7
  108. package/dist/templates/parallel-planner/merge-prompt.md +5 -1
  109. package/dist/templates/parallel-planner-with-review/implement-prompt.md +2 -2
  110. package/dist/templates/parallel-planner-with-review/main.mts +29 -63
  111. package/dist/templates/parallel-planner-with-review/merge-prompt.md +5 -1
  112. package/dist/templates/sequential-reviewer/main.mts +4 -4
  113. package/dist/templates/simple-loop/main.mts +9 -7
  114. package/package.json +1 -1
  115. package/dist/CopyToWorkspace.d.ts +0 -8
  116. package/dist/CopyToWorkspace.d.ts.map +0 -1
  117. package/dist/CopyToWorkspace.js.map +0 -1
  118. package/dist/templates/blank/.env.example +0 -5
  119. package/dist/templates/parallel-planner/.env.example +0 -5
  120. package/dist/templates/parallel-planner-with-review/.env.example +0 -5
  121. package/dist/templates/sequential-reviewer/.env.example +0 -5
  122. package/dist/templates/simple-loop/.env.example +0 -5
@@ -5,11 +5,11 @@ import { Effect } from "effect";
5
5
  import { ClackDisplay, Display } from "./Display.js";
6
6
  import { preprocessPrompt } from "./PromptPreprocessor.js";
7
7
  import { resolvePrompt } from "./PromptResolver.js";
8
- import { makeSandboxLayerFromHandle, resolveGitMounts, SANDBOX_WORKSPACE_DIR, } from "./SandboxFactory.js";
9
- import { withSandboxLifecycle } from "./SandboxLifecycle.js";
8
+ import { makeSandboxLayerFromHandle, resolveGitMounts, SANDBOX_REPO_DIR, } from "./SandboxFactory.js";
9
+ import { withSandboxLifecycle, runHostHooks, } from "./SandboxLifecycle.js";
10
10
  import { resolveEnv } from "./EnvResolver.js";
11
11
  import { mergeProviderEnv } from "./mergeProviderEnv.js";
12
- import { copyToWorkspace } from "./CopyToWorkspace.js";
12
+ import { copyToWorktree } from "./CopyToWorktree.js";
13
13
  import { startSandbox } from "./startSandbox.js";
14
14
  import { syncOut } from "./syncOut.js";
15
15
  import * as WorktreeManager from "./WorktreeManager.js";
@@ -39,11 +39,11 @@ export const interactive = async (options) => {
39
39
  if (branchStrategy.type === "head" && resolvedSandbox.tag === "isolated") {
40
40
  throw new Error("head branch strategy is not supported with isolated providers");
41
41
  }
42
- // Validate: copyToWorkspace is incompatible with head strategy
42
+ // Validate: copyToWorktree is incompatible with head strategy
43
43
  if (branchStrategy.type === "head" &&
44
- options.copyToWorkspace &&
45
- options.copyToWorkspace.length > 0) {
46
- throw new Error("copyToWorkspace is not supported with head branch strategy. " +
44
+ options.copyToWorktree &&
45
+ options.copyToWorktree.length > 0) {
46
+ throw new Error("copyToWorktree is not supported with head branch strategy. " +
47
47
  "In head mode the host working directory is bind-mounted directly.");
48
48
  }
49
49
  // Validate buildInteractiveArgs is available
@@ -56,8 +56,11 @@ export const interactive = async (options) => {
56
56
  const sandboxProvider = resolvedSandbox;
57
57
  const inner = Effect.gen(function* () {
58
58
  const d = yield* Display;
59
- // 1. Resolve prompt (from string or file)
60
- const rawPrompt = yield* resolvePrompt({ prompt, promptFile });
59
+ // 1. Resolve prompt (from string or file), or skip if neither provided
60
+ const hasPromptSource = prompt !== undefined || promptFile !== undefined;
61
+ const rawPrompt = hasPromptSource
62
+ ? yield* resolvePrompt({ prompt, promptFile })
63
+ : "";
61
64
  // 2. Resolve env vars
62
65
  const resolvedEnv = yield* resolveEnv(hostRepoDir);
63
66
  const env = mergeProviderEnv({
@@ -71,34 +74,37 @@ export const interactive = async (options) => {
71
74
  const resolvedBranch = branchStrategy.type === "head"
72
75
  ? currentHostBranch
73
76
  : (branch ?? generateTempBranchName(options.name));
74
- // 4. Validate prompt args and collect missing ones interactively
75
- const userArgs = options.promptArgs ?? {};
76
- yield* validateNoBuiltInArgOverride(userArgs);
77
- // Scan for missing keys and prompt the user for each one
78
- const missingKeys = findMissingPromptArgKeys(rawPrompt, userArgs);
79
- const collectedArgs = {};
80
- for (const key of missingKeys) {
81
- const value = yield* Effect.promise(() => clack.text({
82
- message: `Enter value for {{${key}}}`,
83
- validate: (v) => {
84
- if (!v)
85
- return `A value is required for {{${key}}}`;
86
- },
87
- }));
88
- if (clack.isCancel(value)) {
89
- clack.cancel("Prompt arg collection cancelled.");
90
- return yield* Effect.fail(new Error("User cancelled prompt arg collection"));
77
+ // 4. Validate prompt args and collect missing ones interactively (skip when no prompt)
78
+ let substitutedPrompt = rawPrompt;
79
+ if (hasPromptSource) {
80
+ const userArgs = options.promptArgs ?? {};
81
+ yield* validateNoBuiltInArgOverride(userArgs);
82
+ // Scan for missing keys and prompt the user for each one
83
+ const missingKeys = findMissingPromptArgKeys(rawPrompt, userArgs);
84
+ const collectedArgs = {};
85
+ for (const key of missingKeys) {
86
+ const value = yield* Effect.promise(() => clack.text({
87
+ message: `Enter value for {{${key}}}`,
88
+ validate: (v) => {
89
+ if (!v)
90
+ return `A value is required for {{${key}}}`;
91
+ },
92
+ }));
93
+ if (clack.isCancel(value)) {
94
+ clack.cancel("Prompt arg collection cancelled.");
95
+ return yield* Effect.fail(new Error("User cancelled prompt arg collection"));
96
+ }
97
+ collectedArgs[key] = value;
91
98
  }
92
- collectedArgs[key] = value;
99
+ const mergedUserArgs = { ...userArgs, ...collectedArgs };
100
+ const effectiveArgs = {
101
+ SOURCE_BRANCH: resolvedBranch,
102
+ TARGET_BRANCH: currentHostBranch,
103
+ ...mergedUserArgs,
104
+ };
105
+ const builtInArgKeysSet = new Set(BUILT_IN_PROMPT_ARG_KEYS);
106
+ substitutedPrompt = yield* substitutePromptArgs(rawPrompt, effectiveArgs, builtInArgKeysSet);
93
107
  }
94
- const mergedUserArgs = { ...userArgs, ...collectedArgs };
95
- const effectiveArgs = {
96
- SOURCE_BRANCH: resolvedBranch,
97
- TARGET_BRANCH: currentHostBranch,
98
- ...mergedUserArgs,
99
- };
100
- const builtInArgKeysSet = new Set(BUILT_IN_PROMPT_ARG_KEYS);
101
- const substitutedPrompt = yield* substitutePromptArgs(rawPrompt, effectiveArgs, builtInArgKeysSet);
102
108
  // In head mode, pass the host branch so SandboxLifecycle skips the merge step.
103
109
  const lifecycleBranch = isHeadMode ? currentHostBranch : branch;
104
110
  // Display intro and summary
@@ -117,18 +123,26 @@ export const interactive = async (options) => {
117
123
  // Copy files to worktree (bind-mount and no-sandbox, non-head)
118
124
  if ((sandboxProvider.tag === "bind-mount" ||
119
125
  sandboxProvider.tag === "none") &&
120
- options.copyToWorkspace &&
121
- options.copyToWorkspace.length > 0) {
122
- yield* d.taskLog("Copying files to workspace", () => copyToWorkspace(options.copyToWorkspace, hostRepoDir, worktreeInfo.path));
126
+ options.copyToWorktree &&
127
+ options.copyToWorktree.length > 0) {
128
+ yield* d.taskLog("Copying files to worktree", () => copyToWorktree(options.copyToWorktree, hostRepoDir, worktreeInfo.path));
129
+ }
130
+ // Run host.onWorktreeReady hooks
131
+ if (hooks?.host?.onWorktreeReady?.length) {
132
+ yield* runHostHooks(hooks.host.onWorktreeReady, worktreeInfo.path);
123
133
  }
124
134
  }
135
+ else if (hooks?.host?.onWorktreeReady?.length) {
136
+ // Head strategy: cwd is the host repo root
137
+ yield* runHostHooks(hooks.host.onWorktreeReady, hostRepoDir);
138
+ }
125
139
  // 6. Start sandbox
126
140
  let handle;
127
141
  if (sandboxProvider.tag === "none") {
128
142
  // No-sandbox: run directly on the host, no container
129
- const workspacePath = isHeadMode ? hostRepoDir : worktreeInfo.path;
143
+ const worktreePath = isHeadMode ? hostRepoDir : worktreeInfo.path;
130
144
  handle = yield* Effect.promise(() => sandboxProvider.create({
131
- workspacePath,
145
+ worktreePath,
132
146
  env: effectiveEnv,
133
147
  }));
134
148
  }
@@ -137,7 +151,7 @@ export const interactive = async (options) => {
137
151
  provider: sandboxProvider,
138
152
  hostRepoDir: worktreeInfo.path,
139
153
  env: effectiveEnv,
140
- copyPaths: options.copyToWorkspace,
154
+ copyPaths: options.copyToWorktree,
141
155
  }));
142
156
  handle = startResult.handle;
143
157
  }
@@ -150,7 +164,7 @@ export const interactive = async (options) => {
150
164
  env: effectiveEnv,
151
165
  worktreeOrRepoPath: isHeadMode ? hostRepoDir : worktreeInfo.path,
152
166
  gitMounts,
153
- workspaceDir: SANDBOX_WORKSPACE_DIR,
167
+ repoDir: SANDBOX_REPO_DIR,
154
168
  }));
155
169
  handle = startResult.handle;
156
170
  }
@@ -164,20 +178,23 @@ export const interactive = async (options) => {
164
178
  const interactiveExecFn = handle.interactiveExec.bind(handle);
165
179
  // Build sandbox layer and run withSandboxLifecycle
166
180
  const sandboxLayer = makeSandboxLayerFromHandle(handle);
167
- const workspacePath = handle.workspacePath;
181
+ const worktreePath = handle.worktreePath;
168
182
  const applyToHost = sandboxProvider.tag === "isolated" && worktreeInfo
169
183
  ? () => syncOut(worktreeInfo.path, handle)
170
184
  : () => Effect.void; // bind-mount and no-sandbox don't need sync
171
185
  const lifecycleEffect = withSandboxLifecycle({
172
186
  hostRepoDir,
173
- sandboxRepoDir: workspacePath,
187
+ sandboxRepoDir: worktreePath,
174
188
  hooks,
175
189
  branch: lifecycleBranch,
176
190
  hostWorktreePath: isHeadMode ? hostRepoDir : worktreeInfo?.path,
177
191
  applyToHost,
178
192
  }, (ctx) => Effect.gen(function* () {
179
193
  // Preprocess prompt (expand !`command` shell expressions inside sandbox)
180
- const fullPrompt = yield* preprocessPrompt(substitutedPrompt, ctx.sandbox, ctx.sandboxRepoDir);
194
+ // Skip when no prompt source was provided
195
+ const fullPrompt = hasPromptSource
196
+ ? yield* preprocessPrompt(substitutedPrompt, ctx.sandbox, ctx.sandboxRepoDir)
197
+ : "";
181
198
  // Build interactive args and run the session
182
199
  const interactiveArgs = provider.buildInteractiveArgs({
183
200
  prompt: fullPrompt,
@@ -187,7 +204,7 @@ export const interactive = async (options) => {
187
204
  stdin: process.stdin,
188
205
  stdout: process.stdout,
189
206
  stderr: process.stderr,
190
- cwd: workspacePath,
207
+ cwd: worktreePath,
191
208
  }));
192
209
  return result.exitCode;
193
210
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"interactive.js","sourceRoot":"","sources":["../src/interactive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interactive.js","sourceRoot":"","sources":["../src/interactive.ts"],"names":[],"mappings":"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"}
package/dist/run.d.ts CHANGED
@@ -1,6 +1,8 @@
1
1
  import type { AgentProvider } from "./AgentProvider.js";
2
2
  import { type Severity } from "./Display.js";
3
+ import { type IterationResult } from "./Orchestrator.js";
3
4
  import type { SandboxProvider, BranchStrategy } from "./SandboxProvider.js";
5
+ import type { SandboxHooks } from "./SandboxLifecycle.js";
4
6
  import { type PromptArgs } from "./PromptArgumentSubstitution.js";
5
7
  /** Default maximum number of iterations for a run. */
6
8
  export declare const DEFAULT_MAX_ITERATIONS = 1;
@@ -72,13 +74,8 @@ export interface RunOptions {
72
74
  readonly promptFile?: string;
73
75
  /** Maximum iterations to run (default: 1) */
74
76
  readonly maxIterations?: number;
75
- /** Hooks to run during sandbox lifecycle */
76
- readonly hooks?: {
77
- readonly onSandboxReady?: ReadonlyArray<{
78
- command: string;
79
- sudo?: boolean;
80
- }>;
81
- };
77
+ /** Lifecycle hooks grouped by execution location (host or sandbox). */
78
+ readonly hooks?: SandboxHooks;
82
79
  /** Key-value map for {{KEY}} placeholder substitution in prompts */
83
80
  readonly promptArgs?: PromptArgs;
84
81
  /** Logging mode (default: { type: 'file' } with auto-generated path under .sandcastle/logs/) */
@@ -90,16 +87,19 @@ export interface RunOptions {
90
87
  /** Optional name for the run, shown as a prefix in log output */
91
88
  readonly name?: string;
92
89
  /** Paths relative to the host repo root to copy into the worktree before sandbox start. */
93
- readonly copyToWorkspace?: string[];
90
+ readonly copyToWorktree?: string[];
94
91
  /** Branch strategy — controls how the agent's changes relate to branches.
95
92
  * Defaults to { type: "head" } for bind-mount providers and { type: "merge-to-head" } for isolated providers. */
96
93
  readonly branchStrategy?: BranchStrategy;
97
94
  /** When false, reuse an existing worktree for the target branch instead of failing on collision. Default: true. */
98
95
  readonly throwOnDuplicateWorktree?: boolean;
96
+ /** Resume a prior Claude Code session by ID. The session JSONL must exist on the host. Incompatible with maxIterations > 1. */
97
+ readonly resumeSession?: string;
99
98
  }
99
+ export type { IterationResult } from "./Orchestrator.js";
100
100
  export interface RunResult {
101
- /** Number of iterations the agent completed during this run. */
102
- readonly iterationsRun: number;
101
+ /** Per-iteration results (use `iterations.length` for the count). */
102
+ readonly iterations: IterationResult[];
103
103
  /** The matched completion signal string, or undefined if no signal fired before the iteration limit. */
104
104
  readonly completionSignal?: string;
105
105
  /** Combined stdout output from all agent iterations. */
package/dist/run.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"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"}
package/dist/run.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import { NodeContext, NodeFileSystem } from "@effect/platform-node";
2
+ import { existsSync } from "node:fs";
2
3
  import path, { join } from "node:path";
3
4
  import { styleText } from "node:util";
4
5
  import { Effect, Layer } from "effect";
@@ -9,6 +10,7 @@ import { WorktreeDockerSandboxFactory, SandboxConfig, } from "./SandboxFactory.j
9
10
  import { resolveEnv } from "./EnvResolver.js";
10
11
  import { formatErrorMessage } from "./ErrorHandler.js";
11
12
  import { mergeProviderEnv } from "./mergeProviderEnv.js";
13
+ import { hostSessionStore } from "./SessionStore.js";
12
14
  import { generateTempBranchName, getCurrentBranch } from "./WorktreeManager.js";
13
15
  import { substitutePromptArgs, validateNoBuiltInArgOverride, BUILT_IN_PROMPT_ARG_KEYS, } from "./PromptArgumentSubstitution.js";
14
16
  /** Default maximum number of iterations for a run. */
@@ -84,16 +86,29 @@ export const run = async (options) => {
84
86
  if (effectiveBranchType === "head" && options.sandbox.tag === "isolated") {
85
87
  throw new Error("head branch strategy is not supported with isolated providers");
86
88
  }
87
- // Validate: copyToWorkspace is incompatible with head strategy
89
+ // Validate: copyToWorktree is incompatible with head strategy
88
90
  if (effectiveBranchType === "head" &&
89
- options.copyToWorkspace &&
90
- options.copyToWorkspace.length > 0) {
91
- throw new Error("copyToWorkspace is not supported with head branch strategy. " +
91
+ options.copyToWorktree &&
92
+ options.copyToWorktree.length > 0) {
93
+ throw new Error("copyToWorktree is not supported with head branch strategy. " +
92
94
  "In head mode the host working directory is bind-mounted directly.");
93
95
  }
96
+ // Validate: resumeSession + maxIterations > 1 is not allowed
97
+ if (options.resumeSession && maxIterations > 1) {
98
+ throw new Error("resumeSession cannot be combined with maxIterations > 1. " +
99
+ "Resume applies to iteration 1 only; multi-iteration resume semantics are not supported.");
100
+ }
94
101
  // Extract explicit branch when in branch mode
95
102
  const branch = branchStrategy.type === "branch" ? branchStrategy.branch : undefined;
96
103
  const hostRepoDir = process.cwd();
104
+ // Validate: resumeSession file must exist on the host
105
+ if (options.resumeSession) {
106
+ const hStore = hostSessionStore(hostRepoDir);
107
+ const sessionPath = hStore.sessionFilePath(options.resumeSession);
108
+ if (!existsSync(sessionPath)) {
109
+ throw new Error(`resumeSession "${options.resumeSession}" not found: expected session file at ${sessionPath}`);
110
+ }
111
+ }
97
112
  // Resolve prompt
98
113
  const rawPrompt = await Effect.runPromise(resolvePrompt({ prompt, promptFile }).pipe(Effect.provide(NodeContext.layer)));
99
114
  const agentName = provider.name;
@@ -133,11 +148,12 @@ export const run = async (options) => {
133
148
  const factoryLayer = Layer.provide(WorktreeDockerSandboxFactory.layer, Layer.mergeAll(Layer.succeed(SandboxConfig, {
134
149
  env,
135
150
  hostRepoDir,
136
- copyToWorkspace: options.copyToWorkspace,
151
+ copyToWorktree: options.copyToWorktree,
137
152
  name: options.name,
138
153
  sandboxProvider: options.sandbox,
139
154
  branchStrategy,
140
155
  throwOnDuplicateWorktree: options.throwOnDuplicateWorktree,
156
+ hooks,
141
157
  }), NodeFileSystem.layer, displayLayer));
142
158
  const runLayer = Layer.merge(factoryLayer, displayLayer);
143
159
  const baseEffect = Effect.gen(function* () {
@@ -177,8 +193,9 @@ export const run = async (options) => {
177
193
  completionSignal: options.completionSignal,
178
194
  idleTimeoutSeconds: options.idleTimeoutSeconds,
179
195
  name: options.name,
196
+ resumeSession: options.resumeSession,
180
197
  });
181
- const completion = buildCompletionMessage(orchestrateResult.completionSignal, orchestrateResult.iterationsRun);
198
+ const completion = buildCompletionMessage(orchestrateResult.completionSignal, orchestrateResult.iterations.length);
182
199
  yield* d.status(completion.message, completion.severity);
183
200
  return orchestrateResult;
184
201
  });
package/dist/run.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAEvC,OAAO,EACL,YAAY,EACZ,OAAO,EACP,WAAW,GAEZ,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAwB,MAAM,mBAAmB,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EACL,4BAA4B,EAC5B,aAAa,GACd,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAGvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAEL,oBAAoB,EACpB,4BAA4B,EAC5B,wBAAwB,GACzB,MAAM,iCAAiC,CAAC;AAEzC,sDAAsD;AACtD,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC;AAExC,oFAAoF;AACpF,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,MAAc,EAAU,EAAE,CAClE,MAAM,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;AAQvC;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,OAAkC,EAC5B,EAAE;IACR,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC;IAC1C,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,EAAE,IAAI,IAAI,GAAG,CAAC,CAAC;IAC7C,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACxE,MAAM,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IACtE,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,WAAW,UAAU,EAAE,CAAC,CAAC;IAC7C,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,EAAE,aAAa,eAAe,EAAE,CAAC,CAAC,CAAC;AAChE,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,cAAsB,EACtB,YAAqB,EACrB,IAAa,EACL,EAAE;IACV,MAAM,SAAS,GAAG,yBAAyB,CAAC,cAAc,CAAC,CAAC;IAC5D,MAAM,UAAU,GAAG,IAAI;QACrB,CAAC,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,EAAE;QACxD,CAAC,CAAC,EAAE,CAAC;IACP,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO,GAAG,yBAAyB,CAAC,YAAY,CAAC,IAAI,SAAS,GAAG,UAAU,MAAM,CAAC;IACpF,CAAC;IACD,OAAO,GAAG,SAAS,GAAG,UAAU,MAAM,CAAC;AACzC,CAAC,CAAC;AAUF;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,OAA8B,EACN,EAAE,CAAC,CAAC;IAC5B,KAAK,EAAE,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,SAAS;IACxC,OAAO,EAAE,OAAO,CAAC,WAAW;IAC5B,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC;IAC/C,MAAM,EAAE,OAAO,CAAC,MAAM;CACvB,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CACpC,gBAAoC,EACpC,aAAqB,EACsC,EAAE;IAC7D,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;QACnC,OAAO;YACL,OAAO,EAAE,sCAAsC,aAAa,gBAAgB;YAC5E,QAAQ,EAAE,SAAS;SACpB,CAAC;IACJ,CAAC;IACD,OAAO;QACL,OAAO,EAAE,yBAAyB,aAAa,0CAA0C;QACzF,QAAQ,EAAE,MAAM;KACjB,CAAC;AACJ,CAAC,CAAC;AAkEF,MAAM,CAAC,MAAM,GAAG,GAAG,KAAK,EAAE,OAAmB,EAAsB,EAAE;IACnE,MAAM,EACJ,MAAM,EACN,UAAU,EACV,aAAa,GAAG,sBAAsB,EACtC,KAAK,EACL,KAAK,EAAE,QAAQ,GAChB,GAAG,OAAO,CAAC;IAEZ,0EAA0E;IAC1E,MAAM,cAAc,GAClB,OAAO,CAAC,cAAc;QACtB,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,KAAK,UAAU;YACjC,CAAC,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE;YAC3B,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IACxB,MAAM,mBAAmB,GAAG,cAAc,CAAC,IAAI,CAAC;IAEhD,mEAAmE;IACnE,IAAI,mBAAmB,KAAK,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,KAAK,UAAU,EAAE,CAAC;QACzE,MAAM,IAAI,KAAK,CACb,+DAA+D,CAChE,CAAC;IACJ,CAAC;IAED,8DAA8D;IAC9D,IACE,mBAAmB,KAAK,MAAM;QAC9B,OAAO,CAAC,cAAc;QACtB,OAAO,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EACjC,CAAC;QACD,MAAM,IAAI,KAAK,CACb,6DAA6D;YAC3D,mEAAmE,CACtE,CAAC;IACJ,CAAC;IAED,6DAA6D;IAC7D,IAAI,OAAO,CAAC,aAAa,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CACb,2DAA2D;YACzD,yFAAyF,CAC5F,CAAC;IACJ,CAAC;IAED,8CAA8C;IAC9C,MAAM,MAAM,GACV,cAAc,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IAEvE,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAElC,sDAAsD;IACtD,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;QAC7C,MAAM,WAAW,GAAG,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAClE,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CACb,kBAAkB,OAAO,CAAC,aAAa,yCAAyC,WAAW,EAAE,CAC9F,CAAC;QACJ,CAAC;IACH,CAAC;IAED,iBAAiB;IACjB,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,UAAU,CACvC,aAAa,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,IAAI,CACxC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAClC,CACF,CAAC;IAEF,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC;IAEhC,+CAA+C;IAC/C,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,UAAU,CACzC,UAAU,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAChE,CAAC;IACF,MAAM,GAAG,GAAG,gBAAgB,CAAC;QAC3B,WAAW;QACX,gBAAgB,EAAE,QAAQ,CAAC,GAAG;QAC9B,kBAAkB,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG;KACxC,CAAC,CAAC;IAEH,0EAA0E;IAC1E,gFAAgF;IAChF,MAAM,iBAAiB,GAAG,MAAM,MAAM,CAAC,UAAU,CAC/C,gBAAgB,CAAC,WAAW,CAAC,CAC9B,CAAC;IAEF,gEAAgE;IAChE,sEAAsE;IACtE,MAAM,cAAc,GAClB,mBAAmB,KAAK,MAAM;QAC5B,CAAC,CAAC,iBAAiB;QACnB,CAAC,CAAC,CAAC,MAAM,IAAI,sBAAsB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAEvD,2EAA2E;IAC3E,gFAAgF;IAChF,MAAM,YAAY,GAChB,mBAAmB,KAAK,eAAe,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,SAAS,CAAC;IAE1E,yBAAyB;IACzB,MAAM,eAAe,GAAkB,OAAO,CAAC,OAAO,IAAI;QACxD,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,IAAI,CACR,WAAW,EACX,aAAa,EACb,MAAM,EACN,gBAAgB,CAAC,cAAc,EAAE,YAAY,EAAE,OAAO,CAAC,IAAI,CAAC,CAC7D;KACF,CAAC;IACF,MAAM,YAAY,GAChB,eAAe,CAAC,IAAI,KAAK,MAAM;QAC7B,CAAC,CAAC,CAAC,GAAG,EAAE;YACJ,uBAAuB,CAAC;gBACtB,OAAO,EAAE,eAAe,CAAC,IAAI;gBAC7B,SAAS,EAAE,OAAO,CAAC,IAAI;gBACvB,MAAM,EAAE,cAAc;aACvB,CAAC,CAAC;YACH,OAAO,KAAK,CAAC,OAAO,CAClB,WAAW,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,EACvC,cAAc,CAAC,KAAK,CACrB,CAAC;QACJ,CAAC,CAAC,EAAE;QACN,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC;IAEzB,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAChC,4BAA4B,CAAC,KAAK,EAClC,KAAK,CAAC,QAAQ,CACZ,KAAK,CAAC,OAAO,CAAC,aAAa,EAAE;QAC3B,GAAG;QACH,WAAW;QACX,cAAc,EAAE,OAAO,CAAC,cAAc;QACtC,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,eAAe,EAAE,OAAO,CAAC,OAAO;QAChC,cAAc;QACd,wBAAwB,EAAE,OAAO,CAAC,wBAAwB;QAC1D,KAAK;KACN,CAAC,EACF,cAAc,CAAC,KAAK,EACpB,YAAY,CACb,CACF,CAAC;IAEF,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;IAEzD,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QACrC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC;QACzB,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,IAAI,YAAY,CAAC,CAAC;QAC7C,MAAM,IAAI,GAAG,mBAAmB,CAAC;YAC/B,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,SAAS;YACT,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI;YACjC,aAAa;YACb,MAAM,EAAE,cAAc;SACvB,CAAC,CAAC;QACH,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;QAEzC,wEAAwE;QACxE,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC;QAC1C,KAAK,CAAC,CAAC,4BAA4B,CAAC,QAAQ,CAAC,CAAC;QAE9C,sEAAsE;QACtE,gEAAgE;QAChE,6EAA6E;QAC7E,MAAM,aAAa,GAAG;YACpB,aAAa,EAAE,cAAc;YAC7B,aAAa,EAAE,iBAAiB;YAChC,GAAG,QAAQ;SACZ,CAAC;QACF,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAS,wBAAwB,CAAC,CAAC;QACpE,MAAM,cAAc,GAAG,KAAK,CAAC,CAAC,oBAAoB,CAChD,SAAS,EACT,aAAa,EACb,iBAAiB,CAClB,CAAC;QAEF,+EAA+E;QAC/E,yGAAyG;QACzG,MAAM,iBAAiB,GACrB,mBAAmB,KAAK,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC;QAE9D,MAAM,iBAAiB,GAAG,KAAK,CAAC,CAAC,WAAW,CAAC;YAC3C,WAAW;YACX,UAAU,EAAE,aAAa;YACzB,KAAK;YACL,MAAM,EAAE,cAAc;YACtB,MAAM,EAAE,iBAAiB;YACzB,QAAQ;YACR,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,kBAAkB,EAAE,OAAO,CAAC,kBAAkB;YAC9C,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,aAAa,EAAE,OAAO,CAAC,aAAa;SACrC,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,sBAAsB,CACvC,iBAAiB,CAAC,gBAAgB,EAClC,iBAAiB,CAAC,UAAU,CAAC,MAAM,CACpC,CAAC;QACF,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;QAEzD,OAAO,iBAAiB,CAAC;IAC3B,CAAC,CAAC,CAAC;IAEH,uEAAuE;IACvE,gFAAgF;IAChF,6DAA6D;IAC7D,MAAM,YAAY,GAChB,eAAe,CAAC,IAAI,KAAK,MAAM;QAC7B,CAAC,CAAC,UAAU,CAAC,IAAI,CACb,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,EAAE,CACxB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;YAClB,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC;YACzB,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CACb,kBAAkB,CAAC,KAAqB,CAAC,EACzC,OAAO,CACR,CAAC;QACJ,CAAC,CAAC,CACH,CACF;QACH,CAAC,CAAC,UAAU,CAAC;IAEjB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,UAAU,CACpC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAC5C,CAAC;IAEF,OAAO;QACL,GAAG,MAAM;QACT,WAAW,EACT,eAAe,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;KACrE,CAAC;AACJ,CAAC,CAAC"}
@@ -34,11 +34,11 @@ export const daytona = (options) => createIsolatedSandboxProvider({
34
34
  config.target = options.target;
35
35
  const client = new Daytona(config);
36
36
  const sandbox = await client.create(options?.create);
37
- const workspacePath = (await sandbox.getWorkDir()) ??
37
+ const worktreePath = (await sandbox.getWorkDir()) ??
38
38
  (await sandbox.getUserHomeDir()) ??
39
39
  "/home/daytona";
40
40
  return {
41
- workspacePath,
41
+ worktreePath,
42
42
  exec: async (command, opts) => {
43
43
  const effectiveCommand = opts?.sudo ? `sudo ${command}` : command;
44
44
  if (opts?.onLine) {
@@ -47,7 +47,7 @@ export const daytona = (options) => createIsolatedSandboxProvider({
47
47
  await sandbox.process.createSession(sessionId);
48
48
  try {
49
49
  const execResponse = await sandbox.process.executeSessionCommand(sessionId, {
50
- command: `cd ${opts?.cwd ?? workspacePath} && ${effectiveCommand}`,
50
+ command: `cd ${opts?.cwd ?? worktreePath} && ${effectiveCommand}`,
51
51
  async: true,
52
52
  });
53
53
  const cmdId = execResponse.cmdId;
@@ -80,7 +80,7 @@ export const daytona = (options) => createIsolatedSandboxProvider({
80
80
  await sandbox.process.deleteSession(sessionId).catch(() => { });
81
81
  }
82
82
  }
83
- const response = await sandbox.process.executeCommand(effectiveCommand, opts?.cwd ?? workspacePath);
83
+ const response = await sandbox.process.executeCommand(effectiveCommand, opts?.cwd ?? worktreePath);
84
84
  return {
85
85
  stdout: response.result,
86
86
  stderr: "",
@@ -1 +1 @@
1
- {"version":3,"file":"daytona.js","sourceRoot":"","sources":["../../src/sandboxes/daytona.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daytona.js","sourceRoot":"","sources":["../../src/sandboxes/daytona.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,15 @@ export interface DockerOptions {
19
19
  readonly mounts?: readonly MountConfig[];
20
20
  /** Environment variables injected by this provider. Merged at launch time with env resolver and agent provider env. */
21
21
  readonly env?: Record<string, string>;
22
+ /**
23
+ * Docker network(s) to attach the container to.
24
+ *
25
+ * - `"my-network"` → `--network my-network`
26
+ * - `["net1", "net2"]` → `--network net1 --network net2`
27
+ *
28
+ * When omitted, Docker's default bridge network is used.
29
+ */
30
+ readonly network?: string | readonly string[];
22
31
  }
23
32
  /**
24
33
  * Create a Docker sandbox provider.
@@ -1 +1 @@
1
- {"version":3,"file":"docker.d.ts","sourceRoot":"","sources":["../../src/sandboxes/docker.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAgBH,OAAO,EAEL,KAAK,eAAe,EAKrB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,MAAM,WAAW,aAAa;IAC5B,qEAAqE;IACrE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;IACzC,uHAAuH;IACvH,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACvC;AAED;;;;;GAKG;AACH,eAAO,MAAM,MAAM,0DA2LlB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,6BAI5B,CAAC"}
1
+ {"version":3,"file":"docker.d.ts","sourceRoot":"","sources":["../../src/sandboxes/docker.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAgBH,OAAO,EAEL,KAAK,eAAe,EAKrB,MAAM,uBAAuB,CAAC;AAI/B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGrD,MAAM,WAAW,aAAa;IAC5B,qEAAqE;IACrE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;IACzC,uHAAuH;IACvH,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC;;;;;;;OAOG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC;CAC/C;AAED;;;;;GAKG;AACH,eAAO,MAAM,MAAM,0DA0NlB,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,6BAI5B,CAAC"}
@@ -13,6 +13,8 @@ import { startContainer, removeContainer, chownInContainer, } from "../DockerLif
13
13
  import { createBindMountSandboxProvider, } from "../SandboxProvider.js";
14
14
  import { existsSync } from "node:fs";
15
15
  import { homedir } from "node:os";
16
+ import { isAbsolute, resolve } from "node:path";
17
+ import { SANDBOX_REPO_DIR } from "../SandboxFactory.js";
16
18
  /**
17
19
  * Create a Docker sandbox provider.
18
20
  *
@@ -27,7 +29,7 @@ export const docker = (options) => {
27
29
  env: options?.env,
28
30
  create: async (createOptions) => {
29
31
  const containerName = `sandcastle-${randomUUID()}`;
30
- const workspacePath = createOptions.mounts.find((m) => m.hostPath === createOptions.worktreePath)?.sandboxPath ?? "/home/agent/workspace";
32
+ const worktreePath = createOptions.mounts.find((m) => m.hostPath === createOptions.worktreePath)?.sandboxPath ?? "/home/agent/workspace";
31
33
  // Build volume mount strings (internal mounts + user-provided mounts)
32
34
  const allMounts = [...createOptions.mounts, ...userMounts];
33
35
  const volumeMounts = allMounts.map((m) => {
@@ -44,8 +46,9 @@ export const docker = (options) => {
44
46
  HOME: "/home/agent",
45
47
  }, {
46
48
  volumeMounts,
47
- workdir: workspacePath,
49
+ workdir: worktreePath,
48
50
  user: `${hostUid}:${hostGid}`,
51
+ network: options?.network,
49
52
  }).pipe(Effect.andThen(chownInContainer(containerName, `${hostUid}:${hostGid}`, "/home/agent"))));
50
53
  // Set up signal handlers for cleanup
51
54
  const onExit = () => {
@@ -66,7 +69,7 @@ export const docker = (options) => {
66
69
  process.on("SIGINT", onSignal);
67
70
  process.on("SIGTERM", onSignal);
68
71
  const handle = {
69
- workspacePath,
72
+ worktreePath,
70
73
  exec: (command, opts) => {
71
74
  const effectiveCommand = opts?.sudo ? `sudo ${command}` : command;
72
75
  const args = ["exec"];
@@ -141,6 +144,26 @@ export const docker = (options) => {
141
144
  });
142
145
  });
143
146
  },
147
+ copyFileIn: (hostPath, sandboxPath) => new Promise((resolve, reject) => {
148
+ execFile("docker", ["cp", hostPath, `${containerName}:${sandboxPath}`], (error) => {
149
+ if (error) {
150
+ reject(new Error(`docker cp (in) failed: ${error.message}`));
151
+ }
152
+ else {
153
+ resolve();
154
+ }
155
+ });
156
+ }),
157
+ copyFileOut: (sandboxPath, hostPath) => new Promise((resolve, reject) => {
158
+ execFile("docker", ["cp", `${containerName}:${sandboxPath}`, hostPath], (error) => {
159
+ if (error) {
160
+ reject(new Error(`docker cp (out) failed: ${error.message}`));
161
+ }
162
+ else {
163
+ resolve();
164
+ }
165
+ });
166
+ }),
144
167
  close: async () => {
145
168
  process.removeListener("exit", onExit);
146
169
  process.removeListener("SIGINT", onSignal);
@@ -169,8 +192,15 @@ const expandTilde = (p) => {
169
192
  return homedir() + p.slice(1);
170
193
  return p;
171
194
  };
195
+ const resolveHostPath = (hostPath) => {
196
+ const expanded = expandTilde(hostPath);
197
+ return isAbsolute(expanded) ? expanded : resolve(process.cwd(), expanded);
198
+ };
199
+ const resolveSandboxPath = (sandboxPath) => isAbsolute(sandboxPath)
200
+ ? sandboxPath
201
+ : resolve(SANDBOX_REPO_DIR, sandboxPath);
172
202
  const resolveUserMounts = (mounts) => mounts.map((m) => {
173
- const resolvedHostPath = expandTilde(m.hostPath);
203
+ const resolvedHostPath = resolveHostPath(m.hostPath);
174
204
  if (!existsSync(resolvedHostPath)) {
175
205
  throw new Error(`Mount hostPath does not exist: ${m.hostPath}` +
176
206
  (m.hostPath !== resolvedHostPath
@@ -179,7 +209,7 @@ const resolveUserMounts = (mounts) => mounts.map((m) => {
179
209
  }
180
210
  return {
181
211
  hostPath: resolvedHostPath,
182
- sandboxPath: m.sandboxPath,
212
+ sandboxPath: resolveSandboxPath(m.sandboxPath),
183
213
  ...(m.readonly ? { readonly: true } : {}),
184
214
  };
185
215
  });
@@ -1 +1 @@
1
- {"version":3,"file":"docker.js","sourceRoot":"","sources":["../../src/sandboxes/docker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"docker.js","sourceRoot":"","sources":["../../src/sandboxes/docker.ts"],"names":[],"mappings":"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"}