Skip to content
realDuangPublic

About

The first open-source GUI for GitHub Copilot CLI — a multi-engine AI coding client with zero-config secure remote access from any device.

Resources

Contributing

Stars

33 stars

Watchers

0 watching

Forks

Latest commit

 

History

460 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CodeMux

CodeMux

One workbench for Claude Code, Copilot CLI, OpenCode and Codex — on your desktop, in any browser, or from your chat app.

Release Downloads Stars Platforms License: MIT Discussions

English | 简体中文 | 日本語 | 한국어 | Русский

Website · Download · Docs · Roadmap

CodeMux demo: an agent finds a bug, asks to run tests, and shows the diff

What is CodeMux?

CodeMux is an open-source desktop and web client for coding agents. It does not wrap a model API. It talks to each agent's own runtime at the protocol level, so Claude Code, GitHub Copilot CLI, OpenCode and Codex keep their tools, sessions and project context, and you get one interface on top of all of them.

Then it lets you leave your desk. The same sessions, with every tool call, diff and shell command rendered live, are reachable from your phone's browser or from Feishu, DingTalk, Telegram, WeCom, Teams or WeChat, with no port forwarding.

  • 🔀 Multi-engine, not multi-model: four real agent runtimes behind one UI, switchable per session.
  • 👀 See the whole chain of thought: every tool call, file diff and command is an expandable step, not a wall of text.
  • 📱 Remote by default: LAN QR code or one-click Cloudflare Tunnel, with device approval and per-device tokens.
  • 💬 Agents in your chat app: streaming, structured replies in six IM platforms.
  • 🧰 A real workbench: integrated terminal, file explorer, git worktrees, scheduled tasks, slash commands and skills.

💡 CodeMux is the first open-source GUI for GitHub Copilot CLI, connecting over JSON-RPC to deliver Copilot's full agentic experience visually.

🚀 Install

Platform Get it
macOS brew tap realDuang/codemux && brew install --cask codemux, or the .dmg from Releases (Apple Silicon: -arm64.dmg)
Windows CodeMux-Setup-<version>.exe from Releases
Linux desktop .AppImage or .deb from Releases
Linux server (headless) Run the Node host and use it from any browser; see Server runtime
From source See Development

⚠️ The macOS build is not code-signed. If macOS says "App is damaged", run xattr -cr /Applications/CodeMux.app.

Then connect an engine

CodeMux detects installed engines on startup. You need at least one:

Engine Protocol Status Setup
Claude Code Claude Agent SDK ✅ Stable Runtime is bundled. Uses your existing Claude Code login or ANTHROPIC_API_KEY.
GitHub Copilot CLI JSON-RPC / stdio ✅ Stable Install Copilot CLI and sign in.
OpenCode HTTP REST + SSE ✅ Stable curl -fsSL https://opencode.ai/install | bash (Windows: irm https://opencode.ai/install.ps1 | iex)
Codex JSON-RPC / stdio app-server ⚠️ Experimental Install the codex CLI; CodeMux reuses its login or API key.

Open it from your phone

  1. Open Remote connections in CodeMux. Under Access this computer from another device, choose Direct connection for LAN access or Cloudflare Tunnel to reach it from anywhere (quick tunnels need no account).
  2. For Direct connection, enter this computer's LAN address (for example http://192.168.1.20:8233) and select Enable direct access. For Cloudflare Tunnel, enable the tunnel. Scan the QR code shown on the page.
  3. Enter the host's 6-digit access code on your phone, then approve the new device on the host.

✨ Features

Agent chain of thought, rendered

Every agent action is an expandable step: file diffs with syntax highlighting, shell commands with live output, searches, tool calls, todo lists and permission prompts. You see what the agent is doing and why, not only the final answer, and the same rendering follows you to the browser and to IM.

CodeMux - Step-by-Step Agent Visualization

A workbench, not a chat box

Integrated terminal VS Code-style tabs with real shells (Ctrl+`), search, clickable paths, and remote use over LAN or tunnel.
File explorer & git changes Project tree, syntax-highlighted preview, live "Changes" tab with line counts and inline diffs.
Git worktree sessions Work on several branches in parallel, each with its own sessions; merge back with merge, squash or rebase.
Scheduled tasks Run agent tasks manually, every 5 min–12 h, daily or weekly, with missed-run catch-up.
Slash commands & skills Type / for engine-native commands and skills with autocomplete.
Agent modes & models Build / Plan / Autopilot modes and a separate model per engine.
Approvals & questions Approve shell or edit operations inline ("always allow" for trusted patterns); answer agent questions with choices.
Images in prompts Paste, drag or pick up to 4 images per message; all engines can read them.
Token usage Input, output and cache tokens with per-engine cost breakdown.
Integrated terminal Git changes with inline diff
Integrated terminal Git changes with inline diff
Scheduled tasks File explorer and preview
Scheduled tasks File explorer and preview

Remote access that keeps the full experience

Method Best for
LAN browser Another device on the same network: enable Direct connection with this computer's LAN IP and Web port, then scan the QR code.
Cloudflare Tunnel Anywhere, with no port forwarding or VPN. Quick tunnels need zero config; named tunnels keep your own domain.
Direct connection Your own reverse proxy or route; see Custom access.
Remote SSH Connect CodeMux Desktop through system OpenSSH to an existing CodeMux host; see Remote connections.
Installable PWA Add CodeMux to a phone's home screen over a stable HTTPS address; see Web and mobile PWA.

New devices must be approved with a 6-digit code, each device gets its own JWT, and public tunnels use HTTPS. You can rename or revoke any device from the Devices page.

Remote access Device management Same session on a phone
Remote access Device management Same session on a phone

CodeMux is designed for personal use. Revoke devices you no longer use and turn the public tunnel off when you do not need it.

Coding agents in your chat app

Talk to your agents from IM with streaming output and structured cards, not just plain text replies. Start in a private chat with the bot, pick a project and session, and use /cancel, /status, /mode, /model, /history and /help.

Platform Streaming Session model Rich content
Feishu / Lark ✅ Edit in place One group = one session Interactive cards
DingTalk ✅ AI Card One group = one session ActionCard / Markdown
Telegram ✅ Draft / edit Private chat MarkdownV2 + buttons
WeCom Batch One group = one session Markdown / template card
Microsoft Teams ✅ Edit in place Private chat Adaptive Cards
WeChat (iLink, personal account) Batch Private chat Plain text

📖 Channel setup guide

IM channel settings

How is this different?

CodeMux Text-only chat bots A single agent's own UI
Real agent runtimes (tools, sessions, project context) ✅ ⚠️ Usually a model API ✅
Several agents in one place ✅ Claude Code, Copilot, OpenCode, Codex ❌ ❌
Tool calls, diffs and shell output rendered as steps ✅ ❌ Final text ✅ Locally
Same experience from phone browser and IM ✅ ⚠️ Text only ❌
Self-hosted, your machine, your credentials ✅ Varies ✅

Architecture

flowchart TB
  subgraph Access
    A[Desktop app<br/>Electron]
    B[Browser / PWA<br/>LAN · Cloudflare Tunnel]
    C[IM bots<br/>Feishu · DingTalk · Telegram<br/>WeCom · Teams · WeChat]
  end
  A & B & C -->|WebSocket JSON-RPC| G[Gateway server<br/>engine manager]
  G --> O[OpenCode adapter<br/>HTTP + SSE]
  G --> P[Copilot adapter<br/>stdio]
  G --> Q[Claude Code adapter<br/>Agent SDK]
  G --> R[Codex adapter<br/>stdio]
Loading

All clients connect through the same gateway, and every engine is translated into one normalized type system, so tool calls, diffs and streaming messages look the same whichever engine or client you use.

📚 Documentation

Topic Doc
IM channel setup docs/channels
Custom domains and access docs/custom-access.md
Web and mobile PWA docs/web-pwa.md
Headless Linux server docs/server-runtime.md
Sharing chats with Codex Desktop docs/codex-desktop-sharing.md
Development, commands, isolated dev docs/development.md
Project structure docs/project-structure.md

🤝 Contributing

Issues, ideas and pull requests are welcome. Start with CONTRIBUTING.md, check the Roadmap, and ask anything in Discussions. Want another engine? See Adding a new engine.

If CodeMux is useful to you, a ⭐ helps other people find it.

License

MIT

Built with Electron, SolidJS, and a love for AI-assisted coding.

About

The first open-source GUI for GitHub Copilot CLI — a multi-engine AI coding client with zero-config secure remote access from any device.

Resources

Contributing

Stars

33 stars

Watchers

0 watching

Forks

Releases

Contributors

Languages