GoDiao/dreamcoder
完全开源claude desktop的桌面编程工作台| https://godiao.github.io/dreamcoder/
DreamCoder – Desktop GUI for Claude Code
What it is – DreamCoder is an open‑source, native‑desktop application that wraps the Claude Code AI‑coding model (Anthropic’s code‑focused LLM) in a graphical interface. It lets you chat with the model, run code, manage sessions, and invoke tools (file system, terminal, screenshots) without leaving a desktop window.
Core capabilities (as described in the README)
| Feature | What you get |
|---|---|
| Native desktop experience | Multi‑tab conversation view, visual history, side‑panel navigation, built‑in PTY (PowerShell/Bash/Zsh) displayed via xterm.js. |
| Claude Code integration | Re‑uses Claude Code’s core logic (or a compatible runtime) and adds two Computer Use modes: a screenshot‑based UI and a cheaper UIA Tree text‑based mode. |
| Transparent tool calls | File reads/writes and terminal commands executed by the model are shown in the UI so you can audit what the AI does. |
| Model‑provider switching | One‑click selection among many LLM providers – Anthropic (Claude), OpenAI, DeepSeek, Moonshot/Kimi, MiniMax, Azure OpenAI, Google Vertex, AWS Bedrock, etc. |
| MCP (Model Context Protocol) support | Full MCP integration with a graphical configuration UI, allowing extensions of the model’s context and tool set without hand‑editing JSON. |
| Privacy‑first | API keys and conversation data are stored locally; no cloud‑hosted backend is required. |
Technical stack (from the README)
- Desktop shell – Tauri 2 (Rust) – gives a small, native binary.
- Frontend UI – React 18 + Vite + Tailwind CSS 4, state managed with Zustand.
- Backend runtime – Bun (Node‑compatible) for side‑car processes.
- Terminal –
portable-pty(Rust) +xterm.js. - Communication – WebSocket, Model Context Protocol (MCP), Language Server Protocol (LSP).
Current platform support
| OS | Status | Install package |
|---|---|---|
| Windows x64 | Actively tested by maintainers | NSIS .exe and MSI .msi provided in each release |
| macOS arm64 | Not regularly verified (scripts present) | No pre‑built package yet |
| Linux x64 | Not regularly verified | No pre‑built package yet |
The code contains conditional branches for macOS/Linux, but the maintainer focuses on Windows. Community help is invited to improve those platforms.
Getting started (quick‑start from the README)
# 1. Clone the repo
git clone https://github.com/GoDiao/dreamcoder.git && cd dreamcoder
# 2. Install root dependencies (Bun)
bun install
# 3. Install desktop‑app dependencies
cd desktop && bun install
# 4. Build side‑car binaries (Anthropic SDK, AWS SDK, etc.)
bun run build:sidecars
# 5. Run the app in development mode
bun run tauri dev
Prerequisites: Bun ≥ 1.0, Rust toolchain, Node ≥ 18. Linux users must also install WebKitGTK, libappindicator, librsvg, etc. (see Tauri docs).
Roadmap highlights
- Phase 1‑2 – Completed: GUI, multi‑model support, Computer Use, MCP, skill extensions.
- Phase 2.5 – Performance tweaks (bundle splitting, throttling, LRU terminal cache).
- Phase 3 – Remote H5 access (phone/browser client).
- Phase 4 – IM adapters (Feishu, DingTalk, Telegram, WeChat).
- Phase 5 – Automated releases & auto‑update.
Community & contribution
- Good‑first‑issue and help‑wanted labels are actively maintained; each has a mentor.
- Contribution guide:
docs/CONTRIBUTING_zh.md. - License: MIT (2024‑2026).
Bottom line – DreamCoder is a genuine, actively‑maintained open‑source project that brings Claude Code’s LLM capabilities to a user‑friendly desktop environment, with extensible model/provider support and a focus on privacy.
Related
- Project
- Project
- Project
- Project