Serverless tool calling
Give your agent a bash tool.
Each call boots a fresh Firecracker microVM next to your disk, runs Bash, Python, or Node, and shuts down. The files it writes are there for the next call.
One call, one microVM.
No sandbox to create, stop, or delete. Only what the command writes to the disk outlives the call.
Serverless execution docsecho west > sales.csv
(no output)
wc -l sales.csv
1 sales.csv
sales.csv
Files outlive the call
Writes are committed to the disk before the response returns, so the next call reads them straight away.
82 ms at the median
A trivial command from a laptop to us-west-2, round trip, including about 40 ms of internet. Every result reports where the time went.
const files = await listLogs() await Promise.all( files.map((f) => disk.exec(`wc -l ${f}`)),)Fan out hundreds at once
Each disk runs many commands concurrently. Map a job across files with a Promise.all; ask us and the limit goes to thousands.
read-write
app/logs · read-only
$ wc -l logs/*.log
Several disks in one call
Mount each disk at its own path, a subdirectory if you like, read-only if you need. Every disk mounts or none do.
logs/api/2026-11-05.log:18233
ERROR upstream timeout
logs/worker/2026-11-05.log:902
FATAL queue closed
logs/api/2026-11-04.log:4417
ERROR upstream timeout
Search millions of files
disk.grep spreads a search across the disk in parallel. It counts as one call, like exec.
Hand the disk to your agent.
Pass a disk to the AI SDK and the agent gets file tools and run_bash. Or call exec yourself from TypeScript, Python, or the CLI.
AI SDK guideimport * as archil from "disk";import { createDiskTools } from "@archildata/ai-sdk";import { generateText } from "ai"; const disk = await archil.getDisk("dsk-abc123"); // Files, glob, grep, and run_bash. Each bash call// runs in its own microVM against this disk.const { text } = await generateText({ model: "anthropic/claude-sonnet-4.6", prompt: "Which test files changed this week?", tools: createDiskTools(disk),}); // Or run a command yourself.const { stdout, timing } = await disk.exec("du -sh logs");Works with the rest of Archil.
Available in Archil's public AWS regions and in BYOC deployments.
Sandboxes
Need a server that stays up? Use a persistent sandbox on the same Firecracker runtime.

