跳到正文
GitHub·· 9 天前AI 评分38

OpenCtrlC:基于 OpenCode 的开源 AI 编程智能体,新增桌面端与远程访问

ponponon/openctrlc

AI 导读

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.

Build status License

English | 简体中文 | 日本語 | 한국어

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

Installation

CLI / TUI

The install script detects the current operating system and architecture:

curl -fsSL https://raw.githubusercontent.com/ponponon/openctrlc/dev/install | bash

You 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