Skip to main content
The sandbox gives a Neo Agent a temporary, isolated Linux environment for the run: a shell, plus simple file read and write. Use it for data wrangling that doesn’t fit a fixed tool — parsing an export, running a bulk script across many records, transforming a file, assembling a report.
Every agent has a sandbox — the agent reaches for it on its own when the work calls for it. It’s created fresh for the run and discarded afterwards. The three Sandbox tools appear in the agent’s tool list as always on and can’t be switched off, because every agent gets a sandbox regardless. To steer an agent toward or away from using it, use custom instructions.

What It Does

Because the sandbox is on every agent whether you enable it or not, it never sets an agent’s per-run price — see Tool credits. On the Neo Support Agent the sandbox is free entirely. Sandbox Write File writes the exact content the agent supplies, and can check the file as it writes — confirm it has the expected number of lines and, for a Python script, that it compiles — so a truncated or broken file is caught at write time instead of failing later in the run. Typical uses:
  • Loop one API call across hundreds of records in a single script instead of hundreds of agent turns
  • Parse or reshape a CSV/JSON export the agent fetched from another tool
  • Run a one-off calculation or text transformation
  • Produce a file — a CSV, a chart, a PDF — for someone to download off the run
If you want to steer the agent toward (or away from) the sandbox on a particular workflow, say so in custom instructions — e.g. “use the sandbox to parse the exported CSV before summarising it.”

How Long One Command Can Run

A single sandbox command runs for up to 30 minutes on a scheduled or triggered agent. In a Chat Agent it is capped at 5 minutes, because the whole reply has one budget and someone is waiting for it — a Chat Agent asked for something big splits the work into steps, saves each step’s results as it goes, and carries on across the following commands rather than going quiet for half an hour. You may see that split in the chat: the agent fetches a first batch, tells you what it has, and continues. That is the intended shape. If a job genuinely needs one long uninterrupted run — a full-history export, a fleet-wide sweep — run it as a scheduled agent instead, where the longer budget applies.

Files The Agent Leaves Behind Become Downloads

When the run ends, the files the agent left in its workspace/ directory are saved and attached to that run as artifacts, downloadable from the run’s page in the dashboard (and via the public API). Files the agent tucked into a hidden directory are skipped, as are the oversized tool outputs described below. Saving is per file, so a workspace holding a very large number of files can run past the time Neo gives this step. It then keeps the files it managed to save and leaves the rest behind, with nothing in the chat to mark the gap — so after a bulk export, check the run’s download list against what you asked for. Total size is rarely the limit; file count is. An agent writing one file per record is the shape that hits this, and one file per batch is the shape that does not — worth saying in the agent’s custom instructions if you ask for a bulk export. This is worth knowing for two reasons:
  • It’s how the agent hands you a file. A CSV, spreadsheet, chart, or PDF the agent builds is a real deliverable you can open — it isn’t stuck inside the run.
  • It’s a separate path from Generate Artifact. That tool writes a markdown report that renders inline on the run. The sandbox produces actual files you download. Turning Generate Artifact off stops the written reports; it doesn’t stop an agent that has been instructed to build a file from building one in the sandbox. If you don’t want an agent producing files, say so in its custom instructions.

Oversized Tool Outputs Land Here

When any integration tool (PSA, RMM, Microsoft 365, documentation, …) returns a response too large for the agent to read in one go, Neo automatically saves the complete response to a file in the sandbox and shows the agent a short preview plus the file path. The agent then works with just the slices it needs — so a big data pull never derails the run or forces the agent to re-fetch with narrower queries. Picking the rest back up costs nothing in the common case: Neo points the agent at Sandbox Read File, which is free and pages through the file a chunk at a time. The agent falls back to the shell only when it has to filter or total the data, or when the file has no line structure to page by.

Safety