☰
OpenAI Codex Windows版实战指南:并行Agent + Computer Use完整配置
2026/10/2 6:44:46 网站建设 项目流程

1. Windows 上跑 Codex 的真实痛点:并行 Agent 与 Computer Use 到底难在哪

OpenAI Codex 是一个终端原生的 AI 编程 Agent,它能自己读代码库、跑命令、改文件、提 PR,而 Windows 版最大的价值在于把「并行 Agent」和「Computer Use」这两件事搬到了本地桌面。如果你正在 Windows 上做多任务开发,或者想让 AI 直接帮你操作浏览器、Postman 这类 GUI 工具,那这套配置就是为你准备的。我实测下来,Windows 原生 App 和 CLI + WSL2 两条路径能力差异不小,尤其是 Computer Use 目前只有原生 App 支持,CLI 走 WSL2 是拿不到的。

先说清楚场景。假设你手头有一个中型仓库,同时有三件事要推进:给 auth 模块补单元测试、重构数据库连接池、修一个 API 返回格式的 issue。传统做法是你自己切分支、来回 stash、手动 merge,光上下文切换就耗掉半天。Codex 的并行 Agent 用 Git Worktree 给每个任务开独立工作区,三个 Agent 同时跑,互不冲突,完成后各自产出可审查的 diff。这是它区别于普通代码补全工具的核心。

Computer Use 则是另一条线。2026 年 5 月 29 日的 v26.527 版本把它带到了 Windows,Codex 能直接看到屏幕、点击、键入 Windows 应用。典型用法是:让它打开 Chrome 访问 localhost:3000,截图登录页,填测试账号提交,再截图结果贴到 issue 里。这类重复性验证工作以前得手动做,现在可以交给 Agent。

但 Windows 上的坑也很集中。第一,沙箱模式选错会导致命令读不到目录,报权限错误;第二,WSL2 里如果在 /mnt/c/ 路径下工作,I/O 慢到怀疑人生;第三,Computer Use 在 Windows 是前台模式,任务跑起来你不能切窗口;第四,CLI 和桌面 App 的配置入口不一样,auth.json 和 config.toml 放错位置直接不生效。下面我按「前置准备 → 可复制配置 → 验证 → 排障」的顺序拆开讲,每一步都给能直接粘贴的命令和片段。

需要提前说明的是,Codex 底层调用的是 OpenAI 兼容接口,如果你在国内网络环境下想稳定跑通,可以把模型端点指向兼容 OpenAI 协议的服务。TaoToken 提供的就是这类兼容端点,Base URL 和 Key 配好之后,Codex CLI 和桌面 App 都能直接对接,不用改代码逻辑。这一点在后面的配置片段里会具体体现。

2. TaoToken 前置准备:Base URL、API Key 与 Codex 的对接方式

在动手配 Codex 之前,先把「模型从哪来」这件事定下来。Codex 本身是个 Agent 框架,它需要一个大模型端点来驱动推理。官方路径是用 ChatGPT 账号登录或填 OpenAI API Key,但在国内网络环境下,直连官方端点经常不稳定。这时候用兼容 OpenAI 协议的第三方端点就是更实际的选择,TaoToken 就是干这个的。

你需要准备三样东西:Base URL、API Key、Model ID。这三件套是 Codex 能跑起来的最小集合,缺一个都会在验证阶段报错。Base URL 用https://taotoken.net/api,注意这个地址不带任何查询参数,直接作为 OpenAI 兼容端点填入即可。API Key 在控制台的 API Keys 页面生成,格式是一串以特定前缀开头的字符串。Model ID 则取决于你想用哪个模型,Codex 场景下一般选推理能力强的型号。

具体操作路径是这样的:先打开 https://taotoken.net/api-keys 生成一个 Key,复制下来存好,这个 Key 只显示一次。然后确认你的 Codex 版本,CLI 用codex --version查,桌面 App 在关于页面看。当前 CLI 稳定版是 0.135.0,安装命令是npm install -g @openai/codex@0.135.0。桌面 App 走 Microsoft Store 或 winget 安装。

这里有个关键点:Codex 读取配置的位置是CODEX_HOME目录,Windows 上默认是%USERPROFILE%\.codex。你需要在这个目录下放两个文件,一个是auth.json存凭证,一个是config.toml存模型和沙箱配置。很多人配完不生效,就是因为把文件放到了项目目录而不是CODEX_HOME。

auth.json 的结构很简单,核心就是 API Key 和端点。如果你用 ChatGPT 账号登录,Codex 会自动写这个文件;如果用手动配置,就得自己填。下面是一个可复制的最小 auth.json:

{ "OPENAI_API_KEY": "sk-your-taotoken-key-here", "OPENAI_BASE_URL": "https://taotoken.net/api" }

注意 Base URL 结尾不要加/v1,Codex 会自己拼接路径。如果你填成https://taotoken.net/api/v1,请求会变成/v1/v1/chat/completions,直接 404。

config.toml 则负责模型选择和沙箱行为。Windows 上沙箱模式有两个值:elevated和unelevated。elevated会创建一个独立的低权限沙箱用户,配合防火墙规则和 ACL 边界,安全性更好,但需要管理员权限初始化。unelevated是企业策略阻止 elevated 时的回退方案,权限边界弱一些。日常开发推荐elevated,只有在组策略受限的受管设备上才退到unelevated。

model = "gpt-5-codex" model_provider = "taotoken" [model_providers.taotoken] name = "TaoToken" base_url = "https://taotoken.net/api" env_key = "OPENAI_API_KEY" [windows] sandbox = "elevated"

这段配置里,model_provider指向自定义 provider,base_url和env_key告诉 Codex 去哪拿端点和 Key。env_key的值要和 auth.json 里的字段名一致,否则读不到。配好之后,Codex 启动时会先读 auth.json 拿 Key,再按 config.toml 的 provider 配置发请求。

如果你用的是桌面 App,配置入口在设置里的「模型」和「沙箱」两个面板,填的内容和上面一致,只是不用手写 TOML。但 App 和 CLI 共享CODEX_HOME,所以你在 CLI 里配好的 auth.json,App 也能直接用,反过来也一样。

还有一点要提醒:Codex CLI 0.115 起不再支持 WSL1,沙箱迁移到了 bubblewrap,所以如果你走 WSL 路径,必须是 WSL2。检查命令是wsl -l -v,看到 VERSION 是 2 才行。如果是 1,跑wsl --update升级。

3. 可复制配置:settings、auth.json 与并行 Agent 的 Worktree 设置

这一节把配置拆成三块:凭证配置、沙箱配置、并行 Agent 的 Worktree 配置。每一块都给完整片段,你按顺序粘贴就行。

先说凭证。auth.json 放在%USERPROFILE%\.codex\auth.json,内容如下:

{ "OPENAI_API_KEY": "sk-your-taotoken-key-here", "OPENAI_BASE_URL": "https://taotoken.net/api" }

如果你更习惯用环境变量,也可以在 PowerShell 里设$env:OPENAI_API_KEY = "sk-...",但 auth.json 优先级更高,两个都设的话以文件为准。建议统一用 auth.json,避免每次开新终端都要重设。

然后是 config.toml,放在%USERPROFILE%\.codex\config.toml:

model = "gpt-5-codex" model_provider = "taotoken" approval_policy = "on-request" [model_providers.taotoken] name = "TaoToken" base_url = "https://taotoken.net/api" env_key = "OPENAI_API_KEY" [windows] sandbox = "elevated" sandbox_private_desktop = true [sandbox_workspace_write] network_access = true

这里多了几个字段。approval_policy = "on-request"表示 Codex 在执行敏感命令前会请求确认,适合日常开发;如果你在 CI 里跑,可以改成"never"让它自动执行。sandbox_private_desktop = true开启私有桌面隔离,兼容旧行为时可以设 false。network_access = true允许沙箱内访问网络,Computer Use 和需要联网的命令都依赖这个。

配好之后,如果你遇到沙箱读不到某个目录,用这个命令临时加白名单:

/sandbox-add-read-dir C:\your\project\absolute\path

注意路径必须是绝对路径,相对路径不生效。

接下来是并行 Agent 的 Worktree 配置。Codex 桌面 App 里,打开项目时选择 Worktree 模式而不是 Local 模式,每个任务会自动分配一个独立的 git worktree。CLI 里则用--worktree参数:

codex --worktree --cwd C:\projects\myapp "给 auth 模块补充单元测试" codex --worktree --cwd C:\projects\myapp "重构 database 连接池" codex --worktree --cwd C:\projects\myapp "修复 issue #412 的 API 返回格式"

三条命令可以同时开三个终端跑,每个 Agent 在自己的 worktree 里工作,互不干扰。完成后每个 worktree 会生成独立的 diff,你可以逐个审查再决定合并还是丢弃。

Worktree 的目录默认在仓库的.codex/worktrees/下,每个任务一个子目录。如果你想自定义位置,在 config.toml 里加:

[worktree] root = "C:\\codex-worktrees"

注意 Windows 路径里的反斜杠要转义成双反斜杠,否则 TOML 解析会出错。

对于 Writer/Reviewer 双 Agent 模式,配置上不需要额外设置,只是启动两个 Agent 时给不同的指令。Agent A 负责实现,Agent B 负责审查 diff。B 的启动命令里加上--review参数,它会自动读取 A 的 worktree 产出:

codex --worktree --review --cwd C:\projects\myapp "审查上一个 Agent 的 diff,检查边界情况"

这样两个 Agent 形成闭环,A 实现、B 审查、A 根据意见修复,整个过程在独立 worktree 里完成,不会污染主分支。

最后提醒一个容易踩的坑:Worktree 模式要求仓库是干净的 git 状态,如果有未提交的改动,Codex 会拒绝创建 worktree。启动前先git status确认一下,有改动就 commit 或 stash。

4. 验证请求与成功结果:从 codex --version 到端到端 Computer Use 动作

配置写完,接下来是验证。验证分三层:CLI 能不能起来、模型请求通不通、Computer Use 能不能操控应用。一层层来,哪层报错就停在哪层排查。

第一层,验证安装。打开 PowerShell,跑:

codex --version

正常输出应该是codex 0.135.0或你安装的版本号。如果提示codex : 无法将"codex"项识别为 cmdlet,说明 PATH 没配好,或者 npm 全局 bin 目录不在 PATH 里。用npm config get prefix找到全局目录,把它加到系统 PATH 里,重启终端。

第二层,验证模型请求。跑一个最简单的非交互命令:

codex --output json "列出当前目录下的所有文件"

如果配置正确,你会看到一段 JSON 输出,里面包含模型返回的文件列表。这一步成功说明 auth.json 的 Key、config.toml 的 base_url 和 model 都对上了。如果报 401,说明 Key 无效或没读到;如果报local proxy failed,说明 base_url 填错了或者网络不通;如果报reading choices相关错误,说明返回格式不是标准的 OpenAI 兼容格式,检查 base_url 是不是多加了/v1。

第三层,验证 Computer Use。这个必须在桌面 App 里做,CLI 不支持。打开 Codex App,在对话框里输入:

打开 Chrome,访问 http://localhost:3000,截图登录页,填入测试账号 test@example.com 和密码 test123,提交后截图结果

正常流程是:Codex 先启动 Chrome,导航到目标地址,截第一张图,然后定位输入框、填入账号密码、点击提交,最后截第二张图。整个过程你能在屏幕上看到鼠标移动和键盘输入。任务完成后,两张截图会出现在对话里,你可以点开查看。

这里有个 Windows 特有的限制:Computer Use 是前台模式,任务进行时你不能切换窗口,否则操作会中断。macOS 版支持后台并行,Windows 版目前还不行。所以跑 Computer Use 任务时,把机器腾出来,别同时干别的。

手机远程监控是另一个验证点。启动 Computer Use 任务后,打开手机上的 ChatGPT App,在 Codex 面板里能看到实时进度。你可以暂停、重定向任务,把 PC 当成托管执行节点。这个功能对长时间任务很有用,比如让 Codex 跑一整套回归测试,你人在外面也能盯着。

验证并行 Agent 的话,开三个终端分别跑前面那三条--worktree命令,然后观察.codex/worktrees/目录下是不是生成了三个子目录,每个里面都有独立的代码副本。等 Agent 跑完,用git worktree list能看到所有活跃的 worktree。如果三个任务都产出了 diff,说明并行链路通了。

端到端验证做完,你应该能确认:CLI 能起、模型能调、Computer Use 能操控、并行 Agent 能隔离。这四件事都过了,整套工作流就算落地了。

5. 本篇常见错排查:401、local proxy failed、reading choices 与 OAuth 报错

配置过程中最容易撞上的几类报错,我按出现频率排一下,每个都给症状、原因和修法。

401 Unauthorized。症状是任何请求都返回 401,日志里能看到invalid_api_key。原因通常是三个:auth.json 里的 Key 写错了、Key 过期了、或者env_key字段名和 auth.json 里的字段名不一致。排查方法:先确认 auth.json 里的OPENAI_API_KEY值和你从控制台复制的完全一致,注意前后不能有空格。然后检查 config.toml 里env_key = "OPENAI_API_KEY"和 auth.json 的字段名是否匹配。如果用的是环境变量,确认$env:OPENAI_API_KEY在当前终端里能echo出来。

local proxy failed。症状是请求发不出去,报连接失败或超时。原因一般是 base_url 填错或网络不通。先确认 base_url 是https://taotoken.net/api,结尾没有多余的斜杠或/v1。然后用curl https://taotoken.net/api/models -H "Authorization: Bearer sk-..."手动测一下端点通不通。如果 curl 也失败,说明网络层有问题,检查代理设置或防火墙。如果 curl 通但 Codex 不通,说明 Codex 的配置没读到,检查CODEX_HOME环境变量指向的目录对不对。

reading choices 相关错误。症状是请求发出去了,但解析返回时失败,报cannot read property 'choices' of undefined或类似。原因是返回的 JSON 结构不是标准 OpenAI 格式,Codex 找不到choices字段。这通常发生在 base_url 指向了一个非兼容端点,或者端点返回了错误信息但 HTTP 状态码是 200。排查方法:用 curl 直接请求一次,看返回的 JSON 顶层有没有choices数组。如果没有,说明端点不兼容,换回https://taotoken.net/api。

OAuth 报错。症状是用codex auth login走 ChatGPT 账号登录时,浏览器回调失败或报OAuth state mismatch。原因是本地回调端口被占用,或者浏览器和 CLI 的会话对不上。修法:先关掉所有浏览器窗口,重新跑codex auth login,确保回调时用的是同一个浏览器。如果还不行,改用手动 API Key 方式,在 auth.json 里直接填 Key,跳过 OAuth 流程。

错误 1385:沙箱用户无法登录。症状是沙箱用户创建成功,但启动沙箱命令时被 Windows 策略阻止。原因是组策略或 OU 配置限制了登录权限。修法:联系 IT 检查组策略,或者临时切到unelevated模式:

[windows] sandbox = "unelevated"

WSL2 中 I/O 过慢。症状是 Codex 在 WSL2 里跑命令特别慢,尤其是读写文件时。原因是仓库放在了/mnt/c/下,这是 Windows 分区挂载点,跨文件系统 I/O 极慢。修法:把仓库迁到 WSL 原生文件系统:

mv /mnt/c/projects/myapp ~/code/myapp cd ~/code/myapp codex

IDE 扩展无响应。症状是 VS Code 里的 Codex 扩展卡住或没反应。原因通常是缺 C++ 构建工具。修法:

winget install --id Microsoft.VisualStudio.2022.BuildTools -e

装完必须完全重启 VS Code,不是 reload window,是彻底关掉再开。

排查时如果需要提交诊断日志,发CODEX_HOME\.sandbox\sandbox.log这个文件。注意不要发CODEX_HOME\.sandbox-secrets\目录的内容,里面含敏感凭证。

6. 长期编码与 Agent 工作流的下一步:把 Codex 接进日常开发

配置跑通之后,真正决定效率的是怎么把它接进日常流程。并行 Agent 和 Computer Use 不是玩具,用对了能省掉大量重复劳动。我自己的做法是:每天早上先把当天的任务拆成三到五个独立单元,每个单元开一个 worktree Agent,让它们并行跑。人只需要在 Agent 产出 diff 后做审查和合并,中间的实现过程基本不用盯。

对于需要 GUI 验证的任务,比如前端改动后的页面检查、API 改动后的 Postman 回归,直接交给 Computer Use。你描述清楚步骤,它自己操作、截图、贴结果。这类任务以前得手动点半天,现在一句话搞定。

如果你要长期跑 Agent 工作流,建议把 Coding Plan 用起来,它针对的就是这种持续编码场景,额度和并发都比按次调用更划算。接入文档在 https://taotoken.net/doc 有完整说明,包括怎么在 config.toml 里切换不同的模型 provider。

模型选择上,日常编码用推理能力强的型号,Computer Use 这种需要视觉理解的任务则要确认模型支持多模态。TaoToken 的模型对话页面可以快速测一下当前 Key 能调哪些模型,地址是 https://taotoken.net/chat,填上 Key 就能试。

最后给一个实用技巧:把常用的 Codex 命令写成 PowerShell 函数,放在$PROFILE里。比如:

function cx-test { codex --worktree --cwd C:\projects\myapp "给 $args 补充单元测试" } function cx-fix { codex --worktree --cwd C:\projects\myapp "修复 $args" }

这样每天开工时cx-test auth就能起一个补测试的 Agent,省掉重复敲长命令的时间。Agent 跑起来后,你该干嘛干嘛,等它出 diff 再回来审查。这套流程跑顺之后,一个人同时推进三四个任务是很正常的事。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询