Skip to content

Repository files navigation

cc-go

通过微信机器人接管 Claude Code,实现随时随地编码

GitHub Release Go Version Platform Made with React WeChat Powered by Claude License: MIT

cc-go 是一款基于 Claude Code 的远程编码工具。通过微信机器人接管 Claude Code 会话,你可以在手机上批准权限请求、查看 AI 回复、启动/切换会话,真正做到随时随地编码。内置 Skills 自动注入和微信通知通道,Claude 可以主动向你的微信推送消息。

本项目基于 linfree/cc-go 二次开发分发,并非上游官方原版。

目录

快速开始

前往 Releases 下载对应平台的文件:

平台 文件
Windows cc-go-windows-amd64.exe
macOS (Intel) cc-go-darwin-amd64
macOS (Apple Silicon) cc-go-darwin-arm64
Linux cc-go-linux-amd64

下载后直接运行即可,首次启动会自动创建默认配置。

Docker 部署

源码仓库:QEDQCD/cc-go

当前采用 单容器 方式运行(Web 面板、API、WebSocket、微信 Bot 均在同一容器内)。

前置条件

启动

git clone https://github.com/QEDQCD/cc-go.git
cd cc-go

# 复制环境变量示例(可选)
cp .env.example .env

# 构建并启动
docker compose up -d --build

# 查看日志(首次启动会输出 auth.json 自动生成的登录密码)
docker compose logs -f

浏览器访问 http://localhost:18080(端口可通过 .envCC_GO_PORT 调整)。

数据持久化

容器路径 说明
/root/.cc-go/config.json 运行时配置
/root/.cc-go/auth.json Web 登录凭据
/root/.cc-go/cc-go.db 会话数据库
/root/.cc-go/skills/ Skills 目录

数据保存在 Docker 命名卷 cc-go-data 中。查看凭据:

docker compose exec cc-go cat /root/.cc-go/auth.json

Claude Code 挂载

编辑 docker-compose.yml,按需取消注释以下挂载:

volumes:
  - cc-go-data:/root/.cc-go
  - ${HOME}/.claude:/root/.claude          # Claude 登录状态
  - /usr/local/bin/claude:/usr/local/bin/claude:ro  # Claude CLI
  - ./workspace:/workspace                  # 会话工作目录

挂载后可在 Web 设置页将 claude_cli_path 设为 /usr/local/bin/claude,并将 auto_open_browser 设为 false

常用命令

make docker-build   # 仅构建镜像
make docker-up      # 后台启动
make docker-down    # 停止并移除容器
make docker-logs    # 跟踪日志

功能特点

  • 微信远程控制 — 通过微信消息启动/停止/切换 Claude Code 会话
  • 权限审批 — 实时处理 Claude Code 的工具使用权限请求(批准/拒绝/回答提问)
  • Web 管理面板 — 仪表盘、会话列表、实时聊天、日志查看、系统设置
  • 会话管理 — 新建/恢复/删除会话,查看对话历史和消息数量
  • Claude 输出推送 — 将 AI 回答、工具调用实时推送到微信
  • WebSocket 实时推送 — 浏览器实时接收会话状态和权限事件
  • Skills 系统 — 管理和注入 Skills 到项目会话,支持从 Claude Code 导入
  • Bot API — 本地 HTTP API,供外部应用通过 cc-go 发送微信消息
  • 权限模式 — 支持 5 种权限模式:逐一询问、接受编辑、自动批准、跳过权限检查、只读模式

界面截图

微信界面对话

仪表盘

微信连接

系统设置 - 通用

系统设置 - 微信

系统设置 - 导入 Skills

本地开发

环境要求

  • Go 1.22+
  • Node.js 20+
  • 已安装并登录 Claude Code
  • 拥有 iLink Bot API 访问权限的微信账号

构建

# 安装前端依赖
cd web && npm install

# 构建前端
npm run build

# 构建 Go 二进制文件
cd .. && go build -o cc-go.exe ./cmd/cc-go/

运行

# 首次运行(会自动在 ~/.cc-go/config.json 创建默认配置)
./cc-go.exe start

# 服务将在 http://localhost:18080 启动
# 打开浏览器扫描微信二维码并配置 Claude CLI 路径

配置说明

配置文件路径:~/.cc-go/config.json

字段 类型 说明
web_port int Web 服务端口(默认:18080)
permission_mode string Claude Code 权限模式(default/acceptEdits/auto/bypassPermissions/plan)
claude_cli_path string Claude CLI 可执行文件路径
auto_find_claude bool 启动时自动检测 Claude CLI
claude_env_vars string Claude 的额外环境变量(dotenv 格式)
push_types string[] 推送通知类型:permission, claude_response, tool_use, session_status

微信机器人指令

指令 说明
/help 查看可用指令
/sessions 列出最近会话
/switch <id> 切换会话
/status 查看当前会话状态
/stop 停止当前会话
/y [数量/all] 批准权限请求
/n [数量/all] 拒绝权限请求
/r <回答> 回答 AskUserQuestion 提问

Skills 管理

cc-go 支持在会话启动时自动注入 Skills 到项目的 .claude/skills/ 目录。内置 wechat-notify Skill,可通过 Web 设置页面启用/禁用 Skills,或从 Claude Code 的 ~/.claude/skills/ 导入。

Skills 注入时机在 Claude Code 启动之前,确保会话能正确识别项目级 Skills。

Bot API

cc-go 提供本地 HTTP API,供外部应用通过 cc-go 发送微信消息:

端点 说明
POST /api/v1/wechat-bot/send/text 发送文本消息
POST /api/v1/wechat-bot/send/image 发送图片
POST /api/v1/wechat-bot/send/file 发送文件
POST /api/v1/wechat-bot/send/video 发送视频

端口号从 ~/.cc-go/config.jsonweb_port 字段读取。

系统架构

┌─────────────┐     HTTP/WS      ┌──────────────┐    stdin/stdout    ┌────────────┐
│  微信客户端   │ ◄──────────────► │   cc-go      │ ◄────────────────► │ Claude Code │
│  (手机)      │                  │  (Web + Bot)  │   stream-json     │ (CLI进程)   │
└─────────────┘                  └──────┬───────┘                    └────────────┘
                                        │
                                        ▼
                                 ┌──────────────┐
                                 │  Web 管理界面   │
                                 │  (React + SPA) │
                                 └──────────────┘

技术栈

  • 后端: Go, Gin, WebSocket
  • 前端: React 19, TypeScript, Vite, Tailwind CSS 4
  • 协议: Claude Code stream-json(标准输入/输出)
  • 微信接入: iLink Bot API(ilinkai.weixin.qq.com
  • 数据存储: BoltDB(嵌入式键值数据库)

上游项目

本仓库在 linfree/cc-go 基础上进行修改与维护。

主要改动

  • Web 登录鉴权 — 为 Web 管理面板与 API 增加基于 Session 的登录保护
  • auth.json 本地凭据 — 登录账号密码存储于本地 auth.json,不写入源码
  • Docker Compose 部署 — 支持单容器方式部署(Dockerfiledocker-compose.yml

许可证

本项目采用 MIT License 开源协议。基于 linfree/cc-go 二次开发。源码托管于 GitHub

About

No description, website, or topics provided.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages