agentbox README

The project's README from github.com/madarco/agentbox. As one markdown file: README.md.

AgentBox 

Run multiple agents in parallel, with a single command, on your PC, self-hosted, or in the cloud

Works with iterm2 - cmux - tmux - Herdr

AgentBox

How it works

agentbox claude # launch a new VM with claude and your project inside

Full Documentation

Complete setup:

npm -g install @madarco/agentbox
agentbox install

# Launch a new VM with claude, copy all your settings and workspace
agentbox claude

# Also install required project libraries and launch your dev server
> Run setup wizard? -> Yes

# Also use a cloud:
agentbox hetzner claude # or vercel, daytona

# Ctrl+a d to detach, claude keep going, to reconnect later:
agentbox attach 1

# To open a persistent shell inside the box:
agentbox shell 1

# Create a second box:
agentbox claude
agentbox attach 2
agentbox shell 2

# Open your web project on a .local url tunnel on your pc
agentbox url 2
# Or the in-box browser via webVNC:
agentbox screen 2
# Or connect to vscode/cursor inside the box:
agentbox code 2

# See status and quickly switch between agents:
agentbox dashboard

Demo

AgentBox demo

Install

npm -g install @madarco/agentbox

Want to help test what's coming? npm -g install @madarco/agentbox@nightly puts you on the nightly channel — pre-release builds, with stable releases still reaching you automatically. agentbox self-update --channel stable opts back out.

Requirements: macOS (arm64 or Intel) or Linux, Docker (Docker Desktop or OrbStack), Node >=20.10. The first agentbox create / agentbox claude builds the agentbox/box:dev image (~1 GB, one-time). Uses portless to give box web apps the same URL from inside the box and on the host.

Cloud Providers

local docker remote docker hetzner daytona vercel e2b
Support ✅ ✅ ✅ ⚠️ Partial ✅ ✅
Base image Dockerfile Dockerfile (on the remote) Setup script (Ubuntu) Dockerfile Setup script Dockerfile (Template.build)
Live snapshots ✅ ✅ (docker commit) ✅ 🧪 Experimental ✅ ✅
Private preview URLs ✅ (portless or OrbStack) ✅ (portless over SSH) ✅ (portless) ✅ (native) ✅ (native) ✅ (native)

Cloud setup (optional — skip for local Docker)

How to use

<box> is optional almost everywhere — it defaults to the box for the current project, or use its short index (1, 2, …), name, or id prefix.

Create & run

Access

Inspect

Lifecycle

Sync & state

Advanced

Run agentbox <command> --help for command-specific options.

Documentation

Full documentation lives at agent-box.sh/docs:

Development

git clone https://github.com/madarco/agentbox && cd agentbox
pnpm install && pnpm build
node apps/cli/dist/index.js --help

The full development workflow, stack, end-to-end smoke tests, and teardown live in docs/development.md.

Menu-bar tray app (dev)

The macOS tray app lives in the sibling repo ../agentbox-tray. When you have it checked out next to this repo, these scripts build and run your local dev build (ad-hoc signed, at ../agentbox-tray/AgentBoxTray.app) — separate from the notarized copy agentbox install app puts in /Applications:

pnpm tray:dev        # rebuild the dev .app and relaunch it (the one you'll use most)
pnpm tray:build      # just rebuild (scripts/make-app.sh)
pnpm tray:start      # launch the dev build
pnpm tray:stop       # quit any running instance
pnpm tray:restart    # quit + relaunch the dev build

Note: agentbox app start|restart targets the installed /Applications copy, not this dev build. Use the pnpm tray:* scripts while iterating on the tray here; run agentbox install app to refresh /Applications from the current CLI build.

Custom providers (plugins)

AgentBox's provider surface is open — you can run agents on your own cloud/infra by shipping a provider plugin (its own npm package built on @madarco/agentbox-provider-sdk), with no changes to AgentBox. Build and test against the bundled example provider locally:

# build the SDK, then build + register the example provider
pnpm --filter @madarco/agentbox-provider-sdk build
cd examples/agentbox-provider-example && npm install && npm run build
node ../../apps/cli/dist/index.js plugin add .      # register it
node ../../apps/cli/dist/index.js doctor            # shows the provider's group

# verify the SDK artifact in isolation (packs + installs the tarball, asserts exports)
pnpm --filter @madarco/agentbox-provider-sdk pack:test

Full guide: Build a provider (and the authoring reference docs/provider-plugins.md). Reference packages: examples/agentbox-provider-sample (stub) and examples/agentbox-provider-example (a real, Vercel-backed provider).

Contributing

Bug reports, docs fixes, and provider work are welcome — see CONTRIBUTING.md. First-time contributors sign a one-line CLA on their first pull request. Security issues go through SECURITY.md, not a public issue.

For new sandbox providers, see Build a provider and the authoring reference docs/provider-plugins.md.

Author

Marco D'Alia - @madarco - Linkedin

License

MIT. See LICENSE.

agentbox (madarco/agentbox)

Searching Database…

这是什么?AgentBox 是一个命令行工具,可以用一条命令并行运行多个编程智能体,每个都在自己隔离的虚拟机沙箱里 —— 可以在你的电脑上、自托管的服务器上或云端运行。
这是装在我电脑上的软件,还是在云端运行的服务?它是你在自己电脑上运行的命令行工具;它创建的 box 可以是本地 Docker 容器、你已有的远程服务器(通过 SSH 连接),或者 Hetzner、Vercel、E2B、DigitalOcean 之类的云沙箱。
我怎么启动第一个 box?运行 'agentbox create',或者用 'agentbox claude' 直接启动 Claude Code。首次运行会构建 agentbox/box:dev Docker 镜像(约 1 GB,只需一次);'agentbox install' 是一个配置云服务商的向导。
用之前需要先装好什么?本地 box 需要 Docker。云服务商需要一个 token,通过 'agentbox install' 或 'agentbox vercel login' 这类登录命令添加(保存在 ~/.agentbox/secrets.env);远程 Docker 直接复用你的 ~/.ssh/config。
有什么需要注意的坑吗?有:首次构建镜像要下载约 1 GB;Daytona 目前只支持部分功能,而且它的实时快照功能还处于实验阶段。
每个 box 里都带些什么?就是一台完整的电脑:有专属的浏览器、屏幕共享、持久化的终端会话,以及预热好的 VS Code / Cursor IDE,还会自动把你的 Claude Code、Codex 和 OpenCode 的技能与插件复制进去。
checkpoint 是干什么用的?checkpoint 是 box 运行状态的快速快照;'agentbox checkpoint create' 可以生成一个,让新的 box 直接从这个快照启动,而不用冷启动。
能在没内置支持的基础设施上运行 box 吗?可以 —— 服务商是以插件形式提供的:你发布一个基于 @madarco/agentbox-provider-sdk 构建的 npm 包,AgentBox 就能在你的云上运行智能体,不需要改动 AgentBox 本身。
macOS 上有菜单栏应用吗?有 —— 'agentbox install app' 会在 /Applications 里装一个经过公证的托盘应用,'agentbox app' 可以在命令行启动或停止它。
Creator
madarco
Size
46.4 MB
Stars
538
Age
5mo
Commits · 90 Days