这两天一直在研究这个话题,踩了几个坑,把遇到的东西整理成文,供有需要的朋友参考。
目录
一、前言
Codex 被誉为2026年最值得上手的 AI 工具,它不仅是一个编程 Agent,更是一个几乎可以替换掉任何对话工具的全能 AI。配合高性价比的定价机制和充足的 Token 额度,只要你能想到的场景,它都能帮你自动化做好。可以说,Codex 完美复刻了ChatGPT的模板,让普通的用户也能方便使用一款专属定制、性能强大的桌面版AI助手。同时,在AI编程领域,Codex 也展现出了极高的水准,背后关联的ChatGPT5.5 最新的大模型在编程能力也是独树一帜,本篇将详细介绍Codex 中的一些高级进阶技巧的实用。
二、Codex 介绍
Codex 是 OpenAI 推出的一款AI 编程智能体。与简单的聊天机器人或代码补全工具不同,Codex 能像一个真实的开发人员一样,独立搞懂繁琐任务、操作你的电脑、编写并修改代码、运行终端命令,甚至自动修复bug。访问入口:https://openai.com/zh-Hans-CN/codex/?utm_source=Ai138.com
2.1 Codex 是什么
简单来说,可以把 Codex 看作一个“能帮你干活的AI工程师”。
- 它是“目标驱动”而非“指令驱动”:你只需告诉它最终的目标(例如:“帮我搭建一个带用户登录功能的网站”),它会自动拆解任务,规划步骤并执行,而不需要你一步步告诉它该怎么做。
- 它不只是一个聊天框:虽然你可以在ChatGPT网页版找到它,但它真正的威力在于桌面应用和命令行工具(CLI)。在这些地方,它可以直接访问你的文件系统、运行终端命令,甚至操作其他软件。
- 它的用户远超程序员:官方数据显示,Codex每周有超过300万用户,里面近一半(50%)的使用场景并非编码。从写周报、整理文档到数据分析,它都足以胜任。
2.2 Codex能做什么?
近期的重大更新让Codex的能力大幅跃升,使其不再局限于编程领域:
- 动打开软件、运行模拟器、发现问题、修改代码,并再次测试验证,做好一整套开发闭环。
- 所见即所得的开发(内置浏览器):Codex内置了一个浏览器。当你开发网页时,它可以直接在浏览器中展示效果。你可以直接在渲染出的网页上圈出问题,举个例子圈出一个标题并写上评论“字体太大,颜色改成蓝色”,Codex就能搞懂视觉和空间上下文,并精准地修改对应的代码。
- “心跳”机制与长期记忆:
- 记忆功能:它会记住你的编码偏好和纠正过的错误,下次再合作时,就不需要从头开始解释了。
2.3 Codex的不同使用模式
Codex给出了多种使用方式,用户可以根据自己的需求选择不同的入口:
使用方式
适合人群
核心优势
桌面应用
追求最佳体验的用户
具备最完整的功能,如可视化代码审查、并行任务管理、“操作电脑”功能等
命令行 (CLI)
习惯终端操作的程序员
路径最短,与代码仓库、编辑器和命令行工作流结合最紧密
IDE 插件
不想改变现有开发环境的程序员
在你熟悉的VS Code或Cursor等编辑器中直接调用Codex的能力,接入成本最低
网页版 (ChatGPT)
普通用户或轻度使用者
无需安装,登录 chatgpt.com 即可在左侧边栏找到它,适合处理简单的一次性任务
三、Codex 进阶技能使用
接下来通过实际操作案例演示Codex 的一些进阶技能的使用。
3.1 Codex 斜杆 / 命令使用
3.1.1 Codex 斜杆 / 命令介绍
Codex 里的斜杆 / 是快捷指令系统(Slash Commands)。
我们在对话框中输入/符号后,系统会立即弹出命令面板,列出所有可用命令及其说明。
想用 MCP、Skills、浏览器等只要输入 / 之后选择对应的功能即可。
如下,在对话框中输入斜杠之后,可以见到自动弹出了很多功能选项,方便用户对内置的这些功能项快速打开使用。
举个例子我想唤起飞书文档功能,选中即可
3.1.2 Codex 命令分类
Codex 目前给出 11 条内置斜杠命令,按功能可分为四大类别:上下文管理、代码与开发工作流、模型与推理控制、个性化与其他,这些内置命令在日常工作中有相对多的使用场景,下面分别做说明。
1)上下文管理
控制对话线程与上下文窗口的命令组。
- /compact 不会丢失关键上下文,它会智能保留重要的代码片段和决策信息,仅压缩冗余的对话轮次。
功能
说明
适用场景
/compact,/压缩
压缩上下文
将当前对话历史进行智能摘要,保留关键信息,释放 token 空间
长对话冒出来"上下文已满"警告时
/status,/状态
查看状态
输出当前对话 ID、已消耗的上下文 token 数、剩余额度等关键运行参数
决定是否执行耗 token 操作前
如下,在CLI对话终端,输入之后可以见到效果
2)代码与开发工作流
面向开发者的核心功能命令组。
- /side 和 /fork 的区别:/side 是对话层面的分支,适合快速试验;/fork 会创建 Git 分支,适合代码层面的并行开发。
功能
说明
适用场景
/review,/代码审查
代码审查
让 Claude 对当前文件或指定代码段进行系统性审查,检查潜在 bug、安全问题、性能瓶颈和代码风格
提交 PR 前、代码重构后
/side,/侧边
侧边对话
在临时分支中发起独立对话,不影响主线,做好后可合并、丢弃或保留
想快速试某个方案但不污染主对话历史
/fork,/派生
派生分支
将对话分叉为本地 Git 分支或全新工作树,支持并行探索不同方案
需要对比方案 A 与方案 B 时
/mcp
MCP 状态
列出当前对话中已连接的所有 MCP(Model Context Protocol)服务器,查看在线状态及可用工具列表
外部工具不响应时排查连接状态
3)模型与推理控制
调整 AI 能力与思考深度的命令组。
- 高强度推理响应更慢但答案更准确,低强度响应更快。调试繁琐 bug 时建议切换到高推理模式。
功能
说明
适用场景
/reasoning,/推理模式
推理强度
在低 / 中 / 高三档推理强度间切换,命令后实时显示当前档位
繁琐算法题调高,日常问答保持中低
/model,/模型
模型切换
在不同 AI 模型间切换,命令后显示当前模型名
快速生成样板代码选轻量模型,深度架构分析选旗舰模型
进去之后可以见到给出了多种模型可供选择
4)个性化与其他命令
体验定制与辅助功能命令组。
命令
功能
说明
适用场景
/persona,/个性
设置个性
调整 Claude 的回复语气和风格,如"简洁直接"、"详细教学"或"资深工程师"等预设
团队协作时统一输出风格
/feedback,/反馈
提交反馈
快速打开反馈通道,报告 bug、提出功能建议或分享使用体验
遇到输出质量问题时立即反馈
/pet,/宠物
桌面宠物
切换 Claude Code 内置的桌面宠物显示状态,一个小彩蛋功能
需要专注时收起,休息时唤出
3.1.3 常用的命令推荐
下面给出日常工作中推荐使用的命令
# 步骤1:开始新任务前,检查上下文余量
/status
# 步骤2:遇到复杂问题,提升推理强度
/reasoning # 切换至"高"档
# 步骤3:完成代码改动后,启动审查
/review
# 步骤4:探索不确定的方案,开启侧边对话
/side
# 步骤5:上下文快满时,压缩历史
/compact
# 清理当前上下文会话
/clear
3.1.4 Codex 终端交互命令使用
在某些情况下,可以不用打开codex的会话窗口,直接执行任务,使用 codex + 任务名称即可,如下:
使用场景:
- 当你已经清楚要问什么时,可以一行命令直接启动。
命令
说明
codex
启动交互式 TUI
codex "任务"
启动并执行指定任务
codex --version
显示版本信息
codex --help
显示帮助信息
3.2 Codex Skill 使用
Codex 中提供了对skills的使用,相当于是Codex自身能力的扩展,如下,打开Codex 桌面端可以看到列出了部分自带的skills
CLI中可以通过 /skills 命令查看内置的skill
进入之后,可以看到下面又弹出2个命令,第一个为列出skills
选择列出当前的skills,可以看到,codex 默认内置了一些常用的skills
3.2.1 使用内置的技能
如下,我们选择一个自带的技能使用一下,点击之后,自动跳转到一个新的对话框
接下来等待响应输出即可
如果是在CLI端,参考上面的列出skills之后,选择某一个skill,之后带上你的需求提示词即可
3.2.2 创建新技能
如果内置的技能不能满足你的个性化需求,codex 客户端界面上还提供了一个魔法技能,即基于这个魔法技能可以创造出属于你自己的技能,如下,点击右上角的New skill
来到下面的对话框,在这里可以创建属于你自己的skill
举个例子我这里让AI帮我创建一个工作周报文档输出的skill
我想创建一个技能,根据我提供的每周工作情况的描述,能够生成一份比较详细的工作周报总结
中间会陆续弹出需要用户手动确认的操作提示
生成完成后,可以做一下效果测试,直接在当前的会话里通过自然语言将这个技能加载进来
加载进来之后,在技能列表那里就能看到这个技能了
之后我们输入一段工作情况说明,让其生成周报总结
可以看到,很快就根据上面的技能输出了一份工作汇报
3.3 外部文件引用
在下面的这些场景中,你可能需要引用其他文件,从而给到AI作为背景参考资料:
- 参考其他现有的案例,生成类似的信息、资料
- 解读图片中的信息,如果自己写提示词难度较大
- 将其他文件作为上下文参考资料执行自己的任务
- ...
3.3.1 @引用文件
使用@命令,可以将指定的文件带入到当前的会话,如下,当我输入@+文件前缀的时候,自动会把当前目录下的文件带出来,然后按下 tab 键就能选中这个文件
- 引用具体文件,可以让Codex 工作更高效
比如下面这个需求,参考当前的文件,就能快速生成一份结构类似的文档
如果是在客户端使用@就更便捷了,输入@之后,自动会把需要引用的文件给带出来
3.3.2 引用图片
你可以直接把图片粘贴到编辑器里,这样就可以将图片作为上下文加载到prompt中去
当然,也可以在CLI终端窗口,使用 -i 或者 --image 来附加图片做处理,如下:
codex -i 图片完整路径 '提示词'
或者下面这样
codex --image 图片完整路径 '提示词'
3.4 恢复会话
3.4.1 codex 恢复会话常用命令
在codex 中恢复会话有下面几种命令:
- codex resume
codex resume -last
- 恢复最近的一次会话
- 通过会话ID恢复某个特定会话,会话ID可以通过 /status命令,或者在~/.codex/sessions/ 这个目录下找到
3.4.2 codex 恢复会话操作
当你在终端CMD窗口通过codex指令打开一个窗口时就表明开启了一个会话
官方文档说明,Codex 会把会话记录保存在本地,可以通过 codex resume 重新打开之前的会话,避免重复输入上下文。
如果不小心把会话窗口关闭了,适合长期任务,比如:
1. 一个复杂重构做了几天
2. 昨天已经分析过项目架构
3. 上次已经生成过迁移方案
4. 今天想继续接着处理
执行命令后选择最近的会话继续即可。如下,当我们关闭上面的会话窗口后,此时,CMD窗口输入:
codex resume
然后会弹出下面近期打开过的会话
光标定位到某一个上面之后,就可以快速进入到上次的对话
如果是通过会话ID恢复,可以先通过 /status 找到会话ID,如下,就是会话ID
codex resmue 会话ID
3.5 Codex 配置mcp
3.5.1 Codex mcp 介绍
Codex 还有一个扩展能力的方法就是MCP (模型上下文协议),简单的说,MCP就是 AI 大模型的标准化工具
箱,它能访问第三方文档、外部工具或共享信息。在下面的场景中可以考虑使用Codex MCP服务:
- 智能代码审查与分析:比如,对它说“分析
@src/目录下的代码架构,找出潜在的安全问题”。 - 自动化重构与文档生成:下指令如“使用 Codex 重构
@utils/下的数据处理逻辑,并生成相应的单元测试”。 - 大规模代码库搞懂:通过
@符号引用文件或整个目录,让你快速理解不熟悉的项目结构。
如果是在CLI命令行,可以通过 /mcp 命令唤起mcp
点进去之后,如果你已经提前配置过mcp服务,可以在这里展示出来
3.5.2 配置文件位置
MCP 服务器在 ~/.codex/config.toml 的 mcp_servers 部分配置。
3.5.3 Codex 配置MCP实操
通过看文档来学习如何配置MCP是枯燥难懂的事情,可以直接让Codex 帮我们完整开发一个MCP服务并且配置进去,通过其完整的执行过程来学习Codex是如何将一个MCP加载进去的,给出如下提示词
通过上述执行过程中的日志输出可以清晰看到Codex 配置MCP的完整过程,最终将MCP服务创造出来并且配置到config.toml这个文件中,打开之后可以看到已经写入进去了
MCP 服务放在当前打开的会话所在的项目目录下
此时再在Codex 客户端页面上也能看到这个MCP服务已经加载进去
我们测试一下效果如何,选中上面创建的这个MCP
在对话框中输入一段正则表达式
如果是CLI,可以通过 /mcp 进入,可以看到展示出来了上面安装的这个MCP服务
选择这个MCP 的名称,后面加上你的提示词即可
3.5.4 Codex MCP 补充
使用过MCP服务的同学应该不陌生,MCP 是有2种主流的使用方式,stdio 和HTTP ,Codex 对这两种方式的配置都支持
stdio 类型服务器
[mcp_servers.filesystem]
# 服务器启动命令
command = "npx"
# 传递给命令的参数
args = ["-y", "@modelcontextprotocol/server-filesystem", "./docs"]
# 服务器工作目录
cwd = "/path/to/workdir"
# 传递环境变量
env = {
NODE_ENV = "production"
}
HTTP 类型服务器
[mcp_servers.docs]
# MCP HTTP 服务器端点
url = "https://docs.example.com/mcp"
# 包含的 HTTP 头
http_headers = {
Authorization = "Bearer token"
}
限制可用工具
你可以限制 MCP 服务器暴露的工具:
- 使用工具限制可以提高安全性,只暴露你需要的工具。
[mcp_servers.filesystem]
# 允许的工具列表
enabled_tools = ["read_file", "write_file", "list_directory"]
# 拒绝的工具列表(在 enabled_tools 之后应用)
disabled_tools = ["delete_file"]
超时配置
[mcp_servers.slow_server]
command = "python"
args = ["-m", "slow_server"]
# 启动超时(秒,默认 10)
startup_timeout_sec = 30
# 每个工具调用超时(秒,默认 60)
tool_timeout_sec = 120
MCP 工具权限
- 你可以为每个 MCP 服务器的工具单独设置权限:
- approve 自动批准
- deny 自动拒绝
[mcp_servers.docs.tools.search]
# 权限模式:ask | approve | deny
approval_mode = "approve"
3.6 Codex 提示词编写技巧
掌握有效的提示词技巧是充分利用 Codex CLI 的关键。接下来详细介绍如何编写高效的提示词来获得最佳结果。
3.6.1 提示词工作原理
当你提交提示词时,Codex 会按以下循环工作,大致的工作流程如下:
1. 调用语言模型
2. 执行模型输出指示的操作(读取文件、编辑文件、运行工具等)
3. 重复直到任务完成或你取消
理解这个循环有助于你更好地设计提示词,因为 Codex 会在每个步骤中基于上下文做出决策。
基本示例:
# 解释代码功能
"Explain how the transform module works and how other modules use it."
# 添加新功能
"Add a new command-line option `--json` that outputs JSON."
# 修复 bug
"Fix the error in the login function"
3.6.2 编写有效提示词技巧
高质量的提示词不仅可以让Codex能更好的理解语义,从而给出更精准的任务执行结果,而且可以减少大模型的理解成本,让任务执行效率更高。
技巧 1:包含验证步骤
Codex 在能验证工作时会产生更高质量的输出。包含验证步骤可以帮助 Codex 确保正确性:
# 不推荐
"Write a function to sort a list"
# 推荐 - 包含验证
"Write a function to sort a list. Include test cases to verify it handles empty lists, already-sorted lists, reverse-sorted lists, and lists with duplicates. Run the tests to confirm they pass."
技巧 2:将复杂任务拆分为小步骤
Codex 处理较小的、专注的任务时表现更好。小任务更容易测试和审查:
# 不推荐 - 任务太大
"Create a complete user authentication system with login, registration, password reset, and OAuth"
# 推荐 - 拆分为小步骤
Step 1: Create a user model with email and password fields
Step 2: Add a registration endpoint
Step 3: Add a login endpoint with JWT
Step 4: Add password reset functionality
Let me know when Step 1 is done before moving to Step 2
技巧 3:提供上下文
提供 Codex 可以使用的上下文,能够让AI更好的理解问题的意图,比如引用相关文件和图像在提示词中:
# 不推荐
"Fix this bug"
# 推荐 - 包含详细信息
"Fix the bug in src/auth.py where users can't log in with special characters in their password. I've attached a screenshot of the error message and the relevant code section."
技巧 4:明确输出格式
告诉 Codex 你期望的输出格式:
# 指定代码风格
"Write a function to calculate Fibonacci numbers. Use TypeScript, include JSDoc comments, and follow functional programming principles."
# 指定输出结构
"Explain the codebase structure. Organize your answer with: 1) Overview 2) Key directories 3) Main entry points"
越具体的提示词通常会产生越好的结果。Codex 擅长理解意图,但你提供的信息越多,它的表现越好。
3.7 Codex AGENTS.md 设置
3.7.1 什么是 AGENTS.md ?
AGENTS.md,也就是你给codex设置的家法规矩。对于 Codex 而言,我们每开启一个新的对话窗口,它都会进入一个全新的上下文。它不记得之前发生了什么,对于整个项目的记忆都是空白的。
所以 Codex 提供了记忆系统来解决这样的问题:AGENTS.md 就是给 Codex 这类编码Agent看的项目说明文件,它可以描述项目结构、开发命令、测试要求、代码风格和协作边界。
通过 AGENTS.md,你可以确保 Codex 在整个代码库中遵循一致的规范。
更多内容介绍可以进入官方文档查看:AGENTS.md
3.7.2 AGENTS.md 层级与规范
AGENTS.md 的配置分为两个层级:全局级(影响所有项目)和项目级(仅影响当前文件夹)。建议先配置全局规则作为底线,再为特定项目补充专属要求。
AGENTS.md 的三层加载机制:
层级
加载规则
说明
全局层
读取 ~/.codex/AGENTS.override.md
若不存在则读取 ~/.codex/AGENTS.md,只取第一个非空文件
项目层
从 Git 根目录逐级向当前目录扫描
每层依次检查 AGENTS.override.md → AGENTS.md → project_doc_fallback_filenames 中的备选文件名
合并层
从根到叶依次拼接
越靠近当前目录的文件冒出来越晚,优先级越高
如果想要全局生效,有以下两种方式:
请默认用中文回答。
如果涉及代码或命令,请先用大白话解释目的,再给具体操作。
如果要修改文件、运行命令、访问外部账号,请先告诉我风险。
如果我的需求信息不完整,请先问我缺什么,不要直接编。
1. 在系统的全局 Codex 文件夹里面找到 agents.md,它是你为codex提供的全局通用的规则。
2. 在 Codex 桌面 App 里面打开设置,找到“个性化”,在里面填写“自定义指令”。这里面设置的就是全局的 agents.md 文件。
设置全局文件后,对于所有的项目都会生效。这个设好了,不管你以后开多少个新对话,他都会记得。
比如,你可以自定义指令
请默认用中文回答。
如果涉及代码或命令,请先用大白话解释目的,再给具体操作。
如果要修改文件、运行命令、访问外部账号,请先告诉我风险。
如果我的需求信息不完整,请先问我缺什么,不要直接编。
在Codex 客户端的设置中,找到个性化配置,然后将你要设置的规则粘贴进去,这里设置的就是全局级的指令,后面在每一个对话中都会全局生效。
3.7.3 AGENTS.md 编写技巧
对Claude Code 相对熟悉的同学应该还记得,CLAUDE.md文件在第一次生成的时候,可以使用 /init 命令生成,在Codex 中,针对项目级的AGENTS.md文件的生成,也可以使用同样的方式来生成,以Codex 在项目编程中的应用,有下面2种方式快速拿到AGENTS.md
1)方式一:通过自然语言对话
进入项目主目录后,输入下面的提示词
认真阅读并分析当前的PDA模块的项目,然后在当前模块的根目录下创建 AGENTS.md文件,该文件算是对pda模块项目的规范文件,后续整个开发团队都将遵守这个规范进行日常编程开发,我也会与你共创并完善这个文件
输入提示词之后,等待AI的响应,最终在项目根目录下生成了AGENTS.md 文件
- 通过检查生成的文件,可以看到,AI 完整解析了当前的这个模块的代码结构、当前项目的代码规范、日志规范等,后续可以继续根据实际情况对这个文件进行持续完善
2)方式二:使用 /init命令
进入项目主目录后,以CLI方式开启一个会话,直接输入 /init 命令,等待AI生成AGENTS.md 文件
小结:
通常来说,针对于我们打开的项目,可以在项目根目录下创建一个 agents.md 的文件,它是 Codex 的记忆文件,Codex 在开始工作之前会先读取 agents.md 的内容,可以将其理解为打开会话的时候,自动将agents.md 的内容加载到上下文环境中
四、写在文末
本文通过较大的篇幅详细介绍了Codex 的一些实用高级技巧,在日常开发工作中有相对多的应用场景,并通过案例介绍了相关技巧的具体操作实践过程,希望对看到的同学有帮助,本篇到此完成,感谢观看。
这篇笔记就先到这里,后面用到新的思路或者发现有问题再补充。
评论 (0)
暂无评论