FlyHub

[ Documentation ]

接入 FlyHub · Codex CLI

Codex CLI 与 Codex Desktop 共用 ~/.codex/config.toml。把 FlyHub 配成 model provider 后,可在终端使用 GPT、Claude、DeepSeek 等模型,不需要登录 ChatGPT。

手动安装

1. 安装 Codex CLI

请先在 FlyHub 控制台创建 API Key,后面把 <FLYHUB_API_KEY> 换成它。

用官方命令安装(本页配置在 Codex CLI 0.166 实测;桌面版见 Codex 客户端接入页):

curl -fsSL https://chatgpt.com/codex/install.sh | sh

也可用 npm 或 Homebrew:

bash
npm install -g @openai/codex
bash
brew install --cask codex

验证安装:

bash
codex --version

Windows 原生即可运行,不需要 WSL。上面的「推荐安装」只负责装 FlyHub CLI 并写 config.toml,不安装 Codex CLI 本身。

2. 配置 config.toml

与 Codex Desktop 相同,写入 FlyHub provider 配置:

mkdir -p ~/.codex && cat > ~/.codex/config.toml <<'EOF' model_provider = "flyhub" model = "gpt-5.6-sol" model_reasoning_effort = "high" [model_providers.flyhub] name = "FlyHub" base_url = "https://api.flyhub.com.cn/v1" experimental_bearer_token = "<FLYHUB_API_KEY>" wire_api = "responses" EOF

手动写入会整份覆盖 config.toml。已有其他 provider 时请用上面的「推荐安装」(CLI 会合并保留),或先备份再改。

3. 填入 API Key

把控制台 Key 写进 config.toml 的 experimental_bearer_token(替换 <FLYHUB_API_KEY>)。不需要设置环境变量:

macOS:

bash
printf '粘贴 FlyHub Key 后回车: '; read -r KEY && sed -i '' "s|<FLYHUB_API_KEY>|$KEY|" ~/.codex/config.toml

Linux:

bash
printf '粘贴 FlyHub Key 后回车: '; read -r KEY && sed -i "s|<FLYHUB_API_KEY>|$KEY|" ~/.codex/config.toml

Windows(PowerShell):

powershell
$key = Read-Host "粘贴 FlyHub Key"; if (-not $key) { throw "没有输入 Key" }; (Get-Content "$HOME\.codex\config.toml" -Raw) -replace [regex]::Escape("<FLYHUB_API_KEY>"), $key | Set-Content "$HOME\.codex\config.toml" -NoNewline

改完 Key 后重新运行 codex 即可,新进程会读取最新 config.toml。

4. 验证连接

在项目目录(git 仓库)里跑一次非交互调用,能回 gateway-ok 就说明链路通了:

bash
codex exec "回复:gateway-ok"

当前目录不是 git 仓库时加 --skip-git-repo-check:

bash
codex exec --skip-git-repo-check "回复:gateway-ok"

交互模式直接运行 codex,输入 /status 可确认 model 与 provider 指向 flyhub。不需要登录 ChatGPT;仍被要求登录说明 config.toml 没读到。

5. 故障排查

启动仍提示登录 ChatGPT:Codex 没读到 provider。检查 ~/.codex/config.toml(Windows:%USERPROFILE%\.codex\config.toml) 里是否有 model_provider = "flyhub" 与 [model_providers.flyhub];设过 CODEX_HOME 时实际读取的是 $CODEX_HOME/config.toml。

Missing environment variable: OPENAI_API_KEY:config 里还留着旧的 env_key(旧版文档或旧版一键安装写入的)。Codex 只要看到 env_key 就强制要求该环境变量存在;删掉这一行,改用 experimental_bearer_token。

Not inside a trusted directory and --skip-git-repo-check was not specified:codex exec 在非 git 目录会拒绝执行,换到 git 仓库目录,或加 --skip-git-repo-check。

命令执行被 Windows 沙箱拦截(blocked by policy / CreateProcessAsUserW failed):这是 Codex 自身的 Windows 沙箱(MXC / elevated / unelevated)没配好,与 FlyHub 无关,按 Codex 官方 Windows sandbox 文档处理。

找不到 codex 命令:确认安装目录已加入 PATH(Windows 安装脚本装到 %USERPROFILE%\.local\bin,npm 装到 %APPDATA%\npm),或重开终端。

模型名以 GET /v1/models 为准;本机实测 gpt-5.6-sol、gpt-6.1-sol、deepseek-v4-pro、claude-sonnet-5 都能在 Codex CLI 里正常调用。

API 返回 401 或 invalid_bearer_token:确认 Key 完整、无多余空格、未被删除。若仍失败,请在控制台重新创建 Key 并重试。

模型不可用:先调用 GET /v1/models 获取实时列表,核对模型 ID 拼写。

准备好了?登录控制台 · 充值 · 创建 API Key