Quickstart
This page is a one-screen walkthrough that creates a CAFleet fleet, spawns two member panes, and sends a message between them. It starts from a clean machine: install the CLI, configure your coding agent, then run the walkthrough.
Install
Prerequisites:
Install the CLI with Homebrew, then run the setup:
Alternatively, download the archive for your platform from
GitHub Releases —
cafleet-v<version>-<target>.tar.gz for aarch64-apple-darwin,
x86_64-unknown-linux-musl, or aarch64-unknown-linux-musl — then extract
the single cafleet binary onto your PATH and run the same setup:
Configure
CAFleet is designed to run inside a coding agent without per-command permission prompts. Each backend has a different config file and permission system:
The snippets below are the recommended starting points for the two backends that need one.
Claude Code
The Bash(cafleet *) pattern is the single allow-everything entry that the
literal --fleet-id <int> / --member-id <int> flag convention enables —
one pattern covers every subcommand for every fleet. cafleet member prompt *
is moved to the ask list because it keystrokes arbitrary text or shell
commands into a member's pane; the operator should confirm each invocation.
Codex
network_access = true is required because cafleet's multiplexer backends
(tmux and herdr) communicate over a local socket, which the Codex sandbox
classifies as network access — without it cafleet commands fail with
Operation not permitted. writable_roots grants write access to cafleet's
default SQLite DB directory. Use the absolute path matching
CAFLEET_DATABASE_URL or the default XDG location.
The Codex rules for cafleet commands allow every subcommand while keeping
cafleet member prompt prompting; the reference above covers their precedence
and where operator customizations belong.
Trust the working directory
Coding agents ask for a trust confirmation the first time they start in a new directory, and that first-run prompt stalls a freshly spawned member — it ignores every incoming message until the prompt is cleared. Trust the workspace in advance: launch your coding agent once in the working directory the member panes will run in and accept the prompt, or add a trust entry to the agent's configuration file (see your agent's reference page). Trust is granted per directory, so each git worktree needs its own approval.
Simple example — invoke from a coding agent
For the simplest path, ask Claude Code or Codex to demonstrate CAFleet for you. Inside an agent, send the following prompt:
The coding agent will invoke the cafleet skill, which guides it through the
fleet-create / member-create / message-send loop and finally tears the team
down.
Raw CLI walkthrough
If you would rather drive CAFleet from the shell directly, the commands below
mirror what the skill does internally. Run them inside a tmux or herdr session —
the fleet create and member create commands require one.
Expand the walkthrough
The walkthrough pastes literal integer ids: fleet 1, root Director 2,
members 3 and 4, message 10. Your ids will differ — substitute the
integers your own commands print.
Create a fleet. This records your current pane as the root Director's
pane; --coding-agent is required — pass the backend the Director is
actually running on (here, Claude Code):
The line carries the fleet id (1) and the root Director's member id
(2). If it scrolls away, run
cafleet fleet list — it re-prints the fleet id and the Director id (the
DIRECTOR column).
Spawn two member panes. Each member's prompt is just a one-line greeting.
Optional: add --model <m> (e.g. --model sonnet) to pin a member's LLM;
omitted, the backend binary uses its own default model:
List the fleet's roster — the new members' ids (3 and 4) appear
alongside the Director:
Send a message between the members — demo-member (3) messages
reviewer (4):
reviewer receives the message as a 2-line inline preview pushed into its
tmux pane and the message lands in the broker queue. From here, the typical
flow is cafleet message poll from the recipient and cafleet message ack
once it has consumed the message.
When you are done, tear the fleet down:
Where to go next:
- CLI options — every subcommand and flag.
- How-to guides — prompt-first task guides.