☰
Windows上安装使用codex:把auth.json改到TaoToken的完整配置流程
2026/10/7 7:59:33 网站建设 项目流程

1. Windows 上跑 codex 的真实痛点:鉴权文件到底该写哪

很多人第一次在 Windows 上装 codex,卡住的地方不是安装,而是鉴权。命令行里敲下codex,回车之后要么弹一个浏览器登录,要么直接报一句401 Unauthorized,然后你就盯着屏幕不知道下一步该干嘛。我见过太多人在这一步反复重装、反复卸载,最后放弃。

codex 这类命令行 AI 编码工具,本质上是把你的请求发到一个兼容 OpenAI 接口的服务端,服务端认的是你请求头里的 Key。它默认会去读一个叫auth.json的配置文件,里面存着OPENAI_API_KEY和可选的base_url。问题在于,Windows 上这个文件的默认路径藏得比较深,而且不同版本、不同安装方式(npm 全局装、独立 exe、包管理器装)路径还不一样。你如果只是照着 Linux 的教程改~/.codex/auth.json,在 Windows 上大概率找不到那个目录。

所以这篇要解决的核心问题就一个:在 Windows 上把 codex 的 auth.json 正确指向 TaoToken 的统一入口,让命令行里的 codex 能真正跑起来。适合谁?适合已经装好 Node.js、想在本地终端里用 AI 辅助写代码、但被鉴权配置卡住的开发者。你不需要懂太多网络知识,只要会复制粘贴路径、会改 JSON 就行。

我试过在 Windows 11 上用 npm 全局安装 codex,第一次跑的时候它自动生成了一个空的 auth.json,里面只有一行占位符。我把它改成 TaoToken 的地址和 Key 之后,一条最小请求就通了。下面把完整流程拆开讲,包括路径怎么找、字段怎么写、怎么验证、报错怎么排。

先说清楚 TaoToken 在这里扮演的角色:它是一个统一的模型调用入口,给你一个 Base URL 和一个 Key,你用这个 Key 去请求,它帮你转发到对应的模型。官网是 https://taotoken.net/?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= ,API 入口是 https://taotoken.net/api 。你不需要关心背后是哪家模型,只要把 Base URL 和 Key 填对,codex 就能用。

2. 前置准备:Node.js、codex 安装与 TaoToken Key 获取

在动 auth.json 之前,先把地基打好。这一章讲三件事:装 Node.js、装 codex、拿 TaoToken 的 Key。顺序不能乱,因为 codex 依赖 Node 环境。

2.1 装 Node.js(Windows 版)

去 Node.js 官网下载 LTS 版本的 Windows 安装包(.msi),双击一路下一步。装完之后打开 PowerShell,输入:

node -v npm -v

正常会返回类似v20.11.0和10.2.4的版本号。如果提示「不是内部或外部命令」,说明环境变量没配好,重启一下 PowerShell 或者重新装一遍勾选「Add to PATH」。

这里有个坑:有些人电脑上装了多个 Node 版本,npm全局包的路径会乱。你可以用npm config get prefix看一下全局安装目录,记下来,后面找 codex 的配置目录会用到。

2.2 安装 codex

用 npm 全局安装是最省事的方式:

npm install -g @openai/codex

如果你用的是别的包名或者独立安装包,装完之后在 PowerShell 里输入codex --version,能打印版本号就说明装好了。如果提示找不到命令,检查一下npm config get prefix返回的目录有没有加到系统 PATH 里。

装好之后先别急着跑,因为第一次跑它会尝试初始化配置。你可以先手动创建配置目录,避免它生成到奇怪的地方。

2.3 拿 TaoToken 的 Key

打开 https://taotoken.net/api-keys ,登录之后创建一个新的 API Key。复制出来,形如sk-xxxxxxxx。这个 Key 就是你后面要填进 auth.json 的东西。

同时记下 Base URL:https://taotoken.net/api。注意这里不要加 UTM 参数,API 地址就是干净的https://taotoken.net/api。

注意:Key 只显示一次,复制后先存到记事本里,别弄丢。丢了就重新建一个。

到这里前置就齐了:Node 有了,codex 装了,Key 和 Base URL 在手。接下来进入核心配置环节。

3. 可复制配置:auth.json 字段模板与路径定位

这一章是全文最关键的部分。我会给出 auth.json 的完整可复制模板,告诉你 Windows 上这个文件到底在哪,以及每个字段是什么意思。

3.1 找到 auth.json 的正确路径

Windows 上 codex 读取配置的目录通常是用户主目录下的.codex文件夹。具体路径是:

C:\Users\你的用户名\.codex\auth.json

怎么确认?在 PowerShell 里输入:

echo $env:USERPROFILE

它会返回类似C:\Users\Administrator的路径。然后拼接\.codex\auth.json就是完整路径。

如果这个目录不存在,手动创建:

mkdir $env:USERPROFILE\.codex

有些安装方式(比如通过某些包管理器)会把配置放到%APPDATA%\codex下。你可以两个地方都看一下,哪个存在就用哪个。判断标准很简单:哪个目录里有auth.json或者config.toml,就以哪个为准。

3.2 auth.json 可复制模板

用记事本或者 VS Code 打开(或新建)auth.json,把下面这段完整粘进去:

{ "OPENAI_API_KEY": "sk-你的TaoToken密钥", "base_url": "https://taotoken.net/api" }

字段说明:

字段含义填什么
OPENAI_API_KEY鉴权密钥你在 TaoToken 创建的sk-开头的 Key
base_url请求入口固定填https://taotoken.net/api

注意 JSON 格式很严格:键和值都要用双引号,最后一行不能有多余逗号。很多人报reading choices或者解析错误,就是因为 JSON 写坏了。

3.3 如果 codex 用的是 config.toml

部分版本的 codex 除了 auth.json,还会读一个config.toml。如果你在.codex目录里看到这个文件,可以顺便把模型和入口也写进去:

model = "gpt-4o-mini" model_provider = "taotoken" [model_providers.taotoken] name = "TaoToken" base_url = "https://taotoken.net/api" env_key = "OPENAI_API_KEY"

这样 codex 启动时就知道去读环境变量里的 Key,并用 TaoToken 的入口。env_key指向的变量名要和 auth.json 里的键名对应上。

3.4 三件套对照:Base URL + Key + Model ID

不管你用哪种配置方式,核心就三样东西,缺一不可:

  • Base URL:https://taotoken.net/api
  • Key:sk-开头的 TaoToken 密钥
  • Model ID:比如gpt-4o-mini、claude-3-5-sonnet等,按你实际要用的模型填

这三样在 auth.json、config.toml、以及后面要讲的 CC Switch / Cline MCP 里都是通用的。记住这个组合,换工具的时候直接套。

配置写完保存,关掉编辑器。下一步就是验证它到底通没通。

4. 验证请求:一条最小命令确认鉴权生效

配置写好了不代表生效,必须发一条真实请求验证。这一章给你两种验证方式:一种是用 codex 自己跑,一种是用 curl 直接打接口。

4.1 用 codex 跑最小请求

打开 PowerShell,进入任意一个项目目录,输入:

codex "用一句话解释什么是递归"

如果鉴权配置正确,它会返回一段模型生成的文字。第一次跑可能会提示你选择模型或者确认一些设置,按提示走就行。

预期返回:一段正常的中文或英文回答,没有报错。如果返回401或者Unauthorized,说明 Key 没填对或者没被读到。

4.2 用 curl 直接验证接口

如果你想把鉴权和 codex 本身解耦,直接用 curl 打 TaoToken 的接口,这样能排除 codex 配置的干扰:

curl https://taotoken.net/api/v1/chat/completions ` -H "Content-Type: application/json" ` -H "Authorization: Bearer sk-你的TaoToken密钥" ` -d '{ "model": "gpt-4o-mini", "messages": [{"role": "user", "content": "ping"}] }'

注意 PowerShell 里换行符是反引号`,不是 Linux 的反斜杠。如果你在 CMD 里跑,换行符又不一样,建议统一用 PowerShell。

预期返回是一段 JSON,结构类似:

{ "choices": [ { "message": { "role": "assistant", "content": "pong" } } ] }

只要看到choices数组里有内容,就说明 Key 和 Base URL 都是对的。如果返回401,检查 Key 有没有复制全、有没有多余空格。如果返回model not found,检查 model 字段拼写。

4.3 验证成功后的状态

当 curl 和 codex 都能正常返回,说明整条链路通了:codex 读 auth.json → 拿到 Key 和 Base URL → 请求 TaoToken → 返回结果。这时候你就可以正常在命令行里用 codex 写代码、改 bug、生成测试了。

如果验证失败,别急着重装,先看下一章的排查清单,90% 的问题都在那几个点上。

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

这一章按真实报错来排。我把最常见的四类错误列出来,每个都给出原因和解决步骤。

5.1 401 Unauthorized

现象:codex 或 curl 返回401,提示鉴权失败。

原因:Key 不对、Key 没被读到、或者请求头格式错。

排查步骤:

第一,确认 auth.json 里的OPENAI_API_KEY是完整的sk-开头字符串,没有换行、没有空格。你可以用 PowerShell 打印出来看:

Get-Content $env:USERPROFILE\.codex\auth.json

第二,确认 codex 读的是这个文件。有些版本会优先读环境变量OPENAI_API_KEY,如果系统里设了一个旧的、错的变量,会覆盖文件配置。检查一下:

echo $env:OPENAI_API_KEY

如果有值且不是你的 TaoToken Key,清掉它:

Remove-Item Env:\OPENAI_API_KEY

第三,确认 Base URL 是https://taotoken.net/api,没有多余斜杠或路径。

5.2 local proxy failed

现象:报错里出现local proxy failed或类似连接失败的字样。

原因:通常是本地网络配置或者代理设置干扰了请求。注意,这里说的是你本机可能存在的网络软件配置,不是让你去搞什么特殊网络手段。很多公司电脑装了安全软件或者网络管控工具,会拦截出站请求。

排查步骤:

先确认能不能直接访问 TaoToken 的接口。用 curl 打一下:

curl -I https://taotoken.net/api

如果这一步就失败,说明是网络层的问题,跟 codex 无关。检查系统代理设置(Windows 设置 → 网络和 Internet → 代理),把不需要的代理关掉。如果你在公司网络里,可能需要联系 IT 放行。

如果 curl 能通但 codex 报这个错,检查 codex 自己的代理配置。有些版本会读HTTP_PROXY/HTTPS_PROXY环境变量,清掉它们:

Remove-Item Env:\HTTP_PROXY -ErrorAction SilentlyContinue Remove-Item Env:\HTTPS_PROXY -ErrorAction SilentlyContinue

5.3 reading choices 报错

现象:报错信息里有reading 'choices'或者cannot read property 'choices' of undefined。

原因:请求返回的 JSON 结构里没有choices字段,通常是接口返回了错误信息,但 codex 没处理好,直接去读choices就崩了。

排查步骤:

用 curl 手动打一次接口,看真实返回是什么。大概率返回的是{"error": {...}},里面会写明原因,比如invalid_api_key、model_not_found、insufficient_quota。

  • 如果是invalid_api_key,回到 5.1 检查 Key。
  • 如果是model_not_found,检查 config.toml 或请求里的 model 字段,换成 TaoToken 支持的模型 ID。
  • 如果是insufficient_quota,去 TaoToken 控制台看一下额度。

5.4 OAuth 相关报错

现象:codex 启动时弹浏览器登录,或者报 OAuth 失败。

原因:codex 默认可能走 OAuth 登录流程,而不是读 auth.json。你需要显式告诉它用 API Key 模式。

排查步骤:

检查有没有config.toml,在里面加上model_provider配置(参考 3.3 节)。或者在启动 codex 时加参数指定用 API Key。不同版本参数不同,常见的是--api-key或者通过环境变量。

如果它一直弹浏览器,说明它没读到 auth.json。确认文件路径对不对,文件名是不是auth.json(不是auth.json.txt,Windows 记事本容易加.txt后缀)。用 PowerShell 列一下目录:

Get-ChildItem $env:USERPROFILE\.codex

看到auth.json.txt就改名去掉.txt。

5.5 排查通用思路

遇到任何报错,按这个顺序走:先用 curl 验证 Key 和 Base URL 本身没问题 → 再确认 codex 读到了正确的配置文件 → 最后看是不是环境变量或网络层干扰。把变量一个个排除,问题一定定位得到。

6. 长期使用建议与接入入口

配置跑通只是开始,真正用起来还有几个点值得注意。

第一,Key 的管理。不要把 Key 硬编码到代码仓库里,auth.json 本身也不要提交到 git。如果你用 CC Switch 或者 Cline MCP 这类工具,它们各自有自己的配置文件,但核心三件套(Base URL + Key + Model ID)是一样的,照着填就行。

第二,模型选择。TaoToken 支持多种模型,日常写代码用轻量模型就够,复杂重构再换强一点的。你可以在 config.toml 里改model字段,或者请求时动态指定。

第三,如果你要做长期的编码任务或者 Agent 类应用,建议了解一下 Coding Plan,它更适合持续性的调用场景。入口在 https://taotoken.net/coding-plan?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= 。

第四,验证模型是否可用,可以直接在模型对话页面试:https://taotoken.net/models?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= 。输入一句话看返回,比在命令行里折腾快。

第五,Key 的创建和管理都在 https://taotoken.net/api-keys?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= 。接入文档在 https://taotoken.net/doc?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= ,遇到字段不确定就翻文档。

最后说一个我踩过的坑:Windows 上路径里的反斜杠和正斜杠混用,有时候 JSON 里写路径会出问题。auth.json 里只写 URL 不写本地路径,所以这个问题一般碰不到。但如果你在 config.toml 里配了什么本地路径,记得用双反斜杠\\或者正斜杠/。

配置这东西,第一次弄明白之后就是一劳永逸。把 auth.json 写对,Key 填对,剩下的就是享受命令行里 AI 帮你写代码的顺畅感了。

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

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

立即咨询