外观
Codex 接入
本页适用于 Codex CLI,配置字段按 2026-09-22 官方文档核对,本地核对版本为 0.155.1。不把 CLI 的配置方式等同于所有桌面版、编辑器插件或旧版行为。
准备条件
- 已安装 Codex CLI;运行
codex --version查看版本。安装方式见 Codex 官方快速开始。 - 本站 Key 可见
gpt-6-astra,有 Responses 权限。 - 账户余额和 Key 额度足以覆盖请求预扣。Codex 会携带项目上下文,单次使用可能包含多次请求,预算通常高于简单 curl。
先用快速开始确认基础接入。Codex 启动成功或界面显示模型名称,都不代表调用已成功。
创建独立配置
使用独立目录保存本站的配置、认证状态和会话,不覆盖原来的 ~/.codex/config.toml。目录中保存的会话也可能包含项目内容,请妥善保管。
配置文件内容如下:
toml
model = "gpt-6-astra"
model_provider = "token_relay"
[model_providers.token_relay]
name = "Ava Token"
base_url = "https://api.avanovo.com/v1"
env_key = "TOKEN_RELAY_API_KEY"
wire_api = "responses"
supports_websockets = falseenv_key 指向环境变量名,文件中不填写真实 Key。wire_api 使用 Responses,显式关闭 WebSocket。provider 配置需要放在本次 CODEX_HOME 的用户级 config.toml 中,不能仅写进项目目录的 .codex/config.toml。
在 macOS / Linux / Bash 中启动
每次执行下面的命令会创建一个新的独立目录,并显示路径。记下路径以便下次复用。
bash
umask 077
token_relay_codex_dir="$(mktemp -d "${TMPDIR:-/tmp}/ava-codex.XXXXXX")"
printf '本次配置目录:%s\n' "$token_relay_codex_dir"将上面的 TOML 内容保存为这个目录下的 config.toml。该临时目录可能被系统清理;长期使用时,将整个目录移到自己专用的私有目录,并相应调整变量。
以下命令适用于 Bash(macOS、Linux 或 Windows 的 WSL / Git Bash)。先输入 bash 进入 Bash,再隐藏输入本站 Key:
bash
read -r -s -p '请输入本站 API Key:' TOKEN_RELAY_API_KEY
printf '\n'
export TOKEN_RELAY_API_KEY输入不会回显,也不会将 Key 字面值写入命令历史。不要把真实 Key 写进代码、截图或聊天记录。用完后执行 unset TOKEN_RELAY_API_KEY。
在同一个 Bash 会话启动:
bash
CODEX_HOME="$token_relay_codex_dir" codex这里的 CODEX_HOME 只作用于这个 Codex 进程,不会更改当前 shell 的全局配置。下次复用时,将 token_relay_codex_dir 设置为你保存的目录。
在 Windows PowerShell 中启动
创建一个新的独立目录,将上面的 TOML 内容保存为其中的 config.toml:
powershell
$tokenRelayCodexDir = Join-Path $env:LOCALAPPDATA ("AvaToken\Codex-" + [guid]::NewGuid().ToString("N"))
New-Item -ItemType Directory -Path $tokenRelayCodexDir | Out-Null
Write-Host "本次配置目录:$tokenRelayCodexDir"在同一 PowerShell 窗口隐藏输入 Key:
powershell
$tokenRelaySecureKey = Read-Host "请输入本站 API Key" -AsSecureString
$tokenRelayKeyPointer = [Runtime.InteropServices.Marshal]::SecureStringToBSTR($tokenRelaySecureKey)
try {
$env:TOKEN_RELAY_API_KEY = [Runtime.InteropServices.Marshal]::PtrToStringBSTR($tokenRelayKeyPointer)
} finally {
[Runtime.InteropServices.Marshal]::ZeroFreeBSTR($tokenRelayKeyPointer)
$tokenRelaySecureKey.Dispose()
}临时设置目录,退出 Codex 后恢复原环境变量并清除 Key:
powershell
$tokenRelayPreviousCodexHome = $env:CODEX_HOME
try {
$env:CODEX_HOME = $tokenRelayCodexDir
codex
} finally {
if ($null -eq $tokenRelayPreviousCodexHome) {
Remove-Item Env:CODEX_HOME -ErrorAction SilentlyContinue
} else {
$env:CODEX_HOME = $tokenRelayPreviousCodexHome
}
Remove-Item Env:TOKEN_RELAY_API_KEY -ErrorAction SilentlyContinue
}如何确认接入成功
在不含敏感文件的测试目录启动,检查当前模型为 gpt-6-astra。有可用额度时发出一个简单任务,例如“只回复一句问候,不读取文件、不调用工具”。
成功标志包含完整回答,以及本站「使用日志」中对应时间和模型的记录。工具可能自动重试或发起多个请求,不能假定一个提示词只对应一次扣费。核对方式见使用日志。
常见问题
| 现象 | 先检查 |
|---|---|
| 提示缺少凭据 | Key 是否在启动 Codex 的同一终端中设置,变量名是否与 env_key 一致 |
| 仍使用原来的 provider | 是否用指定的 CODEX_HOME 启动,文件是否确实叫 config.toml |
| 模型不可用 / 403 | Key 可见模型、分组和模型限制;不要凭广场展示判断权限 |
| 额度不足 | 账户与 Key 两处余额,以及上下文较大时的预扣需求 |
| 已配置但没有本站日志 | 是否还没发送任务,或地址、provider、网络配置没有生效 |
| 旧版配置无法加载 | 核对 CLI 版本和官方配置文档,不把其他版本的 profile 示例整段覆盖进来 |
恢复原来的使用方式
退出本次 Codex。Bash 中执行 unset TOKEN_RELAY_API_KEY,之后直接运行 codex 将使用原来的环境;PowerShell 示例会在退出时恢复原 CODEX_HOME。原配置文件没有被覆盖。
如不再使用本站 Key,在控制台停用它。独立目录是否删除由你决定,删除前确认是否需要保留会话记录。