REAL TERMINALS
A true PTY per session behind xterm.js. Full colour, full interactivity, your keystrokes go through. It is your CLI — not a log viewer wearing its clothes.
Ziro runs Claude Code and Codex side by side — each in its own git worktree, each in a genuine terminal — and puts the diff of what they changed one keystroke from the shell that changed it.
@@ -84,10 +84,18 @@ export async function verify(token) const claims = decode(token); if (claims.exp < Date.now()) { // Issuer clock ran ahead of this host. if (claims.exp + SKEW_MS < Date.now()) { throw new TokenExpired(claims.sub); } metrics.observe("auth.verify", t0); return claims;1export async function verify(token: string) {2const claims = decode(token);3// Issuer clock ran ahead of this host.4if (claims.exp + SKEW_MS < Date.now()) {5throw new TokenExpired(claims.sub);6}7return claims;8}
Three CLIs running means three terminal tabs, no idea which one is blocked on you, and diffing by hand. Click a session — the room reacts.
No mocked terminal. No reimplemented git. No wrapper standing between you and your agent.
A true PTY per session behind xterm.js. Full colour, full interactivity, your keystrokes go through. It is your CLI — not a log viewer wearing its clothes.
Every session gets its own branch and checkout. Two agents never fight over one index, and neither of them touches the copy you are typing in.
Status, staged and unstaged diffs, history, per-commit diffs, branches, worktrees, stage and commit — straight from the git binary, with index locks respected.
Close the window and the agents keep going. The popover under the tray icon is drawn by Ziro, not by the system — same theme, same colours, real controls.
⌘K reaches every session, project and preference. The shortcut printed on a button is the shortcut that actually fires — nothing here is decoration.
Every colour is a token. Light is not an inversion — it is its own contrast-checked palette, down to the syntax colours and the diff bars. Try the switch up top.
Three moves from an empty screen to a reviewed diff. There is no fourth.
Pick a folder. Ziro reads the branch, status and history with the git binary already on your machine. Nothing is imported, copied, uploaded or indexed.
The goal you type becomes the agent's opening prompt. It is already working by the time you switch to its tab — no copy-paste, no re-explaining what you meant.
When it stops, you do not scroll back through a log. You look at what changed, stage what is good, drop what is not, and commit from the same screen.
The ones that decide whether this belongs on your machine.
No — it runs them. Ziro spawns the same binary you already have on your PATH, with your login, your config and your model settings. If you uninstall Ziro tomorrow, your CLI setup is untouched.
Not through Ziro. It has no backend, no account and no network calls of its own. Your agent CLI talks to its own provider exactly as it does in a terminal — that is the only traffic there is.
A real git worktree: a separate checkout on its own branch, sharing the same object store. Two agents can work at once without colliding on the index, and your own working copy stays exactly as you left it.
Yes — Tauri renders through WebKitGTK there instead of WKWebView. macOS is the platform it is built on day to day, so Linux reports and fixes are the most useful contributions right now.
Not yet. There is no Apple Developer certificate on it, so the first launch needs an explicit allow in System Settings. That is the honest state of it — signing is on the list.
Nothing. It is MIT licensed and free, and it does not resell anyone's tokens — you pay your agent provider directly, the same as you do today.
Yes. Agents are declared in one small table with a binary name and how to pass an opening prompt. If your tool takes a positional prompt, wiring it up is a few lines.
Bun, a Rust toolchain and the Tauri prerequisites. About a minute of build, and it is yours to change.
❯ git clone https://github.com/dhirajlochib/ziro-code ❯ cd ziro-code/apps/desktop ❯ bun install ❯ bun run tauri dev Compiling ziro-desktop v0.1.0 ✓ Ziro is running