Skip to content

Codex 常见问题

更高效地使用 Codex 的技巧

核心原则

  1. 任务拆分:避免提交过于笼统的任务,如「写一个管理系统后端」。将任务拆分为更小、更具体的模块。Codex 最适合「指哪打哪」的精确指令。

  2. 保持掌控:在提交前评估任务,确保已适当分解。预判哪些文件会被修改,防止 AI 超出你的理解范围导致项目混乱。

  3. 避免压缩:大多数任务只需要 Codex 上下文窗口的约 60%。需要压缩说明任务拆分不够充分。高级用户很少需要压缩内容。

AI 在当前阶段是一个出色的 Copilot,基础知识决定了使用效果。

在 Windows 上流畅使用 Codex

解决: 文件读写、编码问题、高 token 消耗、项目记忆缺失

推荐的 MCP 工具

  • Serena:具有语义搜索和项目记忆的编码代理(GitHub
  • Desktop-Commander:文件操作工具(GitHub

Serena 安装步骤

  1. 验证 Python 安装(终端运行 python
  2. 安装 uv 管理器:pip install uv
  3. 验证 Git 安装
  4. 创建 MCP 目录,运行:git clone https://github.com/oraios/serena.git
  5. 进入 serena 目录:cd serena
  6. 启动 Serena MCP:
bash
uv run serena start-mcp-server --context codex --transport streamable-http --port 9121

Desktop-Commander 安装

bash
npx @wonderwhy-er/desktop-commander@latest setup

配置文件 (config.toml)

toml
model_provider = "xiaomaai"
model = "gpt-5.3-codex"
model_reasoning_effort = "high"
network_access = "enabled"
disable_response_storage = true
windows_wsl_setup_acknowledged = true
model_verbosity = "high"

[model_providers.xiaomaai]
name = "xiaomaai"
base_url = "https://code-plan.pony.codes/v1"
wire_api = "responses"
requires_openai_auth = true

[mcp_servers.desktop-commander]
type = "stdio"
command = "cmd"
args = ["/c", "npx", "-y", "@wonderwhy-er/desktop-commander@latest","--no-onboarding"]

[mcp_servers.desktop-commander.env]
SystemRoot = 'C:\Windows'

[mcp_servers.Serena]
type = "http"
url = "http://127.0.0.1:9121/mcp"

AGENTS.md 模板

markdown
# Codex Global Work Guide

## Response Style:
 - Use Chinese
 - Prioritize table format for summaries, plans, tasks, and long content

## Tool Usage:
1. File/code search: Use Serena MCP
2. File operations: Create, read, edit, delete
    - Prioritize apply_patch tool
    - Use Desktop-Commander if apply_patch fails
    - Never use cmd, PowerShell, or Python for file operations

注意

此提示是为 VSCode Codex 插件配置的(apply_patch 仅在 VSCode 中可用,CLI 中不可用)。

常用 Codex 命令

命令说明
/model选择当前模型
/approvals设置会话审批规则
/review审查工作区变更
/resume继续之前的会话
/new开始新对话
/init生成 AGENTS.md 模板
/compact压缩摘要以释放上下文
/undo撤销上次操作
/diff查看包含未追踪文件的 git diff
/mention添加文件/目录到上下文
/status查看会话配置和 token 使用量
/mcp列出可用的 MCP 工具
/exit退出 Codex CLI

命令参考

Windows 编码问题

  1. Win+R,输入 intl.cpl
  2. 点击「管理」选项卡 → 「更改系统区域设置」按钮
  3. 勾选指定选项,点击确定两次,重启电脑

编码设置

在 VSCode Codex 插件中设置最新模型

Windows

Win+R,输入 %userprofile%\.vscode\extensions

macOS

在 Finder 中按 Command+Shift+G,输入 ~/.vscode/extensions

  1. 找到以 openai.chatgpt 开头的文件夹(选择最新版本)
  2. 进入 webview\assets 文件夹
  3. 下载替换脚本,提取并复制 JS 文件到文件夹
  4. 重启 VSCode 以访问最新模型

配置全局提示 (AGENTS.md)

  1. 参考 Codex CLI 配置 步骤 1-2
  2. 编辑或创建 AGENTS.md 文件
  3. 保存并重启 Codex/VSCode 使更改生效

启用内置网页搜索

  1. 参考 Codex CLI 配置 步骤 1-2
  2. 打开 config.toml,添加:
toml
[features]
web_search_request = true
  1. 运行 Codex 并测试

容器/CLI 沙箱中的网络连接问题

症状: 沙箱/容器中网络故障(包安装失败),而其他工具正常工作。

解决方案: 将 MTU 值更改为 1500(通常在 Clash 客户端设置中)。Linux 用户请参考:相关讨论

连接失败错误

错误信息: Connection failed: error sending request for url (https://code-plan.pony.codes/v1/responses)

排查步骤:

  1. 检查网络连接
  2. 禁用代理/VPN 工具
  3. 在 Codex CLI 中测试:运行 codex 命令
  4. 如果是 VSCode 问题:重启 VSCode
  5. 如果仍未解决,联系客服并附上截图

401 Unauthorized 错误

错误信息: exceeded retry limit, last status: 401 Unauthorized

Windows 检查

cmd
cmd /c "echo ================= OPENAI ENV CHECK ================= & ^
if defined OPENAI_API_KEY (echo OPENAI_API_KEY  = OK) else (echo OPENAI_API_KEY  = MISSING) & ^
if defined OPENAI_BASE_URL (echo OPENAI_BASE_URL = OK) else (echo OPENAI_BASE_URL = MISSING) & ^
echo ========================================================="

macOS 检查

bash
echo "================= OPENAI ENV CHECK ================="
if [ -z "$OPENAI_API_KEY" ]; then
  echo "OPENAI_API_KEY  = MISSING"
else
  echo "OPENAI_API_KEY  = OK"
fi

if [ -z "$OPENAI_BASE_URL" ]; then
  echo "OPENAI_BASE_URL = MISSING"
else
  echo "OPENAI_BASE_URL = OK"
fi
echo "========================================================"

如果配置有误:

  • Windows:cmd /c "setx OPENAI_API_KEY \"\" & setx OPENAI_BASE_URL \"\""
  • macOS:unset OPENAI_API_KEY OPENAI_BASE_URL

然后验证:

  1. 检查 ~/.codex/auth.json 中的 ApiKey 配置
  2. 检查 ~/.codex/config.toml 中的请求地址

403 Forbidden 错误

错误信息: unexpected status 403 Forbidden: {"error":{"message":"Usage not included in your plan"

解决方案:

  1. Ctrl+C 停止(或在 VSCode 中点击停止)
  2. 重试对话
  3. 如果连续 3 次以上仍然出现,联系客服并附上截图

小马AI