@madarco/agentbox 0.11.0 → 0.11.2
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/CHANGELOG.md +19 -0
- package/dist/_cloud-attach-XWCVLO5V.js +15 -0
- package/dist/{chunk-NVSRGC5W.js → chunk-GYJ62GFL.js} +37 -17
- package/dist/chunk-GYJ62GFL.js.map +1 -0
- package/dist/{chunk-D4Q2RUQI.js → chunk-MXXXKJYS.js} +2 -2
- package/dist/{chunk-GUNUBIRB.js → chunk-ZJXTIH6C.js} +51 -22
- package/dist/{chunk-GUNUBIRB.js.map → chunk-ZJXTIH6C.js.map} +1 -1
- package/dist/{dist-ZEGIMYWZ.js → dist-ASLPRUQR.js} +2 -2
- package/dist/{dist-PJFJNXO2.js → dist-PTJ6CEQY.js} +3 -3
- package/dist/{dist-HT2YV6PB.js → dist-RAZP76VX.js} +3 -3
- package/dist/{dist-4SUIXKSD.js → dist-WMQDMTWS.js} +3 -3
- package/dist/index.js +83 -41
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
- package/runtime/relay/bin.cjs +32 -17
- package/dist/_cloud-attach-6C5NMOHD.js +0 -13
- package/dist/chunk-NVSRGC5W.js.map +0 -1
- /package/dist/{_cloud-attach-6C5NMOHD.js.map → _cloud-attach-XWCVLO5V.js.map} +0 -0
- /package/dist/{chunk-D4Q2RUQI.js.map → chunk-MXXXKJYS.js.map} +0 -0
- /package/dist/{dist-ZEGIMYWZ.js.map → dist-ASLPRUQR.js.map} +0 -0
- /package/dist/{dist-PJFJNXO2.js.map → dist-PTJ6CEQY.js.map} +0 -0
- /package/dist/{dist-HT2YV6PB.js.map → dist-RAZP76VX.js.map} +0 -0
- /package/dist/{dist-4SUIXKSD.js.map → dist-WMQDMTWS.js.map} +0 -0
|
@@ -206,7 +206,7 @@ import {
|
|
|
206
206
|
vscodeServerVolumeName,
|
|
207
207
|
waitForTmuxPaneContent,
|
|
208
208
|
warmUpClaudeCredentials
|
|
209
|
-
} from "./chunk-
|
|
209
|
+
} from "./chunk-ZJXTIH6C.js";
|
|
210
210
|
import {
|
|
211
211
|
BOX_IMAGE_REGISTRY,
|
|
212
212
|
DEFAULT_BOX_IMAGE,
|
|
@@ -470,4 +470,4 @@ export {
|
|
|
470
470
|
warmUpClaudeCredentials,
|
|
471
471
|
writePreparedDockerState
|
|
472
472
|
};
|
|
473
|
-
//# sourceMappingURL=dist-
|
|
473
|
+
//# sourceMappingURL=dist-ASLPRUQR.js.map
|
|
@@ -10,12 +10,12 @@ import {
|
|
|
10
10
|
} from "./chunk-ZGVMN54V.js";
|
|
11
11
|
import {
|
|
12
12
|
createCloudProvider
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-MXXXKJYS.js";
|
|
14
14
|
import {
|
|
15
15
|
stageClaudeStaticForUpload,
|
|
16
16
|
stageCodexStaticForUpload,
|
|
17
17
|
stageOpencodeStaticForUpload
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-ZJXTIH6C.js";
|
|
19
19
|
import {
|
|
20
20
|
DOCKER_CONTEXT_FILE_MAP,
|
|
21
21
|
computeContextSha256,
|
|
@@ -290,4 +290,4 @@ export {
|
|
|
290
290
|
getDaytonaStatus,
|
|
291
291
|
resolveDockerfileContext
|
|
292
292
|
};
|
|
293
|
-
//# sourceMappingURL=dist-
|
|
293
|
+
//# sourceMappingURL=dist-PTJ6CEQY.js.map
|
|
@@ -19,7 +19,7 @@ import {
|
|
|
19
19
|
renderInnerCommand,
|
|
20
20
|
resolveCloudCheckpoint,
|
|
21
21
|
writeCloudCheckpointManifest
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-MXXXKJYS.js";
|
|
23
23
|
import {
|
|
24
24
|
stageClaudeCredentialsForUpload,
|
|
25
25
|
stageClaudeStaticForUpload,
|
|
@@ -27,7 +27,7 @@ import {
|
|
|
27
27
|
stageCodexStaticForUpload,
|
|
28
28
|
stageOpencodeCredentialsForUpload,
|
|
29
29
|
stageOpencodeStaticForUpload
|
|
30
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-ZJXTIH6C.js";
|
|
31
31
|
import {
|
|
32
32
|
computeContextSha256,
|
|
33
33
|
preparedStatePathFor,
|
|
@@ -871,4 +871,4 @@ export {
|
|
|
871
871
|
vercelProvider,
|
|
872
872
|
writePreparedState
|
|
873
873
|
};
|
|
874
|
-
//# sourceMappingURL=dist-
|
|
874
|
+
//# sourceMappingURL=dist-RAZP76VX.js.map
|
|
@@ -20,7 +20,7 @@ import {
|
|
|
20
20
|
} from "./chunk-R5XIDQFR.js";
|
|
21
21
|
import {
|
|
22
22
|
createCloudProvider
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-MXXXKJYS.js";
|
|
24
24
|
import {
|
|
25
25
|
stageClaudeCredentialsForUpload,
|
|
26
26
|
stageClaudeStaticForUpload,
|
|
@@ -28,7 +28,7 @@ import {
|
|
|
28
28
|
stageCodexStaticForUpload,
|
|
29
29
|
stageOpencodeCredentialsForUpload,
|
|
30
30
|
stageOpencodeStaticForUpload
|
|
31
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-ZJXTIH6C.js";
|
|
32
32
|
import {
|
|
33
33
|
computeContextSha256,
|
|
34
34
|
preparedStatePathFor,
|
|
@@ -1414,4 +1414,4 @@ export {
|
|
|
1414
1414
|
withHetznerRetry,
|
|
1415
1415
|
writePreparedState
|
|
1416
1416
|
};
|
|
1417
|
-
//# sourceMappingURL=dist-
|
|
1417
|
+
//# sourceMappingURL=dist-WMQDMTWS.js.map
|
package/dist/index.js
CHANGED
|
@@ -31,7 +31,7 @@ import {
|
|
|
31
31
|
probeCloudCheckpoint,
|
|
32
32
|
resolveCloudCheckpoint,
|
|
33
33
|
seedAgentVolumesIfFresh
|
|
34
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-MXXXKJYS.js";
|
|
35
35
|
import {
|
|
36
36
|
ADVANCED_HINT_GROUPS,
|
|
37
37
|
ALERT_BAND_ROWS,
|
|
@@ -40,6 +40,7 @@ import {
|
|
|
40
40
|
buildCloudAttachInnerCommand,
|
|
41
41
|
clipboardCaptureAvailable,
|
|
42
42
|
cloudAgentAttach,
|
|
43
|
+
cloudAgentStartDetached,
|
|
43
44
|
createMenuLines,
|
|
44
45
|
detectHostTerminal,
|
|
45
46
|
getProvider,
|
|
@@ -61,7 +62,7 @@ import {
|
|
|
61
62
|
statusLine,
|
|
62
63
|
stripTitleGlyph,
|
|
63
64
|
subscribePrompts
|
|
64
|
-
} from "./chunk-
|
|
65
|
+
} from "./chunk-GYJ62GFL.js";
|
|
65
66
|
import {
|
|
66
67
|
AmbiguousBoxError,
|
|
67
68
|
BOX_STATUS_EVENT,
|
|
@@ -207,7 +208,7 @@ import {
|
|
|
207
208
|
waitForTmuxPaneContent,
|
|
208
209
|
warmUpClaudeCredentials,
|
|
209
210
|
writeJob
|
|
210
|
-
} from "./chunk-
|
|
211
|
+
} from "./chunk-ZJXTIH6C.js";
|
|
211
212
|
import {
|
|
212
213
|
DEFAULT_BOX_IMAGE,
|
|
213
214
|
STATE_DIR,
|
|
@@ -220,8 +221,8 @@ import {
|
|
|
220
221
|
import "./chunk-G3H2L3O2.js";
|
|
221
222
|
|
|
222
223
|
// src/version.ts
|
|
223
|
-
var AGENTBOX_VERSION = true ? "0.11.
|
|
224
|
-
var AGENTBOX_COMMIT = true ? "
|
|
224
|
+
var AGENTBOX_VERSION = true ? "0.11.2" : "0.0.0-dev";
|
|
225
|
+
var AGENTBOX_COMMIT = true ? "3683063c" : "dev";
|
|
225
226
|
|
|
226
227
|
// src/index.ts
|
|
227
228
|
import { Command as Command46 } from "commander";
|
|
@@ -1893,11 +1894,11 @@ import { basename } from "path";
|
|
|
1893
1894
|
async function cloudBackendForProvider(provider) {
|
|
1894
1895
|
switch (provider) {
|
|
1895
1896
|
case "daytona":
|
|
1896
|
-
return (await import("./dist-
|
|
1897
|
+
return (await import("./dist-PTJ6CEQY.js")).daytonaBackend;
|
|
1897
1898
|
case "hetzner":
|
|
1898
|
-
return (await import("./dist-
|
|
1899
|
+
return (await import("./dist-WMQDMTWS.js")).hetznerBackend;
|
|
1899
1900
|
case "vercel":
|
|
1900
|
-
return (await import("./dist-
|
|
1901
|
+
return (await import("./dist-RAZP76VX.js")).vercelBackend;
|
|
1901
1902
|
default:
|
|
1902
1903
|
return null;
|
|
1903
1904
|
}
|
|
@@ -2249,11 +2250,6 @@ var claudeCommand = new Command2("claude").description("Create a sandboxed box a
|
|
|
2249
2250
|
const providerName = opts.provider ?? cfg.effective.box.provider ?? "docker";
|
|
2250
2251
|
const isCloud = providerName !== "docker";
|
|
2251
2252
|
if (opts.initialPrompt && opts.initialPrompt.length > 0) {
|
|
2252
|
-
if (isCloud) {
|
|
2253
|
-
log8.error("-i / --initial-prompt is currently docker-only (cloud sessions only start on attach).");
|
|
2254
|
-
cmdLog.close();
|
|
2255
|
-
process.exit(2);
|
|
2256
|
-
}
|
|
2257
2253
|
try {
|
|
2258
2254
|
await assertAgentCredsAvailable({
|
|
2259
2255
|
agent: "claude-code",
|
|
@@ -2815,11 +2811,11 @@ var CLOUD_BACKENDS = ["daytona", "hetzner", "vercel"];
|
|
|
2815
2811
|
async function cloudProviderFor(backend) {
|
|
2816
2812
|
switch (backend) {
|
|
2817
2813
|
case "daytona":
|
|
2818
|
-
return (await import("./dist-
|
|
2814
|
+
return (await import("./dist-PTJ6CEQY.js")).daytonaProvider;
|
|
2819
2815
|
case "hetzner":
|
|
2820
|
-
return (await import("./dist-
|
|
2816
|
+
return (await import("./dist-WMQDMTWS.js")).hetznerProvider;
|
|
2821
2817
|
case "vercel":
|
|
2822
|
-
return (await import("./dist-
|
|
2818
|
+
return (await import("./dist-RAZP76VX.js")).vercelProvider;
|
|
2823
2819
|
}
|
|
2824
2820
|
}
|
|
2825
2821
|
var CHECKPOINT_NOTICE = "Checkpoint in progress \u2014 the box will be unresponsive for a moment";
|
|
@@ -3664,11 +3660,6 @@ var codexCommand = new Command5("codex").description("Create a sandboxed box and
|
|
|
3664
3660
|
const providerDefault = resolveDefaultCheckpoint(cfg.effective, providerName);
|
|
3665
3661
|
const checkpointRef = opts.snapshot && opts.snapshot.length > 0 ? opts.snapshot : providerDefault.length > 0 ? providerDefault : void 0;
|
|
3666
3662
|
if (opts.initialPrompt && opts.initialPrompt.length > 0) {
|
|
3667
|
-
if (isCloud) {
|
|
3668
|
-
log11.error("-i / --initial-prompt is currently docker-only (cloud sessions only start on attach).");
|
|
3669
|
-
cmdLog.close();
|
|
3670
|
-
process.exit(2);
|
|
3671
|
-
}
|
|
3672
3663
|
try {
|
|
3673
3664
|
await assertAgentCredsAvailable({
|
|
3674
3665
|
agent: "codex",
|
|
@@ -4382,11 +4373,6 @@ var opencodeCommand = new Command6("opencode").description("Create a sandboxed b
|
|
|
4382
4373
|
const providerDefault = resolveDefaultCheckpoint(cfg.effective, providerName);
|
|
4383
4374
|
const checkpointRef = opts.snapshot && opts.snapshot.length > 0 ? opts.snapshot : providerDefault.length > 0 ? providerDefault : void 0;
|
|
4384
4375
|
if (opts.initialPrompt && opts.initialPrompt.length > 0) {
|
|
4385
|
-
if (isCloud) {
|
|
4386
|
-
log12.error("-i / --initial-prompt is currently docker-only (cloud sessions only start on attach).");
|
|
4387
|
-
cmdLog.close();
|
|
4388
|
-
process.exit(2);
|
|
4389
|
-
}
|
|
4390
4376
|
try {
|
|
4391
4377
|
await assertAgentCredsAvailable({
|
|
4392
4378
|
agent: "opencode",
|
|
@@ -5419,7 +5405,7 @@ var createCommand = new Command9("create").description("Create and start a new a
|
|
|
5419
5405
|
}
|
|
5420
5406
|
outro4("done");
|
|
5421
5407
|
if (attachClaudeAfter) {
|
|
5422
|
-
const { cloudAgentAttach: cloudAgentAttach2 } = await import("./_cloud-attach-
|
|
5408
|
+
const { cloudAgentAttach: cloudAgentAttach2 } = await import("./_cloud-attach-XWCVLO5V.js");
|
|
5423
5409
|
await cloudAgentAttach2({
|
|
5424
5410
|
box: result.record,
|
|
5425
5411
|
binary: "claude",
|
|
@@ -8831,7 +8817,7 @@ async function dockerChecks() {
|
|
|
8831
8817
|
];
|
|
8832
8818
|
}
|
|
8833
8819
|
const daemonRes = { label: "docker daemon", status: "ok", detail: "reachable" };
|
|
8834
|
-
const mod = await import("./dist-
|
|
8820
|
+
const mod = await import("./dist-ASLPRUQR.js");
|
|
8835
8821
|
let imgRes;
|
|
8836
8822
|
try {
|
|
8837
8823
|
const img = await mod.imageInfo(mod.DEFAULT_BOX_IMAGE);
|
|
@@ -8862,7 +8848,7 @@ async function dockerChecks() {
|
|
|
8862
8848
|
}
|
|
8863
8849
|
async function daytonaChecks() {
|
|
8864
8850
|
try {
|
|
8865
|
-
const mod = await import("./dist-
|
|
8851
|
+
const mod = await import("./dist-PTJ6CEQY.js");
|
|
8866
8852
|
const status = await mod.getDaytonaStatus();
|
|
8867
8853
|
if (!status.configured) {
|
|
8868
8854
|
return [
|
|
@@ -8898,7 +8884,7 @@ async function daytonaChecks() {
|
|
|
8898
8884
|
}
|
|
8899
8885
|
async function hetznerChecks() {
|
|
8900
8886
|
try {
|
|
8901
|
-
const mod = await import("./dist-
|
|
8887
|
+
const mod = await import("./dist-WMQDMTWS.js");
|
|
8902
8888
|
const cred = mod.readHetznerCredStatus();
|
|
8903
8889
|
const credRes = cred.source === "none" ? {
|
|
8904
8890
|
label: "credentials",
|
|
@@ -8930,7 +8916,7 @@ async function hetznerChecks() {
|
|
|
8930
8916
|
}
|
|
8931
8917
|
async function vercelChecks() {
|
|
8932
8918
|
try {
|
|
8933
|
-
const mod = await import("./dist-
|
|
8919
|
+
const mod = await import("./dist-RAZP76VX.js");
|
|
8934
8920
|
const cred = mod.readVercelCredStatus();
|
|
8935
8921
|
const credRes = cred.auth === "none" ? {
|
|
8936
8922
|
label: "credentials",
|
|
@@ -9141,7 +9127,7 @@ async function renderDocker(status) {
|
|
|
9141
9127
|
}
|
|
9142
9128
|
async function daytonaStatus() {
|
|
9143
9129
|
try {
|
|
9144
|
-
const mod = await import("./dist-
|
|
9130
|
+
const mod = await import("./dist-PTJ6CEQY.js");
|
|
9145
9131
|
return await mod.getDaytonaStatus();
|
|
9146
9132
|
} catch (err) {
|
|
9147
9133
|
return {
|
|
@@ -9479,7 +9465,7 @@ function ensureTty() {
|
|
|
9479
9465
|
async function runProviderLogin(name) {
|
|
9480
9466
|
if (name === "docker") return true;
|
|
9481
9467
|
if (name === "daytona") {
|
|
9482
|
-
const mod2 = await import("./dist-
|
|
9468
|
+
const mod2 = await import("./dist-PTJ6CEQY.js");
|
|
9483
9469
|
const status2 = await mod2.getDaytonaStatus();
|
|
9484
9470
|
if (status2.configured) {
|
|
9485
9471
|
log29.info("daytona: already configured");
|
|
@@ -9492,7 +9478,7 @@ async function runProviderLogin(name) {
|
|
|
9492
9478
|
return true;
|
|
9493
9479
|
}
|
|
9494
9480
|
if (name === "hetzner") {
|
|
9495
|
-
const mod2 = await import("./dist-
|
|
9481
|
+
const mod2 = await import("./dist-WMQDMTWS.js");
|
|
9496
9482
|
const status2 = mod2.readHetznerCredStatus();
|
|
9497
9483
|
if (status2.source !== "none") {
|
|
9498
9484
|
log29.info("hetzner: already configured");
|
|
@@ -9504,7 +9490,7 @@ async function runProviderLogin(name) {
|
|
|
9504
9490
|
await mod2.ensureHetznerCredentials();
|
|
9505
9491
|
return true;
|
|
9506
9492
|
}
|
|
9507
|
-
const mod = await import("./dist-
|
|
9493
|
+
const mod = await import("./dist-RAZP76VX.js");
|
|
9508
9494
|
const status = mod.readVercelCredStatus();
|
|
9509
9495
|
if (status.auth !== "none") {
|
|
9510
9496
|
log29.info(`vercel: already configured (${status.auth})`);
|
|
@@ -9517,7 +9503,7 @@ async function runProviderLogin(name) {
|
|
|
9517
9503
|
return true;
|
|
9518
9504
|
}
|
|
9519
9505
|
function tutorialBody(provider) {
|
|
9520
|
-
const startCmd = provider === "docker" ? "agentbox claude" : `agentbox ${provider} claude`;
|
|
9506
|
+
const startCmd = provider === "docker" ? "agentbox claude " : `agentbox ${provider} claude`;
|
|
9521
9507
|
return `Get started:
|
|
9522
9508
|
${startCmd} # for claude, codex, opencode
|
|
9523
9509
|
-> Setup wizard? -> Yes # install dependencies and setup agentbox.yaml
|
|
@@ -10866,9 +10852,14 @@ var runQueuedJobCommand = new Command35("_run-queued-job").description("internal
|
|
|
10866
10852
|
log44.close();
|
|
10867
10853
|
process.exit(64);
|
|
10868
10854
|
}
|
|
10869
|
-
|
|
10855
|
+
const onBoxCreated = (boxId) => {
|
|
10870
10856
|
if (job) job = { ...job, boxId };
|
|
10871
|
-
}
|
|
10857
|
+
};
|
|
10858
|
+
if ((job.providerName || "docker") === "docker") {
|
|
10859
|
+
await runDockerJob(job, log44, onBoxCreated);
|
|
10860
|
+
} else {
|
|
10861
|
+
await runCloudJob(job, log44, onBoxCreated);
|
|
10862
|
+
}
|
|
10872
10863
|
const done = {
|
|
10873
10864
|
...job,
|
|
10874
10865
|
status: "done",
|
|
@@ -10906,9 +10897,6 @@ async function runDockerJob(job, log44, onBoxCreated) {
|
|
|
10906
10897
|
});
|
|
10907
10898
|
const projectRoot = (await findProjectRoot(opts.workspace)).root;
|
|
10908
10899
|
const providerName = job.providerName || cfg.effective.box.provider || "docker";
|
|
10909
|
-
if (providerName !== "docker") {
|
|
10910
|
-
throw new Error(`worker only supports docker provider (got "${providerName}")`);
|
|
10911
|
-
}
|
|
10912
10900
|
const providerDefault = resolveDefaultCheckpoint(cfg.effective, providerName);
|
|
10913
10901
|
const checkpointRef = opts.snapshot && opts.snapshot.length > 0 ? opts.snapshot : providerDefault.length > 0 ? providerDefault : void 0;
|
|
10914
10902
|
const useSnapshot = opts.hostSnapshot === false ? false : opts.hostSnapshot === true ? true : cfg.effective.box.hostSnapshot ?? false;
|
|
@@ -10981,6 +10969,60 @@ async function runDockerJob(job, log44, onBoxCreated) {
|
|
|
10981
10969
|
throw new Error(`unknown agent kind: ${String(job.agent)}`);
|
|
10982
10970
|
}
|
|
10983
10971
|
}
|
|
10972
|
+
async function runCloudJob(job, log44, onBoxCreated) {
|
|
10973
|
+
const opts = job.createOpts;
|
|
10974
|
+
const cfg = await loadEffectiveConfig(opts.workspace, {
|
|
10975
|
+
cliOverrides: buildOverridesFromJob(job)
|
|
10976
|
+
});
|
|
10977
|
+
const projectRoot = (await findProjectRoot(opts.workspace)).root;
|
|
10978
|
+
const providerName = job.providerName || cfg.effective.box.provider || "docker";
|
|
10979
|
+
const provider = await providerForCreate({ flag: providerName, config: cfg.effective });
|
|
10980
|
+
const providerDefault = resolveDefaultCheckpoint(cfg.effective, providerName);
|
|
10981
|
+
const checkpointRef = opts.snapshot && opts.snapshot.length > 0 ? opts.snapshot : providerDefault.length > 0 ? providerDefault : void 0;
|
|
10982
|
+
const withPlaywright = cfg.effective.box.withPlaywright || cfg.effective.browser.default !== "agent-browser";
|
|
10983
|
+
log44.write(`creating cloud box (${providerName}) for agent=${job.agent}`);
|
|
10984
|
+
const result = await provider.create({
|
|
10985
|
+
workspacePath: opts.workspace,
|
|
10986
|
+
name: opts.name && opts.name.length > 0 ? opts.name : void 0,
|
|
10987
|
+
checkpointRef,
|
|
10988
|
+
image: cfg.effective.box.image,
|
|
10989
|
+
withPlaywright,
|
|
10990
|
+
withEnv: cfg.effective.box.withEnv,
|
|
10991
|
+
vnc: { enabled: cfg.effective.box.vnc },
|
|
10992
|
+
limits: resolveLimits(cfg.effective.box, opts),
|
|
10993
|
+
projectRoot,
|
|
10994
|
+
onLog: (line) => log44.write(line)
|
|
10995
|
+
});
|
|
10996
|
+
log44.write(`box created: ${result.record.id}`);
|
|
10997
|
+
onBoxCreated(result.record.id);
|
|
10998
|
+
await writeJob({ ...job, boxId: result.record.id });
|
|
10999
|
+
const promptedArgs = buildPromptArgs(job.agent, job.prompt, job.agentArgs);
|
|
11000
|
+
let binary;
|
|
11001
|
+
let sessionName;
|
|
11002
|
+
let extraArgs;
|
|
11003
|
+
if (job.agent === "claude-code") {
|
|
11004
|
+
binary = "claude";
|
|
11005
|
+
sessionName = cfg.effective.claude.sessionName;
|
|
11006
|
+
extraArgs = applyClaudeSkipPermissions(promptedArgs, cfg.effective);
|
|
11007
|
+
} else if (job.agent === "codex") {
|
|
11008
|
+
binary = "codex";
|
|
11009
|
+
sessionName = cfg.effective.codex.sessionName;
|
|
11010
|
+
extraArgs = applyCodexSkipPermissions(promptedArgs, cfg.effective);
|
|
11011
|
+
} else if (job.agent === "opencode") {
|
|
11012
|
+
binary = "opencode";
|
|
11013
|
+
sessionName = cfg.effective.opencode.sessionName;
|
|
11014
|
+
extraArgs = promptedArgs;
|
|
11015
|
+
} else {
|
|
11016
|
+
throw new Error(`unknown agent kind: ${String(job.agent)}`);
|
|
11017
|
+
}
|
|
11018
|
+
log44.write(`starting detached ${job.agent} session`);
|
|
11019
|
+
await cloudAgentStartDetached({
|
|
11020
|
+
box: result.record,
|
|
11021
|
+
binary,
|
|
11022
|
+
sessionName,
|
|
11023
|
+
extraArgs
|
|
11024
|
+
});
|
|
11025
|
+
}
|
|
10984
11026
|
function buildOverridesFromJob(job) {
|
|
10985
11027
|
const opts = job.createOpts;
|
|
10986
11028
|
const box = {};
|