Skip to content

adryfish/recodex

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 

Repository files navigation

Recodex

License: Apache 2.0 Docker

🚀 自建Codex镜像服务

Codex镜像服务,可自部署的代理服务。

💡 如果需要部署 Claude Code 镜像,请使用:reclaude-code

💡 如果需要部署 Claude 官网镜像,请使用:reclaude

⚠️ 免责声明

使用本项目前请仔细阅读:

🚨 服务条款风险: 使用本项目可能违反OpenAI相关服务条款。请在使用前仔细阅读OpenAI的用户协议,使用本项目的一切风险由用户自行承担。

📖 免责声明: 本项目仅供技术学习和研究使用,作者不对因使用本项目导致的账户封禁、服务中断或其他损失承担任何责任。

🎯 替代方案

如果您不想自己搭建,也可以选择我们提供的服务:

🛠️ Flapcode - 基于 Recodex 的在线服务

专为不便自建但需要使用 Codex 的用户打造的一站式解决方案。

核心优势:

  • 🌐 国内直连:无需科学上网,即可极速访问 Codex 完整功能
  • 🤝 全站账号:享受完整的模型体验,无需担心使用限制
  • 💰 计费简单透明:采用与官方 API 相同的计费标准,每日更新使用额度
  • 🔒 安全可靠:专业运维团队保障服务稳定性,让您专注于开发本身

快速开始

Docker 运行

docker run -d \
  --name recodex \
  --network host \
  -e PORT=1455 \
  -e PROXY_SERVER=http://your-proxy:port \
  -v ./data:/data \
  adryfish/recodex

Docker Compose 运行

创建 docker-compose.yml

services:
  recodex:
    image: adryfish/recodex
    container_name: recodex
    network_mode: host
    env_file:
      - .env
    volumes:
      - ./data:/data
    restart: unless-stopped

按需创建 .env

# 所有参数均为可选
PORT=1455
PROXY_SERVER=http://your-proxy:port

ADMIN_USERNAME=admin
ADMIN_PASSWORD=xxx

运行服务:

docker-compose up -d

环境变量

变量名 说明 默认值
PORT 服务监听端口 1455
PROXY_SERVER HTTP 代理服务器地址 选填
CODEX_CLI_VERSION Codex CLI 版本号 latest
DATA_DIR 数据目录路径 ./data
ADMIN_USERNAME 管理员用户名 admin
ADMIN_PASSWORD 管理员密码 随机生成

使用说明

1. 添加账号

使用管理员账号密码,通过 /admin/account 接口添加 OpenAI 账号:

curl -X POST http://localhost:1455/admin/account \
  -H "Content-Type: application/json" \
  -u admin:your-admin-password \
  -d '{
    "email": "your-email@example.com",
    "access_token": "your-access-token",
    "refresh_token": "your-refresh-token",
    "account_id": "codex-account-id",
    "plan_type": "max",
    "proxy_server": "http://your-proxy:port"
  }'

注意:如果未设置 ADMIN_PASSWORD 环境变量,系统会在首次启动时生成随机密码,请查看容器日志获取:

docker logs recodex | grep "Admin password"

2. 配置 Codex 客户端

配置auth.json

添加账号后,系统会返回 codex_token,使用该令牌配置 Codex 客户端: 在~/.codex目录下新建auth.json文件,写入如下信息即可

{
  "OPENAI_API_KEY": "自己的api_token"
}

配置config.toml

在~/.codex目录下新建config.toml文件,写入如下信息即可

model = "gpt-5-codex"
model_provider = "recodex"
model_reasoning_effort = "medium"
disable_response_storage = true

[model_providers.recodex]
name = "recodex"
base_url = "自己的域名地址/v1"
wire_api = "responses"

完成以上步骤后,你的 Codex 客户端将使用本地镜像服务,享受更稳定的访问体验。

常见问题

如何查看管理员密码?

如果未设置 ADMIN_PASSWORD 环境变量,系统会自动生成随机密码。查看方式:

docker logs recodex | grep "Admin password"

如何获取 OpenAI 的 access_token 和 refresh_token?

  1. 获取认证 URL:
curl -X GET http://localhost:1455/auth/get-url

响应示例:

{
  "url": "https://auth.openai.com/oauth/authorize?...",
  "state": "xxx",
  "code_verifier": "xxx",
  "redirect_uri": "http://localhost:1455/auth/callback"
}
  1. 在浏览器中打开返回的 url,登录并授权

  2. 授权成功后,浏览器会跳转到回调地址,从 URL 中获取 code 参数

  3. 使用 codecode_verifier 换取 token:

curl -X POST http://localhost:1455/admin/oauth/exchange-token \
  -H "Content-Type: application/json" \
  -u admin:your-admin-password \
  -d '{
    "code": "从回调URL获取的code",
    "code_verifier": "步骤1返回的code_verifier",
    "proxy_server": "http://your-proxy:port"
  }'

响应示例:

{
  "email": "your-email@example.com",
  "access_token": "your-access-token",
  "refresh_token": "your-refresh-token",
  "api_key": "sk-xxx",
  "account_id": "org-xxx",
  "plan_type": "max",
  "proxy_server": "http://your-proxy:port"
}

注意:使用此方法获取的 token 会自动保存到数据库,无需再调用 /admin/account 接口添加账号。

用户交流

扫码加入QQ群与其他用户交流:

QQ群二维码

About

Codex中转,可自部署的代理服务

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published