Skip to content
baocode-devPublic

About

Awesome UI for Claude Code ✨ https://baocode.dev

Resources

Stars

140 stars

Watchers

1 watching

Forks

Repository files navigation

BaoCode

baocode-dev%2Fbaocode | Trendshift

English · 简体中文 · 日本語 · Français · Español

An awesome, easy-to-use desktop UI for Claude Code, with a millisecond-fast IDE built in.

Website · Download · Changelog

BaoCode's main window: agents grouped by project, two conversations side by side, and the model picker

Why

We use Claude Code every day. The terminal is a fine place to run it, but a poor place to read it: long diffs scroll out of view, earlier steps are hard to find again, and reviewing what changed means switching to another app. BaoCode is the window we wanted around it.

BaoCode has no agent of its own, by design. Claude Code is the agent, and its ecosystem is unmatched: its tools, skills, plugins, MCP servers, subagents and hooks. BaoCode gives it the interface it deserves and makes everything around it work out of the box. It runs the Claude Code you already have, with your settings and your CLAUDE.md.

Features

  • An interface made for reading. Reads, searches and commands fold into single lines. Keep or Undo each change Claude made, file by file; checkpoints live in BaoCode's own data folder, never in your repository's .git.
  • Goals. Type /goal and what you want done, and Claude keeps working until it is met, with the goal and its progress above the input.
  • A rich-text input. Code copied from the editor arrives as a reference to its file and lines; pasted images and dropped files sit where you put them in the sentence.
  • Fast IDE. An editor, a terminal and Source Control with a commit graph, built in. Claude Code drafts your commit messages. VS Code, IntelliJ, Sublime and Atom keymaps, and language servers.
  • Your VS Code themes. The editor, the conversation and the sidebar all follow them.
  • Skills, MCP servers and more. Plugins, MCP servers, skills, subagents, rules, commands and hooks in one place, for you or for a single project.
  • Any model. Add an upstream that speaks Anthropic's API, OpenAI's Chat Completions or OpenAI's Responses; a local proxy translates between it and Claude Code. Keys stay in the system keychain.
  • Remote projects over SSH. The window stays on your machine; files, Git, search, terminals, language servers and Claude Code run on the remote host (Linux, x64 or arm64).
  • Notifications. A system notification, a sound and a badge when an agent needs you or finishes. Close the window and the agents keep running in the menu bar or tray.
  • Updates itself in the background, or manually, or not at all.

Speed

VS Code and Cursor are built on Electron: each window is a web page, and every copy carries its own Chromium and Node.js. BaoCode is a native app that draws its own interface straight to the GPU.

BaoCode VS Code Cursor
Launch ≈ 0.18 s ≈ 2–3 s ≈ 2–3 s
Memory, one window idle ≈ 120 MB ≈ 970 MB ≈ 1.9 GB
Processes, one window 2 8 13
Download size, Windows ≈ 16 MB ≈ 244 MB ≈ 214 MB

Requirements

  • macOS 12 or later (Apple silicon or Intel, one download each), or Windows 10 or later (x64).
  • Claude Code, installed.

Building from source

BaoCode is a Flutter app (Dart SDK ^3.13.4).

flutter pub get
flutter run -d macos        # or: flutter run -d windows

To build what is released, into build/installers/:

dart run tool/build_macos.dart            # BaoCode-<version>-{arm64,x64}.dmg and BaoCode-<version>-mac-{arm64,x64}.zip
dart run tool/build_windows.dart          # BaoCode-<version>-setup.exe (needs Inno Setup)
dart run tool/build_remote_server.dart    # the SSH remote server, for Linux x64 and arm64

The full test suite is slow; run the tests for what you changed, for example flutter test test/update.

Releases are built and published by CI when a v* tag is pushed; versions, signing and where releases go are in docs/release.md. More in docs/: auto-update, SSH remote, Windows (some are in Chinese).

Repository

Path What it is
lib/ The app
packages/bao_editor Monaco, ported to Flutter: the editor, its highlighting, VS Code's themes and keybindings
packages/bao_xterm A Dart port of xterm.js
packages/bao_pty Pseudo terminals for Dart: forkpty on macOS and Linux, ConPTY on Windows
packages/bao_remote The remote host served over SSH
macos/, windows/ The native runners
tool/ Build, packaging and release scripts
site/ The website, baocode.dev
docs/ Design notes

Feedback

Issues are welcome. Pull requests are not accepted.

License

BaoCode is licensed under the GNU General Public License v3.0 (GPL-3.0-only). The editor and terminal packages in packages/ (bao_editor, bao_xterm, bao_pty) are MIT. Third-party components keep their own licenses, found next to them in the source tree.

BaoCode is an independent project, not affiliated with or endorsed by Anthropic.

About

Awesome UI for Claude Code ✨ https://baocode.dev

Resources

Stars

140 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages