Open Claude Proxy

项目 GitHub 地址

OCP (Open Claude Proxy) 的开源项目,核心功能是: 将你的 Claude Pro/Max 订阅转换为一个标准的 OpenAI 兼容 API,从而让你在不需要支付额外 API 费用的情况下,在各种 IDE 和 AI 工具中使用 Claude 模型

它利用 已有的 Claude 订阅(Pro 或 Max),通过代理转换为 OpenAI 格式的接口,实现 0 额外 API 成本

多端共享 :支持 LAN(局域网)共享,一个订阅可以供全家人、多台设备或多个 IDE 同时使用。

广泛兼容性 :支持任何可以配置 OPENAI_BASE_URL 的工具,如 Cline、Cursor、Aider、Continue.dev 等。

局域网多用户管理 (v3.7.0+) : 支持创建多个 API Key,每个用户拥有独立的令牌和使用量统计,支持一键撤销。

一键配置工具 (ocp-connect) :客户端只需一条命令即可自动检测并配置所有主流 IDE。

请求配额控制 (v3.8.0+) :支持按 Key 设置日/周/月请求限制(例如限制小孩每天 20 次)。

SSE 心跳检测 (v3.12.0+) :针对长时间推理任务发送心跳包,防止 IDE 因超时而断开连接。

高度对齐 (Alignment) :项目严格遵循 cli.js (Claude Code 的核心)的行为,确保稳定性并防止接口漂移。

安装与部署

服务端要求

  • 操作系统 :macOS 或 Linux(不支持 Windows,因为涉及系统服务管理)。

  • 运行环境 :Node.js 22.5+,git。

  • 核心依赖 :必须安装并登录 Claude CLI。

服务端部署

安装 Claude 并登录

npm install -g @anthropic-ai/claude-code
claude auth login # 按照提示完成网页授权

安装 OCP

git clone https://github.com/dtzp555-max/ocp.git
cd ocp

  1. 单机模式(默认)启动 Proxy ,此模式只能在本地使用 OCP,API URL 为 http://127.0.0.1:3456/v1

    node setup.mjs
  2. 局域网模式 (LAN Mode) 。地址监听在 0.0.0.0:3456 ,允许其他设备通过网络访问

    export OCP_ADMIN_KEY=$(openssl rand -base64 32)      # 设置管理员 Key,建议写入 ~/.zshrc 或 ~/.bashrc

    node setup.mjs --bind 0.0.0.0 --auth-mode multi # 局域网模式 (LAN Mode) 配置命令

OCP 状态管理

查看 Proxy 状态(usage + health)

$ ocp status
{
"proxy": {
"status": "ok",
"version": "3.16.4",
"uptime": "19h 9m",
"auth": "ok",
"activeSessions": 0
},
"requests": {
"total": 26,
"active": 0,
"errors": 19,
"timeouts": 1
},
"plan": "Usage API returned 401 with no rate-limit headers",
"recentErrors": [
{
"time": "2026-05-15T02:55:44.482Z",
"message": "Failed to authenticate. API Error: 401 Invalid authentication credentials\n" # 底层的 Claude CLI 会话已经过期或被登出,重新登录 Claude Cli
},
{
"time": "2026-05-15T02:55:49.181Z",
"message": "Failed to authenticate. API Error: 401 Invalid authentication credentials\n"
},
{
"time": "2026-05-15T02:55:54.932Z",
"message": "Failed to authenticate. API Error: 401 Invalid authentication credentials\n"
}
]
}

以下状态表示 Claude Cli 登录成功,可以看到 当前 Plan、Session utilizaiont/Percent、limit 等信息

$ ocp status
{
"proxy": {
"status": "ok",
"version": "3.16.4",
"uptime": "19h 14m",
"auth": "ok",
"activeSessions": 0
},
"requests": {
"total": 26,
"active": 0,
"errors": 19,
"timeouts": 1
},
"plan": {
"currentSession": {
"utilization": 0,
"percent": "0%",
"resetsIn": "1h 27m",
"resetsAt": "2026-05-15T07:30:00.000Z",
"resetsAtHuman": "Fri, May 15, 7:30 AM"
},
"weeklyLimits": {
"allModels": {
"utilization": 0.06,
"percent": "6%",
"resetsIn": "4d 15h",
"resetsAt": "2026-05-19T22:00:00.000Z",
"resetsAtHuman": "Tue, May 19, 10:00 PM"
}
},
"extraUsage": {
"status": "rejected",
"disabledReason": "org_level_disabled"
},
"representativeClaim": "five_hour",
"fallbackPercentage": 0.5
},
"recentErrors": [
]
}

查看 OCP 使用量信息

$ ocp usage
Plan Usage Limits
─────────────────────────────────────
Current session 0% used
Resets in 1h 22m (Fri, May 15, 7:30 AM)

Weekly (all models) 6% used
Resets in 4d 15h (Tue, May 19, 10:00 PM)

Extra usage off

Model Stats (since proxy start)
─────────────────────────────────────────────────────────────────────
Model Reqs OK Err Avg Time Max Time Avg Prompt Max Prompt
─────────────────────────────────────────────────────────────────────────────────────
claude-opus-4-6 26 7 20 185s 584s 1K 4K
Total 26

Proxy: up 19h 19m | 26 reqs | 0 active | 19 err | 1 timeout


$ ocp usage --by-key
No usage data yet.

浏览器访问 http://<IP>:3456/dashboard 可视化监控请求历史和计划用量。

子密钥管理

添加子密钥(子用户)

$ ./ocp keys add external-system

✓ Key created for "external-system"

API Key: ocp_ShecmDRElEW

Copy this key now — you won't see it again.
Configure in IDE: OPENAI_API_KEY=ocp_ShecmDRElEW

查看子密钥状态

ocp usage --by-key