All Rust. All terminal. Zero cloud dependencies.

Run AI agents
in parallel.

Apiari is a toolchain for orchestrating autonomous AI coding agents. Each agent works in an isolated git worktree — committing code, opening PRs, and resolving issues — while you coordinate from your terminal or phone.

swarm — the engine. Runs agents in parallel across isolated git worktrees. Use it standalone.
apiari — built on swarm. Adds an AI coordinator, signal monitoring, Telegram bot, and a dashboard to manage it all.
apiari ui
Workers: 3 Signals: 2 PRs: 1 up 2h
Workers (3)
hive-1 running
hive-2 waiting
cli-1 done
You: check swarm status
Bee: 3 workers active. hive-2 opened a PR for the auth feature — looks good, want me to review it?
> _|

The problem

AI coding agents are powerful — but running one at a time is slow. You can't just open five terminals and hope for the best. They'll conflict on files, stomp on each other's branches, and you'll lose track of who's doing what.

1

Isolation

Agents need isolated environments. Shared working directories mean merge conflicts, partial writes, and corrupted state.

2

Coordination

Someone needs to break work into tasks, assign them, and know when something needs human attention. That's a full-time job.

3

Visibility

When five agents are working, you need a single pane of glass. What's running? What's stuck? What opened a PR? What broke?

How it works

Three layers, each doing one thing well. Use them together or pick just what you need.

swarm agent multiplexer

Parallel agents in isolated worktrees

Swarm creates a git worktree for each task, spawns an AI agent as a daemon process, and gives you a full-screen TUI to monitor all of them. Each agent has its own branch, its own copy of the code, and can commit and push independently.

Git worktree per task — zero file conflicts
Agents run as daemon processes with full terminal I/O
One-keystroke merge when an agent's work is done
CLI + IPC for scripting and external integration
swarm
Workers (3)
hive-1 running
hive-2 waiting
cli-1 done
n:new m:merge
hive-1
Bee: I'll add the auth middleware now. First, let me check the existing route handlers...
Read src/routes/mod.rs
Edit src/middleware.rs
Write src/auth.rs
> _|
apiari unified CLI + dashboard

Coordinate everything from one place

Apiari is the command center. It runs a persistent daemon that watches your agents, aggregates signals from Sentry and GitHub, and connects you to an AI coordinator via Telegram or the built-in TUI. Chat with your coordinator from your phone, get notifications when agents finish, and manage multiple workspaces.

AI coordinator with full codebase context
Telegram bot — chat with your coordinator from anywhere
Signal aggregation — Sentry errors, GitHub issues, PRs
Multi-workspace support with per-project config
apiari ui
Workers: 3 Signals: 2 PRs: 1 up 2h
Workers (3)
hive-1
hive-2
cli-1
Signals (2)
!! SSL recv closed
sentry · 2h ago
! Review requested: #42
github · 30m ago
You: check on the SSL error
Bee: That Sentry issue resolved itself — it was a transient TLS handshake failure. I'll mark it.
> _|

The toolchain

Six Rust crates. Each does one thing well. Use them standalone or compose them together.

swarm binary

Agent multiplexer. Runs AI agents in parallel across isolated git worktrees with a full-screen TUI.

View on GitHub →
apiari binary

Unified CLI and dashboard. Daemon, coordinator chat, signal monitoring, Telegram bot, multi-workspace support.

View on GitHub →
buzz library

Signal aggregation and coordinator intelligence. Watchers for Sentry, GitHub, reminders. AI-powered coordinator with contextual skills.

View on GitHub →
hive binary

Orchestration brain. Quest planning, task dispatch, worker management, Telegram daemon, auto-triage pipeline.

apiari-claude-sdk library

Rust SDK for the Claude CLI. Spawn sessions, stream responses, manage tools — all via NDJSON.

apiari-tui library

Shared TUI design system. Honey/amber theme, scroll primitives, conversation renderer, markdown rendering.

Architecture

Two distinct flows — use swarm standalone for parallel agents, or add apiari for full orchestration.

Swarm: parallel agent execution

You TUI swarm multiplexer + TUI spawn worktree-1 claude agent worktree-2 claude agent worktree-3 codex agent push GitHub PRs + branches

Apiari: full orchestration

You Telegram / TUI chat apiari daemon coordinator signal watchers swarm watcher auto-triage telegram bot dispatch poll swarm agents + worktrees state.json agent-1 agent-2 agent-3 GitHub PRs + issues signals Sentry errors GitHub events webhooks notify

Get started

Just swarm (simplest)

Run agents in parallel on any project. No config needed.

$ cargo install --git https://github.com/ApiariTools/swarm
$ cd ~/my-project
$ swarm
# Press n to create a worker, type your task, go.

Full orchestration

Add the coordinator, signals, and Telegram notifications.

$ cargo install --git https://github.com/ApiariTools/apiari
$ apiari init
# Edit ~/.config/apiari/workspaces/my-project.toml
$ apiari daemon --background
$ apiari ui

Requirements

Rust 1.93+

Edition 2024. Install via rustup.

claude CLI

Claude Code for agent execution.

gh CLI

Optional. For PR tracking + GitHub signal watcher.

macOS / Linux

Terminal-native. Works anywhere you have a shell.