# Colibri The Clawdie control plane core — a small, cross-platform (FreeBSD + Linux) Rust daemon. Developed from an operator USB environment; deploys as the **Clawdie service** on bare FreeBSD hardware (ZFS RAID1, PostgreSQL + pgvector, bhyve VMs, Bastille jails). Unifies coordination (task board, agent registry, skills catalog) with cache-first cost discipline (byte-stable prompt prefixes, cache-hit metering). **Status:** workspace gates are fmt/clippy/test/release green. Round 2 audit is closed. Current priorities: ISO boot/runtime validation, Pi spawn end-to-end, and cost-mode enforcement (see [`docs/MULTI-AGENT-HOST-PLAN.md`](docs/MULTI-AGENT-HOST-PLAN.md)). Always query live state: see the crate table below and run the gate commands for current counts. FreeBSD build lane handoff: `docs/FREEBSD-BUILD-LANE-HANDOFF.md`. ISO acceptance runbook: `docs/ISO-ACCEPTANCE-RUNBOOK.md`. Clawdie Studio/Zed proposal: `docs/CLAWDIE-STUDIO-PROPOSAL.md`. External MCP host prototype: `docs/COLIBRI-EXTERNAL-MCP-PROTOTYPE.md`. Optional Headroom compression sidecar: `docs/wiki/headroom-sidecar.md`. ## Workspace | Crate | Role | | ----------------------- | ----------------------------------------------------------------------- | | `colibri` (root) | Workspace root + probe binaries (colibri-probe, runtime-inventory) | | `colibri-mcp` | MCP bridge for editor integration (Zed, Claude Code) via stdio JSON-RPC | | `colibri-contracts` | JSON schema contracts (golden tests) | | `colibri-deepseek` | DeepSeek cache-hit probe, prefix metering | | `colibri-runtime` | Host status ingestion, runtime inventory | | `colibri-glasspane` | Agent 5-state machine (zot/pi JSONL events → state) | | `colibri-daemon` | Always-on Unix socket server, session lifecycle | | `colibri-client` | Typed Unix-socket client + operator CLI | | `colibri-glasspane-tui` | ratatui live dashboard (FreeBSD-native) | | `colibri-store` | Embedded SQLite coordination (task board, agents, skills) | | `colibri-skills` | Skills catalog crate | | `clawdie` | Host installer/deployer: ZFS layout + `clawdie` service (FreeBSD/Linux) | ## Build ```sh cargo build --release ``` ## Test ```sh cargo test --workspace cargo clippy --workspace --all-targets -- -D warnings ``` ## Architecture ``` colibri-daemon (always-on Unix socket server) ├── glasspane — agent state machine (zot/pi JSONL → idle/working/blocked/done) ├── store — SQLite coordination (tasks, agents, skills) ├── socket — newline-JSON socket API ├── session — append-only JSONL sessions, 3-region prompt assembly └── spawner — agent subprocess management (retry/backoff, FreeBSD jail confinement) colibri-client — CLI tools (colibri, colibri-test-agent) colibri-glasspane-tui— ratatui dashboard ``` ## Probe binaries ```sh # DeepSeek cache probe (needs DEEPSEEK_API_KEY) cargo run --release --bin colibri-probe # Runtime inventory manifest cargo run --release --bin colibri-runtime-inventory ``` ## FreeBSD Target `x86_64-unknown-freebsd` (Rust Tier-2). TLS uses `rustls` for clean static linking (no `openssl-sys` dependency). Default DB path: `/var/db/colibri/colibri.sqlite`.