@ai-hero/sandcastle 0.1.6 → 0.1.8
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 +68 -31
- package/dist/ErrorHandler.js +1 -1
- package/dist/ErrorHandler.js.map +1 -1
- package/dist/Orchestrator.d.ts +7 -4
- package/dist/Orchestrator.d.ts.map +1 -1
- package/dist/Orchestrator.js +70 -42
- package/dist/Orchestrator.js.map +1 -1
- package/dist/PromptArgumentSubstitution.d.ts +11 -1
- package/dist/PromptArgumentSubstitution.d.ts.map +1 -1
- package/dist/PromptArgumentSubstitution.js +25 -2
- package/dist/PromptArgumentSubstitution.js.map +1 -1
- package/dist/SandboxFactory.d.ts +6 -1
- package/dist/SandboxFactory.d.ts.map +1 -1
- package/dist/SandboxFactory.js +66 -24
- package/dist/SandboxFactory.js.map +1 -1
- package/dist/WorktreeManager.d.ts +5 -0
- package/dist/WorktreeManager.d.ts.map +1 -1
- package/dist/WorktreeManager.js +5 -0
- package/dist/WorktreeManager.js.map +1 -1
- package/dist/errors.d.ts +6 -2
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +1 -1
- package/dist/errors.js.map +1 -1
- package/dist/run.d.ts +9 -7
- package/dist/run.d.ts.map +1 -1
- package/dist/run.js +21 -12
- package/dist/run.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,6 +1,20 @@
|
|
|
1
|
-
|
|
1
|
+
<div align="center">
|
|
2
|
+
<picture>
|
|
3
|
+
<source media="(prefers-color-scheme: dark)" srcset="https://res.cloudinary.com/total-typescript/image/upload/v1775033787/readme-sandcastle-ondark_2x.png">
|
|
4
|
+
<source media="(prefers-color-scheme: light)" srcset="https://res.cloudinary.com/total-typescript/image/upload/v1775033787/readme-sandcastle-onlight_2x.png">
|
|
5
|
+
<img alt="Sandcastle" src="https://res.cloudinary.com/total-typescript/image/upload/v1775033787/readme-sandcastle-onlight_2x.png" height="200" style="margin-bottom: 20px;">
|
|
6
|
+
</picture>
|
|
7
|
+
</div>
|
|
2
8
|
|
|
3
|
-
|
|
9
|
+
## What Is Sandcastle?
|
|
10
|
+
|
|
11
|
+
A TypeScript library for orchestrating AI coding agents in isolated Docker containers:
|
|
12
|
+
|
|
13
|
+
1. You invoke agents with a single `sandcastle.run()`.
|
|
14
|
+
2. Sandcastle handles building worktrees and sandboxing the agent.
|
|
15
|
+
3. The commits made on the branches get merged back.
|
|
16
|
+
|
|
17
|
+
Great for parallelizing multiple AFK agents, creating review pipelines, or even just orchestrating your own agents.
|
|
4
18
|
|
|
5
19
|
## Prerequisites
|
|
6
20
|
|
|
@@ -101,16 +115,16 @@ const result = await run({
|
|
|
101
115
|
logging: { type: "file", path: ".sandcastle/logs/my-run.log" },
|
|
102
116
|
// logging: { type: "stdout" }, // OR render an interactive UI in the terminal
|
|
103
117
|
|
|
104
|
-
// String the agent emits to end the iteration loop early.
|
|
118
|
+
// String (or array of strings) the agent emits to end the iteration loop early.
|
|
105
119
|
// Default: "<promise>COMPLETE</promise>"
|
|
106
120
|
completionSignal: "<promise>COMPLETE</promise>",
|
|
107
121
|
|
|
108
|
-
//
|
|
109
|
-
|
|
122
|
+
// Idle timeout in seconds — resets whenever the agent produces output. Default: 300 (5 minutes)
|
|
123
|
+
idleTimeoutSeconds: 300,
|
|
110
124
|
});
|
|
111
125
|
|
|
112
126
|
console.log(result.iterationsRun); // number of iterations executed
|
|
113
|
-
console.log(result.
|
|
127
|
+
console.log(result.completionSignal); // matched signal string, or undefined if none fired
|
|
114
128
|
console.log(result.commits); // array of { sha } for commits created
|
|
115
129
|
console.log(result.branch); // target branch name
|
|
116
130
|
```
|
|
@@ -186,22 +200,45 @@ Prompt argument substitution runs on the host before shell expression expansion,
|
|
|
186
200
|
|
|
187
201
|
A `{{KEY}}` placeholder with no matching prompt argument is an error. Unused prompt arguments produce a warning.
|
|
188
202
|
|
|
203
|
+
### Built-in prompt arguments
|
|
204
|
+
|
|
205
|
+
Sandcastle automatically injects two built-in prompt arguments into every prompt:
|
|
206
|
+
|
|
207
|
+
| Placeholder | Value |
|
|
208
|
+
| ------------------- | -------------------------------------------------------------------- |
|
|
209
|
+
| `{{SOURCE_BRANCH}}` | The branch the agent works on inside the worktree (temp or explicit) |
|
|
210
|
+
| `{{TARGET_BRANCH}}` | The host's active branch at `run()` time |
|
|
211
|
+
|
|
212
|
+
Use them in your prompt without passing them via `promptArgs`:
|
|
213
|
+
|
|
214
|
+
```markdown
|
|
215
|
+
You are working on {{SOURCE_BRANCH}}. When diffing, compare against {{TARGET_BRANCH}}.
|
|
216
|
+
```
|
|
217
|
+
|
|
218
|
+
Passing `SOURCE_BRANCH` or `TARGET_BRANCH` in `promptArgs` is an error — built-in prompt arguments cannot be overridden.
|
|
219
|
+
|
|
189
220
|
### Early termination with `<promise>COMPLETE</promise>`
|
|
190
221
|
|
|
191
222
|
When the agent outputs `<promise>COMPLETE</promise>`, the orchestrator stops the iteration loop early. This is a convention you document in your prompt for the agent to follow — the engine never injects it.
|
|
192
223
|
|
|
193
224
|
This is useful for task-based workflows where the agent should stop once it has finished, rather than running all remaining iterations.
|
|
194
225
|
|
|
195
|
-
You can override the default signal by passing `completionSignal` to `run()
|
|
226
|
+
You can override the default signal by passing `completionSignal` to `run()`. It accepts a single string or an array of strings:
|
|
196
227
|
|
|
197
228
|
```ts
|
|
198
229
|
await run({
|
|
199
230
|
// ...
|
|
200
231
|
completionSignal: "DONE",
|
|
201
232
|
});
|
|
233
|
+
|
|
234
|
+
// Or pass multiple signals — the loop stops on the first match:
|
|
235
|
+
await run({
|
|
236
|
+
// ...
|
|
237
|
+
completionSignal: ["TASK_COMPLETE", "TASK_ABORTED"],
|
|
238
|
+
});
|
|
202
239
|
```
|
|
203
240
|
|
|
204
|
-
Tell the agent to output your chosen string in the prompt, and the orchestrator will stop when it detects
|
|
241
|
+
Tell the agent to output your chosen string(s) in the prompt, and the orchestrator will stop when it detects any of them. The matched signal is returned as `result.completionSignal`.
|
|
205
242
|
|
|
206
243
|
### Templates
|
|
207
244
|
|
|
@@ -257,32 +294,32 @@ Removes the Docker image.
|
|
|
257
294
|
|
|
258
295
|
### `RunOptions`
|
|
259
296
|
|
|
260
|
-
| Option
|
|
261
|
-
|
|
|
262
|
-
| `prompt`
|
|
263
|
-
| `promptFile`
|
|
264
|
-
| `maxIterations`
|
|
265
|
-
| `hooks`
|
|
266
|
-
| `branch`
|
|
267
|
-
| `model`
|
|
268
|
-
| `imageName`
|
|
269
|
-
| `name`
|
|
270
|
-
| `promptArgs`
|
|
271
|
-
| `copyToSandbox`
|
|
272
|
-
| `logging`
|
|
273
|
-
| `completionSignal`
|
|
274
|
-
| `
|
|
297
|
+
| Option | Type | Default | Description |
|
|
298
|
+
| -------------------- | ------------------ | ----------------------------- | --------------------------------------------------------------------------- |
|
|
299
|
+
| `prompt` | string | — | Inline prompt (mutually exclusive with `promptFile`) |
|
|
300
|
+
| `promptFile` | string | — | Path to prompt file (mutually exclusive with `prompt`) |
|
|
301
|
+
| `maxIterations` | number | `1` | Maximum iterations to run |
|
|
302
|
+
| `hooks` | object | — | Lifecycle hooks (`onSandboxReady`) |
|
|
303
|
+
| `branch` | string | — | Target branch for sandbox work |
|
|
304
|
+
| `model` | string | `claude-opus-4-6` | Model to use for the agent |
|
|
305
|
+
| `imageName` | string | `sandcastle:<repo-dir-name>` | Docker image name for the sandbox |
|
|
306
|
+
| `name` | string | — | Display name for the run, shown as a prefix in log output |
|
|
307
|
+
| `promptArgs` | PromptArgs | — | Key-value map for `{{KEY}}` placeholder substitution |
|
|
308
|
+
| `copyToSandbox` | string[] | — | Host-relative file paths to copy into the worktree before start |
|
|
309
|
+
| `logging` | object | file (auto-generated) | `{ type: 'file', path }` or `{ type: 'stdout' }` |
|
|
310
|
+
| `completionSignal` | string \| string[] | `<promise>COMPLETE</promise>` | String or array of strings the agent emits to stop the iteration loop early |
|
|
311
|
+
| `idleTimeoutSeconds` | number | `300` | Idle timeout in seconds — resets on each agent output event |
|
|
275
312
|
|
|
276
313
|
### `RunResult`
|
|
277
314
|
|
|
278
|
-
| Field
|
|
279
|
-
|
|
|
280
|
-
| `iterationsRun`
|
|
281
|
-
| `
|
|
282
|
-
| `stdout`
|
|
283
|
-
| `commits`
|
|
284
|
-
| `branch`
|
|
285
|
-
| `logFilePath`
|
|
315
|
+
| Field | Type | Description |
|
|
316
|
+
| ------------------ | ----------- | ------------------------------------------------------------------ |
|
|
317
|
+
| `iterationsRun` | number | Number of iterations that were executed |
|
|
318
|
+
| `completionSignal` | string? | The matched completion signal string, or `undefined` if none fired |
|
|
319
|
+
| `stdout` | string | Agent output |
|
|
320
|
+
| `commits` | `{ sha }[]` | Commits created during the run |
|
|
321
|
+
| `branch` | string | Target branch name |
|
|
322
|
+
| `logFilePath` | string? | Path to the log file (only when logging to a file) |
|
|
286
323
|
|
|
287
324
|
Environment variables are resolved automatically from `.sandcastle/.env` and `process.env` — no need to pass them to the API. The required variables depend on the **agent provider** (see `sandcastle init` output for details).
|
|
288
325
|
|
package/dist/ErrorHandler.js
CHANGED
|
@@ -27,7 +27,7 @@ export const formatErrorMessage = (error) => {
|
|
|
27
27
|
case "InitError":
|
|
28
28
|
return `${error.message}`;
|
|
29
29
|
case "TimeoutError":
|
|
30
|
-
return
|
|
30
|
+
return error.message;
|
|
31
31
|
}
|
|
32
32
|
};
|
|
33
33
|
const showErrorAndExit = (error) => Effect.gen(function* () {
|
package/dist/ErrorHandler.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ErrorHandler.js","sourceRoot":"","sources":["../src/ErrorHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAGvC;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAAmB,EAAU,EAAE;IAChE,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,WAAW;YACd,OAAO,8BAA8B,KAAK,CAAC,OAAO,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;QAC1E,KAAK,eAAe;YAClB,OAAO,2BAA2B,KAAK,CAAC,OAAO,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;QACvE,KAAK,WAAW;YACd,OAAO,qBAAqB,KAAK,CAAC,OAAO,EAAE,CAAC;QAC9C,KAAK,aAAa;YAChB,OAAO,4BAA4B,KAAK,CAAC,OAAO,sBAAsB,CAAC;QACzE,KAAK,WAAW;YACd,OAAO,oBAAoB,KAAK,CAAC,OAAO,EAAE,CAAC;QAC7C,KAAK,eAAe;YAClB,OAAO,kCAAkC,KAAK,CAAC,OAAO,EAAE,CAAC;QAC3D,KAAK,aAAa;YAChB,OAAO,6BAA6B,KAAK,CAAC,OAAO,EAAE,CAAC;QACtD,KAAK,YAAY;YACf,OAAO,4BAA4B,KAAK,CAAC,OAAO,EAAE,CAAC;QACrD,KAAK,gBAAgB;YACnB,OAAO,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;QAC5B,KAAK,WAAW;YACd,OAAO,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;QAC5B,KAAK,cAAc;YACjB,OAAO,
|
|
1
|
+
{"version":3,"file":"ErrorHandler.js","sourceRoot":"","sources":["../src/ErrorHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAGvC;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,KAAmB,EAAU,EAAE;IAChE,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,WAAW;YACd,OAAO,8BAA8B,KAAK,CAAC,OAAO,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;QAC1E,KAAK,eAAe;YAClB,OAAO,2BAA2B,KAAK,CAAC,OAAO,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;QACvE,KAAK,WAAW;YACd,OAAO,qBAAqB,KAAK,CAAC,OAAO,EAAE,CAAC;QAC9C,KAAK,aAAa;YAChB,OAAO,4BAA4B,KAAK,CAAC,OAAO,sBAAsB,CAAC;QACzE,KAAK,WAAW;YACd,OAAO,oBAAoB,KAAK,CAAC,OAAO,EAAE,CAAC;QAC7C,KAAK,eAAe;YAClB,OAAO,kCAAkC,KAAK,CAAC,OAAO,EAAE,CAAC;QAC3D,KAAK,aAAa;YAChB,OAAO,6BAA6B,KAAK,CAAC,OAAO,EAAE,CAAC;QACtD,KAAK,YAAY;YACf,OAAO,4BAA4B,KAAK,CAAC,OAAO,EAAE,CAAC;QACrD,KAAK,gBAAgB;YACnB,OAAO,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;QAC5B,KAAK,WAAW;YACd,OAAO,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;QAC5B,KAAK,cAAc;YACjB,OAAO,KAAK,CAAC,OAAO,CAAC;IACzB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,KAAmB,EAAE,EAAE,CAC/C,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC;IACzB,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;IACpD,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAU,CAAC,CAAC;AAC5D,CAAC,CAAC,CAAC;AAEL;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,MAA8B,EAC2B,EAAE;AAC3D,8DAA8D;AAC9D,MAAM,CAAC,SAAS,CAAC,MAA2C,EAAE;IAC5D,SAAS,EAAE,gBAAgB;IAC3B,aAAa,EAAE,gBAAgB;IAC/B,SAAS,EAAE,gBAAgB;IAC3B,WAAW,EAAE,gBAAgB;IAC7B,SAAS,EAAE,gBAAgB;IAC3B,aAAa,EAAE,gBAAgB;IAC/B,WAAW,EAAE,gBAAgB;IAC7B,UAAU,EAAE,gBAAgB;IAC5B,cAAc,EAAE,gBAAgB;IAChC,SAAS,EAAE,gBAAgB;IAC3B,YAAY,EAAE,gBAAgB;CAC/B,CAA4D,CAAC"}
|
package/dist/Orchestrator.d.ts
CHANGED
|
@@ -43,20 +43,23 @@ export interface OrchestrateOptions {
|
|
|
43
43
|
readonly prompt: string;
|
|
44
44
|
readonly branch?: string;
|
|
45
45
|
readonly model?: string;
|
|
46
|
-
readonly completionSignal?: string;
|
|
47
|
-
/**
|
|
48
|
-
readonly
|
|
46
|
+
readonly completionSignal?: string | string[];
|
|
47
|
+
/** Idle timeout in seconds. If the agent produces no output for this long, it fails with TimeoutError. Default: 300 (5 minutes) */
|
|
48
|
+
readonly idleTimeoutSeconds?: number;
|
|
49
49
|
/** Optional name for the run, prepended to status messages as [name] */
|
|
50
50
|
readonly name?: string;
|
|
51
51
|
}
|
|
52
52
|
export interface OrchestrateResult {
|
|
53
53
|
readonly iterationsRun: number;
|
|
54
|
-
|
|
54
|
+
/** The matched completion signal string, or undefined if none fired. */
|
|
55
|
+
readonly completionSignal?: string;
|
|
55
56
|
readonly stdout: string;
|
|
56
57
|
readonly commits: {
|
|
57
58
|
sha: string;
|
|
58
59
|
}[];
|
|
59
60
|
readonly branch: string;
|
|
61
|
+
/** Host path to the preserved worktree from the last iteration, set when the worktree was left behind due to uncommitted changes on a successful run. */
|
|
62
|
+
readonly preservedWorktreePath?: string;
|
|
60
63
|
}
|
|
61
64
|
export declare const orchestrate: (options: OrchestrateOptions) => Effect.Effect<OrchestrateResult, SandboxError, Display | SandboxFactory>;
|
|
62
65
|
//# sourceMappingURL=Orchestrator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Orchestrator.d.ts","sourceRoot":"","sources":["../src/Orchestrator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAGvC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAwB,KAAK,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAEhF,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC;IACzC,QAAQ,CAAC,2BAA2B,EAAE,MAAM,CAAC;IAC7C,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED,eAAO,MAAM,aAAa,oBAAoB,CAAC;AA6B/C,MAAM,MAAM,iBAAiB,GACzB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAAA;CAAE,GAC5D;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAUtD,yDAAyD;AACzD,eAAO,MAAM,mBAAmB,uCA+C/B,CAAC;AAeF;;;GAGG;AACH,eAAO,MAAM,cAAc;;;QAS1B,CAAC;
|
|
1
|
+
{"version":3,"file":"Orchestrator.d.ts","sourceRoot":"","sources":["../src/Orchestrator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAGvC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAwB,KAAK,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAEhF,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC;IACzC,QAAQ,CAAC,2BAA2B,EAAE,MAAM,CAAC;IAC7C,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED,eAAO,MAAM,aAAa,oBAAoB,CAAC;AA6B/C,MAAM,MAAM,iBAAiB,GACzB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAAA;CAAE,GAC5D;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAUtD,yDAAyD;AACzD,eAAO,MAAM,mBAAmB,uCA+C/B,CAAC;AAeF;;;GAGG;AACH,eAAO,MAAM,cAAc;;;QAS1B,CAAC;AA4FF,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC9C,mIAAmI;IACnI,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IACrC,wEAAwE;IACxE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,wEAAwE;IACxE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,yJAAyJ;IACzJ,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAC;CACzC;AAED,eAAO,MAAM,WAAW,2GA2HvB,CAAC"}
|
package/dist/Orchestrator.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Deferred, Effect } from "effect";
|
|
2
2
|
import { Display } from "./Display.js";
|
|
3
3
|
import { preprocessPrompt } from "./PromptPreprocessor.js";
|
|
4
4
|
import { AgentError, TimeoutError } from "./errors.js";
|
|
@@ -99,29 +99,54 @@ export const formatToolCall = (name, input) => {
|
|
|
99
99
|
return null;
|
|
100
100
|
return { name, formattedArgs: arg };
|
|
101
101
|
};
|
|
102
|
-
const invokeAgent = (sandbox, sandboxRepoDir, prompt, model, onText, onToolCall) => Effect.gen(function* () {
|
|
102
|
+
const invokeAgent = (sandbox, sandboxRepoDir, prompt, model, idleTimeoutMs, onText, onToolCall) => Effect.gen(function* () {
|
|
103
103
|
let resultText = "";
|
|
104
104
|
let tokenUsage = null;
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
105
|
+
// Deferred that will be failed when the idle timer fires
|
|
106
|
+
const timeoutSignal = yield* Deferred.make();
|
|
107
|
+
let timeoutHandle = null;
|
|
108
|
+
const idleTimeoutSeconds = idleTimeoutMs / 1000;
|
|
109
|
+
const resetIdleTimer = () => {
|
|
110
|
+
if (timeoutHandle !== null)
|
|
111
|
+
clearTimeout(timeoutHandle);
|
|
112
|
+
timeoutHandle = setTimeout(() => {
|
|
113
|
+
Effect.runPromise(Deferred.fail(timeoutSignal, new TimeoutError({
|
|
114
|
+
message: `Agent idle for ${idleTimeoutSeconds} seconds — no output received. Consider increasing the idle timeout with --idle-timeout.`,
|
|
115
|
+
idleTimeoutSeconds,
|
|
116
|
+
}))).catch(() => { });
|
|
117
|
+
}, idleTimeoutMs);
|
|
118
|
+
};
|
|
119
|
+
resetIdleTimer();
|
|
120
|
+
const execEffect = Effect.gen(function* () {
|
|
121
|
+
const execResult = yield* sandbox.execStreaming(`claude --print --verbose --dangerously-skip-permissions --output-format stream-json --model ${model} -p ${shellEscape(prompt)}`, (line) => {
|
|
122
|
+
for (const parsed of parseStreamJsonLine(line)) {
|
|
123
|
+
if (parsed.type === "text") {
|
|
124
|
+
resetIdleTimer();
|
|
125
|
+
onText(parsed.text);
|
|
126
|
+
}
|
|
127
|
+
else if (parsed.type === "result") {
|
|
128
|
+
resultText = parsed.result;
|
|
129
|
+
tokenUsage = parsed.usage;
|
|
130
|
+
}
|
|
131
|
+
else if (parsed.type === "tool_call") {
|
|
132
|
+
resetIdleTimer();
|
|
133
|
+
onToolCall(parsed.name, parsed.args);
|
|
134
|
+
}
|
|
116
135
|
}
|
|
136
|
+
}, { cwd: sandboxRepoDir });
|
|
137
|
+
if (execResult.exitCode !== 0) {
|
|
138
|
+
return yield* Effect.fail(new AgentError({
|
|
139
|
+
message: `Claude exited with code ${execResult.exitCode}:\n${execResult.stderr}`,
|
|
140
|
+
}));
|
|
117
141
|
}
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
142
|
+
return { result: resultText || execResult.stdout, usage: tokenUsage };
|
|
143
|
+
}).pipe(Effect.ensuring(Effect.sync(() => {
|
|
144
|
+
if (timeoutHandle !== null) {
|
|
145
|
+
clearTimeout(timeoutHandle);
|
|
146
|
+
timeoutHandle = null;
|
|
147
|
+
}
|
|
148
|
+
})));
|
|
149
|
+
return yield* Effect.raceFirst(execEffect, Deferred.await(timeoutSignal));
|
|
125
150
|
});
|
|
126
151
|
const shellEscape = (s) => "'" + s.replace(/'/g, "'\\''") + "'";
|
|
127
152
|
const formatNumber = (n) => n.toLocaleString("en-US");
|
|
@@ -130,22 +155,32 @@ const formatUsageRows = (usage) => ({
|
|
|
130
155
|
Turns: `${usage.num_turns}`,
|
|
131
156
|
});
|
|
132
157
|
const DEFAULT_COMPLETION_SIGNAL = "<promise>COMPLETE</promise>";
|
|
133
|
-
const
|
|
158
|
+
const DEFAULT_IDLE_TIMEOUT_SECONDS = 5 * 60; // 300 seconds
|
|
134
159
|
export const orchestrate = (options) => {
|
|
135
|
-
const
|
|
160
|
+
const idleTimeoutMs = (options.idleTimeoutSeconds ?? DEFAULT_IDLE_TIMEOUT_SECONDS) * 1000;
|
|
136
161
|
return Effect.gen(function* () {
|
|
137
162
|
const factory = yield* SandboxFactory;
|
|
138
163
|
const display = yield* Display;
|
|
139
164
|
const { hostRepoDir, sandboxRepoDir, iterations, hooks, prompt, branch } = options;
|
|
140
165
|
const resolvedModel = options.model ?? DEFAULT_MODEL;
|
|
141
|
-
|
|
166
|
+
let completionSignals;
|
|
167
|
+
if (options.completionSignal === undefined) {
|
|
168
|
+
completionSignals = [DEFAULT_COMPLETION_SIGNAL];
|
|
169
|
+
}
|
|
170
|
+
else if (Array.isArray(options.completionSignal)) {
|
|
171
|
+
completionSignals = options.completionSignal;
|
|
172
|
+
}
|
|
173
|
+
else {
|
|
174
|
+
completionSignals = [options.completionSignal];
|
|
175
|
+
}
|
|
142
176
|
const label = (msg) => options.name ? `[${options.name}] ${msg}` : msg;
|
|
143
177
|
const allCommits = [];
|
|
144
178
|
let allStdout = "";
|
|
145
179
|
let resolvedBranch = "";
|
|
180
|
+
let iterationPreservedPath;
|
|
146
181
|
for (let i = 1; i <= iterations; i++) {
|
|
147
182
|
yield* display.status(label(`Iteration ${i}/${iterations}`), "info");
|
|
148
|
-
const
|
|
183
|
+
const sandboxResult = yield* factory.withSandbox(({ hostWorktreePath }) => withSandboxLifecycle({
|
|
149
184
|
hostRepoDir,
|
|
150
185
|
sandboxRepoDir,
|
|
151
186
|
hooks,
|
|
@@ -162,52 +197,45 @@ export const orchestrate = (options) => {
|
|
|
162
197
|
const onToolCall = (name, formattedArgs) => {
|
|
163
198
|
Effect.runPromise(display.toolCall(name, formattedArgs));
|
|
164
199
|
};
|
|
165
|
-
const { result: agentOutput, usage } = yield* invokeAgent(ctx.sandbox, ctx.sandboxRepoDir, fullPrompt, resolvedModel, onText, onToolCall);
|
|
200
|
+
const { result: agentOutput, usage } = yield* invokeAgent(ctx.sandbox, ctx.sandboxRepoDir, fullPrompt, resolvedModel, idleTimeoutMs, onText, onToolCall);
|
|
166
201
|
yield* display.status(label("Agent stopped"), "info");
|
|
167
202
|
// Log usage summary
|
|
168
203
|
if (usage) {
|
|
169
204
|
yield* display.summary("Token Usage", formatUsageRows(usage));
|
|
170
205
|
}
|
|
171
206
|
// Check completion signal
|
|
172
|
-
|
|
173
|
-
return {
|
|
174
|
-
wasCompletionSignalDetected: true,
|
|
175
|
-
stdout: agentOutput,
|
|
176
|
-
};
|
|
177
|
-
}
|
|
207
|
+
const matchedSignal = completionSignals.find((sig) => agentOutput.includes(sig));
|
|
178
208
|
return {
|
|
179
|
-
|
|
209
|
+
completionSignal: matchedSignal,
|
|
180
210
|
stdout: agentOutput,
|
|
181
211
|
};
|
|
182
212
|
})));
|
|
213
|
+
const lifecycleResult = sandboxResult.value;
|
|
214
|
+
iterationPreservedPath = sandboxResult.preservedWorktreePath;
|
|
183
215
|
allCommits.push(...lifecycleResult.commits);
|
|
184
216
|
allStdout += lifecycleResult.result.stdout;
|
|
185
217
|
resolvedBranch = lifecycleResult.branch;
|
|
186
|
-
if (lifecycleResult.result.
|
|
218
|
+
if (lifecycleResult.result.completionSignal !== undefined) {
|
|
187
219
|
yield* display.status(label(`Agent signaled completion after ${i} iteration(s).`), "success");
|
|
188
220
|
return {
|
|
189
221
|
iterationsRun: i,
|
|
190
|
-
|
|
222
|
+
completionSignal: lifecycleResult.result.completionSignal,
|
|
191
223
|
stdout: allStdout,
|
|
192
224
|
commits: allCommits,
|
|
193
225
|
branch: resolvedBranch,
|
|
226
|
+
preservedWorktreePath: iterationPreservedPath,
|
|
194
227
|
};
|
|
195
228
|
}
|
|
196
229
|
}
|
|
197
230
|
yield* display.status(label(`Reached max iterations (${iterations}).`), "info");
|
|
198
231
|
return {
|
|
199
232
|
iterationsRun: iterations,
|
|
200
|
-
|
|
233
|
+
completionSignal: undefined,
|
|
201
234
|
stdout: allStdout,
|
|
202
235
|
commits: allCommits,
|
|
203
236
|
branch: resolvedBranch,
|
|
237
|
+
preservedWorktreePath: iterationPreservedPath,
|
|
204
238
|
};
|
|
205
|
-
})
|
|
206
|
-
duration: Duration.seconds(timeoutSeconds),
|
|
207
|
-
onTimeout: () => new TimeoutError({
|
|
208
|
-
message: `Run timed out after ${timeoutSeconds / 60} minutes`,
|
|
209
|
-
timeoutSeconds,
|
|
210
|
-
}),
|
|
211
|
-
}));
|
|
239
|
+
});
|
|
212
240
|
};
|
|
213
241
|
//# sourceMappingURL=Orchestrator.js.map
|
package/dist/Orchestrator.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Orchestrator.js","sourceRoot":"","sources":["../src/Orchestrator.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Orchestrator.js","sourceRoot":"","sources":["../src/Orchestrator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGvD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAqB,MAAM,uBAAuB,CAAC;AAYhF,MAAM,CAAC,MAAM,aAAa,GAAG,iBAAiB,CAAC;AAE/C,MAAM,YAAY,GAAG,CAAC,GAA4B,EAAqB,EAAE;IACvE,MAAM,KAAK,GAAG,GAAG,CAAC,KAA4C,CAAC;IAC/D,IACE,CAAC,KAAK;QACN,OAAO,KAAK,CAAC,YAAY,KAAK,QAAQ;QACtC,OAAO,KAAK,CAAC,aAAa,KAAK,QAAQ,EACvC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO;QACL,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,uBAAuB,EACrB,OAAO,KAAK,CAAC,uBAAuB,KAAK,QAAQ;YAC/C,CAAC,CAAC,KAAK,CAAC,uBAAuB;YAC/B,CAAC,CAAC,CAAC;QACP,2BAA2B,EACzB,OAAO,KAAK,CAAC,2BAA2B,KAAK,QAAQ;YACnD,CAAC,CAAC,KAAK,CAAC,2BAA2B;YACnC,CAAC,CAAC,CAAC;QACP,cAAc,EACZ,OAAO,GAAG,CAAC,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;QACjE,SAAS,EAAE,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAChE,WAAW,EAAE,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;KACvE,CAAC;AACJ,CAAC,CAAC;AAOF,gFAAgF;AAChF,MAAM,eAAe,GAA2B;IAC9C,IAAI,EAAE,SAAS;IACf,SAAS,EAAE,OAAO;IAClB,QAAQ,EAAE,KAAK;IACf,KAAK,EAAE,aAAa;CACrB,CAAC;AAEF,yDAAyD;AACzD,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,IAAY,EAAuB,EAAE;IACvE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,EAAE,CAAC;IACrC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC;YACpE,MAAM,MAAM,GAAwB,EAAE,CAAC;YACvC,MAAM,KAAK,GAAa,EAAE,CAAC;YAC3B,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,OAAO,CAAC,OAK7B,EAAE,CAAC;gBACJ,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAC5D,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACzB,CAAC;qBAAM,IACL,KAAK,CAAC,IAAI,KAAK,UAAU;oBACzB,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;oBAC9B,KAAK,CAAC,KAAK,KAAK,SAAS,EACzB,CAAC;oBACD,MAAM,QAAQ,GAAG,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAC7C,IAAI,QAAQ,KAAK,SAAS;wBAAE,SAAS,CAAC,kBAAkB;oBACxD,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;oBACvC,IAAI,OAAO,QAAQ,KAAK,QAAQ;wBAAE,SAAS,CAAC,0BAA0B;oBACtE,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACrB,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;wBACpD,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;oBACnB,CAAC;oBACD,MAAM,CAAC,IAAI,CAAC;wBACV,IAAI,EAAE,WAAW;wBACjB,IAAI,EAAE,KAAK,CAAC,IAAI;wBAChB,IAAI,EAAE,QAAQ;qBACf,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YACD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrB,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACtD,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC5D,OAAO,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,wBAAwB;IAC1B,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAGrB;IACF,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,CACd,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;IAC/D,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CACnB,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;IAC3D,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5E,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;CACxE,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,IAAY,EACZ,KAA8B,EACkB,EAAE;IAClD,MAAM,SAAS,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAC5C,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IAC5B,MAAM,GAAG,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;IAC7B,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACnC,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC;AACtC,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAClB,OAAuB,EACvB,cAAsB,EACtB,MAAc,EACd,KAAa,EACb,aAAqB,EACrB,MAA8B,EAC9B,UAAyD,EACkB,EAAE,CAC7E,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,IAAI,UAAU,GAAG,EAAE,CAAC;IACpB,IAAI,UAAU,GAAsB,IAAI,CAAC;IAEzC,yDAAyD;IACzD,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAuB,CAAC;IAClE,IAAI,aAAa,GAAyC,IAAI,CAAC;IAC/D,MAAM,kBAAkB,GAAG,aAAa,GAAG,IAAI,CAAC;IAEhD,MAAM,cAAc,GAAG,GAAG,EAAE;QAC1B,IAAI,aAAa,KAAK,IAAI;YAAE,YAAY,CAAC,aAAa,CAAC,CAAC;QACxD,aAAa,GAAG,UAAU,CAAC,GAAG,EAAE;YAC9B,MAAM,CAAC,UAAU,CACf,QAAQ,CAAC,IAAI,CACX,aAAa,EACb,IAAI,YAAY,CAAC;gBACf,OAAO,EAAE,kBAAkB,kBAAkB,0FAA0F;gBACvI,kBAAkB;aACnB,CAAC,CACH,CACF,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACpB,CAAC,EAAE,aAAa,CAAC,CAAC;IACpB,CAAC,CAAC;IAEF,cAAc,EAAE,CAAC;IAEjB,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QACrC,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,aAAa,CAC7C,+FAA+F,KAAK,OAAO,WAAW,CAAC,MAAM,CAAC,EAAE,EAChI,CAAC,IAAI,EAAE,EAAE;YACP,KAAK,MAAM,MAAM,IAAI,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC/C,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBAC3B,cAAc,EAAE,CAAC;oBACjB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACtB,CAAC;qBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACpC,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC;oBAC3B,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC;gBAC5B,CAAC;qBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;oBACvC,cAAc,EAAE,CAAC;oBACjB,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;gBACvC,CAAC;YACH,CAAC;QACH,CAAC,EACD,EAAE,GAAG,EAAE,cAAc,EAAE,CACxB,CAAC;QAEF,IAAI,UAAU,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YAC9B,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,IAAI,UAAU,CAAC;gBACb,OAAO,EAAE,2BAA2B,UAAU,CAAC,QAAQ,MAAM,UAAU,CAAC,MAAM,EAAE;aACjF,CAAC,CACH,CAAC;QACJ,CAAC;QAED,OAAO,EAAE,MAAM,EAAE,UAAU,IAAI,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;IACxE,CAAC,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,QAAQ,CACb,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;QACf,IAAI,aAAa,KAAK,IAAI,EAAE,CAAC;YAC3B,YAAY,CAAC,aAAa,CAAC,CAAC;YAC5B,aAAa,GAAG,IAAI,CAAC;QACvB,CAAC;IACH,CAAC,CAAC,CACH,CACF,CAAC;IAEF,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;AAC5E,CAAC,CAAC,CAAC;AAEL,MAAM,WAAW,GAAG,CAAC,CAAS,EAAU,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,GAAG,CAAC;AAEhF,MAAM,YAAY,GAAG,CAAC,CAAS,EAAU,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;AAEtE,MAAM,eAAe,GAAG,CAAC,KAAiB,EAA0B,EAAE,CAAC,CAAC;IACtE,MAAM,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,YAAY,CAAC,SAAS,YAAY,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM;IAC3F,KAAK,EAAE,GAAG,KAAK,CAAC,SAAS,EAAE;CAC5B,CAAC,CAAC;AAEH,MAAM,yBAAyB,GAAG,6BAA6B,CAAC;AAChE,MAAM,4BAA4B,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,cAAc;AA4B3D,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,OAA2B,EAC+C,EAAE;IAC5E,MAAM,aAAa,GACjB,CAAC,OAAO,CAAC,kBAAkB,IAAI,4BAA4B,CAAC,GAAG,IAAI,CAAC;IACtE,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QACzB,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,cAAc,CAAC;QACtC,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC;QAC/B,MAAM,EAAE,WAAW,EAAE,cAAc,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,GACtE,OAAO,CAAC;QACV,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,IAAI,aAAa,CAAC;QACrD,IAAI,iBAA2B,CAAC;QAChC,IAAI,OAAO,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;YAC3C,iBAAiB,GAAG,CAAC,yBAAyB,CAAC,CAAC;QAClD,CAAC;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;YACnD,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC;QAC/C,CAAC;aAAM,CAAC;YACN,iBAAiB,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QACjD,CAAC;QAED,MAAM,KAAK,GAAG,CAAC,GAAW,EAAU,EAAE,CACpC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QAElD,MAAM,UAAU,GAAsB,EAAE,CAAC;QACzC,IAAI,SAAS,GAAG,EAAE,CAAC;QACnB,IAAI,cAAc,GAAG,EAAE,CAAC;QACxB,IAAI,sBAA0C,CAAC;QAE/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,UAAU,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;YAErE,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,EAAE,gBAAgB,EAAE,EAAE,EAAE,CACxE,oBAAoB,CAClB;gBACE,WAAW;gBACX,cAAc;gBACd,KAAK;gBACL,MAAM;gBACN,gBAAgB;aACjB,EACD,CAAC,GAAG,EAAE,EAAE,CACN,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;gBAClB,gEAAgE;gBAChE,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,gBAAgB,CACxC,MAAM,EACN,GAAG,CAAC,OAAO,EACX,GAAG,CAAC,cAAc,CACnB,CAAC;gBAEF,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,SAAS,CAAC,CAAC;gBAEzD,mBAAmB;gBACnB,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,EAAE;oBAC9B,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;gBACxC,CAAC,CAAC;gBACF,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,aAAqB,EAAE,EAAE;oBACzD,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC;gBAC3D,CAAC,CAAC;gBACF,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,CAAC,WAAW,CACvD,GAAG,CAAC,OAAO,EACX,GAAG,CAAC,cAAc,EAClB,UAAU,EACV,aAAa,EACb,aAAa,EACb,MAAM,EACN,UAAU,CACX,CAAC;gBAEF,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC,CAAC;gBAEtD,oBAAoB;gBACpB,IAAI,KAAK,EAAE,CAAC;oBACV,KAAK,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;gBAChE,CAAC;gBAED,0BAA0B;gBAC1B,MAAM,aAAa,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CACnD,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,CAC1B,CAAC;gBACF,OAAO;oBACL,gBAAgB,EAAE,aAAa;oBAC/B,MAAM,EAAE,WAAW;iBACX,CAAC;YACb,CAAC,CAAC,CACL,CACF,CAAC;YAEF,MAAM,eAAe,GAAG,aAAa,CAAC,KAAK,CAAC;YAC5C,sBAAsB,GAAG,aAAa,CAAC,qBAAqB,CAAC;YAE7D,UAAU,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;YAC5C,SAAS,IAAI,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC;YAC3C,cAAc,GAAG,eAAe,CAAC,MAAM,CAAC;YAExC,IAAI,eAAe,CAAC,MAAM,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;gBAC1D,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,CACnB,KAAK,CAAC,mCAAmC,CAAC,gBAAgB,CAAC,EAC3D,SAAS,CACV,CAAC;gBACF,OAAO;oBACL,aAAa,EAAE,CAAC;oBAChB,gBAAgB,EAAE,eAAe,CAAC,MAAM,CAAC,gBAAgB;oBACzD,MAAM,EAAE,SAAS;oBACjB,OAAO,EAAE,UAAU;oBACnB,MAAM,EAAE,cAAc;oBACtB,qBAAqB,EAAE,sBAAsB;iBAC9C,CAAC;YACJ,CAAC;QACH,CAAC;QAED,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,CACnB,KAAK,CAAC,2BAA2B,UAAU,IAAI,CAAC,EAChD,MAAM,CACP,CAAC;QACF,OAAO;YACL,aAAa,EAAE,UAAU;YACzB,gBAAgB,EAAE,SAAS;YAC3B,MAAM,EAAE,SAAS;YACjB,OAAO,EAAE,UAAU;YACnB,MAAM,EAAE,cAAc;YACtB,qBAAqB,EAAE,sBAAsB;SAC9C,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC"}
|
|
@@ -7,5 +7,15 @@ import { PromptError } from "./errors.js";
|
|
|
7
7
|
* replaces it before the prompt is passed to the agent.
|
|
8
8
|
*/
|
|
9
9
|
export type PromptArgs = Record<string, string | number | boolean>;
|
|
10
|
-
|
|
10
|
+
/**
|
|
11
|
+
* Prompt argument keys that Sandcastle injects automatically.
|
|
12
|
+
* These cannot be overridden via `promptArgs`.
|
|
13
|
+
*/
|
|
14
|
+
export declare const BUILT_IN_PROMPT_ARG_KEYS: readonly ["SOURCE_BRANCH", "TARGET_BRANCH"];
|
|
15
|
+
/**
|
|
16
|
+
* Validates that the user has not provided any built-in prompt argument keys.
|
|
17
|
+
* Fails with a PromptError if any built-in key is found in `args`.
|
|
18
|
+
*/
|
|
19
|
+
export declare const validateNoBuiltInArgOverride: (args: PromptArgs) => Effect.Effect<void, PromptError, never>;
|
|
20
|
+
export declare const substitutePromptArgs: (prompt: string, args: PromptArgs, silentKeys?: ReadonlySet<string> | undefined) => Effect.Effect<string, PromptError, Display>;
|
|
11
21
|
//# sourceMappingURL=PromptArgumentSubstitution.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PromptArgumentSubstitution.d.ts","sourceRoot":"","sources":["../src/PromptArgumentSubstitution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"PromptArgumentSubstitution.d.ts","sourceRoot":"","sources":["../src/PromptArgumentSubstitution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;AAEnE;;;GAGG;AACH,eAAO,MAAM,wBAAwB,6CAG3B,CAAC;AAIX;;;GAGG;AACH,eAAO,MAAM,4BAA4B,+DAaxC,CAAC;AAEF,eAAO,MAAM,oBAAoB,iIA8ChC,CAAC"}
|
|
@@ -1,8 +1,30 @@
|
|
|
1
1
|
import { Effect } from "effect";
|
|
2
2
|
import { Display } from "./Display.js";
|
|
3
3
|
import { PromptError } from "./errors.js";
|
|
4
|
+
/**
|
|
5
|
+
* Prompt argument keys that Sandcastle injects automatically.
|
|
6
|
+
* These cannot be overridden via `promptArgs`.
|
|
7
|
+
*/
|
|
8
|
+
export const BUILT_IN_PROMPT_ARG_KEYS = [
|
|
9
|
+
"SOURCE_BRANCH",
|
|
10
|
+
"TARGET_BRANCH",
|
|
11
|
+
];
|
|
4
12
|
const PLACEHOLDER_PATTERN = /\{\{([A-Za-z_][A-Za-z0-9_]*)\}\}/g;
|
|
5
|
-
|
|
13
|
+
/**
|
|
14
|
+
* Validates that the user has not provided any built-in prompt argument keys.
|
|
15
|
+
* Fails with a PromptError if any built-in key is found in `args`.
|
|
16
|
+
*/
|
|
17
|
+
export const validateNoBuiltInArgOverride = (args) => {
|
|
18
|
+
for (const key of BUILT_IN_PROMPT_ARG_KEYS) {
|
|
19
|
+
if (key in args) {
|
|
20
|
+
return Effect.fail(new PromptError({
|
|
21
|
+
message: `"${key}" is a built-in prompt argument and cannot be overridden via promptArgs`,
|
|
22
|
+
}));
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
return Effect.void;
|
|
26
|
+
};
|
|
27
|
+
export const substitutePromptArgs = (prompt, args, silentKeys) => {
|
|
6
28
|
const matches = [...prompt.matchAll(PLACEHOLDER_PATTERN)];
|
|
7
29
|
if (matches.length === 0 && Object.keys(args).length === 0) {
|
|
8
30
|
return Effect.succeed(prompt);
|
|
@@ -20,8 +42,9 @@ export const substitutePromptArgs = (prompt, args) => {
|
|
|
20
42
|
}
|
|
21
43
|
}
|
|
22
44
|
// Warn about unused keys (arg provided but no matching placeholder)
|
|
45
|
+
// Skip keys listed in silentKeys (e.g. built-in args)
|
|
23
46
|
for (const key of Object.keys(args)) {
|
|
24
|
-
if (!referencedKeys.has(key)) {
|
|
47
|
+
if (!referencedKeys.has(key) && !silentKeys?.has(key)) {
|
|
25
48
|
yield* display.status(`Prompt argument "${key}" was provided but not referenced in the prompt`, "warn");
|
|
26
49
|
}
|
|
27
50
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PromptArgumentSubstitution.js","sourceRoot":"","sources":["../src/PromptArgumentSubstitution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAS1C,MAAM,mBAAmB,GAAG,mCAAmC,CAAC;AAEhE,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,MAAc,EACd,IAAgB,
|
|
1
|
+
{"version":3,"file":"PromptArgumentSubstitution.js","sourceRoot":"","sources":["../src/PromptArgumentSubstitution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAS1C;;;GAGG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,eAAe;IACf,eAAe;CACP,CAAC;AAEX,MAAM,mBAAmB,GAAG,mCAAmC,CAAC;AAEhE;;;GAGG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAC1C,IAAgB,EACkB,EAAE;IACpC,KAAK,MAAM,GAAG,IAAI,wBAAwB,EAAE,CAAC;QAC3C,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;YAChB,OAAO,MAAM,CAAC,IAAI,CAChB,IAAI,WAAW,CAAC;gBACd,OAAO,EAAE,IAAI,GAAG,yEAAyE;aAC1F,CAAC,CACH,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC;AACrB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,MAAc,EACd,IAAgB,EAChB,UAAgC,EACa,EAAE;IAC/C,MAAM,OAAO,GAAG,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAE1D,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3D,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,CAAC;IAED,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QACzB,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC;QAE/B,4CAA4C;QAC5C,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC;QAE1D,qEAAqE;QACrE,KAAK,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;YACjC,IAAI,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,EAAE,CAAC;gBACnB,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CACvB,IAAI,WAAW,CAAC;oBACd,OAAO,EAAE,sBAAsB,GAAG,yCAAyC;iBAC5E,CAAC,CACH,CAAC;YACJ,CAAC;QACH,CAAC;QAED,oEAAoE;QACpE,sDAAsD;QACtD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACpC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACtD,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,CACnB,oBAAoB,GAAG,iDAAiD,EACxE,MAAM,CACP,CAAC;YACJ,CAAC;QACH,CAAC;QAED,6CAA6C;QAC7C,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CACjE,IAAI,CAAC,GAAa,CAAE,CAAC,QAAQ,EAAE,CAChC,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC"}
|
package/dist/SandboxFactory.d.ts
CHANGED
|
@@ -26,8 +26,13 @@ export interface SandboxInfo {
|
|
|
26
26
|
/** Host-side path to the worktree directory (worktree mode only). */
|
|
27
27
|
readonly hostWorktreePath?: string;
|
|
28
28
|
}
|
|
29
|
+
export interface WithSandboxResult<A> {
|
|
30
|
+
readonly value: A;
|
|
31
|
+
/** Host path to the preserved worktree, set when the worktree was left behind due to uncommitted changes. */
|
|
32
|
+
readonly preservedWorktreePath?: string;
|
|
33
|
+
}
|
|
29
34
|
declare const SandboxFactory_base: Context.TagClass<SandboxFactory, "SandboxFactory", {
|
|
30
|
-
readonly withSandbox: <A, E, R>(makeEffect: (info: SandboxInfo) => Effect.Effect<A, E, R | Sandbox>) => Effect.Effect<A
|
|
35
|
+
readonly withSandbox: <A, E, R>(makeEffect: (info: SandboxInfo) => Effect.Effect<A, E, R | Sandbox>) => Effect.Effect<WithSandboxResult<A>, E | DockerError | WorktreeError, Exclude<R, Sandbox>>;
|
|
31
36
|
}>;
|
|
32
37
|
export declare class SandboxFactory extends SandboxFactory_base {
|
|
33
38
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SandboxFactory.d.ts","sourceRoot":"","sources":["../src/SandboxFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"SandboxFactory.d.ts","sourceRoot":"","sources":["../src/SandboxFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAQ,KAAK,EAAE,MAAM,QAAQ,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAW9C,OAAO,EAEL,SAAS,EACT,SAAS,EAET,KAAK,WAAW,EAChB,KAAK,aAAa,EACnB,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,CACb,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,KACvB,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAE1C,QAAQ,CAAC,aAAa,EAAE,CACtB,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EACpC,OAAO,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,KACvB,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAE1C,QAAQ,CAAC,MAAM,EAAE,CACf,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,KAChB,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAEpC,QAAQ,CAAC,OAAO,EAAE,CAChB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,KACb,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;CACrC;;AAED,qBAAa,OAAQ,SAAQ,YAG1B;CAAG;AAgLN,gFAAgF;AAChF,eAAO,MAAM,qBAAqB,0BAA0B,CAAC;AAE7D,MAAM,WAAW,WAAW;IAC1B,qEAAqE;IACrE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CACpC;AAED,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAClC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IAClB,6GAA6G;IAC7G,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAC;CACzC;;2BAK0B,CAAC,EAAE,CAAC,EAAE,CAAC;;AAHlC,qBAAa,cAAe,SAAQ,mBAWjC;CAAG;;;;;IAoBF,+FAA+F;;IAE/F,6FAA6F;;IAE7F,kGAAkG;;;AAVtG,qBAAa,qBAAsB,SAAQ,0BAaxC;CAAG;AAcN;;;;GAIG;AACH,eAAO,MAAM,4BAA4B;;CAgMxC,CAAC"}
|
package/dist/SandboxFactory.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Context, Effect, Layer } from "effect";
|
|
1
|
+
import { Context, Effect, Exit, Layer } from "effect";
|
|
2
2
|
import { FileSystem } from "@effect/platform";
|
|
3
3
|
import { NodeFileSystem } from "@effect/platform-node";
|
|
4
4
|
import { randomUUID } from "node:crypto";
|
|
@@ -6,7 +6,7 @@ import { execFile, execFileSync, spawn } from "node:child_process";
|
|
|
6
6
|
import { dirname, join } from "node:path";
|
|
7
7
|
import { createInterface } from "node:readline";
|
|
8
8
|
import { startContainer, removeContainer, chownInContainer, } from "./DockerLifecycle.js";
|
|
9
|
-
import { CopyError, ExecError, } from "./errors.js";
|
|
9
|
+
import { AgentError, CopyError, ExecError, TimeoutError, } from "./errors.js";
|
|
10
10
|
import * as WorktreeManager from "./WorktreeManager.js";
|
|
11
11
|
import { copyToSandbox } from "./CopyToSandbox.js";
|
|
12
12
|
import { Display } from "./Display.js";
|
|
@@ -138,19 +138,12 @@ const forceRemoveContainerSync = (containerName) => {
|
|
|
138
138
|
export class WorktreeSandboxConfig extends Context.Tag("WorktreeSandboxConfig")() {
|
|
139
139
|
}
|
|
140
140
|
/**
|
|
141
|
-
*
|
|
142
|
-
* Used in process exit handlers where async operations are not possible.
|
|
141
|
+
* Print a message to stderr about a preserved worktree, with review and cleanup instructions.
|
|
143
142
|
*/
|
|
144
|
-
const
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
cwd: repoDir,
|
|
149
|
-
});
|
|
150
|
-
}
|
|
151
|
-
catch {
|
|
152
|
-
// Best-effort — worktree may already be gone
|
|
153
|
-
}
|
|
143
|
+
const printWorktreePreservedMessage = (worktreePath, reason) => {
|
|
144
|
+
console.error(`\n${reason}`);
|
|
145
|
+
console.error(` To review: cd ${worktreePath}`);
|
|
146
|
+
console.error(` To clean up: git worktree remove --force ${worktreePath}`);
|
|
154
147
|
};
|
|
155
148
|
/**
|
|
156
149
|
* Worktree sandbox mode: creates a git worktree and bind-mounts it into the
|
|
@@ -165,6 +158,9 @@ export const WorktreeDockerSandboxFactory = {
|
|
|
165
158
|
return {
|
|
166
159
|
withSandbox: (makeEffect) => {
|
|
167
160
|
const containerName = `sandcastle-${randomUUID()}`;
|
|
161
|
+
// Populated by the release phase when a worktree is preserved on failure,
|
|
162
|
+
// so we can attach the path to recognized error types before they propagate.
|
|
163
|
+
let preservedWorktreePath;
|
|
168
164
|
return Effect.acquireUseRelease(
|
|
169
165
|
// Acquire: prune stale worktrees (best-effort), create worktree, then start container
|
|
170
166
|
WorktreeManager.pruneStale(hostRepoDir)
|
|
@@ -184,34 +180,80 @@ export const WorktreeDockerSandboxFactory = {
|
|
|
184
180
|
`${worktreeInfo.path}:${SANDBOX_WORKSPACE_DIR}`,
|
|
185
181
|
`${gitDir}:${gitDir}`,
|
|
186
182
|
];
|
|
187
|
-
|
|
183
|
+
// On signals: remove the container but preserve the worktree so the
|
|
184
|
+
// developer can inspect the agent's work.
|
|
185
|
+
const cleanupContainerOnly = () => {
|
|
188
186
|
forceRemoveContainerSync(containerName);
|
|
189
|
-
forceRemoveWorktreeSync(worktreeInfo.path, hostRepoDir);
|
|
190
187
|
};
|
|
191
188
|
const onSignal = () => {
|
|
192
|
-
|
|
189
|
+
cleanupContainerOnly();
|
|
190
|
+
printWorktreePreservedMessage(worktreeInfo.path, `Worktree preserved at ${worktreeInfo.path}`);
|
|
193
191
|
process.exit(1);
|
|
194
192
|
};
|
|
195
193
|
const hostUid = process.getuid?.() ?? 1000;
|
|
196
194
|
const hostGid = process.getgid?.() ?? 1000;
|
|
197
|
-
return startContainer(containerName, imageName, env, {
|
|
195
|
+
return startContainer(containerName, imageName, { ...env, HOME: "/home/agent" }, {
|
|
198
196
|
volumeMounts,
|
|
199
197
|
workdir: SANDBOX_WORKSPACE_DIR,
|
|
200
198
|
user: `${hostUid}:${hostGid}`,
|
|
201
199
|
}).pipe(Effect.andThen(chownInContainer(containerName, `${hostUid}:${hostGid}`, "/home/agent")), Effect.tap(() => Effect.sync(() => {
|
|
202
|
-
|
|
200
|
+
// exit handler only removes the container; the worktree is preserved
|
|
201
|
+
// on abnormal exit just as on SIGINT/SIGTERM.
|
|
202
|
+
process.on("exit", cleanupContainerOnly);
|
|
203
203
|
process.on("SIGINT", onSignal);
|
|
204
204
|
process.on("SIGTERM", onSignal);
|
|
205
|
-
})), Effect.map(() => ({
|
|
205
|
+
})), Effect.map(() => ({
|
|
206
|
+
worktreeInfo,
|
|
207
|
+
cleanupContainerOnly,
|
|
208
|
+
onSignal,
|
|
209
|
+
})));
|
|
206
210
|
})),
|
|
207
211
|
// Use
|
|
208
212
|
({ worktreeInfo }) => makeEffect({ hostWorktreePath: worktreeInfo.path }).pipe(Effect.provide(makeDockerSandboxLayer(containerName))),
|
|
209
|
-
// Release: remove container
|
|
210
|
-
({ worktreeInfo,
|
|
211
|
-
process.removeListener("exit",
|
|
213
|
+
// Release: always remove container; remove/preserve worktree based on dirty state.
|
|
214
|
+
({ worktreeInfo, cleanupContainerOnly, onSignal }, exit) => Effect.sync(() => {
|
|
215
|
+
process.removeListener("exit", cleanupContainerOnly);
|
|
212
216
|
process.removeListener("SIGINT", onSignal);
|
|
213
217
|
process.removeListener("SIGTERM", onSignal);
|
|
214
|
-
}).pipe(Effect.andThen(removeContainer(containerName)), Effect.andThen(WorktreeManager.
|
|
218
|
+
}).pipe(Effect.andThen(removeContainer(containerName)), Effect.andThen(WorktreeManager.hasUncommittedChanges(worktreeInfo.path).pipe(Effect.catchAll(() => Effect.succeed(false)), Effect.flatMap((isDirty) => {
|
|
219
|
+
if (isDirty) {
|
|
220
|
+
preservedWorktreePath = worktreeInfo.path;
|
|
221
|
+
printWorktreePreservedMessage(worktreeInfo.path, Exit.isSuccess(exit)
|
|
222
|
+
? `Run succeeded but worktree has uncommitted changes at ${worktreeInfo.path}`
|
|
223
|
+
: `Worktree preserved at ${worktreeInfo.path}`);
|
|
224
|
+
return Effect.void;
|
|
225
|
+
}
|
|
226
|
+
else {
|
|
227
|
+
if (!Exit.isSuccess(exit)) {
|
|
228
|
+
console.error(`\nWorktree removed (no uncommitted changes)`);
|
|
229
|
+
}
|
|
230
|
+
return WorktreeManager.remove(worktreeInfo.path);
|
|
231
|
+
}
|
|
232
|
+
}))), Effect.orDie)).pipe(Effect.map((value) => ({
|
|
233
|
+
value,
|
|
234
|
+
preservedWorktreePath,
|
|
235
|
+
})),
|
|
236
|
+
// Attach the preserved worktree path to TimeoutError and AgentError so
|
|
237
|
+
// programmatic callers can build on top of the preserved worktree.
|
|
238
|
+
Effect.mapError((e) => {
|
|
239
|
+
const path = preservedWorktreePath;
|
|
240
|
+
if (path !== undefined) {
|
|
241
|
+
if (e instanceof TimeoutError) {
|
|
242
|
+
return new TimeoutError({
|
|
243
|
+
message: e.message,
|
|
244
|
+
idleTimeoutSeconds: e.idleTimeoutSeconds,
|
|
245
|
+
preservedWorktreePath: path,
|
|
246
|
+
});
|
|
247
|
+
}
|
|
248
|
+
if (e instanceof AgentError) {
|
|
249
|
+
return new AgentError({
|
|
250
|
+
message: e.message,
|
|
251
|
+
preservedWorktreePath: path,
|
|
252
|
+
});
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
return e;
|
|
256
|
+
}));
|
|
215
257
|
},
|
|
216
258
|
};
|
|
217
259
|
})),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SandboxFactory.js","sourceRoot":"","sources":["../src/SandboxFactory.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SandboxFactory.js","sourceRoot":"","sources":["../src/SandboxFactory.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,6 +27,11 @@ export declare const create: (repoDir: string, opts?: {
|
|
|
27
27
|
branch?: string | undefined;
|
|
28
28
|
agentName?: string | undefined;
|
|
29
29
|
} | undefined) => Effect.Effect<WorktreeInfo, WorktreeError, FileSystem.FileSystem>;
|
|
30
|
+
/**
|
|
31
|
+
* Returns true if the worktree at `worktreePath` has any uncommitted changes:
|
|
32
|
+
* unstaged modifications, staged changes, or untracked files.
|
|
33
|
+
*/
|
|
34
|
+
export declare const hasUncommittedChanges: (worktreePath: string) => Effect.Effect<boolean, WorktreeError, never>;
|
|
30
35
|
/**
|
|
31
36
|
* Removes a worktree and its git metadata.
|
|
32
37
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorktreeManager.d.ts","sourceRoot":"","sources":["../src/WorktreeManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAU,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAW5C,0EAA0E;AAC1E,eAAO,MAAM,iBAAiB,0BACiB,CAAC;AAsBhD;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,4CAMlC,CAAC;AAEF,wFAAwF;AACxF,eAAO,MAAM,gBAAgB,kEAK1B,CAAC;AAEJ,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAsCD;;;;;;;GAOG;AACH,eAAO,MAAM,MAAM;;;mFA+Ef,CAAC;AAEL;;;;;GAKG;AACH,eAAO,MAAM,MAAM,qEAQlB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,UAAU,gFAsDnB,CAAC"}
|
|
1
|
+
{"version":3,"file":"WorktreeManager.d.ts","sourceRoot":"","sources":["../src/WorktreeManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAU,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAW5C,0EAA0E;AAC1E,eAAO,MAAM,iBAAiB,0BACiB,CAAC;AAsBhD;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,4CAMlC,CAAC;AAEF,wFAAwF;AACxF,eAAO,MAAM,gBAAgB,kEAK1B,CAAC;AAEJ,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAsCD;;;;;;;GAOG;AACH,eAAO,MAAM,MAAM;;;mFA+Ef,CAAC;AAEL;;;GAGG;AACH,eAAO,MAAM,qBAAqB,wEAK/B,CAAC;AAEJ;;;;;GAKG;AACH,eAAO,MAAM,MAAM,qEAQlB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,UAAU,gFAsDnB,CAAC"}
|
package/dist/WorktreeManager.js
CHANGED
|
@@ -124,6 +124,11 @@ export const create = (repoDir, opts) => Effect.gen(function* () {
|
|
|
124
124
|
}
|
|
125
125
|
return { path: worktreePath, branch };
|
|
126
126
|
});
|
|
127
|
+
/**
|
|
128
|
+
* Returns true if the worktree at `worktreePath` has any uncommitted changes:
|
|
129
|
+
* unstaged modifications, staged changes, or untracked files.
|
|
130
|
+
*/
|
|
131
|
+
export const hasUncommittedChanges = (worktreePath) => execGit(["status", "--porcelain"], worktreePath).pipe(Effect.map((output) => output.trim().length > 0));
|
|
127
132
|
/**
|
|
128
133
|
* Removes a worktree and its git metadata.
|
|
129
134
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorktreeManager.js","sourceRoot":"","sources":["../src/WorktreeManager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"WorktreeManager.js","sourceRoot":"","sources":["../src/WorktreeManager.ts"],"names":[],"mappings":"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"}
|
package/dist/errors.d.ts
CHANGED
|
@@ -62,6 +62,8 @@ declare const AgentError_base: new <A extends Record<string, any> = {}>(args: im
|
|
|
62
62
|
/** Agent invocation failed */
|
|
63
63
|
export declare class AgentError extends AgentError_base<{
|
|
64
64
|
readonly message: string;
|
|
65
|
+
/** Host path to the preserved worktree, set when the worktree was kept after failure. */
|
|
66
|
+
readonly preservedWorktreePath?: string;
|
|
65
67
|
}> {
|
|
66
68
|
}
|
|
67
69
|
declare const ConfigDirError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
@@ -83,10 +85,12 @@ export declare class InitError extends InitError_base<{
|
|
|
83
85
|
declare const TimeoutError_base: new <A extends Record<string, any> = {}>(args: import("effect/Types").VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }>) => import("effect/Cause").YieldableError & {
|
|
84
86
|
readonly _tag: "TimeoutError";
|
|
85
87
|
} & Readonly<A>;
|
|
86
|
-
/** Run exceeded the configured timeout */
|
|
88
|
+
/** Run exceeded the configured idle timeout */
|
|
87
89
|
export declare class TimeoutError extends TimeoutError_base<{
|
|
88
90
|
readonly message: string;
|
|
89
|
-
readonly
|
|
91
|
+
readonly idleTimeoutSeconds: number;
|
|
92
|
+
/** Host path to the preserved worktree, set when the worktree was kept after failure. */
|
|
93
|
+
readonly preservedWorktreePath?: string;
|
|
90
94
|
}> {
|
|
91
95
|
}
|
|
92
96
|
/** Union of all sandbox-related errors */
|
package/dist/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":";;;AAEA,8CAA8C;AAC9C,qBAAa,SAAU,SAAQ,eAA8B;IAC3D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC;CAAG;;;;AAEL,2CAA2C;AAC3C,qBAAa,aAAc,SAAQ,mBAAkC;IACnE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC;CAAG;;;;AAEL,gDAAgD;AAChD,qBAAa,SAAU,SAAQ,eAA8B;IAC3D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC;CAAG;;;;AAEL,6CAA6C;AAC7C,qBAAa,WAAY,SAAQ,iBAAgC;IAC/D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC;CAAG;;;;AAEL,+CAA+C;AAC/C,qBAAa,SAAU,SAAQ,eAA8B;IAC3D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC;CAAG;;;;AAEL,oCAAoC;AACpC,qBAAa,aAAc,SAAQ,mBAAkC;IACnE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC;CAAG;;;;AAEL,gDAAgD;AAChD,qBAAa,WAAY,SAAQ,iBAAgC;IAC/D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC;CAAG;;;;AAEL,8BAA8B;AAC9B,qBAAa,UAAW,SAAQ,gBAA+B;IAC7D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":";;;AAEA,8CAA8C;AAC9C,qBAAa,SAAU,SAAQ,eAA8B;IAC3D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC;CAAG;;;;AAEL,2CAA2C;AAC3C,qBAAa,aAAc,SAAQ,mBAAkC;IACnE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC;CAAG;;;;AAEL,gDAAgD;AAChD,qBAAa,SAAU,SAAQ,eAA8B;IAC3D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC;CAAG;;;;AAEL,6CAA6C;AAC7C,qBAAa,WAAY,SAAQ,iBAAgC;IAC/D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC;CAAG;;;;AAEL,+CAA+C;AAC/C,qBAAa,SAAU,SAAQ,eAA8B;IAC3D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC;CAAG;;;;AAEL,oCAAoC;AACpC,qBAAa,aAAc,SAAQ,mBAAkC;IACnE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC;CAAG;;;;AAEL,gDAAgD;AAChD,qBAAa,WAAY,SAAQ,iBAAgC;IAC/D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC;CAAG;;;;AAEL,8BAA8B;AAC9B,qBAAa,UAAW,SAAQ,gBAA+B;IAC7D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,yFAAyF;IACzF,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAC;CACzC,CAAC;CAAG;;;;AAEL,4CAA4C;AAC5C,qBAAa,cAAe,SAAQ,oBAAmC;IACrE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC;CAAG;;;;AAEL,+CAA+C;AAC/C,qBAAa,SAAU,SAAQ,eAA8B;IAC3D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC;CAAG;;;;AAEL,+CAA+C;AAC/C,qBAAa,YAAa,SAAQ,kBAAiC;IACjE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,yFAAyF;IACzF,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,CAAC;CACzC,CAAC;CAAG;AAEL,0CAA0C;AAC1C,MAAM,MAAM,YAAY,GACpB,SAAS,GACT,aAAa,GACb,SAAS,GACT,WAAW,GACX,SAAS,GACT,aAAa,GACb,WAAW,GACX,UAAU,GACV,cAAc,GACd,SAAS,GACT,YAAY,CAAC"}
|
package/dist/errors.js
CHANGED
|
@@ -29,7 +29,7 @@ export class ConfigDirError extends Data.TaggedError("ConfigDirError") {
|
|
|
29
29
|
/** Initialization or setup operation failed */
|
|
30
30
|
export class InitError extends Data.TaggedError("InitError") {
|
|
31
31
|
}
|
|
32
|
-
/** Run exceeded the configured timeout */
|
|
32
|
+
/** Run exceeded the configured idle timeout */
|
|
33
33
|
export class TimeoutError extends Data.TaggedError("TimeoutError") {
|
|
34
34
|
}
|
|
35
35
|
//# sourceMappingURL=errors.js.map
|
package/dist/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,8CAA8C;AAC9C,MAAM,OAAO,SAAU,SAAQ,IAAI,CAAC,WAAW,CAAC,WAAW,CAGzD;CAAG;AAEL,2CAA2C;AAC3C,MAAM,OAAO,aAAc,SAAQ,IAAI,CAAC,WAAW,CAAC,eAAe,CAGjE;CAAG;AAEL,gDAAgD;AAChD,MAAM,OAAO,SAAU,SAAQ,IAAI,CAAC,WAAW,CAAC,WAAW,CAEzD;CAAG;AAEL,6CAA6C;AAC7C,MAAM,OAAO,WAAY,SAAQ,IAAI,CAAC,WAAW,CAAC,aAAa,CAE7D;CAAG;AAEL,+CAA+C;AAC/C,MAAM,OAAO,SAAU,SAAQ,IAAI,CAAC,WAAW,CAAC,WAAW,CAEzD;CAAG;AAEL,oCAAoC;AACpC,MAAM,OAAO,aAAc,SAAQ,IAAI,CAAC,WAAW,CAAC,eAAe,CAEjE;CAAG;AAEL,gDAAgD;AAChD,MAAM,OAAO,WAAY,SAAQ,IAAI,CAAC,WAAW,CAAC,aAAa,CAE7D;CAAG;AAEL,8BAA8B;AAC9B,MAAM,OAAO,UAAW,SAAQ,IAAI,CAAC,WAAW,CAAC,YAAY,
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,8CAA8C;AAC9C,MAAM,OAAO,SAAU,SAAQ,IAAI,CAAC,WAAW,CAAC,WAAW,CAGzD;CAAG;AAEL,2CAA2C;AAC3C,MAAM,OAAO,aAAc,SAAQ,IAAI,CAAC,WAAW,CAAC,eAAe,CAGjE;CAAG;AAEL,gDAAgD;AAChD,MAAM,OAAO,SAAU,SAAQ,IAAI,CAAC,WAAW,CAAC,WAAW,CAEzD;CAAG;AAEL,6CAA6C;AAC7C,MAAM,OAAO,WAAY,SAAQ,IAAI,CAAC,WAAW,CAAC,aAAa,CAE7D;CAAG;AAEL,+CAA+C;AAC/C,MAAM,OAAO,SAAU,SAAQ,IAAI,CAAC,WAAW,CAAC,WAAW,CAEzD;CAAG;AAEL,oCAAoC;AACpC,MAAM,OAAO,aAAc,SAAQ,IAAI,CAAC,WAAW,CAAC,eAAe,CAEjE;CAAG;AAEL,gDAAgD;AAChD,MAAM,OAAO,WAAY,SAAQ,IAAI,CAAC,WAAW,CAAC,aAAa,CAE7D;CAAG;AAEL,8BAA8B;AAC9B,MAAM,OAAO,UAAW,SAAQ,IAAI,CAAC,WAAW,CAAC,YAAY,CAI3D;CAAG;AAEL,4CAA4C;AAC5C,MAAM,OAAO,cAAe,SAAQ,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAEnE;CAAG;AAEL,+CAA+C;AAC/C,MAAM,OAAO,SAAU,SAAQ,IAAI,CAAC,WAAW,CAAC,WAAW,CAEzD;CAAG;AAEL,+CAA+C;AAC/C,MAAM,OAAO,YAAa,SAAQ,IAAI,CAAC,WAAW,CAAC,cAAc,CAK/D;CAAG"}
|
package/dist/run.d.ts
CHANGED
|
@@ -47,7 +47,7 @@ export declare const buildRunSummaryRows: (options: RunSummaryRowsOptions) => Re
|
|
|
47
47
|
* Build the completion status message for a run, used in both terminal mode
|
|
48
48
|
* and log-to-file mode to record the final outcome.
|
|
49
49
|
*/
|
|
50
|
-
export declare const buildCompletionMessage: (
|
|
50
|
+
export declare const buildCompletionMessage: (completionSignal: string | undefined, iterationsRun: number) => {
|
|
51
51
|
readonly message: string;
|
|
52
52
|
readonly severity: Severity;
|
|
53
53
|
};
|
|
@@ -89,10 +89,10 @@ export interface RunOptions {
|
|
|
89
89
|
readonly promptArgs?: PromptArgs;
|
|
90
90
|
/** Logging mode (default: { type: 'file' } with auto-generated path under .sandcastle/logs/) */
|
|
91
91
|
readonly logging?: LoggingOption;
|
|
92
|
-
/**
|
|
93
|
-
readonly completionSignal?: string;
|
|
94
|
-
/**
|
|
95
|
-
readonly
|
|
92
|
+
/** Substring(s) the agent emits to stop the iteration loop early. Matched via `includes` against agent output. (default: `"<promise>COMPLETE</promise>"`) */
|
|
93
|
+
readonly completionSignal?: string | string[];
|
|
94
|
+
/** Idle timeout in seconds. If the agent produces no output for this long, it fails. Default: 300 (5 minutes) */
|
|
95
|
+
readonly idleTimeoutSeconds?: number;
|
|
96
96
|
/** Optional name for the run, shown as a prefix in log output */
|
|
97
97
|
readonly name?: string;
|
|
98
98
|
/** Paths relative to the host repo root to copy into the worktree before container start. */
|
|
@@ -101,8 +101,8 @@ export interface RunOptions {
|
|
|
101
101
|
export interface RunResult {
|
|
102
102
|
/** Number of iterations the agent completed during this run. */
|
|
103
103
|
readonly iterationsRun: number;
|
|
104
|
-
/**
|
|
105
|
-
readonly
|
|
104
|
+
/** The matched completion signal string, or undefined if no signal fired before the iteration limit. */
|
|
105
|
+
readonly completionSignal?: string;
|
|
106
106
|
/** Combined stdout output from all agent iterations. */
|
|
107
107
|
readonly stdout: string;
|
|
108
108
|
/** List of commits made by the agent during the run, each identified by its SHA. */
|
|
@@ -113,6 +113,8 @@ export interface RunResult {
|
|
|
113
113
|
readonly branch: string;
|
|
114
114
|
/** Path to the log file, if logging was drained to a file. */
|
|
115
115
|
readonly logFilePath?: string;
|
|
116
|
+
/** Host path to the preserved worktree, set when the run succeeded but the worktree had uncommitted changes. */
|
|
117
|
+
readonly preservedWorktreePath?: string;
|
|
116
118
|
}
|
|
117
119
|
export declare const run: (options: RunOptions) => Promise<RunResult>;
|
|
118
120
|
//# sourceMappingURL=run.d.ts.map
|
package/dist/run.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"AAKA,OAAO,EAIL,KAAK,QAAQ,EACd,MAAM,cAAc,CAAC;AAUtB,OAAO,EACL,KAAK,UAAU,
|
|
1
|
+
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"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"}
|
package/dist/run.js
CHANGED
|
@@ -9,7 +9,7 @@ import { resolvePrompt } from "./PromptResolver.js";
|
|
|
9
9
|
import { WorktreeDockerSandboxFactory, WorktreeSandboxConfig, SANDBOX_WORKSPACE_DIR, } from "./SandboxFactory.js";
|
|
10
10
|
import { resolveEnv } from "./EnvResolver.js";
|
|
11
11
|
import { generateTempBranchName, getCurrentBranch } from "./WorktreeManager.js";
|
|
12
|
-
import { substitutePromptArgs, } from "./PromptArgumentSubstitution.js";
|
|
12
|
+
import { substitutePromptArgs, validateNoBuiltInArgOverride, BUILT_IN_PROMPT_ARG_KEYS, } from "./PromptArgumentSubstitution.js";
|
|
13
13
|
/** Default maximum number of iterations for a run. */
|
|
14
14
|
export const DEFAULT_MAX_ITERATIONS = 1;
|
|
15
15
|
/** Replace characters that are invalid or problematic in file paths with dashes. */
|
|
@@ -74,8 +74,8 @@ export const buildRunSummaryRows = (options) => {
|
|
|
74
74
|
* Build the completion status message for a run, used in both terminal mode
|
|
75
75
|
* and log-to-file mode to record the final outcome.
|
|
76
76
|
*/
|
|
77
|
-
export const buildCompletionMessage = (
|
|
78
|
-
if (
|
|
77
|
+
export const buildCompletionMessage = (completionSignal, iterationsRun) => {
|
|
78
|
+
if (completionSignal !== undefined) {
|
|
79
79
|
return {
|
|
80
80
|
message: `Run complete: agent finished after ${iterationsRun} iteration(s).`,
|
|
81
81
|
severity: "success",
|
|
@@ -104,11 +104,12 @@ export const run = async (options) => {
|
|
|
104
104
|
// This names the log file after the temp branch and also directs
|
|
105
105
|
// the sandbox to work on that branch (instead of the current host branch).
|
|
106
106
|
const resolvedBranch = branch ?? generateTempBranchName(agentName);
|
|
107
|
+
// Always capture the host's current branch for the TARGET_BRANCH built-in
|
|
108
|
+
// prompt argument. When using a temp branch, it also prefixes the log filename.
|
|
109
|
+
const currentHostBranch = await Effect.runPromise(getCurrentBranch(hostRepoDir));
|
|
107
110
|
// When using a temp branch, prefix the log filename with the target branch
|
|
108
111
|
// (the host's current branch) so developers can tell which branch was targeted.
|
|
109
|
-
const targetBranch = branch === undefined
|
|
110
|
-
? await Effect.runPromise(getCurrentBranch(hostRepoDir))
|
|
111
|
-
: undefined;
|
|
112
|
+
const targetBranch = branch === undefined ? currentHostBranch : undefined;
|
|
112
113
|
// Resolve logging option
|
|
113
114
|
const resolvedLogging = options.logging ?? {
|
|
114
115
|
type: "file",
|
|
@@ -147,10 +148,18 @@ export const run = async (options) => {
|
|
|
147
148
|
model: resolvedModel,
|
|
148
149
|
});
|
|
149
150
|
yield* d.summary("Sandcastle Run", rows);
|
|
150
|
-
//
|
|
151
|
-
const
|
|
152
|
-
|
|
153
|
-
|
|
151
|
+
// Validate that the user has not provided built-in prompt argument keys
|
|
152
|
+
const userArgs = options.promptArgs ?? {};
|
|
153
|
+
yield* validateNoBuiltInArgOverride(userArgs);
|
|
154
|
+
// Build effective args: built-in args merged with user-provided args.
|
|
155
|
+
// Built-in keys are silenced so they don't trigger unused-arg warnings.
|
|
156
|
+
const effectiveArgs = {
|
|
157
|
+
SOURCE_BRANCH: resolvedBranch,
|
|
158
|
+
TARGET_BRANCH: currentHostBranch,
|
|
159
|
+
...userArgs,
|
|
160
|
+
};
|
|
161
|
+
const builtInArgKeysSet = new Set(BUILT_IN_PROMPT_ARG_KEYS);
|
|
162
|
+
const resolvedPrompt = yield* substitutePromptArgs(rawPrompt, effectiveArgs, builtInArgKeysSet);
|
|
154
163
|
const orchestrateResult = yield* orchestrate({
|
|
155
164
|
hostRepoDir,
|
|
156
165
|
sandboxRepoDir: SANDBOX_WORKSPACE_DIR,
|
|
@@ -160,10 +169,10 @@ export const run = async (options) => {
|
|
|
160
169
|
branch,
|
|
161
170
|
model: resolvedModel,
|
|
162
171
|
completionSignal: options.completionSignal,
|
|
163
|
-
|
|
172
|
+
idleTimeoutSeconds: options.idleTimeoutSeconds,
|
|
164
173
|
name: options.name,
|
|
165
174
|
});
|
|
166
|
-
const completion = buildCompletionMessage(orchestrateResult.
|
|
175
|
+
const completion = buildCompletionMessage(orchestrateResult.completionSignal, orchestrateResult.iterationsRun);
|
|
167
176
|
yield* d.status(completion.message, completion.severity);
|
|
168
177
|
return orchestrateResult;
|
|
169
178
|
}).pipe(Effect.provide(runLayer)));
|
package/dist/run.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
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,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;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EACL,YAAY,EACZ,OAAO,EACP,WAAW,GAEZ,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EACL,4BAA4B,EAC5B,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAEL,oBAAoB,
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ai-hero/sandcastle",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.8",
|
|
4
4
|
"description": "CLI for orchestrating AI agents in isolated sandbox environments",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"format:check": "prettier --check .",
|
|
25
25
|
"prepare": "husky",
|
|
26
26
|
"release": "changeset publish",
|
|
27
|
-
"
|
|
27
|
+
"sandcastle": "npm run build && tsx .sandcastle/run.ts"
|
|
28
28
|
},
|
|
29
29
|
"keywords": [
|
|
30
30
|
"cli",
|