在 Windows 上通过 WSL2 使用 Codex

在 WSL2 中使用 Codex 有两种方式。在 ChatGPT 桌面应用中,打开 Settings,将智能体从 Windows 原生切换为 WSL,然后重启应用。或者用 Linux 安装程序在 WSL2 发行版中安装 Codex CLI。从 Codex 0.115 起不再支持 WSL1,因此请先将你的发行版转换为 WSL2。

适用于: Windows 11, WSL2, ChatGPT desktop app, Codex CLI

本页译自英文指南。命令和文件名保持不变。如两者有出入,以英文页面和官方来源为准。

开始之前:确认是 WSL2

在 PowerShell 中运行:

wsl -l -v

VERSION 列必须显示 2。如果显示 1,请用 wsl --set-version <DistroName> 2 转换该发行版。OpenAI 的文档说明 WSL1 只支持到 Codex 0.114。参见 WSL1 错误。

方式 A:桌面应用,智能体运行在 WSL 中

  1. 在 ChatGPT 桌面应用中打开 Settings(设置)。
  2. 将智能体从 Windows native(Windows 原生)切换为 WSL。
  3. 重启应用。 重启之前更改不会生效。你的项目保持不变。

集成终端需要单独配置。你可以让智能体在 WSL 中运行,同时终端仍使用 PowerShell,也可以两者都使用 WSL。

方式 B:在 WSL2 中使用 Codex CLI

打开 WSL2 shell,使用 Linux 安装程序:

curl -fsSL https://chatgpt.com/codex/install.sh | sh
codex

在 Windows 和 WSL 之间共享配置、登录状态和历史记录

Windows 应用将 Codex 主目录放在 %USERPROFILE%\.codex。WSL 中的 CLI 默认使用 ~/.codex,因此两者不会共享设置、缓存的认证信息或会话。如需共享,请让 WSL 指向 Windows 目录:

export CODEX_HOME=/mnt/c/Users/<windows-user>/.codex

将这一行添加到 ~/.bashrc 或 ~/.zshrc 中,使其永久生效。

项目放在哪里

如果你继续使用 Windows-native(Windows 原生)智能体,OpenAI 建议将项目存放在 Windows 驱动器上,并在 WSL 中通过 /mnt/<drive>/... 访问。从 \\wsl$\ 打开项目也能用,但可能检测不到 Git。参见解决方法。

常见问题

在 Windows 上使用 Codex 必须要有 WSL 吗?

不必。桌面应用默认使用原生 Windows 并配有 Windows 沙盒,CLI 也有自己的 PowerShell 安装程序。只有当你的工具链本来就在 Linux 中时,才需要使用 WSL2。

为什么 WSL 中的 CLI 记不住我在桌面应用中的登录状态?

WSL 中的 CLI 默认使用 Linux 主目录,而 Windows 应用使用 %USERPROFILE%\.codex。用 CODEX_HOME 让 WSL 指向 Windows 目录,即可共享两者。

来源

本页的每条说明都附有官方来源链接。如果本页内容与官方来源不一致,请以官方来源为准,并告诉我们。