The Problem
Developers using the Codex CLI and Claude Code need a single desktop environment that can coordinate long‑running agent tasks, manage project files (including Git worktrees), and expose a controllable headless API. Without such a workspace they must juggle separate terminals, editors, and ad‑hoc scripts, which leads to fragmented state and manual orchestration.
What This Does
Codexia is a Tauri‑v2 desktop application that bundles the Codex CLI, Claude Code SDK, and a set of productivity services:
The desktop UI lives in src/ (React + TypeScript, Zustand, shadcn/ui) and talks to the Rust backend via Tauri commands defined in src-tauri/src/lib.rs. Core backend logic resides under src-tauri/src/, e.g. commands/git.rs for Git worktree operations, features/automation/ for the task scheduler, and features/skills/ for skill‑marketplace handling. When launched in “headless” mode the app starts an Axum web server (src-tauri/src/webserver/server.rs) exposing a REST/WS API (/api/) that remote clients can call.
Key functional areas are isolated into modules: features/git/, features/automation/, features/skills/, and features/p2p/ for peer‑to‑peer bridging. The UI invokes these modules through the generated Tauri bridge (src/services/tauri/).
How To Use It
Setup
Install the Codex and Claude CLIs (required runtime). Install the desktop binary: # macOS – Homebrew brew tap milisp/codexia brew install --cask codexia # or download a pre‑built release from the GitHub releases page
The repository also supports building from source (Rust + Cargo + Tauri): cargo install tauri-cli # if not already installed cargo build --release # builds the Rust backend npm install && npm run dev # starts the React dev server (for contributors)
Configuration
Copy the example env file and fill in the required keys: cp .env.example .env # set CODexAPIKEY, CLAUDEAPITOKEN, etc. as documented in the file
Optional per‑bot env files exist for Discord and Telegram integrations (bots/discord/.env.example, bots/telegram/.env.example).
Running
Desktop mode (default): launch the installed app or run from source: cargo tauri dev
Headless mode (remote control): start the embedded server: cargo run --release --bin codexia-web # entry point is src-tauri/src/webserver/server.rs
The server listens on http://127.0.0.1:PORT and exposes the API documented in docs/WEBSERVER.md.
API Interaction
Add new handlers under src-tauri/src/webserver/handlers/ and register them in src-tauri/src/webserver/router.rs. Front‑end calls are wrapped in src/services/tauri/.
Real‑World Use
A data‑science team can install Codexia on each analyst’s workstation, configure a shared Git worktree, and schedule a nightly “report generation” job:
// schedule a job via the API (client side) await tauri.invoke('automation.create', { name: 'daily-report', cron: '0 2 ', command: 'codex run generatereport.ts', });
The job runs in a sandboxed process, writes results to the project directory, and streams log output back to any connected web client via /ws.
Code Health & Issues
Bugs / Risks Med – src-tauri/src/features/git/tests.rs is the only test file; most backend modules lack unit or integration tests, increasing regression risk. Low – src-tauri/src/p2p/ uses raw UDP/TCP sockets; no explicit timeout handling, which could stall the server under poor network conditions. SDLC & Code Violations Low – CI pipelines exist (.github/workflows/.yml) but no code‑coverage reporting; test coverage is unclear. Low – All secrets are kept out of the repo (example env files present), which is good practice. Low* – License file is provided (LICENSE), and dependency lockfiles (Cargo.lock, bun.lock) are present.
Overall the repository follows a clear modular layout, includes CI for all major platforms, and ships with pre‑built binaries. The primary weakness is limited automated testing of the Rust services.
The Bottom Line
Codexia delivers a tightly integrated desktop + headless solution for Codex/Claude workflows, with solid Rust/React architecture and ready‑to‑install binaries. It is suitable for teams that need a unified agent workspace and API‑driven automation, but prospective adopters should budget time for additional testing and validation of the backend services before production use.