[!NOTE] Heads up: this project, README included, is influenced heavily by AI agents. If LLM-flavoured prose isn't your thing, fair warning. Human-written docs will come once things settle.
byob — bring your own brain
A native Rust desktop AI coworker. A rewrite of hob that points at any OpenAI-compatible inference URL (llama-server, vLLM, Ollama, LM Studio, hosted APIs) instead of bundling llama.cpp — and whose UI you can also open in any browser, e.g. from your phone over Tailscale.
Install
Release archives for Linux, macOS and Windows come in the same two flavours
(byob-… and byob-slim-…) on the GitHub releases page. On Linux they need no GUI
toolkit: file dialogs go through the XDG desktop portal (or zenity); without either, drop
files onto the window.
Use
BYOB_API_KEY=sk-...
On first run byob shows a Connect a model screen: it lists servers it found on this computer's usual ports (llama-server 8080, Ollama 11434, LM Studio 1234, vLLM 8000), has presets for those and for hosted APIs (which need a key), and a Test connection button. Once something answers it goes straight to your chats; the connection lives at the top of Settings, or click the status dot in the header.
Chats are grouped by workspace: a folder with its own settings. + Workspace makes
one (a fresh folder or an existing one, and where commands run: this machine, a Nix dev
shell, or a Docker/Podman container); byob --workspace DIR starts in the one for DIR.
Settings apply global → workspace → chat (model, approvals, tool calling, compaction,
subagents, extra instructions); each workspace's … menu and the settings button next to a
chat's title show what's inherited and what's set there.
Develop
# HTML artifacts inline on the desktop: the Servo helper is its own workspace (AGENTS.md §3)
( && ) # scripts/headless.sh picks it up
# desktop GUI on a virtual display, scripted, with a screenshot
# live test against a real server
BYOB_LIVE_URL=http://localhost:8080/v1
See AGENTS.md for rules, docs/architecture.md for the design, ROADMAP.md for what's next.
Licensed under MIT OR Apache-2.0.