codexia
Lightweight Agent Workstation for Codex CLI + Claude Code — with task scheduler, git worktree & remote control
Links
README
From the repo.
Lightweight Agent Workstation for Codex CLI + Claude Code + any Agent Client Protocol (ACP) agent — with task scheduler, git worktree & remote control, skills management, and a prompt notepad in one workspace
💡 Maintained by @milisp · Follow me on 𝕏 for agentic workflows, building in public, and project updates Sponsorship or custom work: milisp@proton.me
Features
- Agent Client Protocol (ACP): Connect any external ACP agent — sessions persist across restarts, tool calls render live in the thread
- Agent workflows: Task Scheduler for recurring jobs, remote control via headless web server (including iOS)
- Workspace: Git worktree management, project file tree, IDE-like editor, prompt notepad, local web preview
- Data tools: One-click PDF / XLSX / CSV preview
- Ecosystem: MCP server marketplace, agent skills marketplace
- Personalization: Theme and accent customization, usage analytics dashboard
Requirements
- Codex CLI
- Claude Code CLI
- Optional: any agent that speaks the Agent Client Protocol
Installation
Homebrew (macOS)
brew install --cask codexia
Scoop (Windows)
scoop bucket add milisp https://github.com/milisp/scoop-bucket
scoop install codexia
Prebuilt releases (macOS / Linux / Windows)
Windows also ships a portable archive (codexia_<version>_x64_portable.zip) that
runs without installing.
Quick Start
- Launch Codexia.
- Add your project directory.
- Enter a prompt and start your agent session.
- Create an Agent Task Scheduler job for recurring workflows.
Also by me
- Plux - Capture now with a shortcut. Turn it into a todo, send it to AI anytime.
Recommend tools
- keke - Local terminal coding agent with zero-vendor lock-in. Works with subscriptions, API keys, or self-hosted models; speaks ACP for editor/client integration
- oh-my-codex - Your codex is not alone. Add hooks, agent teams, HUDs, and so much more.
- rtk - CLI proxy that reduces LLM token consumption by 60-90% on common dev commands. Single Rust binary, zero dependencies
- ctx - Search the coding agent history already on your machine
Architecture at a Glance
- Codex app-server integration
- Claude agent rust sdk integration
- Agent Client Protocol (ACP) client for external agents, with persisted sessions
- Frontend: React + TypeScript + Zustand + shadcn/ui in
src/ - Desktop backend: Tauri v2 + Rust in
src-tauri/src/ - Headless backend: Axum web server for remote control in
web/ - Agent runtime: Codex
app-serverJSON-RPC integration for session/turn lifecycle - Real-time updates: WebSocket broadcast stream at
/wsfor browser clients
Core entry points:
src-tauri/src/lib.rs(desktop commands and state)web/src/server_web.rs(headless server startup)src-tauri/src/web/router.rs(HTTP API route surface)src/services/tauri/(frontend invoke layer)
API Surface
Codexia exposes a browser-accessible API when running in web/headless mode:
- Health and stream:
GET /health,GET /ws - Codex lifecycle:
/api/codex/thread/*,/api/codex/turn/*,/api/codex/model/*,/api/codex/approval/* - Automation scheduler:
/api/automation/*(create/update/list/run/pause/delete) - Files, git, and terminal:
/api/filesystem/*,/api/git/*,/api/terminal/* - Claude integration:
/api/cc/* - Notes and productivity:
/api/notes/*,/api/codex/usage/token
Contributor note:
- Add new API handlers under
./web/src/handlers/ - Register routes in
./web/src/router.rs - Add corresponding frontend client calls in
src/services/tauri/
Documentation
🔒 Security
- Process isolation: Agents run in separate processes
- Permission control: Configure file and network access per agent
- Local storage: All data stays on your machine
- Open source: Full transparency through open source code
Contributing
Contributions are welcome. Read CONTRIBUTING.md for setup and workflow.
Community forks:
- jeremiahodom/codex-ui — Node.js backend with API/SSE
- nuno5645/codexia — Reasoning and token count events
Related:
- awesome-codex-cli — curated list of Codex CLI resources
Community
License
Licensed under the MIT License.
Collected info
- ★ 918 stars
- ⎇ 102 forks
- Language: TypeScript
- Source updated: 9/21/2026
Config for your environment
Replace {MCP_ENDPOINT_URL} with this MCP’s endpoint URL (from its repo or docs above). No API key — you connect directly.
Tool
OS
Config file: ~/.cursor/mcp.json
{
"mcpServers": {
"mcp-server": {
"url": "{MCP_ENDPOINT_URL}"
}
}
}Paste into mcpServers in the config file. Restart Cursor after saving.
If this MCP is also published on mcpchannel.ai, you can subscribe from Browse and use the gateway config there instead.