The CLI

The flotilla command runs the server, sets it up and pairs devices. It also starts, follows and manages threads from a terminal. This page lists the common commands; flotilla --help and flotilla <command> --help have every option.

Get it

Build it from the repo, and put it on your PATH:

cargo build --release -p flotilla-cli
cp target/release/flotilla ~/.local/bin/

It works with the Flotilla on the same machine: through the server or the app when one is running, or on its own when neither is. With --server <address>, the thread commands go to another server instead, as an agent device.

Server

Run these on the machine that serves Flotilla.

CommandWhat it does
flotilla serveRun the server. --tailscale-serve reaches it over your tailnet; --url gives its address behind a proxy.
flotilla setupSet up this machine: the boat.dev key, GitHub, titles and summaries, Tailscale, remote MCP, iPhone notifications. Then print a pairing link.
flotilla doctorWhat isn't set up, and what to run to fix it.
flotilla service installRun the server as a systemd user service on Linux. Also status, start, stop, restart, uninstall.
flotilla pairMake a one-time pairing code, with a link and a QR code. --agent for an assistant, --ttl for longer than 5 minutes, --list, --revoke.
flotilla devicesList paired devices. flotilla devices revoke <id> signs one out.
flotilla import <path>Bring a Mac's threads to this server. See Move your Mac's threads.

Threads

Commands that take a thread take its id, or the first few characters of it.

CommandWhat it does
flotilla threadsList threads.
flotilla search <words>Find threads by title, and messages by what was said.
flotilla new --provider <agent> --model <id> "<prompt>"Start a thread and follow it. --effort and --fast as in the app; --no-follow to return at once.
flotilla send <thread> "<text>"Send a follow-up, waking the VM if it's stopped, or steer a running turn. Then follow.
flotilla follow <thread>Print messages as they arrive, until the turn ends.
flotilla show <thread>Print the thread's messages.
flotilla steer, interruptSteer or stop the running turn.
flotilla stop, resumeStop or wake the thread's VM.
flotilla keep-running <thread> on|offKeep the VM up while it's idle, or not.
flotilla rename, archive, unarchive, deleteAs in the thread menu.
flotilla preview <thread> <port>Print a private link to a port in the VM.
flotilla services <thread>Show the thread's services. ensure, restart <name>, stop <name> manage them.

--provider is claude-code, codex or opencode. flotilla models lists the models boat.dev offers for each.

Scheduled prompts

flotilla schedule add, list, pause, resume, run and rm. See Scheduled prompts.

Assistants

For assistants that use Flotilla over MCP.

CommandWhat it does
flotilla mcpServe Flotilla's tools to an assistant over MCP, on standard input and output.
flotilla connect <address>Pair this machine with a server as an agent device.
flotilla disconnect <address>Sign that agent device out, and forget its token.

See The agent API.

boat.dev

These read from boat.dev, or rebuild from it.

CommandWhat it does
flotilla modelsThe models, by agent.
flotilla envsYour boat.dev environments.
flotilla limitsYour plan's limits.
flotilla syncBring everything up to date from boat.dev.
flotilla rebuildRebuild the database from boat.dev, keeping the old one as a backup.

Options for every command

These work with any command.

OptionWhat it does
--data-dir <dir>Use Flotilla's data in this folder, not the default.
--boat-key-file <file>Read the boat.dev key from this file, which only you may read. BOAT_API_KEY works too.
--secrets-dir <dir>Keep keys in files here, not in the Keychain (on a Mac) or the data folder (elsewhere).
--server <address>Work with the server at this address, as the agent device flotilla connect paired.