Skip to content

Uxnan logo

Uxnan

Uxnan — a name with no relation to, or derivation from, any existing product.

Latest desktop release License MPL-2.0 Platforms

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.

Download Uxnan Desktop Get Uxnan Mobile on Google Play

Uxnan Desktop running four agent worktrees on a widescreen monitor, next to Uxnan Mobile showing live conversations, profile stats and a repository's GitHub checks

What it feels like to use

Launch any agent into its own worktree

Uxnan Desktop is terminal-centric, so it runs any CLI agent — pick one from the catalog (Claude Code, Codex, OpenCode, Pi, Grok, Antigravity, Zero) or register any other by hand, and it drops straight into an isolated terminal running its own official binary, under your own account. No API keys, no SDKs.

Agent launch & configuration →

Picking an agent from the catalog, then launching it into a worktree terminal

Drag a file straight into the terminal

Drag any file or folder from the tree onto a terminal and its path gets typed there — quoted if it needs to be — so an agent never has to guess a path, and neither do you.

Git, worktrees & the file tree →

Dragging a file from the file tree onto a terminal to insert its path

Open a PR without leaving your terminal

Push, pick base ← head, and create the PR — uxnan reads the repository's actual branch rules and only offers you the merge methods you're genuinely allowed to use.

GitHub integration →

Creating a pull request from inside Uxnan Desktop

Read your history as a graph

A branch-graph gutter runs next to the commit log — click a commit to expand its changed files, click a file to open just that slice of the diff instead of one giant blob.

Git, worktrees & diffs →

Browsing the commit history with a branch graph

Spin up an isolated worktree in seconds

New branch, existing branch, or a custom location — every task gets its own worktree and its own agent, so nothing collides with whatever you're already running.

Creating worktrees →

Creating a new git worktree for a task

Know your quota before it runs out

Session, weekly and monthly usage for Codex, Claude, Copilot and Grok, read straight from each CLI's own signed-in token — never a pasted key, never a cookie.

Provider usage stats →

Viewing AI provider usage quotas in Settings

Review PRs, issues and CI in full screen

Open a project's Pull Requests, Issues and Actions in a focused view that replaces the center panel — approve, merge, comment or re-run a check without switching apps.

GitHub integration →

Reviewing a pull request and CI checks in the full-screen GitHub view

Watch subagents work under their parent

A subagent from Claude Code, Codex, Grok or OpenCode shows up live as a nested row under the agent that spawned it — with its kind and what it is working on — and the parent won't read "Done" while a child is still working.

Agent hooks & precise states →

A subagent appearing as a nested row under its parent agent

Also in the box

  • 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 →

Works with any CLI agent

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 Codex OpenCode Cursor GitHub Copilot Droid Grok Amp Goose Qwen Code Kiro Auggie Devin Kimi Kilo Code MiMo Code Command Code OpenClaude 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.


Uxnan Mobile — your agents, in your pocket

Uxnan Mobile showing a live streaming conversation, the agent and model picker, and a Git diff

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.

How it connects

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 start

That 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.


Install

Uxnan Desktop

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.

Uxnan Mobile

Get it on Google Play

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.

The bridge (only if you want Mobile)

npm install -g uxnan-bridge

See bridge/README.md for the full CLI, autostart, and per-agent sign-in prerequisites.


Security

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.

Support the project

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. 🙏

Buy Me a Coffee Donate via PayPal Sponsor on GitHub

Contributing

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/.

License

Uxnan is released under the Mozilla Public License 2.0.

About

Uxnan (pronounced /uʃ.nan/) is a suite of tools I built to solve a very specific problem I face as a developer: managing AI-powered coding agents from anywhere, without my hardware becoming a bottleneck.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

30 stars

Watchers

0 watching

Forks

Releases

Sponsor this project

Packages

Contributors

Languages