乐于分享
好东西不私藏

Codex 新手避坑指南:这样用,AI 编程效率翻 3 倍

Codex 新手避坑指南:这样用,AI 编程效率翻 3 倍

【地球 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)
哪些文件/文档相关?
"参考 @/auth 目录的代码风格"
约束(Constraints)
要遵循什么标准?
"使用 JWT 鉴权,密码 bcrypt 加密"
完成条件(Done when)
什么算完成?
"测试通过,能正常登录注册"

完整示例

我要添加用户登录功能(目标)参考 /auth 目录下的现有代码,保持风格一致(上下文)要求:- 使用 JWT 鉴权- 密码用 bcrypt 加密- 不修改现有用户表结构(约束)完成标准:- 单元测试通过率 100%- 能正常登录和注册- 错误提示友好(完成条件)

效果对比

提示方式
Codex 理解准确度
返工次数
"帮我写个登录"
3-5 次
包含四要素的提示
0-1 次

4. 复杂任务:先规划,再动手

什么时候需要规划?

任务类型
建议
简单任务(改个变量、加个函数)
直接写
中等任务(加个功能模块)
先规划
复杂任务(重构、多模块协作)
必须规划

三种规划方法

4.1 使用规划模式(Plan Mode)

最简单有效。

/plan 帮我设计一个用户积分系统

Codex 会:

  1. 收集上下文
  2. 提出澄清问题
  3. 输出详细计划
  4. 你确认后再开始写代码

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?

场景
是否需要 MCP
上下文在仓库之外
✅ 需要
数据频繁变化
✅ 需要
希望 Codex 用工具而不是靠粘贴
✅ 需要
需要可重复的集成
✅ 需要

示例

  • 连接数据库,查询实时数据
  • 连接 Jira,获取任务信息
  • 连接 GitHub,查看 PR 状态

在 Codex 应用中: 设置 → MCP 服务器 → 添加你需要的服务器

提示:只添加真正能消除手动循环的工具,不要一开始就连接所有工具。


9. 技能(Skills):将重复工作打包

什么是技能?

把重复性工作打包成 SKILL.md 文件。

什么时候创建技能?

如果你不断重复使用相同的提示或纠正相同的工作流,它应该变成一个技能。

适合做成技能的工作

  • 日志分诊(Log triage)
  • 发布说明起草
  • PR 审查(按清单)
  • 迁移规划
  • 调试流程

技能结构

# 技能名称## 描述这个技能做什么,什么时候用## 触发短语用户会怎么说来触发这个技能## 输入需要什么信息## 输出产出什么结果## 用例2-3 个具体使用场景

技能位置

  • 个人技能:$HOME/.agents/skills
  • 团队技能:项目/.agents/skills

10. 自动化(Automations):后台自动运行

技能和自动化的区别

技能
自动化
定义
方法
时间表
触发
手动调用
定时/事件触发
运行位置
当前环境
专用 git worktree

适合自动化的任务

  • 总结最近的提交
  • 扫描可能的 bug
  • 起草发布说明
  • 检查 CI 失败
  • 生成站会摘要

经验法则

先把工作流转化为技能,等它可预测了,再用自动化。


11. 会话管理:组织长时间工作

Codex 会话是什么?

工作线程,随时间积累上下文、决策和操作。

CLI 常用斜杠命令

命令
用途
/resume
恢复已保存的对话
/fork
创建新线程,保留原记录
/compact
获取早期上下文的摘要
/agent
切换并行智能体线程
/status
检查当前会话状态

最佳实践

  • ✅ 每个连贯的工作单元保持一个线程
  • ✅ 同一问题的继续工作,保持在同一线程
  • ✅ 工作真正分支时才 fork

12. 常见错误(避坑指南)

新手常犯的 7 个错误

错误
正确做法
把持久化规则塞进提示
移到 AGENTS.md 或技能
没提供构建/测试命令
在 AGENTS.md 里写明
复杂任务跳过规划
先用 /plan
没理解工作流就给完全权限
从默认权限开始
不用 git worktree 跑实时线程
用 worktree 隔离
手动可靠前就自动化
先技能,后自动化
每个项目一个线程
每个任务一个线程

13. NPC 的冷吐槽

说实话,看完这些最佳实践,我有点感慨。

以前我们学编程,是学怎么写代码。现在学编程,是学怎么跟 AI 协作。

这个游戏世界的版本更新,有点快。🎮

不过话说回来,工具再好,也得有人会用。

Codex 再强大,也得有人告诉它:

  • 要做什么
  • 怎么做
  • 什么算做好

所以,别指望 AI 完全替代你。但学会用 AI 的人,可以替代不会用 AI 的人。


14. 总结一下

核心要点

  1. 把 Codex 当队友,不是当工具
  2. 提示包含四要素:目标、上下文、约束、完成条件
  3. 复杂任务先规划,再动手
  4. 用 AGENTS.md 让指导可复用
  5. 配置 Codex 保持一致性
  6. 测试 + 审查,不要只生成代码
  7. 用 MCP 连接外部系统
  8. 重复工作打包成技能
  9. 稳定工作流用自动化
  10. 管理好会话,避免上下文膨胀

最后说一句

普通 NPC 的生活,也有自己的彩蛋。 学会用 AI 这个道具,你的副本会好打很多。🤖

——

字数:约 4500 字栏目:🤖 AI 道具拆解室标签#AI 道具#科技围观#Codex#编程效率

【互动可选】你用 Codex 吗?有什么好用技巧?评论区聊聊~