Caution
安全更新通知:v1.1.248 及以下版本存在严重的管理员认证绕过漏洞,攻击者可未授权访问管理面板。
请立即更新到 v1.1.249+ 版本,或迁移到新一代项目 CRS 2.0 (sub2api)
使用本项目前请仔细阅读:
🚨 服务条款风险: 使用本项目可能违反Anthropic的服务条款。请在使用前仔细阅读Anthropic的用户协议,使用本项目的一切风险由用户自行承担。
📖 免责声明: 本项目仅供技术学习和研究使用,作者不对因使用本项目导致的账户封禁、服务中断或其他损失承担任何责任。
- 🌍 地区限制: 所在地区无法直接访问Claude Code服务?
- 🔒 隐私担忧: 担心第三方镜像服务会记录或泄露你的对话内容?
- 👥 成本分摊: 想和朋友一起分摊Claude Code Max订阅费用?
- ⚡ 稳定性: 第三方镜像站经常故障不稳定,影响效率 ?
如果有以上困惑,那这个项目可能适合你。
✅ 找朋友拼车: 三五好友一起分摊Claude Code Max订阅
✅ 隐私敏感: 不想让第三方镜像看到你的对话内容
✅ 技术折腾: 有基本的技术基础,愿意自己搭建和维护
✅ 稳定需求: 需要长期稳定的Claude访问,不想受制于镜像站
✅ 地区受限: 无法直接访问Claude官方服务
- 🕵️ 隐私风险: 你的对话内容都被人家看得一清二楚,商业机密什么的就别想了
- 🐌 性能不稳: 用的人多了就慢,高峰期经常卡死
- 💰 价格不透明: 不知道实际成本
- 🔐 数据安全: 所有接口请求都只经过你自己的服务器,直连Anthropic API
- ⚡ 性能可控: 就你们几个人用,Max 200刀套餐基本上可以爽用Opus
- 💰 成本透明: 用了多少token一目了然,按官方价格换算了具体费用
- 📊 监控完整: 使用情况、成本分析、性能监控全都有
- ✅ 多账户管理: 可以添加多个Claude账户自动轮换
- ✅ 自定义API Key: 给每个人分配独立的Key
- ✅ 使用统计: 详细记录每个人用了多少token
- 🔄 智能切换: 账户出问题自动换下一个
- 🚀 性能优化: 连接池、缓存,减少延迟
- 📊 监控面板: Web界面查看所有数据
- 🛡️ 安全控制: 访问限制、速率控制、客户端限制
- 🌐 代理支持: 支持HTTP/SOCKS5代理
- CPU: 1核心就够了
- 内存: 512MB(建议1GB)
- 硬盘: 30GB可用空间
- 网络: 能访问到Anthropic API(建议使用US地区的机器)
- 建议: 2核4G的基本够了,网络尽量选回国线路快一点的(为了提高速度,建议不要开代理或者设置服务器的IP直连)
- 经验: 阿里云、腾讯云的海外主机经测试会被Cloudflare拦截,无法直接访问claude api
- Node.js 18或更高版本
- Redis 6或更高版本
- 操作系统: 建议Linux
- 服务器: 轻量云服务器,一个月30-60块
- Claude订阅: 看你怎么分摊了
- 其他: 域名(可选)
推荐使用管理脚本进行一键部署,简单快捷,自动处理所有依赖和配置。
curl -fsSL https://pincc.ai/manage.sh -o manage.sh && chmod +x manage.sh && ./manage.sh install- ✅ 一键安装: 自动检测系统环境,安装 Node.js 18+、Redis 等依赖
- ✅ 交互式配置: 友好的配置向导,设置端口、Redis 连接等
- ✅ 自动启动: 安装完成后自动启动服务并显示访问地址
- ✅ 便捷管理: 通过
crs命令随时管理服务状态
crs install # 安装服务
crs start # 启动服务
crs stop # 停止服务
crs restart # 重启服务
crs status # 查看状态
crs update # 更新服务
crs uninstall # 卸载服务$ crs install
# 会依次询问:
安装目录 (默认: ~/claude-relay-service):
服务端口 (默认: 3000): 8080
Redis 地址 (默认: localhost):
Redis 端口 (默认: 6379):
Redis 密码 (默认: 无密码):
# 安装完成后自动启动并显示:
服务已成功安装并启动!
访问地址:
本地 Web: http://localhost:8080/web
公网 Web: http://YOUR_IP:8080/web
管理员账号信息已保存到: data/init.json- 支持系统: Ubuntu/Debian、CentOS/RedHat、Arch Linux、macOS
- 自动安装 Node.js 18+ 和 Redis
- Redis 使用系统默认位置,数据独立于应用
Ubuntu/Debian用户:
# 安装Node.js
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
sudo apt-get install -y nodejs
# 安装Redis
sudo apt update
sudo apt install redis-server
sudo systemctl start redis-serverCentOS/RHEL用户:
# 安装Node.js
curl -fsSL https://rpm.nodesource.com/setup_18.x | sudo bash -
sudo yum install -y nodejs
# 安装Redis
sudo yum install redis
sudo systemctl start redis# 下载项目
git clone https://github.com/Wei-Shaw//claude-relay-service.git
cd claude-relay-service
# 安装依赖
npm install
# 复制配置文件(重要!)
cp config/config.example.js config/config.js
cp .env.example .env编辑 .env 文件:
# 这两个密钥随便生成,但要记住
JWT_SECRET=你的超级秘密密钥
ENCRYPTION_KEY=32位的加密密钥随便写
# Redis配置
REDIS_HOST=localhost
REDIS_PORT=6379
REDIS_PASSWORD=
编辑 config/config.js 文件:
module.exports = {
server: {
port: 3000, // 服务端口,可以改
host: '0.0.0.0' // 不用改
},
redis: {
host: '127.0.0.1', // Redis地址
port: 6379 // Redis端口
}
// 其他配置保持默认就行
}# 安装前端依赖
npm run install:web
# 构建前端(生成 dist 目录)
npm run build:web# 初始化
npm run setup # 会随机生成后台账号密码信息,存储在 data/init.json
# 或者通过环境变量预设管理员凭据:
# export ADMIN_USERNAME=cr_admin_custom
# export ADMIN_PASSWORD=your-secure-password
# 启动服务
npm run service:start:daemon # 后台运行
# 查看状态
npm run service:statuscurl -fsSL https://pincc.ai/crs-compose.sh -o crs-compose.sh && chmod +x crs-compose.sh && ./crs-compose.shdocker-compose up -ddocker-compose.yml 已包含:
- ✅ 自动初始化管理员账号
- ✅ 数据持久化(logs和data目录自动挂载)
- ✅ Redis数据库
- ✅ 健康检查
- ✅ 自动重启
JWT_SECRET: JWT密钥,至少32个字符ENCRYPTION_KEY: 加密密钥,必须是32个字符
ADMIN_USERNAME: 管理员用户名(不设置则自动生成)ADMIN_PASSWORD: 管理员密码(不设置则自动生成)LOG_LEVEL: 日志级别(默认:info)- 更多配置项请参考
.env.example文件
-
查看容器日志
docker logs claude-relay-service
-
查看挂载的文件
cat ./data/init.json
-
使用环境变量预设
# 在 .env 文件中设置 ADMIN_USERNAME=cr_admin_custom ADMIN_PASSWORD=your-secure-password
浏览器访问:http://你的服务器IP:3000/web
管理员账号:
- 自动生成:查看 data/init.json
- 环境变量预设:通过 ADMIN_USERNAME 和 ADMIN_PASSWORD 设置
- Docker 部署:查看容器日志
docker logs claude-relay-service
这一步比较关键,需要OAuth授权:
- 点击「Claude账户」标签
- 如果你担心多个账号共用1个IP怕被封禁,可以选择设置静态代理IP(可选)
- 点击「添加账户」
- 点击「生成授权链接」,会打开一个新页面
- 在新页面完成Claude登录和授权
- 复制返回的Authorization Code
- 粘贴到页面完成添加
注意: 如果你在国内,这一步可能需要科学上网。
系统会在上游异常时临时暂停账号路由,默认由全局配置控制(见 .env.example):
UPSTREAM_ERROR_503_TTL_SECONDSUPSTREAM_ERROR_5XX_TTL_SECONDSUPSTREAM_ERROR_OVERLOAD_TTL_SECONDSUPSTREAM_ERROR_AUTH_TTL_SECONDSUPSTREAM_ERROR_TIMEOUT_TTL_SECONDS
在管理后台编辑 Claude 官方 OAuth 账号 时,可做账号级覆盖:
禁用该账号临时冷却:该账号不再因 503/5xx 进入临时暂停503 冷却秒数:留空=跟随全局,0=关闭该账号 503 冷却5xx 冷却秒数:留空=跟随全局,0=关闭该账号 5xx 冷却
优先级从高到低:
- 账号级“禁用临时冷却”
- 账号级 503/5xx 冷却秒数
- 代码调用时传入的自定义 TTL(若有)
- 全局环境变量默认值
账户列表会显示“不可路由原因”,包含错误类型、HTTP 状态码、内部冷却总时长、剩余时间和预计恢复时间;点击 重置状态 可清除异常状态并恢复参与路由。
给每个使用者分配一个Key:
- 点击「API Keys」标签
- 点击「创建新Key」
- 给Key起个名字,比如「张三的Key」
- 设置使用限制(可选):
- 速率限制: 限制每个时间窗口的请求次数和Token使用量
- 并发限制: 限制同时处理的请求数
- 模型限制: 限制可访问的模型列表
- 客户端限制: 限制只允许特定客户端使用(如ClaudeCode、Gemini-CLI等)
- 保存,记下生成的Key
现在你可以用自己的服务替换官方API了:
Claude Code 设置环境变量:
使用标准 Claude 账号池
默认使用标准 Claude 账号池:
export ANTHROPIC_BASE_URL="http://127.0.0.1:3000/api/" # 根据实际填写你服务器的ip地址或者域名
export ANTHROPIC_AUTH_TOKEN="后台创建的API密钥"使用 Antigravity 账户池
适用于通过 Antigravity 渠道使用 Claude 模型(如 claude-opus-4-5 等)。
# 1. 设置 Base URL 为 Antigravity 专用路径
export ANTHROPIC_BASE_URL="http://127.0.0.1:3000/antigravity/api/"
# 2. 设置 API Key(在后台创建,权限需包含 'all' 或 'gemini')
export ANTHROPIC_AUTH_TOKEN="后台创建的API密钥"
# 3. 指定模型名称(直接使用短名,无需前缀!)
export ANTHROPIC_MODEL="claude-opus-4-5"
# 4. 启动
claudeVSCode Claude 插件配置:
如果使用 VSCode 的 Claude 插件,需要在 ~/.claude/config.json 文件中配置:
{
"primaryApiKey": "crs"
}如果该文件不存在,请手动创建。Windows 用户路径为 C:\Users\你的用户名\.claude\config.json。
💡 IntelliJ IDEA 用户推荐:Claude Code Plus - 将 Claude Code 直接集成到 IDE,支持代码理解、文件读写、命令执行。插件市场搜索
Claude Code Plus即可安装。
Gemini CLI 设置环境变量:
方式一(推荐):通过 Gemini Assist API 方式访问
CODE_ASSIST_ENDPOINT="http://127.0.0.1:3000/gemini" # 根据实际填写你服务器的ip地址或者域名
GOOGLE_CLOUD_ACCESS_TOKEN="后台创建的API密钥"
GOOGLE_GENAI_USE_GCA="true"
GEMINI_MODEL="gemini-2.5-pro" # 如果你有gemini3权限可以填: gemini-3-pro-preview认证:只能选
Login with Google进行认证,如果跳 Google请删除~/.gemini/settings.json后再尝试启动gemini。
注意:gemini-cli 控制台会提示Failed to fetch user info: 401 Unauthorized,但使用不受任何影响。
方式二:通过 Gemini API 方式访问
GOOGLE_GEMINI_BASE_URL="http://127.0.0.1:3000/gemini" # 根据实际填写你服务器的ip地址或者域名
GEMINI_API_KEY="后台创建的API密钥"
GEMINI_MODEL="gemini-2.5-pro" # 如果你有gemini3权限可以填: gemini-3-pro-preview认



