About this project
ccgui is an open-source desktop client that puts several command-line AI coding runtimes behind a single graphical interface. Rather than working in a terminal, you open the app, choose a project folder, and chat with an AI engine to write code, fix bugs and commit to Git. Streaming output, thinking traces and tool calls are shown as they happen, and token usage appears when the engine reports it.
Engines and providers
The app registers runtime adapters for Claude Code, Codex CLI, Kimi CLI, Grok CLI, Pi CLI, OMP CLI and DeepSeek Harness, and you pick the engine per session from the composer. Provider channels are written into each CLI's own native config files instead of a separate credential store, with presets for services such as GLM, Kimi, DeepSeek, MiniMax, MiMo, Bailian, LongCat, OpenCode Go and OpenRouter. Claude, Codex and Grok channels can be imported from CC Switch. Pi-family engines support API-key and OAuth sign-in from Settings. Different tabs in the same window can run different models or thinking levels, and session history survives restarts by reading each CLI's native session files.
Chat experience
Replies stream per animation frame with cached syntax highlighting so long outputs stay smooth. Thinking streams merge with reply text, auto-fold when settled and expand on demand. Tool calls appear as live rows with expandable parameters and results, including Git Diff and Bash viewers. A run status strip mirrors engine progress, and a message anchor rail lets you jump between user messages. Pasted images become attachments, file mentions use a .gitignore-aware project index, and permission denials can be resolved inline by granting extra directories.
Developer panels
Beyond chat, the app includes a virtualized file tree with Git status colors and drag-and-drop, a built-in CodeMirror editor pane with Markdown preview, a PTY-backed terminal dock using xterm and WebGL, a Git panel for staging, committing, branch search and diff/history inspection, and a keyboard-driven command palette.
Plugin system
A first-party plugin SDK (@ccgui/plugin-sdk) ships with an in-app runtime, manager UI and trust boundary. Declarative plugins can add settings sections and config-driven UI without frontend code, and builtin surfaces register through the same extension points. A plugin development guide is included in the docs folder.
Settings, network and updates
The app offers proxy settings for app and engine traffic, LAN web access that serves the UI to other devices over a token-authenticated WebSocket bridge with a QR-code entry, workspace grouping for projects, in-app auto-update against GitHub Releases, a changelog dialog and signed macOS builds. The UI is bilingual in Chinese and English.
Platform and build
Installers are published for macOS (Apple Silicon, signed), Windows (NSIS .exe) and Linux (.AppImage). The stack is Tauri 2 with a Rust backend (git2, rusqlite, portable-pty, axum) and a React 18 + TypeScript + Tailwind CSS 4 + zustand frontend built with Vite 6. Tests use Vitest on the frontend and cargo test on the Rust side. Development requires Node.js 20+, pnpm 10 and stable Rust, plus the standard Tauri prerequisites per OS. The repository is a pnpm workspace with the plugin SDK under packages/plugin-sdk. The project is MIT licensed and notes that it originally started from CodexMonitor, with the codebase rewritten from scratch since v1.0.0.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.