Skip to main content
███████  ███████  █████   █████   ██   ██  ███████
██       ██       ██  ██  ██  ██  ██   ██  ██     
█████    █████    █████   █████   ██   ██  ███████
██       ██       ██  ██  ██  ██  ██   ██       ██
██       ███████  ██  ██  ██  ██   █████   ███████

Deterministic orchestration of AI agents for real software work.

// A Supervisor → Executor → Reviewer state machine for coding agents.

alpha · v0.2.5Apache-2.0Rust 1.93+

$ Install

ferrus ships as a single Rust crate. Install it from crates.io or build from source.

From crates.io

# stable — published on crates.io
cargo install ferrus
# or pin an exact version:
cargo install --locked ferrus@0.2.5-alpha.2

From source

# latest main — tracks the repo
git clone https://github.com/RomanEmreis/ferrus
cd ferrus
cargo install --path .

$ Quick start

From any project directory, scaffold ferrus, register your agents, and drop into HQ.

ferrus init # scaffold ferrus.toml + .ferrus/
ferrus register --supervisor claude-code --executor codex # write agent configs
ferrus # enter HQ

Inside HQ, type /task. A supervisor spawns, you describe what you want, and the Executor → Reviewer loop runs automatically until the task is Complete.

$ Why ferrus

> Deterministic
Not a chat. A real state machine with explicit transitions, retries, and review cycles.
> Agent-agnostic
Claude Code, Codex, and experimental Qwen Code are interchangeable workers.
> Crash-safe
State lives on disk in .ferrus/. Agents are stateless between runs — restarts resume exactly where you left off.
> No hidden context
Everything the agents see lives in plain files you can read: TASK.md, REVIEW.md, SUBMISSION.md.