Sandbox
@risingwavelabs/box0

Agent team server for Claude Code and Codex

Box0 gives you a server, CLI, and web dashboard for managing agent workers. You define agents with instructions and triggers, run them on demand or on a schedule, and collect their results from the inbox, Slack, or the UI.

81 stars4 forksRustUpdated 5mo ago
Who it's for

Builders who want Claude Code or Codex to coordinate multiple reusable agents across sessions.

What it delivers

You can turn one prompt into a set of persistent agents that keep working, schedule themselves, and report back.

What it does

Create named agents

Use `b0 add` to define agents with instructions and triggers.

Run agents in parallel

Start multiple workers at once with separate `b0 run` commands.

Schedule recurring work

Use cron triggers like `--every 1h` to run agents on a schedule.

Trigger agents from webhooks

Create webhook-backed agents with `--webhook` and call them over HTTP.

Send Slack notifications

Attach `--slack` so finished runs notify a channel.

Manage a shared workspace

Use the server and web UI to share agents, tasks, and history across a team.

Keep runs persistent

Agents, conversations, and task history stay in the Box0 database instead of ending with one session.

How to get it

  1. 1Install
    npm install -g @box0/cli@latest
  2. 2Start the server
    b0 server
  3. 3Run
    b0 server --config server.toml
  4. 4If the server has already been started before, create or update a dedicated admin user…
    b0 admin ensure --db ~/.b0/b0.db --name service-admin --key b0_service_admin_key
  5. 5For day-to-day frontend development, run Vite separately
    cd frontend
    pnpm install
    pnpm dev
  6. 6To let the Rust server serve the Vue app directly, build the frontend first
    cd frontend
    pnpm build

README

Open-Source Platform for Subagents and Agent Teams.

Slack npm license docs SKILL.md

Box0 runs multiple AI agents in parallel. You create agents with different roles, trigger them on demand or on a schedule, and collect results. It works with Claude Code and Codex. Single Rust binary, no dependencies.

  • Long-running: agents that persist across sessions and never disappear
  • Collaborative: shared across team members
  • Proactive: cron schedules, webhooks, Slack notifications

Box0 Architecture

Box0 vs Subagents

Box0Subagents
Setupnpm install, one binaryBuilt-in, zero config
PersistenceAgents and conversations persistSession only
SchedulingCron jobs:x:
NotificationsWebhooks, Slack, and more:x:
Team sharingWorkspaces, multi-user:x:
DashboardWeb UI:x:
RuntimeAny agent runtimeClaude Code only

How it works

A server coordinates everything. It stores agent definitions, routes tasks, runs the scheduler, and serves a web dashboard. Start one with b0 server (runs in background).

Workspaces organize agents by team. Each user gets a personal workspace.

Agents do the actual work. Each agent has a name, a set of instructions, and a set of triggers. Three trigger types:

  • Manual - trigger on demand with b0 run <name> "<task>".
  • Cron - run on a schedule. Set with b0 add --every 1h --task "...".
  • Webhook - triggered by HTTP POST. Enable with b0 add --webhook.

Your AI (Claude Code or Codex) creates agents with b0 add, runs tasks with b0 run, and can run multiple agents in parallel. You type one prompt. Your agent handles the rest.

Agent onboarding

npx skills add risingwavelabs/skills --skill b0

Or read SKILL.md directly.

Your agent creates workers with b0 add and sends tasks via b0 run. The server stores tasks in an inbox. A daemon polls the inbox, spawns a separate Claude Code (or Codex) process for each worker, and writes the results back. b0 run blocks until the result is ready.

Each worker runs in its own isolated directory.

Agent runs use a 30 minute default execution timeout. This prevents longer workflow steps from failing at the old 5 minute default on first run.

Getting started

Install:

npm install -g @box0/cli@latest

Start the server:

b0 server

On first start, Box0 creates an admin account and prints your API key.

If you want a fixed admin credential for other services, configure it before first start:

# server.toml
admin_name = "service-admin"
admin_key = "b0_service_admin_key"
b0 server --config server.toml

You can also use B0_ADMIN_NAME and B0_ADMIN_KEY. These settings are applied when Box0 bootstraps the initial admin for a new database.

If the server has already been started before, create or update a dedicated admin user explicitly:

b0 admin ensure --db ~/.b0/b0.db --name service-admin --key b0_service_admin_key

This command runs locally against the Box0 database. It can create a separate admin user for integrations without replacing your existing admin account.

Frontend development

The server now prefers frontend/dist when it exists, and falls back to the legacy web/ dashboard otherwise.

For day-to-day frontend development, run Vite separately:

cd frontend
pnpm install
pnpm dev

Vite proxies /workspaces, /machines, and /users to http://127.0.0.1:8080 by default. To point it at a different backend, set B0_FRONTEND_BACKEND_URL.

To let the Rust server serve the Vue app directly, build the frontend first:

cd frontend
pnpm build

3. Teach your agent to use Box0

Teach your agent to use Box0 (how skills work):

npx skills add risingwavelabs/skills --skill b0

Then open Claude Code or Codex and say:

Create three agents: an optimist, a pessimist, and a realist. Ask them to debate whether AI will replace software engineers in 5 years. Give me your own conclusion.

Features

Parallel execution. Run multiple agents at once.

b0 run reviewer "Review this PR for correctness." &
b0 run security "Review this PR for vulnerabilities." &
wait

Cron schedules. Schedule recurring tasks.

b0 add monitor --instructions "Check production logs for errors." --every 6h --task "scan logs"

Webhook triggers. Trigger agents via HTTP POST.

b0 add notifier --instructions "Process alerts." --webhook
b0 info notifier

Slack notifications. Get notified when agents finish.

b0 add alerter --instructions "Triage alerts." --slack "#ops"

See Slack setup for configuration.

Pipe content. Pass files and diffs directly.

git diff | b0 run reviewer "Review this diff."

Web dashboard. Manage agents and view tasks at http://localhost:8080.

CLI reference

b0 server                                              Start server (background)
b0 server stop                                         Stop server
b0 server status                                       Show server status
b0 admin ensure --name <name> --key <key>              Create/update a local admin user
b0 add <name> --instructions "..."                     Create agent
b0 add <name> --instructions "..." --every 1h --task "..." Create scheduled agent
b0 add <name> --instructions "..." --webhook           Create agent with trigger URL
b0 add <name> --instructions "..." --webhook-secret s  Create agent with HMAC secret
b0 ls                                                  List agents
b0 info <name>                                         View agent details and trigger URL
b0 logs <name>                                         View recent task history
b0 update <name> --instructions "..."                  Update agent instructions
b0 rm <name>                                           Delete agent
b0 run <agent> "<task>"                                Trigger agent and wait for result
b0 run <agent> "<task>" --timeout 600                  Trigger with custom timeout (seconds)

Learn more

Web dashboard

Open your browser to the server URL (default http://localhost:8080) and log in with your API key. Manage workers, view tasks, monitor nodes, and manage your team from the UI.

License

MIT License. Copyright (c) 2026 RisingWave Labs.

Files in the repo

Repository payload13 top-level entries
  • .github
  • docs
  • frontend
  • npm
  • src
  • tests
  • .gitignore
  • Cargo.lock
  • Cargo.toml
  • CLAUDE.md
  • LICENSE
  • README.md
  • SKILL.md

Discussion (0)

Ask about usage, or say what you built with it

Sign in to join the discussion.

No comments yet. Be the first to say what this is good for.

More agents

Hmbown/
Codewhale

Open-source coding agent for your terminal, built in Rust and on a journey of continuous community improvement. Issues and PRs welcome.

41k

A lightweight alternative to OpenClaw that runs in containers for security. Connects to WhatsApp, Telegram, Slack, Discord, Gmail and other messaging apps,, has memory, scheduled jobs, and runs directly on Anthropic's Agents SDK

31k
TokenRhythm/
opensquilla

OpenSquilla — Token-Efficient AI Agent with same budget, higher intelligence density

7k

An open-source AI coding agent that lives in your terminal.

28k
Untrivial-ai/
agent-orchestrator

Run and supervise teams of coding agents from planning to merge. Any harness (Claude code, codex, +25 more). Desktop, web, mobile, and cloud agents.

11k