news 2026/7/6 2:42:36

Windows 11 下安装 Codex CLI,并配置独立 API 模式与桌面端分离使用

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Windows 11 下安装 Codex CLI,并配置独立 API 模式与桌面端分离使用

1. 目的

本文记录在 Windows 11 中安装 Node.js、npm、Codex CLI,并配置一个独立的终端 API 环境,使其与 Codex 桌面端账号环境分离。

目标工作流如下:

Codex 桌面端 → 使用原有账号登录,保持不退出 PowerShell 终端模式 → 使用独立 API key 调用模型

这样做的好处是:

  1. 桌面端账号保持原状态,不需要频繁退出或重新登录。
  2. 终端中的 Codex CLI 可以单独使用 API key。
  3. 两套环境通过不同的CODEX_HOME目录隔离,减少互相影响的风险。

2. 安装 Node.js LTS

在 Windows PowerShell 中运行:

winget install--id OpenJS.NodeJS.LTS

如果提示是否接受协议,输入:

y

安装完成后,关闭当前 PowerShell,重新打开一个新的 PowerShell,然后检查:

node-v

成功时会显示类似:

v24.x.x

再检查 npm:

npm.cmd-v

注意:在 PowerShell 中直接运行:

npm-v

有时可能会报执行策略错误,例如:

无法加载文件 C:\Program Files\nodejs\npm.ps1,因为在此系统上禁止运行脚本。

这通常不是 npm 没装好,而是 PowerShell 执行策略拦截了npm.ps1。此时使用:

npm.cmd-v

即可。


3. 安装 Codex CLI

使用 npm 安装 Codex CLI:

npm.cmd install-g @openai/codex

安装完成后检查:

where.exe codex codex.cmd--version

如果安装成功,会看到类似输出:

C:\Users\<用户名>\AppData\Roaming\npm\codex C:\Users\<用户名>\AppData\Roaming\npm\codex.cmd codex-cli x.x.x

如果where.exe codex没有输出,可以查看 npm 全局安装路径:

npm.cmd config get prefix

常见路径是:

C:\Users\<用户名>\AppData\Roaming\npm

如有必要,可以临时加入当前 PowerShell 的 PATH:

$env:Path+=";C:\Users\<用户名>\AppData\Roaming\npm"where.exe codex codex.cmd--version

4. 创建终端 API 专用 Codex 环境

不要直接使用默认 Codex 配置目录。默认目录通常是:

C:\Users\<用户名>\.codex

为了避免影响桌面端账号环境,建议为终端 API 模式单独建立一个目录:

$env:CODEX_HOME="$HOME\.codex-api-openai"New-Item-ItemType Directory-Force$env:CODEX_HOME|Out-Nullnotepad"$env:CODEX_HOME\config.toml"

这里的核心是:

$env:CODEX_HOME="$HOME\.codex-api-openai"

它表示当前 PowerShell 窗口中的 Codex CLI 会使用:

C:\Users\<用户名>\.codex-api-openai

而不是默认的:

C:\Users\<用户名>\.codex

这样可以把终端 API 模式和桌面端账号模式隔离开。


5. 编写config.toml

在打开的记事本中粘贴以下内容:

model_provider = "OpenAI" model = "<供应商提供的模型名>" review_model = "<供应商提供的模型名>" model_reasoning_effort = "xhigh" disable_response_storage = true network_access = "enabled" windows_wsl_setup_acknowledged = true [model_providers.OpenAI] name = "OpenAI" base_url = "https://<你的API服务地址>/v1" wire_api = "responses" env_key = "OPENAI_API_KEY" [features] goals = true

保存并关闭记事本。

需要替换的内容有两处:

<供应商提供的模型名> https://<你的API服务地址>/v1

例如,如果供应商文档给出的模型名是:

example-model

API 地址是:

https://api.example.com/v1

则对应写成:

model = "example-model" review_model = "example-model" [model_providers.OpenAI] base_url = "https://api.example.com/v1"

注意:不要把真实 API key 写入config.toml


6. 不要使用requires_openai_auth = true

如果目标是使用 API key,不建议在配置中写:

requires_openai_auth = true

因为它表示使用账号认证,而不是环境变量中的 API key。

终端 API 模式中应使用:

env_key = "OPENAI_API_KEY"

这表示 Codex 会从 PowerShell 环境变量OPENAI_API_KEY中读取 API key。


7. 设置 API key 并运行 Codex CLI

每次要使用终端 API 模式时,打开 PowerShell,运行:

$env:CODEX_HOME="$HOME\.codex-api-openai"$env:OPENAI_API_KEY="<你的API_KEY>"codex.cmd

注意:

不要把真实 API key 写入文章 不要把真实 API key 写入 config.toml 不要截图暴露 API key 不要把 API key 发给他人

API key 只保存在当前 PowerShell 窗口的临时环境变量中。关闭 PowerShell 后,这个临时变量会失效。


8. 判断当前是否处于 API 模式

可以在 PowerShell 中运行:

Get-ChildItemEnv:CODEX_HOMEGet-ChildItemEnv:OPENAI_API_KEY

如果看到类似:

CODEX_HOME C:\Users\<用户名>\.codex-api-openai OPENAI_API_KEY <已设置>

说明当前 PowerShell 窗口处于 API 模式。

也可以查看配置文件:

notepad"$env:CODEX_HOME\config.toml"

确认其中包含:

env_key = "OPENAI_API_KEY"

并且不包含:

requires_openai_auth = true

9. 退出 API 模式

最简单的方法是:

直接关闭当前 PowerShell 窗口

因为下面两个变量都是当前 PowerShell 窗口中的临时环境变量:

$env:CODEX_HOME$env:OPENAI_API_KEY

如果不想关闭窗口,也可以手动清除:

Remove-ItemEnv:CODEX_HOME-ErrorAction SilentlyContinueRemove-ItemEnv:OPENAI_API_KEY-ErrorAction SilentlyContinue

确认清除结果:

Get-ChildItemEnv:CODEX_HOME-ErrorAction SilentlyContinueGet-ChildItemEnv:OPENAI_API_KEY-ErrorAction SilentlyContinue

如果没有输出,说明当前窗口已经退出 API 模式。


10. 平常使用工作流

10.1 使用 Codex 桌面端

平常使用桌面版 Codex 时:

直接打开 Codex 桌面端 保持原账号登录 不要退出登录 不要重新登录 不要点 logout

桌面端继续使用原来的账号环境。

10.2 使用终端 API 版 Codex

需要使用 API 模式时,打开 PowerShell,运行:

$env:CODEX_HOME="$HOME\.codex-api-openai"$env:OPENAI_API_KEY="<你的API_KEY>"codex.cmd

此时终端 Codex 使用:

C:\Users\<用户名>\.codex-api-openai

不会使用默认的:

C:\Users\<用户名>\.codex

10.3 从 API 模式切回桌面端模式

关闭 PowerShell 窗口即可。

然后继续使用 Codex 桌面端。桌面端不需要退出,也不需要重新登录。


11. 推荐习惯

建议长期保持两套环境分离:

Codex 桌面端 → 原账号环境 PowerShell + .codex-api-openai → API key 环境

不要在 API 模式中运行:

codex.cmd logout

也不要在桌面端随意点击退出登录。

如果同时打开桌面端和终端 Codex,建议不要让它们同时修改同一个项目文件夹。更稳妥的做法是:

同一时间只让一个 Codex 修改项目文件 另一个 Codex 只用于查看、讨论或等待

12. 常见问题

问题 1:npm -v报执行策略错误

报错类似:

无法加载文件 C:\Program Files\nodejs\npm.ps1,因为在此系统上禁止运行脚本。

解决方式:

npm.cmd-v npm.cmd install-g @openai/codex

不需要修改系统执行策略。


问题 2:where.exe codex找不到

先检查 npm 全局路径:

npm.cmd config get prefix

如果输出类似:

C:\Users\<用户名>\AppData\Roaming\npm

则可以临时加入 PATH:

$env:Path+=";C:\Users\<用户名>\AppData\Roaming\npm"where.exe codex

问题 3:Codex CLI 启动后要求账号登录

通常说明配置没有走 API key。检查:

Get-ChildItemEnv:CODEX_HOMEGet-ChildItemEnv:OPENAI_API_KEY notepad"$env:CODEX_HOME\config.toml"

确认config.toml中有:

env_key = "OPENAI_API_KEY"

并且没有:

requires_openai_auth = true

问题 4:API 报 404、unsupported endpoint 或 invalid request

优先检查 API 地址是否正确。例如有些服务需要:

base_url = "https://api.example.com/v1"

有些服务可能要求:

base_url = "https://api.example.com"

需要按照供应商文档填写。

另外,如果配置中使用:

wire_api = "responses"

则要求 API 服务兼容对应的接口形式。如果供应商只兼容普通 chat completions,而不兼容 responses 接口,Codex CLI 可能无法正常使用。


13. 最终命令速查

首次安装 Node.js:

winget install--id OpenJS.NodeJS.LTS

重新打开 PowerShell 后:

node-v npm.cmd-v

安装 Codex CLI:

npm.cmd install-g @openai/codex where.exe codex codex.cmd--version

创建 API 专用配置目录:

$env:CODEX_HOME="$HOME\.codex-api-openai"New-Item-ItemType Directory-Force$env:CODEX_HOME|Out-Nullnotepad"$env:CODEX_HOME\config.toml"

日常启动 API 版 Codex:

$env:CODEX_HOME="$HOME\.codex-api-openai"$env:OPENAI_API_KEY="<你的API_KEY>"codex.cmd

退出 API 模式:

关闭 PowerShell 窗口

桌面端模式:

保持 Codex 桌面端登录,不退出,不 logout

14. 最终结构

最终建议形成如下结构:

Codex 桌面端 └── 使用原账号环境 └── 保持登录,不退出 PowerShell 终端 Codex CLI └── 使用独立 CODEX_HOME └── 使用环境变量 OPENAI_API_KEY 调用 API

这样可以实现桌面端和终端 API 模式的相对隔离,降低误退出、误覆盖配置或误触发重新登录的风险。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/6 2:40:31

调优:ChatOptions

通过 ChatOptions 可以在每次请求中控制模型行为&#xff1a;chatModel.prompt("写一首关于 Java 的诗").options(o -> o.temperature(0.8).max_tokens(500).top_p(0.9).systemPrompt("你是一位富有创造力的诗人。")).call();部分常用参数&#xff1a;方…

作者头像 李华
网站建设 2026/7/6 2:39:51

卡梅德生物技术快报|实操手册:CXCL4 蛋白原核表达全套工艺,两步层析去除蛋白多聚体附完整电泳数据

一、提出问题&#xff1a;实验室小分子重组蛋白原核表达实操四大工程化卡点一线蛋白制备技术员开展小分子碱性趋化因子蛋白原核表达时&#xff0c;极易遇到四类落地难题&#xff0c;严重拖慢实验进度&#xff1a;诱导参数无标准化参考&#xff0c;盲目调整温度、IPTG 浓度&…

作者头像 李华
网站建设 2026/7/6 2:35:47

Win11Debloat:Windows系统清理优化的终极免费解决方案

Win11Debloat&#xff1a;Windows系统清理优化的终极免费解决方案 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other changes to declutter and cu…

作者头像 李华
网站建设 2026/7/6 2:33:06

科技巨头无节制资本开支的容忍度

AI的泡沫已经愈发严重&#xff0c;不少相关企业的发展更是彻底脱离了商业基本逻辑。市值突破万亿港元的智谱&#xff0c;对照其当前营收水平&#xff0c;估值已然完全泡沫化。想要消化这份估值泡沫&#xff0c;企业需要达成极高的业绩增速&#xff0c;但以智谱目前的经营现状来…

作者头像 李华
网站建设 2026/7/6 2:32:20

MLX90615国产替代解读:红外测温传感器怎么选

MLX90615和90614同属迈来芯的红外测温产品线&#xff0c;但走的是完全不同的路线——低功耗、小体积、适合嵌入到空间和能耗受限的终端里。今天我们来聊聊MLX90615的国产替代方案该怎么选&#xff0c;以及领麦微在这个方向上给出的答案。MLX90615和90614&#xff0c;到底差在哪…

作者头像 李华