【地球 Online · AI 道具拆解室】
大家好,我是楚歌。 今天和大家聊一聊:【Codex 最佳实践指南:如何把 AI 编程助手用成队友】 ——
1. 事情是这样的
最近用 Codex 写代码,发现一个现象。
同样一个 AI,不同人用,效果能差 3 倍。
有人用 Codex,10 分钟搞定一个功能。 有人用 Codex,1 小时还在跟 AI 来回扯皮。
差别在哪?
不是 AI 的问题,是用法的问题。
我花了一下午,研究了一下官方文档和高手们的使用习惯。 整理了一份新手避坑指南。
2. 核心思维:把 Codex 当队友,不是当工具
错误用法:
用户:帮我写个登录功能Codex:(写了一堆代码)用户:不对,改一下Codex:(又改了一堆)用户:还是不对...正确用法:
用户:我要做一个登录功能,需求如下: - 支持手机号 + 验证码 - 支持邮箱 + 密码 - 需要 JWT 鉴权 - 参考 /auth 目录下的现有代码风格你先理解一下需求,有问题先问我。确认后再写代码。Codex:(先问几个澄清问题)Codex:(理解需求后,输出方案)Codex:(写代码,一次过)核心区别:
❌ 把 Codex 当一次性助手 → 效果不稳定 ✅ 把 Codex 当可配置的队友 → 效果越来越好的
3. 提示(Prompt)的四个要素
好的提示,包含四件事:
| 目标(Goal) | ||
| 上下文(Context) | ||
| 约束(Constraints) | ||
| 完成条件(Done when) |
完整示例:
我要添加用户登录功能(目标)参考 /auth 目录下的现有代码,保持风格一致(上下文)要求:- 使用 JWT 鉴权- 密码用 bcrypt 加密- 不修改现有用户表结构(约束)完成标准:- 单元测试通过率 100%- 能正常登录和注册- 错误提示友好(完成条件)效果对比:
4. 复杂任务:先规划,再动手
什么时候需要规划?
三种规划方法:
4.1 使用规划模式(Plan Mode)
最简单有效。
/plan 帮我设计一个用户积分系统Codex 会:
收集上下文 提出澄清问题 输出详细计划 你确认后再开始写代码
4.2 让 Codex"采访"你
如果你只有一个模糊想法:
我想做一个积分系统,但具体需求还不太清楚。你先问我问题,帮我理清需求,再写方案。Codex 会反过来问你:
积分怎么获取? 积分能用来做什么? 有没有过期机制? ...
问完再写方案,比你自己想半天快。
4.3 使用 PLANS.md 模板
适合长时间、多步骤的任务。
在项目里创建一个 PLANS.md 文件:
# 项目计划## 目标...## 步骤1. ...2. ...## 风险...Codex 会按这个计划执行,不会跑偏。
5. AGENTS.md:让指导可复用
这是最重要的习惯,没有之一。
AGENTS.md 是什么?
面向 AI 的 README。
它会自动加载到上下文中,告诉 Codex:
这个项目怎么构建 怎么测试 有什么约定和规范 什么算"完成"
5.1 AGENTS.md 包含什么
# 项目结构- /src 源代码- /tests 测试用例- /docs 文档# 如何运行npm installnpm run dev# 测试命令npm run test# 代码规范- 使用 TypeScript- 函数不超过 50 行- 必须写单元测试# 完成标准- 测试通过- lint 无警告- PR 被 review 通过5.2 三层 AGENTS.md
~/.codex/AGENTS.md | ||
项目根目录/AGENTS.md | ||
子目录/AGENTS.md |
优先级:子目录 > 仓库级 > 全局
5.3 什么时候更新 AGENTS.md
一个很好的经验法则:
当 Codex 两次犯同样的错误时,让它做一次回顾(retrospective),然后更新 AGENTS.md。
示例:
Codex 两次忘了写单元测试。你:你刚才两次都忘了写测试。 请在 AGENTS.md 里加一条规则:所有新功能必须包含单元测试。Codex:已更新 AGENTS.md。 以后我会记得写测试。指导应该基于实际摩擦点,保持实用性。
6. 配置 Codex:保持一致性
配置文件位置:
个人默认: ~/.codex/config.toml仓库特定: .codex/config.toml
可以配置的项:
模型选择 推理强度(reasoning effort) 沙箱模式(sandbox mode) 审批策略(approval policy) MCP 服务器
新手建议:
# 从默认权限开始approval_mode = "default"sandbox_mode = "default"# 等熟悉后再调整# 受信任的仓库可以放宽权限重要:CLI、IDE 和 Codex 应用共享同一套配置。
7. 测试和审查:不要只生成代码
Codex 不应该只生成代码。
有了正确的指令,它还可以:
✅ 写测试 ✅ 运行检查 ✅ 审查代码 ✅ 确认结果
7.1 审查代码
使用 /review 命令:
/review 审查我的 PR/review 审查未提交的更改/review 审查某个提交7.2 code_review.md
创建一个 code_review.md 文件,从 AGENTS.md 引用:
# 代码审查清单- [ ] 代码符合项目规范- [ ] 有单元测试- [ ] 没有硬编码的配置- [ ] 错误处理完整- [ ] 日志清晰Codex 审查时会遵循这个清单。
8. MCP:连接外部系统
MCP(Model Context Protocol) 是什么?
让 Codex 连接到你已经在使用的工具和系统。
什么时候用 MCP?
示例:
连接数据库,查询实时数据 连接 Jira,获取任务信息 连接 GitHub,查看 PR 状态
在 Codex 应用中: 设置 → MCP 服务器 → 添加你需要的服务器
提示:只添加真正能消除手动循环的工具,不要一开始就连接所有工具。
9. 技能(Skills):将重复工作打包
什么是技能?
把重复性工作打包成 SKILL.md 文件。
什么时候创建技能?
如果你不断重复使用相同的提示或纠正相同的工作流,它应该变成一个技能。
适合做成技能的工作:
日志分诊(Log triage) 发布说明起草 PR 审查(按清单) 迁移规划 调试流程
技能结构:
# 技能名称## 描述这个技能做什么,什么时候用## 触发短语用户会怎么说来触发这个技能## 输入需要什么信息## 输出产出什么结果## 用例2-3 个具体使用场景技能位置:
个人技能: $HOME/.agents/skills团队技能: 项目/.agents/skills
10. 自动化(Automations):后台自动运行
技能和自动化的区别:
适合自动化的任务:
总结最近的提交 扫描可能的 bug 起草发布说明 检查 CI 失败 生成站会摘要
经验法则:
先把工作流转化为技能,等它可预测了,再用自动化。
11. 会话管理:组织长时间工作
Codex 会话是什么?
工作线程,随时间积累上下文、决策和操作。
CLI 常用斜杠命令:
/resume | |
/fork | |
/compact | |
/agent | |
/status |
最佳实践:
✅ 每个连贯的工作单元保持一个线程 ✅ 同一问题的继续工作,保持在同一线程 ✅ 工作真正分支时才 fork
12. 常见错误(避坑指南)
新手常犯的 7 个错误:
13. NPC 的冷吐槽
说实话,看完这些最佳实践,我有点感慨。
以前我们学编程,是学怎么写代码。现在学编程,是学怎么跟 AI 协作。
这个游戏世界的版本更新,有点快。🎮
不过话说回来,工具再好,也得有人会用。
Codex 再强大,也得有人告诉它:
要做什么 怎么做 什么算做好
所以,别指望 AI 完全替代你。但学会用 AI 的人,可以替代不会用 AI 的人。
14. 总结一下
核心要点:
把 Codex 当队友,不是当工具 提示包含四要素:目标、上下文、约束、完成条件 复杂任务先规划,再动手 用 AGENTS.md 让指导可复用 配置 Codex 保持一致性 测试 + 审查,不要只生成代码 用 MCP 连接外部系统 重复工作打包成技能 稳定工作流用自动化 管理好会话,避免上下文膨胀
最后说一句:
普通 NPC 的生活,也有自己的彩蛋。 学会用 AI 这个道具,你的副本会好打很多。🤖
——
字数:约 4500 字栏目:🤖 AI 道具拆解室标签:#AI 道具#科技围观#Codex#编程效率
【互动可选】你用 Codex 吗?有什么好用技巧?评论区聊聊~
夜雨聆风