Spec sheet; rev 2026.07

Features & Roadmap

Everything the desktop app ships with, in detail; and what is on the bench next. No dates on the roadmap: pre-alpha means we ship when it is right, and this page tells you where each thing actually stands.

Shipped 3In progress 2Next 1Planned 2Exploring 1
pre-alpha progress 3/9 shipped

§1. What ships today

8 systems
01

Providers & keys

byok

Bring your own key, pick your provider, keep the middleman out. Calls go straight from your machine to the provider you chose; no proxy, no resale, no markup on tokens. Or skip the network entirely and run a local model.

providers
18; openai · anthropic · google · xai · mistral · ollama · …
routing
per-model routing across all connected providers
local models
ollama and compatible servers, fully offline
key storage
local config only; never synced, never uploaded
02

Multi-account rotation

new

Long agent runs should not die because one account hit a rate limit. Connect several OAuth accounts; and plain API keys; per provider, each logged in exactly once. When one runs into a usage limit, Unary switches to the next one mid-run: no login window, no re-authentication, no babysitting.

vault.rs auto-switch on limit
fn accounts() -> Vault {
  Vault::local()
    .oauth("work")          // provider account #1
    .oauth("private")       // provider account #2
    .api_key("sk-…")        // plain keys rotate exactly the same way
    .auto_switch(OnLimit)  // usage cap hit → next account, mid-run, no break
}
accounts
multiple OAuth logins per provider, side by side
auth
once per account; switching never asks for a login again
switching
automatic on usage / rate limits, mid-turn
long runs
overnight fleets finish instead of stalling at 429s
03

Local index

Built on your machine, kept on your machine, never uploaded. Semantic search for intent, lexical search for exact patterns, and a tree-sitter symbol graph that knows who calls what; rebuilt incrementally on every save.

cold index
12k files in 1.4 s · warm re-index 84 ms
semantic
offline embeddings. “where is X handled?”
lexical
BM25 + regex, with the enclosing symbol attached
graph
callers, implementors, impact, cycles, hotspots
04

Agent fleet

One agent is a demo; a fleet is a workflow. Unary orchestrates up to eight workers in parallel, routes each to the provider you picked, and lets a second worker judge the result before it lands; with per-task budgets instead of surprise invoices.

workers
up to 8 in parallel, isolated, patch-based
verification
a verifier worker judges every handoff
budgets
per-task token ceilings, enforced by the harness
levels
routine → multi-file → architectural routing
05

Tool layer

Sixty tools, all Rust, all native: files, shell, git, LSP, a managed Chromium over CDP, real desktop control, persistent memory, and RAG over your own docs. Nothing bolted on through a scripting bridge.

tools
60; read · edit · grep · git · shell · lsp · …
browser
managed Chromium, deterministic CDP, fail-closed
desktop
native windows, real input, accessibility-first
knowledge
memory, docs and research that persist across sessions
06

Remote control

Start a run on the desktop, walk away, steer it from the web app or your phone. Sessions hand off between machines; the relay is end-to-end encrypted and never sees your code.

steer
approve, redirect or stop a running session remotely
handoff
start on the laptop, finish at the desk
transport
end-to-end encrypted; the relay sees ciphertext only
pairing
QR pairing, no port forwarding, no config
07

Editor core

A real editor around the agent, not a chat window with a file picker. Tree-sitter highlighting for 24 languages, LSP diagnostics inline, every agent edit as a reviewable diff, and a real terminal and git beside it.

languages
24; rust · ts · python · go · zig · svelte · c/c++ · …
review
diff-first: every agent edit lands only after you see it
terminal
a real shell with background jobs and watchers
git
stage, blame, history without leaving the pane
08

Privacy & control

Built in Switzerland, where privacy is not a marketing slide. The architecture is local-first by construction: your code, your keys and your prompts stay where you put them. Nothing phones home, and the captcha is our own.

uploaded code
0 lines; indexing and inference stay local
tracking
none; no analytics, no newsletter, own captcha
jurisdiction
Swiss-hosted, European and global providers supported
offline
full IDE works unplugged with a local model

§2. What ships next

no dates · honest states
  1. Local index, fleet & 60-tool layer

    Shipped

    The pre-alpha core: Rust-native index, orchestrated workers, full tool surface.

  2. BYOK across 18 providers

    Shipped

    Direct provider calls, local models via Ollama, per-model routing.

  3. Remote steering from the web

    Shipped

    Pair a desktop, steer a running session from the browser, E2E-encrypted.

  4. Multi-account OAuth & API-key rotation

    In progress

    Several accounts per provider, automatic switching on usage limits, mid-run.

  5. Mobile remote

    In progress

    Steer and approve from the phone, mid-run, with the same encrypted transport.

  6. Plugin marketplace

    Next

    Publish and install tools, docs connectors and provider adapters.

  7. Shared fleets

    Planned

    Hand a running fleet; context, workers and budgets; to a teammate.

  8. Our own model

    Planned

    The IDE and desktop app come first; our own model follows, developed from Europe for worldwide access and global interoperability.

  9. Fully air-gapped operation

    Exploring

    Index, inference and orchestration with zero external calls, verifiably.

How to read this. “Shipped” means it is in the current pre-alpha build you can request a key for. “In progress” is on the bench right now. Everything further out moves as we learn — this page is updated with every release, alongside the changelog.

Pre alpha; by invitation
Read it in the app, not on a page.

Every feature above is in the current pre-alpha build. Ask for a key and judge it on your own codebase; that is the only review we trust.