Codex
在 OpenAI Codex CLI 和 IDE 扩展中使用 LynShen。Codex 只支持 Responses 协议。
Codex 是 OpenAI 的编程 Agent,有 CLI 和 IDE 扩展。本页按 Codex rust-v0.162.1(2026-10-09 发布)和 2026-10-11 的官方文档、源码编写。
接入方式
- 协议:Responses。Codex 已经移除了 Chat Completions 支持,
wire_api = "chat"会直接报错。 - Base URL:
https://api.lynshen.org/v1。Codex 在后面拼接/responses。 - 可选:WebSocket 传输。LynShen 支持
GET /v1/responses的 WebSocket 升级。
配置文件位置
| 系统 | 路径 |
|---|---|
| macOS、Linux | ~/.codex/config.toml |
| Windows | %USERPROFILE%\.codex\config.toml |
设置了 CODEX_HOME 时,配置位于 $CODEX_HOME/config.toml。CLI 和 IDE 扩展使用同一套配置。
配置步骤
-
编辑
~/.codex/config.toml,写入以下内容:model_provider = "lynshen" model = "<模型ID>" # 例如 gpt-5.5 model_reasoning_effort = "high" # low | medium | high | xhigh | max,取决于模型 model_reasoning_summary = "auto" # auto | concise | detailed | none [model_providers.lynshen] name = "LynShen" base_url = "https://api.lynshen.org/v1" env_key = "LYNSHEN_API_KEY" wire_api = "responses" # supports_websockets = true # 可选:使用 WebSocket 传输 -
设置密钥环境变量。
macOS、Linux(写入
~/.zshrc或~/.bashrc):export LYNSHEN_API_KEY="sk-..."Windows(PowerShell,执行后重新打开终端):
setx LYNSHEN_API_KEY "sk-..."也可以把
LYNSHEN_API_KEY=sk-...写入~/.codex/.env。Codex 启动时会读取这个文件。从图形界面启动的 IDE 读不到 shell 中的变量时,使用这种方式。 -
运行
codex,发送一条消息,确认有回复。
提供商 ID 不能是 openai、ollama 或 lmstudio,这些是 Codex 的保留名称。项目目录下的 .codex/config.toml 不能设置 model_provider 和 model_providers,请写在用户级配置中。
选择模型
- 配置中的
model是默认模型。 - 命令行:
codex -m <模型ID>。 - 会话中:
/model。
Codex 会请求 https://api.lynshen.org/v1/models 获取模型列表。LynShen 在响应的 models 字段中返回管理员为 Codex 配置的模型。不在这个列表中的模型仍然可以通过 model 或 -m 指定。Codex 对不认识的模型使用默认元数据,上下文窗口按 272k 计算。
Codex 针对 GPT 系列模型优化。通过 Responses 协议调用 Claude 或国内模型也可以工作,但工具调用风格和推理显示可能不同。
显示推理
model_reasoning_summary = "auto"让 Codex 请求推理摘要。LynShen 原样转发这个设置,并返回response.reasoning_summary_text.delta事件。- 调用返回原始推理的模型(例如 DeepSeek)时,LynShen 返回
response.reasoning_text.delta事件。在配置中加show_raw_agent_reasoning = true才会显示它。 hide_agent_reasoning = true隐藏推理。
多个配置
Codex 0.134.0 起,配置文件中的 [profiles.x] 不再生效。要切换多套配置,创建 ~/.codex/<名称>.config.toml,然后用 codex --profile <名称> 加载。网上的旧教程可能还在使用 [profiles.x]。
常见问题
| 现象 | 原因和处理 |
|---|---|
启动时报 wire_api = "chat" is no longer supported | 把 wire_api 改为 "responses"。 |
| 401 | LYNSHEN_API_KEY 没有在 Codex 进程中生效。写入 ~/.codex/.env 后重试。 |
设置了 OPENAI_BASE_URL 但不生效 | Codex 不读取这个变量。使用 config.toml 中的 model_providers。 |
stream closed before response.completed | 网络或代理中断了长连接。确认使用 https://api.lynshen.org。LynShen 在出错时会发送 response.failed,查看其中的错误码。 |
| 上下文接近上限时压缩失败 | 压缩依赖上游的 /responses/compact。部分模型的上游不支持它。 |
配置了 requires_openai_auth = true 后忽略了密钥 | 这个选项让 Codex 使用 OpenAI 登录凭据。接入 LynShen 时删除它。 |
来源
2026-10-11 查阅: