Agent Shell: a sandboxed cloud VPS for AI agents / xShellz
Skip to content Log in Try Turborg Free → Open App →
Agent Shell · live<br>A server you can hand your AI agent root on.
Agent Shell is a hardened Linux box you reach over SSH<br>or right in the browser. Give borg, Claude, Codex or Gemini real root,<br>let them apt install and build anything, and watch it live. Sandboxed so<br>hard that even root inside cannot touch the host.
Create shell → Create shell → See what's inside<br>ssh + web terminal · gVisor sandbox · live stats · agents preinstalled 180,000+ developers and power users, on infrastructure we have run since 2009 watch the hive live →
root@agent-shell
live 2 agents running · up 3h 12m<br>MEM 0.34 / 0.5 GB<br>CPU 22%<br>NET ↓1.2 MB/s
agents preinstalled borg Claude Code Codex Gemini
a real Agent Shell session · SSH or browser · watched live
Runs the agents your team already trusts. Connects the platforms they<br>work in. Built on infrastructure operated since 2009.
Claude Code preinstalled agent<br>Codex preinstalled agent<br>Gemini preinstalled agent<br>GitHub clone, push, CI<br>Slack turborg connector<br>Discord turborg connector<br>Telegram turborg connector<br>Cloudflare edge + delivery<br>gVisor sandbox kernel<br>Ubuntu the box you get
live now 180,000+ developers AI tokens processed turborgs online Create shell → Create shell →
a box of its own Agent Shell<br>A hardened Linux box you hand your agent root on, over SSH or the browser. gVisor-sandboxed so even root inside cannot touch the host, monitored live, with every AI agent and a QA toolkit preinstalled.<br>Learn more → in your chats turborg<br>The always-on AI bouncer. Holds your connection around the clock and puts polish, summaries and agents inside IRC, Discord, Telegram, Slack and web chat.<br>Learn more → in your terminal borg<br>The same AI as a coding agent in your shell. Hand it a task in plain language and it reads your repo, edits across files, runs your tests and checks its own work.<br>Learn more →
root<br>Real root, real apt<br>You are root. apt install anything, run services, compile whatever you want. A full Ubuntu box your agent controls, not a locked-down playground.
gvisor<br>Sandboxed so hard you can sleep<br>Every box runs under gVisor, a userspace kernel between the box and the host, so even root inside cannot reach the host kernel. The isolation class Google Cloud Run and Replit trust for untrusted code.
watch<br>Watch it live, always<br>Real-time graphs for memory, CPU, disk and network, a running-agents indicator and a top-processes view. See exactly what your agent is doing, the moment it does it.
Six layers of containment, live monitoring and every agent preinstalled.<br>See what's inside Agent Shell →
One API, every language Spawn a real Linux box from your code, in seconds
Python TypeScript Go Java Ruby PHP Rust<br>Python<br>PyPI
View on GitHub
Install<br>Copy
pip install xshellz Throwaway box<br>from xshellz import Sandbox<br>with Sandbox.create() as sbx:<br>print(sbx.run("echo hi").stdout) Agent Shell: one box, kept forever<br>from xshellz import Sandbox<br>box = Sandbox.get_or_create("my-agent") # same box every run<br>box.run("claude -p 'fix the failing test'")
TypeScript<br>npm
View on GitHub
Install<br>Copy
npm install xshellz Throwaway box<br>import { Sandbox } from "xshellz";<br>const sbx = await Sandbox.create();<br>console.log((await sbx.run("echo hi")).stdout); Agent Shell: one box, kept forever<br>import { Sandbox } from "xshellz";<br>const box = await Sandbox.getOrCreate("my-agent");<br>await box.run("claude -p 'fix the failing test'");
Go<br>pkg.go.dev
View on GitHub
Install<br>Copy
go get github.com/xshellz/xshellz-go Throwaway box<br>sbx, _ := xshellz.Create(ctx, nil)<br>r, _ := sbx.Run(ctx, "echo hi", nil)<br>fmt.Println(r.Stdout) Agent Shell: one box, kept forever<br>box, _ := xshellz.GetOrCreate(ctx, "my-agent", nil)<br>r, _ := box.Run(ctx, "claude -p 'fix the failing test'", nil)<br>fmt.Println(r.Stdout)
Java<br>Maven Central
View on GitHub
Install<br>Copy
implementation("com.xshellz:xshellz:0.2.0") Throwaway box<br>try (Sandbox sbx = Sandbox.create()) {<br>System.out.println(sbx.run("echo hi").stdout());<br>} Agent Shell: one box, kept forever<br>Sandbox box = Sandbox.getOrCreate("my-agent");<br>var r = box.run("claude -p 'fix the failing test'");<br>System.out.println(r.stdout());
Ruby<br>RubyGems
View on GitHub
Install<br>Copy
gem install xshellz Throwaway box<br>Xshellz::Sandbox.create do |sbx|<br>puts sbx.run("echo hi").stdout<br>end Agent Shell: one box, kept forever<br>box = Xshellz::Sandbox.get_or_create("my-agent")<br>r = box.run("claude -p 'fix the failing test'")<br>puts r.stdout
PHP<br>Packagist
View on GitHub
Install<br>Copy
composer require xshellz/xshellz Throwaway box<br>$sbx = Xshellz\Sandbox::create();<br>echo $sbx->run('echo hi')->stdout;<br>$sbx->kill(); Agent Shell: one box, kept forever<br>$box = Xshellz\Sandbox::getOrCreate('my-agent');<br>$r = $box->run("claude -p 'fix the failing test'");<br>echo $r->stdout;
Rust<br>crates.io
View on GitHub
Install<br>Copy
cargo add xshellz Throwaway box<br>let sbx = Sandbox::create(Default::default()).await?;<br>let r =...