The desktop surface of your AI operating system.
A native Electron cockpit for the Prometheus daemon. It bundles no backend and no model keys — pair it with a one-time 6-digit code and it becomes the window into everything the daemon does, on localhost or across your tailnet.
Status: v0.2 — moves fast alongside the daemon.
Mission home — the Armilla, Mission Control, and a composer. The default landing view.
Replies stream as markdown while every tool call renders inline — consecutive calls merge into a single activity strip with live durations, and parallel dispatches show up as batches. The composer carries a per-session model switcher with auth-mode badges, an Agent | Chat toggle for tools-on or plain replies, and a one-shot 🔍 force-search that arms the next send to open with a web search. While a turn runs, the activity line animates only on real daemon frames — movement means liveness, not decoration — and artifacts the agent produces show up as download chips right in the transcript.
A finished turn — tool timeline above the answer.
Fire a sandboxed iterate-to-green run — repo, task, acceptance command, caps — and watch rounds stream live: outcome, tokens, duration, with a Stop button. The Loop Manager turns runs into a PM cockpit: registered repos, a TASKS.md board, a LOOP.md contract editor, a compiled-run preview. Every run ends as a reviewable branch with copy-able git commands. Beacon is review-only — it never merges and never pushes.
Rounds streaming live.
The artifact — iterated to green, yours to merge.
A calm writing surface over the daemon's documents folder. Type an instruction — "tighten the intro" — and proposed edits come back as inline tracked-changes, each with its own Accept/Reject plus an Accept all. Nothing touches disk until you accept.
Redlines pending — accepting is what applies them.
Paste a provider key once — it saves to the daemon, takes effect immediately, and is never shown again. Auth-mode badges say whether a provider runs on an API key or a subscription, and "Sign in with SuperGrok" is a full OAuth device-code flow for xAI — your subscription powers it, no key at all.
The Models tab — paste-once keys and SuperGrok sign-in.
Eight named theme plates — NOX, LVX, AVRVM, VMBRA, AERVGO, CAERVLA, RVBEDO, AETHER — each a complete design-token set with a live preview tile. Your pick persists across launches.
The Skin Codex.
Boot the daemon bare and it starts in setup mode, printing a one-time 6-digit code. Beacon's wizard takes it from there: connect → model → identity → gateways → a smoke test that runs one real chat round-trip before letting you in. It works over Tailscale as well as it does at home. The token lands in the OS keychain and never reaches the renderer — the UI knows a token exists, never its value.
The wizard's connect step — six digits and you're paired.
Thirteen views in a grouped nav rail. The connection dot at its foot turns an amber lock when the daemon rejects your token — a 401 is reported as a 401, not disguised as "offline." Half-open sockets are detected and re-dialed too, so "Connected" can never point at a dead socket.
The Beacon repo is private while it hardens. Public builds — a macOS dmg and a Linux AppImage/deb — arrive with the public release. Until then, Beacon ships to early users from draft releases.
Public builds — coming with the public release.
Follow along at oara.ai or github.com/OAraLabs. The daemon it pairs with is open today — Prometheus.
The things Beacon does not do yet, so you're not surprised mid-task: