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 sidecar

A dedicated index process beside the editor, with a bundled embedding model that runs on your own GPU — in its default configuration no code leaves the machine. One query runs the lanes together; embeddings for intent, BM25 and exact tags for names, path trigrams for files, and a tree-sitter symbol graph that knows who calls what. The fused candidates are re-ranked by graph weight and proximity, and changed files are reindexed in the background on every save.

cold build
285 files → 6.5k chunks + 946 symbols in 63 s, empty cache
rebuild
4.5 s on a warm embedding cache · queries 5–90 ms end-to-end
on disk
23 MB for this repository, stored next to the code
lanes
dense chunk & symbol · BM25 · exact tags · path trigram · graph
embeddings
bundled granite-97m, GPU-accelerated, local by default
graph
callers, implementors, dependents, impact, cycles, hotspots
orientation
repo map and code context: repo → package → module → file → symbol
reads
symbol-scoped bodies with drift reporting instead of whole files
freshness
incremental refresh on save; searches report staleness, never block
linked folders
sibling repos keep their own index, reused across sessions
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.