{"_id":"@absolutejs/agent-sandbox","_rev":"5-40e70150038f9a3b963b2c2aed835542","name":"@absolutejs/agent-sandbox","dist-tags":{"latest":"0.2.2"},"versions":{"0.1.0":{"name":"@absolutejs/agent-sandbox","version":"0.1.0","license":"MIT","_id":"@absolutejs/agent-sandbox@0.1.0","maintainers":[{"name":"alexkahndev","email":"alexkahn2019@gmail.com"}],"homepage":"https://github.com/absolutejs/agent-sandbox#readme","bugs":{"url":"https://github.com/absolutejs/agent-sandbox/issues"},"dist":{"shasum":"7d1373edebfe330be3ccd79d55332dca68e7e09c","tarball":"https://registry.npmjs.org/@absolutejs/agent-sandbox/-/agent-sandbox-0.1.0.tgz","fileCount":14,"integrity":"sha512-FzFG5mu0/e99Yfe5SgTeVsYGxm1PY3lQvpJbYLDLwgMVX84IG6Shgw2O566ZAfwyqWeZXPvkTauZRpxXb62EGw==","signatures":[{"sig":"MEYCIQDyxlzaSJASm7+0lDCeCfz4rs5ioh9woIRN7Az4AUJEvAIhAIiwi/EuDJtzfuNHeZponYGNZH0zWNriJH/1y3bYaueQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23319},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./manifest":{"types":"./dist/manifest.d.ts","import":"./dist/manifest.js"},"./manifest.json":"./dist/manifest.json"},"gitHead":"d81cc331019483e0917c54598fb43be6ff9e6670","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/index.ts src/manifest.ts --outdir dist --target=bun --external @absolutejs/manifest --external @sinclair/typebox && tsc -p tsconfig.build.json && absolute-manifest emit","format":"prettier --write \"./**/*.{ts,json,md,yml}\"","typecheck":"tsc --noEmit","check:package":"bun run typecheck && bun run test && bun run build"},"_npmUser":{"name":"alexkahndev","email":"alexkahn2019@gmail.com"},"absolutejs":{"manifestContract":2},"repository":{"url":"git+https://github.com/absolutejs/agent-sandbox.git","type":"git"},"_npmVersion":"10.9.2","description":"Deny-by-default capability grants and provider-neutral HTTP, filesystem, process, and credential-safe action adapters for AI agents.","directories":{},"_nodeVersion":"22.14.0","dependencies":{"@sinclair/typebox":"^0.34.0","@absolutejs/manifest":"^0.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"prettier":"3.5.3","@types/bun":"^1.3.14","typescript":"5.8.3"},"_npmOperationalInternal":{"tmp":"tmp/agent-sandbox_0.1.0_1784169237244_0.3632859288008321","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@absolutejs/agent-sandbox","version":"0.1.1","license":"MIT","_id":"@absolutejs/agent-sandbox@0.1.1","maintainers":[{"name":"alexkahndev","email":"alexkahn2019@gmail.com"}],"homepage":"https://github.com/absolutejs/agent-sandbox#readme","bugs":{"url":"https://github.com/absolutejs/agent-sandbox/issues"},"dist":{"shasum":"c0981d085ffae328f723954b5ae9023166290d76","tarball":"https://registry.npmjs.org/@absolutejs/agent-sandbox/-/agent-sandbox-0.1.1.tgz","fileCount":14,"integrity":"sha512-LBd3/4dqTasaIVBNDq++KlD2Q+1cWBAzx6763KU7MdBQKm65Lwpos+7mmkiiYrkO3DfnxDUkcf8oM5iEBdu/YA==","signatures":[{"sig":"MEUCIQDeQkzlGoCGKYpR7YIqtsQPOwQBaaAWKsTHden2+9pKFQIgYKMA4JETcA3RSefu+hdVt0BROI9wAiytTkV6uQ7p854=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23958},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./manifest":{"types":"./dist/manifest.d.ts","import":"./dist/manifest.js"},"./manifest.json":"./dist/manifest.json"},"gitHead":"91184fafb7c81000383845480ad7ba799ffae308","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/index.ts src/manifest.ts --outdir dist --target=bun --external @absolutejs/manifest --external @sinclair/typebox && tsc -p tsconfig.build.json && absolute-manifest emit","format":"prettier --write \"./**/*.{ts,json,md,yml}\"","typecheck":"tsc --noEmit","check:package":"bun run typecheck && bun run test && bun run build"},"_npmUser":{"name":"alexkahndev","email":"alexkahn2019@gmail.com"},"absolutejs":{"manifestContract":2},"repository":{"url":"git+https://github.com/absolutejs/agent-sandbox.git","type":"git"},"_npmVersion":"10.9.2","description":"Deny-by-default capability grants and provider-neutral HTTP, filesystem, process, and credential-safe action adapters for AI agents.","directories":{},"_nodeVersion":"22.14.0","dependencies":{"@sinclair/typebox":"^0.34.0","@absolutejs/manifest":"^0.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"prettier":"3.5.3","@types/bun":"^1.3.14","typescript":"5.8.3"},"_npmOperationalInternal":{"tmp":"tmp/agent-sandbox_0.1.1_1784396882960_0.9653033105243822","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@absolutejs/agent-sandbox","version":"0.2.0","license":"MIT","_id":"@absolutejs/agent-sandbox@0.2.0","maintainers":[{"name":"alexkahndev","email":"alexkahn2019@gmail.com"}],"homepage":"https://github.com/absolutejs/agent-sandbox#readme","bugs":{"url":"https://github.com/absolutejs/agent-sandbox/issues"},"dist":{"shasum":"df455e5319c4ec9a643fa93d523bf7f14d3cdc33","tarball":"https://registry.npmjs.org/@absolutejs/agent-sandbox/-/agent-sandbox-0.2.0.tgz","fileCount":14,"integrity":"sha512-zbP9T3uZmtMMo2TCoGfB5uSj7iHdftFebXqjjvAczpb+q3twHe28r9jHSnNNYRycH5iA2a6xnBAWnLQlQC3pBA==","signatures":[{"sig":"MEUCIQDYqA0HDc/yw6D0jCXyamQlARm9PYeXw5duq5R7Y4Mb4QIgZSMX0Fn1DwqbWul7+nCLCEy0lQaBIdM1yR/tSGez9zI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":25143},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./manifest":{"types":"./dist/manifest.d.ts","import":"./dist/manifest.js"},"./manifest.json":"./dist/manifest.json"},"gitHead":"c9319ec115c22d10fba0800a78ce52b996bff949","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/index.ts src/manifest.ts --outdir dist --target=bun --external @absolutejs/manifest --external @sinclair/typebox && tsc -p tsconfig.build.json && absolute-manifest emit","format":"prettier --write \"./**/*.{ts,json,md,yml}\"","typecheck":"tsc --noEmit","check:package":"bun run typecheck && bun run test && bun run build"},"_npmUser":{"name":"alexkahndev","email":"alexkahn2019@gmail.com"},"absolutejs":{"manifestContract":2},"repository":{"url":"git+https://github.com/absolutejs/agent-sandbox.git","type":"git"},"_npmVersion":"10.9.2","description":"Deny-by-default capability grants and provider-neutral HTTP, filesystem, process, and credential-safe action adapters for AI agents.","directories":{},"_nodeVersion":"22.14.0","dependencies":{"@sinclair/typebox":"^0.34.0","@absolutejs/manifest":"^0.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"prettier":"3.5.3","@types/bun":"^1.3.14","typescript":"5.8.3"},"_npmOperationalInternal":{"tmp":"tmp/agent-sandbox_0.2.0_1784532226019_0.19658635172461247","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@absolutejs/agent-sandbox","version":"0.2.1","license":"MIT","_id":"@absolutejs/agent-sandbox@0.2.1","maintainers":[{"name":"alexkahndev","email":"alexkahn2019@gmail.com"}],"dist":{"shasum":"67aa1be69de55f5abeab4ca0f3ac66ea54b06263","tarball":"https://registry.npmjs.org/@absolutejs/agent-sandbox/-/agent-sandbox-0.2.1.tgz","fileCount":14,"integrity":"sha512-6W7iwUaThzJJ9lbZThw5W9nUqn3gCV/804gtY4VcRqYWw6eP62zQJRAJRyu4Ubx4YO2Q5WAKZdUH2cQUksu3DQ==","signatures":[{"sig":"MEYCIQCyaLPmle0L4D51s6WZfDTzuGHBiVIe6ucp5RRyJ7tsWgIhAJ7RFCX+aPgAxEOg9Hrpya53KjF/FV12PQcN2i5u5Zqk","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":25921},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","shasum":"67aa1be69de55f5abeab4ca0f3ac66ea54b06263","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./manifest":{"types":"./dist/manifest.d.ts","import":"./dist/manifest.js"},"./manifest.json":"./dist/manifest.json"},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/index.ts src/manifest.ts --outdir dist --target=bun --external @absolutejs/manifest --external @sinclair/typebox && tsc -p tsconfig.build.json && absolute-manifest emit","format":"prettier --write \"./**/*.{ts,json,md,yml}\"","typecheck":"tsc --noEmit","check:package":"bun run typecheck && bun run test && bun run build"},"_npmUser":{"name":"alexkahndev","email":"alexkahn2019@gmail.com"},"_integrity":"sha512-6W7iwUaThzJJ9lbZThw5W9nUqn3gCV/804gtY4VcRqYWw6eP62zQJRAJRyu4Ubx4YO2Q5WAKZdUH2cQUksu3DQ==","absolutejs":{"manifestContract":2},"repository":{"url":"git+https://github.com/absolutejs/agent-sandbox.git","type":"git"},"_npmVersion":"10.8.3","description":"Deny-by-default capability grants and provider-neutral HTTP, filesystem, process, and credential-safe action adapters for AI agents.","directories":{},"_nodeVersion":"24.3.0","dependencies":{"@sinclair/typebox":"^0.34.0","@absolutejs/manifest":"^0.7.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"prettier":"3.5.3","@types/bun":"^1.3.14","typescript":"5.8.3"},"_npmOperationalInternal":{"tmp":"tmp/agent-sandbox_0.2.1_1785091309027_0.5375905265666892","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@absolutejs/agent-sandbox","version":"0.2.2","description":"Deny-by-default capability grants and provider-neutral HTTP, filesystem, process, and credential-safe action adapters for AI agents.","type":"module","license":"MIT","repository":{"type":"git","url":"git+https://github.com/absolutejs/agent-modules.git","directory":"sandbox"},"homepage":"https://github.com/absolutejs/agent-modules/tree/main/sandbox","bugs":{"url":"https://github.com/absolutejs/agent-modules/issues"},"publishConfig":{"access":"public"},"main":"./dist/index.js","types":"./dist/index.d.ts","absolutejs":{"manifestContract":2},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./manifest":{"types":"./dist/manifest.d.ts","import":"./dist/manifest.js"},"./manifest.json":"./dist/manifest.json"},"scripts":{"format":"prettier --write \"./**/*.{ts,json,md,yml}\"","typecheck":"tsc --noEmit","test":"bun test","build":"rm -rf dist && bun build src/index.ts src/manifest.ts --outdir dist --target=bun --external @absolutejs/manifest --external @sinclair/typebox && tsc -p tsconfig.build.json && absolute-manifest emit","check:package":"bun run typecheck && bun run test && bun run build"},"dependencies":{"@absolutejs/manifest":"^0.7.3","@sinclair/typebox":"^0.34.0"},"devDependencies":{"@types/bun":"^1.3.14","prettier":"3.5.3","typescript":"5.8.3"},"_id":"@absolutejs/agent-sandbox@0.2.2","_integrity":"sha512-tdXdBTM6PppJD8QwpzvGtNfWWkgrNWGOhP9071ehzI3UZDkd6Gy2WiLJM3HkfESBNj3qJGhHeLuXWbk8IVMdhw==","_nodeVersion":"24.3.0","_npmVersion":"10.8.3","shasum":"688a1b989e73d5049ed46d3d4e79a8ddc70503ee","dist":{"integrity":"sha512-tdXdBTM6PppJD8QwpzvGtNfWWkgrNWGOhP9071ehzI3UZDkd6Gy2WiLJM3HkfESBNj3qJGhHeLuXWbk8IVMdhw==","shasum":"688a1b989e73d5049ed46d3d4e79a8ddc70503ee","tarball":"https://registry.npmjs.org/@absolutejs/agent-sandbox/-/agent-sandbox-0.2.2.tgz","fileCount":14,"unpackedSize":26145,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIG10m/wk2OLVMY9foicVJrllWC93ln9z3ISPKUxJ43JAAiB2OlJvOQo3wnZ1BfxgYmiEbM+U831MlaD6Xy7M4Gcz+w=="}]},"_npmUser":{"name":"alexkahndev","email":"alexkahn2019@gmail.com"},"directories":{},"maintainers":[{"name":"alexkahndev","email":"alexkahn2019@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/agent-sandbox_0.2.2_1785524716858_0.43177138397069403"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-16T02:33:57.092Z","modified":"2026-07-31T19:05:17.210Z","0.1.0":"2026-07-16T02:33:57.361Z","0.1.1":"2026-07-18T17:48:03.095Z","0.2.0":"2026-07-20T07:23:46.143Z","0.2.1":"2026-07-26T18:41:49.166Z","0.2.2":"2026-07-31T19:05:17.044Z"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/absolutejs/agent-modules.git","directory":"sandbox"},"description":"Deny-by-default capability grants and provider-neutral HTTP, filesystem, process, and credential-safe action adapters for AI agents.","maintainers":[{"name":"alexkahndev","email":"alexkahn2019@gmail.com"}],"readme":"# @absolutejs/agent-sandbox\n\nDeny-by-default capability sandboxing for agent actions. Grants are scoped to\none durable run and one signed agent identity, expire, carry per-capability use\nlimits, and are verified through an issuer-agnostic callback.\n\nHTTP access is restricted by origin, method, path, body/response size, and\ncredential binding. Each broker alias is bound to an exact header or process\ninput name; transport-controlled headers and process-loader variables remain\ndenied even if requested. Filesystem access uses boundary-safe absolute roots. Process\naccess uses exact executable allowlists, argument prefixes, working roots,\ntimeouts, and output limits. Credentials are resolved inside adapters and never\nreturned to the agent.\n\nThe broker persists an operation before executing it. Repeating the same\n`grantId + requestId` returns the recorded result instead of repeating the\nexternal action. Use the Postgres store in production or the memory store in\ntests. The built-in fetch adapter rejects redirects so an allowed origin cannot\nbounce an agent to an ungranted destination.\n\nAn adapter failure is deliberately left locked for reconciliation: the remote\nsystem may have accepted the effect before the error reached the broker, so an\nautomatic retry would risk duplication. Filesystem adapters must resolve\nsymlinks/real paths before access; process adapters must enforce the grant's\ntimeout and output ceilings at the operating-system boundary.\n","readmeFilename":"README.md","homepage":"https://github.com/absolutejs/agent-modules/tree/main/sandbox","bugs":{"url":"https://github.com/absolutejs/agent-modules/issues"}}