Codex · Claude · one checkout

Desktop shell for Codex, Claude, and Gemini on your checkout

You don't have to switch apps: Codex, Claude, and Gemini conversations already run here, with Cursor and OpenCode chats planned for the same workspace. Open a folder once: threads, git, diff, and the thread terminal all read that path. Sign in with the same Codex, Claude, or Gemini setup you already use—Bird Code does not add another account.

README polish

bird-code
Sketch a short “Local dev” section I can paste into the README.

Demo animation loops in the browser—no data is sent.

Four surfaces from the shipped UI

Stay in one app for Codex, Claude, and Gemini today—Cursor and OpenCode chats are on the roadmap—then use the same four surfaces from the shipped UI: sidebar threads, work log, in-repo terminal, and local settings (not a separate marketing theme).

README polish

bird-code
Add a short “Local dev” section with install and env steps.
Here is a draft you can paste under ## Local dev—tight, copy-paste friendly, and matches your package scripts.

Organize

Pick up where you left off

Point the app at a repo once; every thread stays in that project. Switch conversations without losing your tree, git state, or history.

Transparency

See what actually happened

Tools run, files change, and each step fits the turn—skimmable in seconds. When you step away and come back, you are not decoding a wall of raw output.

Refactor API client

bird-code
Trace where we call GET /v1/session.

Work log

read_filesrc/api/client.ts

read_filesrc/auth/session.ts

Both call sites funnel through `fetchSession` in `client.ts`; cookies attach in the same helper.

Fix failing tests

bird-code

$ npm run test -- --run

Tests: 42 passed, 42 total

Done in 3.2s.

Paste stderr or ask a follow-up…

Control

Run commands without breaking context

Tests, installs, and fixes run in the project directory. Paste output back into the composer when the agent needs it—same window, tight loop.

Yours

Your machine, your defaults

Choose providers, models, and shortcuts that match how you work. Sign in with the same Codex, Claude, or Gemini setup you already use—no Bird Code account required.

Session
ProviderCodex
Skills folder~/.bird-code/skills
Mobile pairingOff

How a session usually goes

Open a project, work in threads, send from the composer, then review what changed—same rhythm every time.

  1. 01

    Open a project

    Choose a folder on disk. Threads, git, and the terminal all stay scoped to that path—your repo stays local.

  2. 02

    Start or resume a thread

    Each thread keeps its own messages, in-flight work, and anything waiting on you. Jump between threads from the sidebar without losing history.

  3. 03

    Send from the composer

    Pick provider and model, write your prompt, and attach terminal output or images if you need them. Replies stream into the same timeline.

  4. 04

    Review tools, diff, shell

    Watch the work log when tools run, open the diff panel for changes, and use the thread terminal when you need to run something or capture output.

What stays in sync

WebSocket push and provider wiring are documented in AGENTS.md—below is what you see in the window.

Live session
Updates stream in as the agent works—you are not refreshing tabs or guessing whether a turn finished.
Your providers
Codex and Claude use the authentication you already set up with their tools; Bird Code is the workspace around them.
Clear timeline
Messages, replies, and work entries show up as structured steps—not one opaque blob of text.
Project context
Threads, terminal, and diff all read the same folder you opened, so nothing drifts to the wrong tree.

Plan card, timeline, thread terminal

Three views the desktop client already shows: accept or reject a proposed plan, scroll one thread for the turn, open the shell in the folder you opened.

Dark mode rollout

bird-code
Propose steps before editing shared theme tokens.

Work log

read_filesrc/styles/tokens.css

Plan: (1) audit consumers of `--surface`, (2) add dark variants, (3) snapshot key screens.

Reply or request changes…

Plans you can act on

When the agent proposes a plan, it shows up as a card you can read, accept, or reject before the rest of the turn continues.

Design review

bird-code
Is the agent stuck on the migration?

Work log

run_terminal_cmdnpm run typecheck

Typecheck passed; it is merging duplicate CSS modules next. You should see a work-log tick when done.

One thread, one scroll

Your messages, the reply, and work entries sit together so you see how a turn starts and when it finishes.

Debug flaky test

bird-code

$ npm run test -- ws-reconnect

AssertionError: expected …

at mockClose (ws-reconnect.test.ts:112)

Paste the failing output…

Terminal in reach

Open it from the header when you need it; it runs in the project folder for installs, tests, or pasting errors back into the composer.

How Bird Code fits next to other tools

Bird Code wraps Codex, Claude, and Gemini in one desktop window—Cursor and OpenCode chats are on the roadmap—so threads stay tied to your repo without switching apps. Add the iPhone companion when you want to follow along away from your desk.

Bird Code

One window for Codex, Claude, and Gemini today—threads, a readable work log, diff, and terminal—with Cursor and OpenCode chats planned for the same workspace.

Best when you want several agents in one place instead of a different app for every conversation.

Codex (CLI)

The official terminal-first Codex—the same capabilities Bird Code drives from the desktop.

Stay on the CLI if you only need Codex and rarely leave the shell.

Cursor

AI built into the editor—inline edits and multi-file refactors inside VS Code.

Choose Cursor when the editor is your main surface all day.

Claude Code

Anthropic's agent CLI for Claude subscribers—terminal-first workflows.

Use it when you want Claude without a separate desktop shell.

Get the desktop app

macOS, Windows, and Linux builds live on GitHub Releases—grab the installer for your platform and check the notes for checksums.

/download

iOS

TestFlight waitlist

Pair the iPhone app to your desktop with a QR code from settings. Read and send on the same session your Mac or PC is running—no second agent on the phone. Invites go out in batches; we only use your email for the list.

Full details

Ship dark mode

bird-code
Status on the theme toggle PR?
Almost merged—one snapshot test to update. I can push the fix after lunch.

FAQ

Still stuck? Open an issue on GitHub.

Desktop

Mobile

Ready to try

Choose your platform, install, then sign in with Codex or Claude in settings and open a project folder to start a thread.

View downloads