Overview
OpenFang is an open-source Agent Operating System built entirely from scratch in Rust. Its goal is not to be just another "conversational agent framework," but rather to provide a runtime and governance layer closer to a "system/kernel":
- Long-Running: Agents/Hands work persistently on a schedule, rather than waiting for you to send a message.
- Strong Isolation & Controlled Execution: Tool code runs preferentially in a WASM sandbox and features dual-metering (fuel + epoch).
- Auditable: Links critical actions into a verifiable audit path via a Merkle hash-chain.
- Governance: Capability-based permissions, RBAC, quotas and billing, rate limiting, and policy-driven channel access.
- Unified Delivery: Multi-crate stratification that ultimately compiles down to a single binary (~32MB according to README/official examples).
Key Metrics
One-Sentence Difference: Why Is It Called an "Agent OS"?
Traditional agent frameworks act more like "libraries": You write code, call a flow, send a message, and wait for a result.
OpenFang acts more like a "system":
- It has a "Kernel" (openfang-kernel) responsible for assembling subsystems, scheduling, RBAC, metering, workflows/triggers, and graceful shutdowns.
- It has a "Runtime" (openfang-runtime) handling the agent loop, LLM drivers, tool runners, WASM sandbox, and MCP/A2A.
- It has a "Persistent Substrate" (openfang-memory) built on SQLite for sessions/memory/embedding/KG/canonical sessions.
- It has an "Integration Layer" (openfang-channels) connecting agents to Telegram/Slack/Discord/... applying per-channel policies, formatting, and rate limiting.
Quick Start (Shortest Path)
- Install:
- Initialize:
- Configure a provider key (example):
- Start daemon + Open dashboard:
The commands above are taken from the official Getting Started documentation.
