基于Go + Gin的Claude Code 镜像中转服务,采用分层架构设计。支持多账号池管理、智能负载均衡、API Key分发、使用统计和成本计算。包含完整的Vue 3管理界面,基于TDesign组件库。
如果此项目对您有所帮助, 请帮我点个 ⭐️ 吧~

使用本项目前请仔细阅读:
🚨 服务条款风险: 使用本项目可能违反Anthropic的服务条款。请在使用前仔细阅读Anthropic的用户协议,使用本项目的一切风险由用户自行承担。
📖 免责声明: 本项目仅供技术学习和研究使用,作者不对因使用本项目导致的账户封禁、服务中断或其他损失承担任何责任。
与三五个好友一起拼车使用 Claude Code 账号, 同时也可以作为多个 "车主" 为不同的用户提供服务.
支持任意符合 Claude Code API规范的账号池, 如: GLM4.5 Qwen3-Code等, 甚至一些国内的中转镜像站的 Claude Code 专属分组均可, 这样就能实现在账号限流的时候智能切换.
同时提供了完整的使用统计和成本计算 (与实际会有略微差异), 让你清楚了解每个账号的使用情况和费用支出, 以及为每个Api Key设置每日限额.
后端服务
前端界面
/stats/api-key?api_key=sk-xxx)后端分层结构
├── controller/ # HTTP请求处理、参数验证、响应格式化 ├── service/ # 核心业务逻辑、账号调度、使用统计 ├── model/ # 数据模型定义、GORM操作 ├── middleware/ # 认证、限流、日志、CORS ├── relay/ # Claude API中转层 ├── common/ # 工具函数、成本计算、JWT处理 └── router/ # 路由配置
前端项目结构
web/ ├── src/ │ ├── pages/ # 业务页面组件 │ ├── components/ # 公共组件 │ ├── api/ # API请求封装 │ ├── store/ # Pinia状态管理 │ ├── router/ # Vue Router路由 │ └── utils/ # 工具函数 ├── package.json # 依赖配置 └── vite.config.ts # Vite配置
common.SysLog() 和 common.SysError()user := c.MustGet("user").(*model.User)go mod tidy<style scoped>@/utils/request 封装的axios核心数据表
users - 用户账户和角色权限accounts - Claude账号池和使用统计api_keys - API密钥管理和使用监控groups - 分组管理和权限控制logs - 模型请求日志记录数据api_logs - API请求日志和统计数据一键部署全套服务
# 启动MySQL + Redis + 应用
docker-compose -f docker-compose-all.yml up -d
# 查看服务状态
docker-compose -f docker-compose-all.yml ps
# 访问地址
echo "应用地址: http://localhost:10081"
echo "默认管理员: admin / admin123"
使用现有数据库
# 复制并编辑环境变量
cp .env.example .env
# 启动应用
docker-compose up -d
可以在 Releases 页面直接下载最新的二进制文件, 或者按照下面方式自行编译构建。
构建多平台版本
# 使用Makefile构建
make build
# 查看构建产物
ls out/
生产环境启动
将 .env.example 文件复制为 .env 文件,并根据实际情况修改配置。
然后放置在与 claude-code-relay 二进制文件同一目录下。
# 设置必需环境变量
export SESSION_SECRET=$(openssl rand -base64 32)
export JWT_SECRET=$(openssl rand -base64 32)
export SALT=$(openssl rand -base64 16)
...
# 配置数据库
export MYSQL_HOST=your-host
export MYSQL_USER=your-user
export MYSQL_PASSWORD=your-password
...
# 启动服务 (v0.1.10及以上版本前端文件已打包进二进制, 直接打开服务域名即可访问首页)
./-relay
在ClaudeCode中使用此服务非常简单,只需将 Claude Code 的请求地址换成此服务地址和秘钥即可。以下是具体步骤:
# 在ClaudeCode中配置API请求地址 (建议开启https)
export ANTHROPIC_BASE_URL=https://your-server-domain/
# 在ClaudeCode中配置API密钥
export ANTHROPIC_AUTH_TOKEN="你的API密钥"
另一种方法, 创建并配置 Settings 文件: 在 ~/.claude/settings.json 文件并配置您的 API 密钥:
{
"env": {
"ANTHROPIC_AUTH_TOKEN": "your-api-key-here",
"ANTHROPIC_BASE_URL": "https://your-server-domain/",
"CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC":1
},
"permissions": {
"allow": [],
"deny": []
},
"apiKeyHelper": "echo 'your-api-key-here'"
}
更加详细的方法, 进入到后台页面, 点击右上角 帮助文档 或者直接访问页面 /help/index 地址, 有更加详细的使用教程.

Q: 如何重置管理员密码?
A: 删除数据库中的admin用户记录,重启服务会自动重新创建默认管理员。
Q: 支持哪些Claude模型?
A: 支持所有Claude模型,包括Claude-3.5系列,成本计算会自动适配不同模型。
Q: 如何查看账号使用统计?
A: 通过前端管理界面或API接口查看详细的使用统计和成本分析。
Q: 无法正常访问Claude官方服务?
A: Claude等国外模型服务商禁用国内IP访问, 自行使用代理解决 (建议使用高质量的代理IP)。
MIT License - 欢迎贡献代码和提交Issue!