Uxnan — a name with no relation to, or derivation from, any existing product.
English · Español
Two apps built around one idea: your coding agents shouldn't need your full
attention, or your most expensive machine, to keep moving.
Uxnan Desktop runs and reviews several CLI coding agents in parallel, each in its own
git worktree, without the memory cost of a full IDE. Uxnan Mobile pairs with a small
encrypted daemon on your PC so you can check on an agent, approve its next step, or send
a new instruction from your phone — across the room or across the world. They're
independent apps: run Desktop on its own, run Mobile on its own, or run both.
- Pets — an optional animated companion that mirrors what your agents are doing and jumps you to the right terminal when clicked. docs →
- Automations — recurring, multi-agent runs that fire on their own schedule, registered with your OS's own scheduler — they work even with uxnan closed. docs →
- A measured footprint, not a guessed one — resource mode (Efficient / Balanced / Performance) governs the background work, and the number it's tuned against is benchmarked: ~250 MB of private memory on Windows 11 (WebView2 150, release build). resource mode → · benchmark method →
- Quick commands — shell commands scoped to a project or worktree, with variable substitution, launched from a top-bar shortcut. details →
- Sleep, wake, and pick up where you left off — an idle workspace's terminals (scrollback included) come back exactly as you left them, and agent CLI sessions auto-resume. terminal engine →
- Multi-agent orchestration — broadcast one message to several agents at once, or chain them into a durable run with approvals and retries. docs →
- A fully translated interface — every screen in English and Spanish, not just a handful of strings. i18n →
- In-app auto-updates — stable and nightly channels, downloaded in the background, installed only once your agents are idle. docs →
Uxnan Desktop is terminal-centric: if it runs in a terminal, it runs in uxnan — add any CLI as a custom agent and it launches like any other, no integration work required. The 22 below report precise state out of the box: working / blocked / waiting / done as it happens, plus session auto-resume, live model discovery, and per-agent run options.
Claude Code
OpenCode
Cursor
GitHub Copilot
Droid
Grok
Amp
Goose
Qwen Code
Kiro
Auggie
Devin
Kimi
Kilo Code
MiMo Code
Command Code
Pi
OMP
Zero
Antigravity*
*Antigravity's integration is partial — it runs one-shot per turn with no live approval channel.
Zero has no hook surface; its state is read from the session it writes to disk.
These nine are in the catalog too. They launch, run and show a working / idle
indicator like anything else — their CLI simply exposes no way to say a turn
ended, so uxnan doesn't claim a precise state it cannot know. Point one at
the bundled wrapper and you get working on launch and done on exit.
Aider
Cline
Continue
Crush
Codebuff
Mistral Vibe
Rovo Dev
Autohand
Ante
+ any CLI agent
Using one of these? If its CLI grows a hook surface, wiring it is a single table row —
see agent hooks, and send a pull request.
Every one of them runs as that vendor's own official local CLI, under the account or
subscription you already signed it in with — uxnan doesn't call a provider API, hold a key,
or embed an SDK. It just drives the terminal, exactly like you would.
Seven of them — Claude Code, Codex, OpenCode, Pi, Grok, Antigravity and Zero — are what Uxnan Mobile drives from your phone.
It's a real client, not a status page: conversations carry a name the agent wrote rather than the first words you typed, they stream in live and survive navigating away and back, a message queue lets you send follow-ups while an agent is still working — reaching it mid-turn, without stopping it, on the agents whose CLI allows that — you can attach images, pick the agent and model per conversation, see protocol-confirmed context compactions, and keep every native progress/final response without losing earlier text (settled progress folds under N previous messages). You can also review and stage a Git diff and get a push notification the moment an agent finishes — all over the same end-to-end encrypted channel the bridge speaks. Mobile offers the seven active agents shown above.
Status: Android is alpha-ready. iOS is written but not yet shipped — it's waiting on Apple developer assets the project doesn't have yet.
Uxnan Mobile does not pair with Uxnan Desktop. It pairs with uxnan-bridge,
a small daemon that runs on your PC on its own — you don't need Desktop installed
at all to use Mobile, or vice versa:
npm install -g uxnan-bridge
uxnan-bridge startThat boots the daemon and prints the pairing QR right there in the terminal. Scan it from the app (or type the short code it prints) and you're paired. The phone connects directly over your LAN or Tailscale first, and only falls back to an optional, self-hosted relay when you're off that network — either way, every byte is sealed end-to-end before it leaves your phone. Full setup in bridge/README.md.
Grab the latest release for your platform from GitHub Releases:
| Platform | What to grab |
|---|---|
| Windows | the .msi, or the NSIS _x64-setup.exe installer |
| macOS (experimental, unsigned) | _x64.dmg (Intel) or _aarch64.dmg (Apple Silicon) |
| Linux | .deb, .AppImage, or .rpm |
Honest heads-up: the Windows installers aren't code-signed yet, so SmartScreen will warn on first run (More info → Run anyway), and the macOS builds are unsigned and unnotarized, so Gatekeeper blocks them until you authorize the app once by hand — see the macOS install guide. That's the state of an alpha project without a paid signing certificate yet, not a sign anything is wrong. Prefer to build it yourself? See building from source.
Android is on Google Play, open testing. iOS isn't published yet, but the code is there — it's a Flutter project, so you can build and run it yourself on your own Mac (see uxnanmobile/README.md → Getting started). Heads-up: push notifications may not work on a self-built iOS app, since the APNs signing credentials aren't included in the repo.
npm install -g uxnan-bridgeSee bridge/README.md for the full CLI, autostart, and per-agent sign-in prerequisites.
Every byte between your phone and your PC is sealed end-to-end — an X25519 key
exchange, Ed25519-signed identities, and AES-256-GCM encryption; the optional
relay only ever sees sealed envelopes, never your code. GitHub actions route
through your own gh CLI, which keeps its OAuth token in your OS keychain —
uxnan reads a sanitized login status and nothing else. Found a vulnerability?
Please don't open a public issue — see SECURITY.md.
Uxnan is free, open source, and built in my own time. If it's useful to you, a star tells me people are actually using this — and a coffee genuinely helps keep it moving. 🙏
Want to build, run, or contribute to Uxnan? Start with
CONTRIBUTING.md for setup and quality gates, and
AGENTS.md — the single source of truth for conventions and
architecture rules. Each component also keeps its own README.md, docs/, and
CHANGELOG.md: uxnandesktop/ ·
uxnanmobile/ · bridge/ ·
relay/ · shared/.
Uxnan is released under the Mozilla Public License 2.0.









