根本原因是codex底层cli进程未正确解码非ascii路径,导致文件系统调用失败;确认中文用户名后唯一稳定解法是启用wsl2并移入linux环境运行,windows原生环境无补丁可绕过此限制。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

Codex在Windows上无法识别含中文字符的路径(如C:Users张三Documentsproject),根本原因是其底层CLI进程启动时未正确解码非ASCII路径,导致文件系统调用失败、读取返回空或报EPERM错误;该问题与PowerShell版本、环境变量编码、用户目录命名三者强耦合。
确认是否为中文用户名引发的路径崩溃
打开命令提示符(CMD),执行:echo %USERPROFILE%。若输出路径中包含中文(如C:Users张三),则已触发已知缺陷——Codex在初始化%USERPROFILE%.codex目录时会因路径编码不匹配直接中断,连日志都不写入。
这一步必须先做。跳过它直接改配置,所有后续操作都无效。
【关键前提】若确认是中文用户名,唯一稳定解法是启用WSL2并把Codex完全移入Linux子系统运行;Windows原生环境无补丁可绕过此限制。
修复PowerShell终端对中文路径的解析能力
方法一:强制使用PowerShell 7并设置UTF-8默认编码
① 卸载Windows自带的PowerShell 5.1(控制面板→程序和功能→卸载“Windows PowerShell”无实际效果,只需确保不调用它);
② 下载安装PowerShell 7(pwsh)最新版,官网地址:https://aka.ms/powershell;
③ 启动pwsh,执行:$PSDefaultParameterValues['Out-File:Encoding'] = 'utf8';
④ 编辑PowerShell配置文件:notepad $PROFILE,在末尾添加:[Console]::OutputEncoding = [Text.Encoding]::UTF8 → 保存并重启pwsh。
方法二:临时规避路径编码问题(仅限单次调试)
在pwsh中执行:cd "\?C:Users张三Documents"。这种NTFS扩展路径语法可绕过Win32 API的编码转换层,让Codex直接访问中文路径下的文件,但不能用于配置文件硬编码。
重定向Codex工作区到英文路径
打开Codex App → 左侧导航栏点击「项目」→ 弹窗中**不要选择任何含中文的父目录**,而是新建一个纯英文路径(如D:codex-workspace)作为根目录 → 点击确认。
这一步操作起来很简单,直接把文件夹拖进去就行。但注意:Codex不会自动同步旧项目,你必须手动将原中文路径下的代码复制进新英文路径,否则AI仍会报“文件不可访问”。
【不可逆操作】一旦设置新项目路径,Codex将永久忽略原中文路径下所有文件,包括.git、node_modules等隐藏结构。
检查并清理残留的中文路径注册表项
按下Win + R,输入regedit回车 → 导航至HKEY_CURRENT_USERSoftwareCodex → 查看右侧是否有名为lastProjectPath或installDir的字符串值 → 若其数据含中文路径(如C:Users张三AppDataLocalCodex),双击修改为英文路径(如C:UsersJohnAppDataLocalCodex)。
修改后必须关闭所有Codex相关进程(任务管理器中结束codex.exe、codex-agent.exe),否则新注册表值不会被读取。











