@madarco/agentbox 0.14.0 → 0.15.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.
- package/CHANGELOG.md +60 -0
- package/dist/{_cloud-attach-GUBB5RH2.js → _cloud-attach-R6TRWG5L.js} +3 -3
- package/dist/{chunk-BYCLD6D6.js → chunk-43Q5GWP6.js} +98 -54
- package/dist/chunk-43Q5GWP6.js.map +1 -0
- package/dist/{chunk-VATTS2MR.js → chunk-72CJTXN6.js} +2 -2
- package/dist/{chunk-TBSIJVSN.js → chunk-E7CHS7ZR.js} +21 -13
- package/dist/chunk-E7CHS7ZR.js.map +1 -0
- package/dist/{chunk-LDMYHWUS.js → chunk-MCOU6CZS.js} +2 -2
- package/dist/{chunk-TCS5HXJX.js → chunk-MLMFNN4T.js} +396 -324
- package/dist/chunk-MLMFNN4T.js.map +1 -0
- package/dist/{dist-J2IHD5T7.js → dist-AGTIA7AD.js} +3 -3
- package/dist/{dist-3IMQNTTV.js → dist-FIFEFKJ7.js} +3 -3
- package/dist/{dist-34RKQ74M.js → dist-JZ3XO6EB.js} +4 -4
- package/dist/{dist-4DPOL5A7.js → dist-OGJGZETZ.js} +2 -2
- package/dist/{dist-57M6ZA7H.js → dist-S4XR4ACV.js} +4 -4
- package/dist/index.js +868 -300
- package/dist/index.js.map +1 -1
- package/package.json +5 -5
- package/runtime/docker/apps/cli/share/agentbox-setup/SKILL.md +30 -0
- package/runtime/docker/packages/ctl/dist/bin.cjs +321 -27
- package/runtime/e2b/agentbox-setup-skill.md +30 -0
- package/runtime/e2b/ctl.cjs +321 -27
- package/runtime/hetzner/agentbox-setup-skill.md +30 -0
- package/runtime/hetzner/ctl.cjs +321 -27
- package/runtime/relay/bin.cjs +83 -5
- package/runtime/vercel/agentbox-setup-skill.md +30 -0
- package/runtime/vercel/ctl.cjs +321 -27
- package/share/agentbox-setup/SKILL.md +30 -0
- package/share/host-skills/agentbox-info/SKILL.md +21 -1
- package/dist/chunk-BYCLD6D6.js.map +0 -1
- package/dist/chunk-TBSIJVSN.js.map +0 -1
- package/dist/chunk-TCS5HXJX.js.map +0 -1
- /package/dist/{_cloud-attach-GUBB5RH2.js.map → _cloud-attach-R6TRWG5L.js.map} +0 -0
- /package/dist/{chunk-VATTS2MR.js.map → chunk-72CJTXN6.js.map} +0 -0
- /package/dist/{chunk-LDMYHWUS.js.map → chunk-MCOU6CZS.js.map} +0 -0
- /package/dist/{dist-J2IHD5T7.js.map → dist-AGTIA7AD.js.map} +0 -0
- /package/dist/{dist-3IMQNTTV.js.map → dist-FIFEFKJ7.js.map} +0 -0
- /package/dist/{dist-34RKQ74M.js.map → dist-JZ3XO6EB.js.map} +0 -0
- /package/dist/{dist-4DPOL5A7.js.map → dist-OGJGZETZ.js.map} +0 -0
- /package/dist/{dist-57M6ZA7H.js.map → dist-S4XR4ACV.js.map} +0 -0
|
@@ -26,6 +26,7 @@ import {
|
|
|
26
26
|
hashProjectPath,
|
|
27
27
|
hostClaudeBackupExpired,
|
|
28
28
|
isRealAgentCredential,
|
|
29
|
+
loadEffectiveConfig,
|
|
29
30
|
portlessAlias,
|
|
30
31
|
portlessGetUrl,
|
|
31
32
|
portlessUnalias,
|
|
@@ -42,7 +43,7 @@ import {
|
|
|
42
43
|
stageOpencodeStateForUpload,
|
|
43
44
|
stageOpencodeStaticForUpload,
|
|
44
45
|
syncClaudeCredentials
|
|
45
|
-
} from "./chunk-
|
|
46
|
+
} from "./chunk-MLMFNN4T.js";
|
|
46
47
|
import {
|
|
47
48
|
DEFAULT_BOX_IMAGE,
|
|
48
49
|
allocateProjectIndex,
|
|
@@ -686,7 +687,8 @@ async function uploadOneEntry(args) {
|
|
|
686
687
|
const isDir = entry.kind === "dir";
|
|
687
688
|
const parentDir = isDir ? boxDest : dirnameUnix(boxDest);
|
|
688
689
|
const localTar = join4(args.stageDir, `carry-${String(args.index)}.tar`);
|
|
689
|
-
const
|
|
690
|
+
const excludeArgs = isDir ? (entry.exclude ?? []).map((p) => `--exclude=${p}`) : [];
|
|
691
|
+
const tarArgs = isDir ? ["-C", entry.absSrc, "-cf", localTar, ...excludeArgs, "."] : ["-C", dirnameUnix(entry.absSrc), "-cf", localTar, basenameUnix(entry.absSrc)];
|
|
690
692
|
const packed = await execa3("tar", tarArgs, { reject: false });
|
|
691
693
|
if (packed.exitCode !== 0) {
|
|
692
694
|
throw new Error(`tar pack failed: ${String(packed.stderr).slice(0, 300)}`);
|
|
@@ -770,7 +772,7 @@ function isPlainObject(v) {
|
|
|
770
772
|
}
|
|
771
773
|
var REMOTE_UP_TAR = "/tmp/agentbox-cp-up.tar.gz";
|
|
772
774
|
var REMOTE_DOWN_TAR = "/tmp/agentbox-cp-down.tar.gz";
|
|
773
|
-
async function uploadToCloudBox(backend, handle, hostSrc, boxDst) {
|
|
775
|
+
async function uploadToCloudBox(backend, handle, hostSrc, boxDst, exclude) {
|
|
774
776
|
const srcAbs = hostResolve(hostSrc);
|
|
775
777
|
if (!existsSync(srcAbs)) throw new Error(`source not found: ${hostSrc}`);
|
|
776
778
|
const srcBasename = hostBasename(srcAbs);
|
|
@@ -788,7 +790,8 @@ async function uploadToCloudBox(backend, handle, hostSrc, boxDst) {
|
|
|
788
790
|
const stage = await mkdtemp4(hostJoin(tmpdir4(), "agentbox-cp-up-"));
|
|
789
791
|
const localTar = hostJoin(stage, "payload.tar.gz");
|
|
790
792
|
try {
|
|
791
|
-
|
|
793
|
+
const excludeArgs = (exclude ?? []).map((p) => `--exclude=${p}`);
|
|
794
|
+
await execa4("tar", ["-C", srcParent, "-czf", localTar, ...excludeArgs, srcBasename], {
|
|
792
795
|
env: { ...process.env, COPYFILE_DISABLE: "1" }
|
|
793
796
|
});
|
|
794
797
|
await backend.uploadFile(handle, localTar, REMOTE_UP_TAR);
|
|
@@ -842,7 +845,7 @@ async function pullCloudDirContents(backend, handle, boxSrcDir, hostDstDir) {
|
|
|
842
845
|
}
|
|
843
846
|
return { finalPath: dstAbs };
|
|
844
847
|
}
|
|
845
|
-
async function downloadFromCloudBox(backend, handle, boxSrc, hostDst) {
|
|
848
|
+
async function downloadFromCloudBox(backend, handle, boxSrc, hostDst, exclude) {
|
|
846
849
|
const srcBasename = posix.basename(boxSrc);
|
|
847
850
|
const srcParent = posix.dirname(boxSrc);
|
|
848
851
|
const dstAbs = hostResolve(hostDst);
|
|
@@ -861,10 +864,11 @@ async function downloadFromCloudBox(backend, handle, boxSrc, hostDst) {
|
|
|
861
864
|
const stage = await mkdtemp4(hostJoin(tmpdir4(), "agentbox-cp-down-"));
|
|
862
865
|
const localTar = hostJoin(stage, "payload.tar.gz");
|
|
863
866
|
try {
|
|
867
|
+
const excludeArgs = (exclude ?? []).map((p) => `--exclude=${quoteShellArg(p)}`).join(" ");
|
|
864
868
|
const packScript = [
|
|
865
869
|
`set -euo pipefail`,
|
|
866
870
|
`cd ${quoteShellArg(srcParent)}`,
|
|
867
|
-
`tar -czf ${quoteShellArg(REMOTE_DOWN_TAR)} ${quoteShellArg(srcBasename)}`
|
|
871
|
+
`tar -czf ${quoteShellArg(REMOTE_DOWN_TAR)} ${excludeArgs} ${quoteShellArg(srcBasename)}`
|
|
868
872
|
].join("\n");
|
|
869
873
|
const r = await backend.exec(handle, bashScript(packScript));
|
|
870
874
|
if (r.exitCode !== 0) {
|
|
@@ -1428,7 +1432,8 @@ function createCloudProvider(backend, opts = {}) {
|
|
|
1428
1432
|
previewToken: relayPreview.token,
|
|
1429
1433
|
bridgeToken: box.cloud.bridgeToken,
|
|
1430
1434
|
createdAt: box.createdAt,
|
|
1431
|
-
projectIndex: box.projectIndex
|
|
1435
|
+
projectIndex: box.projectIndex,
|
|
1436
|
+
autoApproveHostActions: box.autoApproveHostActions
|
|
1432
1437
|
});
|
|
1433
1438
|
} catch {
|
|
1434
1439
|
}
|
|
@@ -1686,6 +1691,7 @@ function createCloudProvider(backend, opts = {}) {
|
|
|
1686
1691
|
}
|
|
1687
1692
|
const state = await readState();
|
|
1688
1693
|
const projectIndex = req.projectRoot ? allocateProjectIndex(state, req.projectRoot) : void 0;
|
|
1694
|
+
const autoApproveHostActions = (await loadEffectiveConfig(req.projectRoot ?? req.workspacePath)).effective.box.autoApproveHostActions;
|
|
1689
1695
|
if (relayPreview) {
|
|
1690
1696
|
try {
|
|
1691
1697
|
await registerBoxWithRelay({
|
|
@@ -1698,7 +1704,8 @@ function createCloudProvider(backend, opts = {}) {
|
|
|
1698
1704
|
previewUrl: relayPreview.url,
|
|
1699
1705
|
previewToken: relayPreview.token,
|
|
1700
1706
|
bridgeToken,
|
|
1701
|
-
createdAt: (/* @__PURE__ */ new Date()).toISOString()
|
|
1707
|
+
createdAt: (/* @__PURE__ */ new Date()).toISOString(),
|
|
1708
|
+
autoApproveHostActions
|
|
1702
1709
|
});
|
|
1703
1710
|
} catch (err) {
|
|
1704
1711
|
log(
|
|
@@ -1724,6 +1731,7 @@ function createCloudProvider(backend, opts = {}) {
|
|
|
1724
1731
|
relayToken,
|
|
1725
1732
|
withPlaywright: req.withPlaywright,
|
|
1726
1733
|
withEnv: req.withEnv,
|
|
1734
|
+
autoApproveHostActions: autoApproveHostActions ? true : void 0,
|
|
1727
1735
|
carry: carrySummary,
|
|
1728
1736
|
portlessAlias: portlessAliasName,
|
|
1729
1737
|
portlessUrl: portlessUrlResolved,
|
|
@@ -1874,11 +1882,11 @@ function createCloudProvider(backend, opts = {}) {
|
|
|
1874
1882
|
} : void 0;
|
|
1875
1883
|
return { argv: fullArgv, cleanup };
|
|
1876
1884
|
},
|
|
1877
|
-
async uploadPath(box, hostSrc, boxDst) {
|
|
1878
|
-
return uploadToCloudBox(backend, handleFor(box), hostSrc, boxDst);
|
|
1885
|
+
async uploadPath(box, hostSrc, boxDst, exclude) {
|
|
1886
|
+
return uploadToCloudBox(backend, handleFor(box), hostSrc, boxDst, exclude);
|
|
1879
1887
|
},
|
|
1880
|
-
async downloadPath(box, boxSrc, hostDst) {
|
|
1881
|
-
return downloadFromCloudBox(backend, handleFor(box), boxSrc, hostDst);
|
|
1888
|
+
async downloadPath(box, boxSrc, hostDst, exclude) {
|
|
1889
|
+
return downloadFromCloudBox(backend, handleFor(box), boxSrc, hostDst, exclude);
|
|
1882
1890
|
},
|
|
1883
1891
|
async downloadDirContents(box, boxSrc, hostDst) {
|
|
1884
1892
|
return pullCloudDirContents(backend, handleFor(box), boxSrc, hostDst);
|
|
@@ -2057,4 +2065,4 @@ export {
|
|
|
2057
2065
|
createCloudProvider,
|
|
2058
2066
|
renderInnerCommand
|
|
2059
2067
|
};
|
|
2060
|
-
//# sourceMappingURL=chunk-
|
|
2068
|
+
//# sourceMappingURL=chunk-E7CHS7ZR.js.map
|