OpenCtrlC:基于 OpenCode 的开源 AI 编程智能体,新增桌面端与远程访问
ponponon/openctrlc
OpenCtrlC 是独立维护的 OpenCode 开源分支,在 OpenCode 的 AI 编程基础上补充了桌面端与远程工作流。它提供 macOS、Windows、Linux 原生桌面应用,与 CLI 共享本地项目和会话模型,支持会话搜索、token 用量与成本可视化,并可通过二维码配对从手机访问当前工作区。桌面端经中继对外连接,无需暴露本机端口,但中继流量非端到端加密。
An open-source AI coding agent built on OpenCode, with a richer desktop and remote workflow.
OpenCtrlC is an independently maintained open-source fork of OpenCode. We started this project to build on OpenCode's AI coding foundation and make it more comfortable for everyday work across a visual desktop app and remote access.
Why build OpenCtrlC
OpenCode gives us a strong foundation for AI-assisted coding. OpenCtrlC extends that foundation with a product focus on desktop usability, clear session history, and working from more than one device:
- A richer desktop workflow — use a native app on macOS, Windows, or Linux, alongside the CLI and TUI. The desktop shares the local project and session model with the CLI, with session search, turn navigation, context inspection, and visual analysis of token usage, cost, and timing.
- Phone access to your workspace — pair with a QR code, approve the browser in the desktop app, and open the current workspace from your phone. The desktop connects outbound through a relay, so you do not need to expose a port on your computer. Relay traffic is not end-to-end encrypted; the relay operator can inspect content while forwarding it.
- The coding workflow stays inspectable — review tool calls, generated changes, and command results; choose the model provider or local model that fits your work; and keep project rules and Skills close to the code.
- Bring compatible OpenCode sessions along — export readable transcripts and import compatible sessions by ID.
OpenCode is the technical foundation; OpenCtrlC adds its own desktop experience, remote workflow, product direction, and release process. OpenCtrlC is not affiliated with or endorsed by the OpenCode team.
Start here
- Website: openctrlc.pages.dev
- Documentation: openctrlc.pages.dev/docs
- Downloads: openctrlc.pages.dev/download · GitHub Releases
- Discussions: GitHub Discussions
Installation
CLI / TUI
The install script detects the current operating system and architecture:
curl -fsSL https://raw.githubusercontent.com/ponponon/openctrlc/dev/install | bashYou can also install the CLI globally with npm (Node.js and npm required):
npm install -g openctrlc
To migrate from the former npm package name, run npm uninstall -g openctrlc-ai before installing openctrlc.
On macOS and Linux, you can also install through the project Homebrew tap:
brew install ponponon/tap/openctrlc
This formula is maintained in the OpenCtrlC tap and is separate from homebrew/core.
The installer respects OPENCTRLC_INSTALL_DIR and XDG_BIN_DIR. The default fallback is $HOME/.openctrlc/bin.
Desktop
Download the latest desktop installer from the OpenCtrlC download page. Cloudflare R2 stores only the latest stable release's installer assets and serves them when available, with an automatic GitHub Release fallback. Older versions and their assets remain in GitHub Releases.
| Platform | Architectures | Formats |
|---|---|---|
| macOS | Apple Silicon | DMG, ZIP |
| Windows | x64, ARM64 | NSIS installer |
| Linux | x64, ARM64 | DEB, AppImage, RPM |
The desktop app and CLI use the same local project and session model. The desktop package includes a matching CLI binary for its target platform.
Data and provider model
OpenCtrlC is a client application, not a hosted model service. The application runs locally and sends requests through the provider configuration you choose. Your provider's terms, retention policy, and pricing apply to those requests.
The optional sharing feature is explicit: only a conversation you choose to share is sent to the configured share service. Disable it in your project configuration when sharing is not appropriate.
Development
OpenCtrlC uses Bun and a Bun workspace:
bun install bun run dev bun run dev:console bun run dev:desktop
Useful checks for changes:
bun run --cwd packages/console/app typecheck bun run --cwd packages/console/app build bun run --cwd packages/web build
Read CONTRIBUTING.md before submitting a pull request. Release maintainers should also read docs/release.md.
License
OpenCtrlC is distributed under the MIT License.
Project links: GitHub · Issues · Discussions
来源:GitHub · github.com