API Key 用户也能在 Codex 用上插件:我的实战配置与排错记录
写这篇文章的原因很简单:我长期用 API key 跑 Codex,结果发现 @电脑 (computer-use)、@浏览器 (browser)、@Chrome (chrome) 这三个插件一直不可用。折腾很久后终于打通,所以把完整过程写下来,给同样卡住的朋友一个可复现路径。
这篇文不讨论“要不要用插件”,只讨论一件事:如果你主要用 API key,怎么把 Codex 插件链路恢复可用。
先说结论(TL;DR)
-
仅有 API key,不等于一定能用 Codex 插件。
API key 解决的是“模型请求鉴权”,插件可用性还依赖 Codex/ChatGPT 侧的会话与权限链路。 -
我最终可用的模式是“双轨”:
- 模型请求走自定义 provider(API key / 路由服务)
- 账号侧保持可用登录态(用于插件目录与权限)
-
如果你看到插件灰掉,日志里经常会出现类似:
plugin/list ... 403 Forbidden.../backend-api/plugins/featured failed这通常不是你少装了某个文件,而是权限/会话链路问题。
-
当链路恢复后,
computer-use会回到enabled,并能正常打开浏览器执行指令(比如打开baidu.com)。
我遇到的问题现象
- Codex 代码能力正常
- 但
@电脑、@浏览器、@Chrome均不可用 - 本地插件目录明明存在,Chrome 扩展也装了
- 仍然提示不可用或无响应
这类问题最容易误判成“插件坏了”,实际上多数时候是“会话态没对上”。
你需要理解的一件事:模型链路和插件链路不是一回事
很多朋友会把这两个混为一谈:
- 模型链路:你发给哪个模型、走哪个网关、用哪个 key
- 插件链路:插件目录可见性、插件授权、会话可用性、账号/工作区控制
你把模型链路配通了,不代表插件链路自动可用。
所以“我 API key 可用了,为什么插件还不行?”这件事本身是正常现象。
推荐配置思路(双轨)
下面是示意配置(不是让你无脑复制)。核心是保留自定义 provider,同时不破坏插件链路需要的会话条件。
model_provider = "your_provider_name"model = "gpt-5.5"model_reasoning_effort = "high"network_access = "enabled"
[model_providers.your_provider_name]name = "your_provider_name"base_url = "https://your-router-or-endpoint"wire_api = "responses"# 根据你的网关方式填写:# experimental_bearer_token = "..."# 或使用你自己的鉴权方式requires_openai_auth = true说明:网上也有
requires_openai_auth = false的写法。
这两种语义不同,不是简单替换关系。你需要根据自己的路由方案和账号链路做验证。
我这边真正打通的一套步骤(通俗可复现)
如果你是 API key 用户,又想让 Codex 插件可用,这套步骤是我实测可行的:
- 先在网页端登录 ChatGPT,且账号必须完成过手机号验证。
- 打开 Codex,先退出当前 API key 登录状态。
- 在 Codex 里重新点击登录,跳转网页后完成登录验证。
- 登录完成后,彻底退出 Codex(macOS 用
Command + Q)。 - 编辑
config.toml(macOS:~/.codex/config.toml,Windows:C:\Users\你的用户名\.codex\config.toml)。 - 保留你原来的基础配置(示例):
model_provider = "laowang"model = "gpt-5.5"model_reasoning_effort = "high"network_access = "enabled"disable_response_storage = truewindows_wsl_setup_acknowledged = truemodel_verbosity = "high"- 在下面新增(或确认存在)这段:
[model_providers.laowang]name = "laowang"base_url = "..."experimental_bearer_token = "..."requires_openai_auth = true- 其它配置保持不变,重启 Codex。
- 重启后测试插件是否恢复(例如让
@电脑打开浏览器访问baidu.com)。
关键提醒
- 登录的 ChatGPT 账号一定要完成手机号验证。
否则即使能登录,也很可能在 Codex 里再次卡到手机验证。 - 这套方案的核心是“双轨”:账号链路负责插件权限,API key/provider 负责模型请求。
我实际验证通过的检查项
1) 看插件进程是否被 Codex 识别
codex mcp list如果看到类似:
computer-use ... Status: enabled说明插件注册层面是正常的。
2) 检查 Chrome 侧前置是否完整(如果你要用 @Chrome)
- Chrome 扩展已安装且启用
- Native host manifest 正确
- Chrome 在运行
注意:这一步是
@Chrome的常见卡点,和@电脑不是同一个故障面。
3) 最终动作验证
直接让 Codex 执行一个最简单动作:
“打开 Chrome 并访问 baidu.com”
这一步能成,说明从插件到动作执行链路都通了。
常见误区
误区 1:只要 API key 可用,插件一定可用
错。API key 只覆盖模型请求,不自动覆盖插件权限体系。
误区 2:看到 403 就是服务坏了
不一定。很多 403 是“当前会话/账号态不满足插件目录或权限访问条件”。
误区 3:必须系统提权(sudo/root)才行
大多数场景不需要。
更常见的是会话重建、账号态修复、插件重新握手后恢复。
安全提醒(很重要)
网上有些教程会建议把配置开得很激进,比如:
approval_policy = "never"sandbox_mode = "danger-full-access"- 在配置里明文放高权限 token
这些做法短期省事,长期风险很高。
建议至少做到:
- 把高权限 token 与日常 key 分离
- 不在公开仓库提交配置文件
- 先在测试目录验证,再迁移到主工作目录
一份排错顺序(建议照着走)
- 确认插件包已安装(不是“目录空壳”)
codex mcp list看computer-use是否enabled- 看日志是否出现
plugin/list ... 403 - 重新建立会话(新话题/重启客户端后再测)
- 用最小动作验证:打开 Chrome -> 访问
baidu.com - 成功后再做复杂任务(登录态站点、表单、自动化流程)
我给 API key 用户的建议
如果你是重度 API key 用户,不要把全部希望押在“单链路配置”上。
最稳的是“双轨思维”:
- 模型请求:按你熟悉的 API key 路由优化成本与性能
- 插件能力:确保账号/会话/权限链路持续健康
这样你既不会失去灵活性,也不容易在插件可用性上反复踩坑。
结语
这次最有价值的经验不是“改了哪一行配置”,而是认清了边界:
API key 是模型层,插件是能力层。两层都通,体验才完整。
如果你也是 API key 路线,希望这篇文章能帮你少走弯路。
你也可以把自己的环境差异(系统版本、Codex 版本、provider 配置)记录下来,形成团队内部的稳定手册。