AOF lets you run teams of AI agents the way you'd run teams of people. Define your org structure, assign roles, and set up workflows. AOF handles the rest: routing tasks, enforcing review stages, recovering from crashes, and making sure nothing falls through the cracks.
It works for any domain where agents collaborate - software engineering, RevOps, sales, marketing, research, whatever. If your process has steps, AOF can govern it.
- Org-chart-driven orchestration. Model agents, teams, and hierarchies in a YAML org chart. Work gets routed by capability, team, and priority.
- Workflow DAGs. Define multi-stage pipelines with review loops, conditional branches, and parallel fan-out. Agents follow the process - no skipping steps, no dropped handoffs.
- Shared memory. Agents build on each other's knowledge through semantic memory with HNSW vector search and tiered curation.
- Works for any domain. SWE (implement → review → QA → deploy), RevOps (qualify → enrich → handoff), sales pipelines, research workflows. If it has a process, it fits.
- Nothing gets dropped. Filesystem-first task store with atomic state transitions, lease-based locking, and deadletter recovery. Tasks survive crashes, restarts, and API failures.
- Node.js >= 22 (LTS recommended)
- OpenClaw gateway running (openclaw.dev)
curl -fsSL https://raw.githubusercontent.com/d0labs/aof/main/scripts/install.sh | shThe installer scaffolds your data directory and installs the aof-daemon
user service (launchd on macOS, systemd on Linux). The daemon is the single
scheduler/IPC authority; the OpenClaw plugin connects to it over a Unix
socket at ~/.aof/data/daemon.sock.
aof init # Configure OpenClaw integration
aof daemon status # Verify the daemon is running (installed by the installer)
aof org show # List available agents
aof task create "My first task" --agent <your-agent-id>See the Getting Started Guide for a complete zero-to-working walkthrough.
Two paths exist on paper:
aof update # in-CLI updater
curl -fsSL https://raw.githubusercontent.com/d0labs/aof/main/scripts/install.sh | sh # re-run the installerBoth preserve your data directory (~/.aof/data) and the daemon service. aof update also writes a backup so it can roll back with aof update --rollback --backup <path>.
Per-release notes live on GitHub Releases.
| Feature | Description | Docs |
|---|---|---|
| Org chart governance | YAML org charts define agents, teams, routing rules, and memory scopes | Configuration |
| DAG workflows | Multi-stage pipelines with rejection loops and parallel fan-out | Workflow DAGs |
| Protocol system | Typed inter-agent messages: handoff, resume, status update, completion | Protocols |
| Semantic memory | HNSW vector index with hybrid search and tiered curation | Memory |
| Recovery-first | Deadletter queue, task resurrection, lease expiration, drift detection | Recovery |
| Observability | Prometheus metrics, JSONL events, Kanban board | Event Logs |
- Getting Started - Install, configure, and orchestrate your first agent team
- Configuration Reference - Org chart schema, AOF config, OpenClaw plugin wiring
- CLI Reference - Complete command reference (auto-generated)
- Documentation Index - Full user and developer documentation
- Architecture Overview - System diagram, subsystem descriptions, key interfaces
- Dev Workflow - Development setup and fast-feedback loop
MIT - see LICENSE.