LearnNewsExamplesServices
Frontmatter
id9296
titleCreate Docker Sandbox for Autonomous Agents
stateOpen
labels
enhancementaibuild
assignees[]
createdAtFeb 24, 2026, 8:32 PM
updatedAtFeb 25, 2026, 4:22 PM
githubUrlhttps://github.com/neomjs/neo/issues/9296
authortobiu
commentsCount1
parentIssue9295
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]

Create Docker Sandbox for Autonomous Agents

Openenhancementaibuild
tobiu
tobiu commented on Feb 24, 2026, 8:32 PM

Problem

Autonomous, looping agents need an isolated environment where they can execute downloaded code, crash browsers, or make mistakes without affecting the host developer machine.

Solution

Create a Dockerfile.agent (likely within ai/demo-agents/) that bundles Node.js, Chromium, and the Neo MCP servers. This provides a safe, reproducible Linux sandbox for the Neo Orchestrator to run headless browser sessions via the chrome-devtools MCP server.

tobiu added the enhancement label on Feb 24, 2026, 8:32 PM
tobiu added the ai label on Feb 24, 2026, 8:32 PM
tobiu added the build label on Feb 24, 2026, 8:32 PM
tobiu added parent issue #9295 on Feb 24, 2026, 8:32 PM
mavdol
mavdol Feb 25, 2026, 4:22 PM

Hi, just saw this issue about sandboxing for autonomous agents. I wonder if it could work in more of a per-action way.

I've been working on a lightweight runtime that runs untrusted code in WebAssembly sandboxes. Might be a good fit here.

For example, in your agent workflow:

import { run } from '@capsule-run/sdk/runner';

const result = await run({ file: './sandbox.ts', args: [downloadedCode] });

And in sandbox.ts:

import { task } from "@capsule-run/sdk";

export const executeCode = task({ name: "execute_code", compute: "MEDIUM", timeout: "30s" }, (code: string) => { // Your code runs safely in a Wasm sandbox return eval(code); });

export const main = task({ name: "main", compute: "HIGH" }, async (code: string) => { return executeCode(code); });

Each task runs in its own Wasm sandbox with configurable CPU and memory limits, timeouts, and filesystem access only if explicitly granted.

I think it could help for the parts where agents execute downloaded code, as a complementary approach to Docker maybe.

There's more info in the repo if you're curious: https://github.com/mavdol/capsule

Would love to hear your thoughts on whether this fits Neo's architecture!