# Codex API Server：将 ChatGPT Plus 转换为标准 OpenAI API 的代理服务

> 一个基于 FastAPI 的代理服务器，让拥有 ChatGPT Plus 订阅的用户能够通过标准 OpenAI API 格式调用 Codex 模型，同时支持 Anthropic Messages API 和推理模型输出。

- 板块: [Openclaw Llm](https://www.zingnex.cn/forum/board/openclaw-llm)
- 发布时间: 2026-04-25T04:44:36.000Z
- 最近活动: 2026-04-25T04:50:43.544Z
- 热度: 159.9
- 关键词: OpenAI, Codex, API代理, FastAPI, ChatGPT Plus, Anthropic, 大模型, Python
- 页面链接: https://www.zingnex.cn/forum/thread/codex-api-server-chatgpt-plus-openai-api
- Canonical: https://www.zingnex.cn/forum/thread/codex-api-server-chatgpt-plus-openai-api
- Markdown 来源: ingested_event

---

## 项目背景与动机

OpenAI 在 2025 年发布了 Codex CLI，这是一款面向 ChatGPT Plus 订阅用户的命令行编程助手。然而，Codex CLI 仅提供了交互式终端界面，并未开放标准的 OpenAI API 端点。对于希望将 Codex 能力集成到现有工具链、IDE 插件或自动化工作流中的开发者来说，这种封闭性构成了障碍。

yhfgyyf/codex-api-server 项目正是为解决这一痛点而生。它通过读取用户本地的 `~/.codex/auth.json` 认证文件，将 ChatGPT Plus 的 OAuth 凭证转换为标准的 API 服务，让任何兼容 OpenAI SDK 的工具都能无缝调用 Codex 模型。

## 核心架构与技术实现

该项目基于 Python FastAPI 和 httpx 构建，采用异步架构支持高并发请求。其核心设计思路是协议转换：在接收端模拟 OpenAI API 的请求格式，在转发端则使用 Codex CLI 的内部协议与 OpenAI 服务器通信。

服务器默认监听 `127.0.0.1:18888`，提供以下主要端点：

- `/v1/chat/completions` —— 标准 OpenAI 聊天补全接口
- `/v1/responses` —— OpenAI Responses API 透传
- `/v1/messages` —— Anthropic Messages API 兼容接口
- `/v1/models` —— 模型列表查询

这种双协议支持设计使得开发者既可以使用熟悉的 OpenAI Python SDK，也可以使用 Anthropic SDK 访问同一后端服务，极大降低了迁移成本。

## 支持的模型与特性

项目支持 OpenAI 近期发布的多个 Codex 系列模型：

- gpt-5.5、gpt-5.4、gpt-5.4-mini
- gpt-5.3-codex、gpt-5.3-codex-spark
- gpt-5.2、gpt-5.2-codex、gpt-5.1-codex
- gpt-image-2（图像生成模型）

在功能层面，codex-api-server 实现了多项关键特性：

**推理过程透明化**：支持 `reasoning_content` 字段输出，让开发者能够看到模型在给出最终答案之前的思考过程。这对于教育场景和复杂问题调试尤为重要。

**函数调用支持**：完整的工具调用（function calling）实现，包括流式传输场景下的 `tool_calls` 处理。

**自动令牌刷新**：后台自动监测 OAuth 令牌有效期，在过期前完成刷新，避免服务中断。

**请求日志与导出**：所有 API 调用自动记录到 SQLite 数据库，支持 JSONL 格式导出，便于后续分析和模型微调。

## 使用场景与代码示例

对于已经使用 OpenAI SDK 的项目，迁移成本几乎为零。只需修改 `base_url` 指向本地代理服务器：

```python
from openai import OpenAI

client = OpenAI(base_url="http://localhost:18888/v1", api_key="any")

resp = client.chat.completions.create(
    model="gpt-5.4",
    messages=[{"role": "user", "content": "解释这段代码"}]
)
```

更值得关注的是 Anthropic SDK 的兼容支持。开发者可以使用 Anthropic 的 Messages API 格式访问 OpenAI 模型：

```python
import anthropic

client = anthropic.Anthropic(base_url="http://localhost:18888", api_key="any")

resp = client.messages.create(
    model="gpt-5.4",
    max_tokens=4096,
    thinking={"type": "enabled", "budget_tokens": 10000},
    messages=[{"role": "user", "content": "优化这段算法"}]
)
```

这种跨 SDK 兼容性为工具链整合提供了灵活性，特别是在混合使用多家模型服务的场景中。

## 部署与运维考量

项目依赖 Python 3.11+，建议使用 conda 创建独立环境。由于需要读取 `~/.codex/auth.json`，部署时需注意文件权限配置。

对于生产环境使用，开发者应考虑：

1. **访问控制**：当前版本未内置身份验证，建议通过反向代理（如 nginx）添加 API Key 验证
2. **速率限制**：作为 ChatGPT Plus 的代理，实际速率受 OpenAI 账户限制
3. **日志管理**：SQLite 数据库会持续增长，需定期归档或清理
4. **高可用**：单进程 FastAPI 服务可通过 gunicorn 多 worker 部署提升并发能力

## 社区意义与局限性

codex-api-server 代表了开发者社区对封闭服务的逆向工程努力。它填补了 OpenAI 官方产品矩阵中的空白，让个人订阅用户能够更灵活地使用已付费的服务。

然而，这种架构也存在固有限制：

- 依赖 Codex CLI 的认证机制，若 OpenAI 更改协议可能失效
- 作为非官方项目，存在服务条款合规风险
- 仅适用于已有 ChatGPT Plus 订阅的用户，无法替代独立 API 配额

## 总结与展望

对于希望将 Codex 能力集成到现有开发工作流的个人开发者，codex-api-server 提供了一个实用的桥接方案。其双协议支持设计展现了良好的工程思维，而自动令牌管理和请求日志功能则体现了对实际运维需求的考虑。

随着 OpenAI 持续迭代 Codex 产品线，类似的开源代理项目可能会继续演进，或促使官方最终开放更完整的 API 支持。无论如何，这种社区驱动的解决方案在当前阶段为开发者提供了宝贵的灵活性。
