A local release, not a website: v0.2.0 installs with cargo build --release and runs on a Linux desktop. The source is private for now.
Personal project · multi-agent lab written in Rust
Eden Hub
A desktop app and a terminal app that run a team of AI coding agents on your own machine: every builder works, critics review the merged output, and one leader answers you in a single clean reply. No hub server, no cloud — it just drives the CLIs you already have. About 6,000 lines of Rust, two binaries, 46 tests and one design system.
Role
Designer & Systems Developer
Stack
- Rust · ~6,000 LOC, two binaries
- eframe / egui · Desktop GUI, glow + accesskit
- ratatui / crossterm · tmux-like terminal UI
- Threads + mpsc · Parallel fan-out, live streaming
- GitHub Actions · Both suites, clippy -D warnings
AI's role in this project AI-assisted
The audits and fix prompts were written for an agent to execute, and it did — but the architecture, the design tokens and every merge decision are mine.
High-level architecture
03 · Eden Hub · © 2026
THE PROBLEM
- A single agent gives a single opinion, and running several by hand means reading five half-answers and merging them yourself.
- Every ready-made hub wanted a server, an account or a cloud key — I wanted the models already installed on my machine.
THE APPROACH
- Every builder runs, critics review the merged output, then one leader writes the answer. The leader is configurable; if it fails, the best builder answers and is honestly labeled.
- Both surfaces share one config file. The GUI keeps the timeline readable by collapsing team work into expandable cards; the TUI adds tmux-style windows and a one-key jump into the live agent terminal.
THE ARCHITECTURE
- Composer → fan-out scheduler → agent CLIs (opencode / 9router / cmd) → shared output buffer → critics → leader → chat timeline.
- Children are polled every 60 ms with stdout/stderr drained on detached reader threads, so Stop returns immediately even when a grandchild still holds the pipe open.
THE TECHNOLOGY
- Rust
- eframe / egui (glow, accesskit)
- ratatui / crossterm
- Threads + mpsc channels
- GitHub Actions
THE CHALLENGES
- Killing a tree of spawned CLIs without hanging on inherited pipes — the kill path deliberately does not join its readers.
- A first audit found that about 90% of the GUI never painted, because every screen laid out as one infinite horizontal row; the fix was one line, and a headless layout probe now guards it.
THE RESULT
- v0.2.0 ships both apps with 46 passing tests, clippy-clean CI and a documented warm-dark design system whose tokens pass WCAG AA.
- It runs daily on my own machine: a bench per project, session history that survives restarts, and ten builders answering as one voice.