BenedictKing/ccx
GitHub: BenedictKing/ccx
CCX 是一个高性能的多协议 AI API 代理与协议转换网关,提供统一的流量调度、渠道管理和故障转移能力。
Stars: 449 | Forks: 49
# Claude / OpenAI Chat / OpenAI Images / Codex Responses / Gemini API 代理 - CCX
English | [简体中文](README.zh-CN.md)
[](https://github.com/BenedictKing/ccx/releases/latest)
[](https://opensource.org/licenses/MIT)
CCX 是一个适用于 Claude、OpenAI Chat、OpenAI Images、Codex Responses 和 Gemini 的高性能 AI API 代理与协议转换网关。它提供了统一的入口点、内置的 Web 管理后台、渠道编排、故障转移、多密钥管理以及模型路由功能。
## 功能特性
- 集成前端与后端的架构,支持单端口部署
- 使用 `PROXY_ACCESS_KEY` 和可选的 `ADMIN_ACCESS_KEY` 进行双密钥认证
- 提供用于渠道管理、测试、日志和监控的 Web 管理控制台
- 支持 Claude Messages、OpenAI Chat Completions、OpenAI Images、Codex Responses 和 Gemini API
- 智能调度:支持优先级、升级窗口、健康检查、故障转移和熔断恢复
- 支持每个渠道的 API 密钥轮换、代理配置、自定义请求头、模型白名单和路由前缀
- 用于多轮对话工作流的 Responses 会话跟踪
- 内嵌前端资源,支持简单的二进制文件部署
## 界面截图
### 渠道编排
可视化的渠道管理,支持拖拽调整优先级和实时健康监控。

### 添加渠道
支持多种上游服务类型,以及灵活的 API 密钥、模型映射和请求参数配置。
### 流量统计
实时监控每个渠道的请求流量、成功率和延迟。

## 系统架构
CCX 暴露一个后端入口点:
```
Client -> backend :3000 ->
|- / -> Web UI
|- /api/* -> Admin API
|- /v1/messages -> Claude Messages proxy
|- /v1/chat/completions -> OpenAI Chat proxy
|- /v1/responses -> Codex Responses proxy
|- /v1/images/{...} -> OpenAI Images proxy
|- /v1/models -> Models API
`- /v1beta/models/* -> Gemini proxy
```
Images 端点目前包括:
- `POST /v1/images/generations`
- `POST /v1/images/edits`
- `POST /v1/images/variations`
详细设计请参阅 [ARCHITECTURE.md](ARCHITECTURE.md)。
## 快速开始
### 方式一:二进制文件
1. 从 [Releases](https://github.com/BenedictKing/ccx/releases/latest) 下载最新的二进制文件
2. 在二进制文件同级目录下创建一个 `.env` 文件:
```
PROXY_ACCESS_KEY=your-proxy-access-key
PORT=3000
ENABLE_WEB_UI=true
APP_UI_LANGUAGE=en
```
3. 运行该二进制文件并打开 `http://localhost:3000`
在 Windows 上,如果客户端从 cmd、PowerShell、WSL 或 Docker 运行,并且 `localhost` 无法访问 CCX,请改用 Windows 主机的 IPv4 地址,例如 `http://192.168.1.23:3000`。CCX 默认通过 `:PORT` 监听所有网络接口。
若要在不使用 Docker 的情况下在后台启动,请参阅 [服务启动](docs/service/README.md)。
### 方式二:Docker
```
docker run -d \
--name ccx \
-p 3000:3000 \
-e PROXY_ACCESS_KEY=your-proxy-access-key \
-e APP_UI_LANGUAGE=en \
-v $(pwd)/.config:/app/.config \
crpi-i19l8zl0ugidq97v.cn-hangzhou.personal.cr.aliyuncs.com/bene/ccx:latest
```
使用 Docker Compose 在后台运行:
```
docker compose up -d
```
启用 Watchtower 自动更新:
```
docker compose -f docker-compose.yml -f docker-compose.watchtower.yml up -d
```
如果需要,在设置完成后立即拉取最新镜像:
```
docker compose pull ccx
docker compose up -d ccx
```
### 方式三:从源码构建
```
git clone https://github.com/BenedictKing/ccx
cd ccx
cp backend-go/.env.example backend-go/.env
make run
```
实用命令:
```
make dev
make run
make build
make frontend-dev
```
## 核心环境变量
```
PORT=3000
ENV=production
ENABLE_WEB_UI=true
PROXY_ACCESS_KEY=your-proxy-access-key
ADMIN_ACCESS_KEY=your-admin-secret-key
APP_UI_LANGUAGE=en
LOG_LEVEL=info
REQUEST_TIMEOUT=300000
```
## 主要端点
- Web UI:`GET /`
- 健康检查:`GET /health`
- Admin API:`/api/*`
- Claude Messages:`POST /v1/messages`
- OpenAI Chat:`POST /v1/chat/completions`
- Codex Responses:`POST /v1/responses`
- OpenAI Images:`POST /v1/images/generations`、`POST /v1/images/edits`、`POST /v1/images/variations`
- Gemini:`POST /v1beta/models/{model}:generateContent`
- Models API:`GET /v1/models`
## 开发
推荐的本地开发工作流:
```
make dev
```
仅前端:
```
cd "frontend"
bun install
bun run dev
```
仅后端:
```
cd "backend-go"
make dev
```
## 更多文档
- [README.zh-CN.md](README.zh-CN.md)
- [backend-go/README.md](backend-go/README.md)
- [ARCHITECTURE.md](ARCHITECTURE.md)
- [DEVELOPMENT.md](DEVELOPMENT.md)
- [ENVIRONMENT.md](ENVIRONMENT.md)
- [docs/service/README.md](docs/service/README.md) - 非 Docker 服务启动
- [RELEASE.md](RELEASE.md)
## 社区
加入 QQ 群进行讨论:**642217364**
## 许可证
MIT
### 流量统计
实时监控每个渠道的请求流量、成功率和延迟。

## 系统架构
CCX 暴露一个后端入口点:
```
Client -> backend :3000 ->
|- / -> Web UI
|- /api/* -> Admin API
|- /v1/messages -> Claude Messages proxy
|- /v1/chat/completions -> OpenAI Chat proxy
|- /v1/responses -> Codex Responses proxy
|- /v1/images/{...} -> OpenAI Images proxy
|- /v1/models -> Models API
`- /v1beta/models/* -> Gemini proxy
```
Images 端点目前包括:
- `POST /v1/images/generations`
- `POST /v1/images/edits`
- `POST /v1/images/variations`
详细设计请参阅 [ARCHITECTURE.md](ARCHITECTURE.md)。
## 快速开始
### 方式一:二进制文件
1. 从 [Releases](https://github.com/BenedictKing/ccx/releases/latest) 下载最新的二进制文件
2. 在二进制文件同级目录下创建一个 `.env` 文件:
```
PROXY_ACCESS_KEY=your-proxy-access-key
PORT=3000
ENABLE_WEB_UI=true
APP_UI_LANGUAGE=en
```
3. 运行该二进制文件并打开 `http://localhost:3000`
在 Windows 上,如果客户端从 cmd、PowerShell、WSL 或 Docker 运行,并且 `localhost` 无法访问 CCX,请改用 Windows 主机的 IPv4 地址,例如 `http://192.168.1.23:3000`。CCX 默认通过 `:PORT` 监听所有网络接口。
若要在不使用 Docker 的情况下在后台启动,请参阅 [服务启动](docs/service/README.md)。
### 方式二:Docker
```
docker run -d \
--name ccx \
-p 3000:3000 \
-e PROXY_ACCESS_KEY=your-proxy-access-key \
-e APP_UI_LANGUAGE=en \
-v $(pwd)/.config:/app/.config \
crpi-i19l8zl0ugidq97v.cn-hangzhou.personal.cr.aliyuncs.com/bene/ccx:latest
```
使用 Docker Compose 在后台运行:
```
docker compose up -d
```
启用 Watchtower 自动更新:
```
docker compose -f docker-compose.yml -f docker-compose.watchtower.yml up -d
```
如果需要,在设置完成后立即拉取最新镜像:
```
docker compose pull ccx
docker compose up -d ccx
```
### 方式三:从源码构建
```
git clone https://github.com/BenedictKing/ccx
cd ccx
cp backend-go/.env.example backend-go/.env
make run
```
实用命令:
```
make dev
make run
make build
make frontend-dev
```
## 核心环境变量
```
PORT=3000
ENV=production
ENABLE_WEB_UI=true
PROXY_ACCESS_KEY=your-proxy-access-key
ADMIN_ACCESS_KEY=your-admin-secret-key
APP_UI_LANGUAGE=en
LOG_LEVEL=info
REQUEST_TIMEOUT=300000
```
## 主要端点
- Web UI:`GET /`
- 健康检查:`GET /health`
- Admin API:`/api/*`
- Claude Messages:`POST /v1/messages`
- OpenAI Chat:`POST /v1/chat/completions`
- Codex Responses:`POST /v1/responses`
- OpenAI Images:`POST /v1/images/generations`、`POST /v1/images/edits`、`POST /v1/images/variations`
- Gemini:`POST /v1beta/models/{model}:generateContent`
- Models API:`GET /v1/models`
## 开发
推荐的本地开发工作流:
```
make dev
```
仅前端:
```
cd "frontend"
bun install
bun run dev
```
仅后端:
```
cd "backend-go"
make dev
```
## 更多文档
- [README.zh-CN.md](README.zh-CN.md)
- [backend-go/README.md](backend-go/README.md)
- [ARCHITECTURE.md](ARCHITECTURE.md)
- [DEVELOPMENT.md](DEVELOPMENT.md)
- [ENVIRONMENT.md](ENVIRONMENT.md)
- [docs/service/README.md](docs/service/README.md) - 非 Docker 服务启动
- [RELEASE.md](RELEASE.md)
## 社区
加入 QQ 群进行讨论:**642217364**
## 许可证
MIT标签:AI代理网关, API Gateway, API中转, API代理, API管理平台, CCX, ChatGPT中转, Claude API, Codex Responses, EVTX分析, Gemini API, Go语言, OpenAI API, Web管理后台, 健康检查, 协议转换, 单端口部署, 反向代理, 多密钥管理, 大模型网关, 密钥轮换, 微服务网关, 故障转移, 日志审计, 模型路由, 流量监控, 渠道编排, 程序破解, 统一入口, 请求拦截, 负载均衡