用 Codex 做开发时,我觉得最容易被忽略的一点是:不要只写“我要什么”,还要写“怎样算完成”。
Codex 文档入口:
Codex | OpenAI Developers
One agent for everywhere you code
一个低质量任务
帮我优化登录页。
这个任务太空了。优化 UI?优化性能?修 bug?加动画?模型只能猜。
一个更好的写法
目标:
修复登录页刷新后短暂显示未登录的问题。
上下文:
前端是 React,登录状态在 src/store/auth.ts。
后端接口是 GET /api/me。
约束:
不要改后端接口。
不要重写鉴权系统。
保留现有 localStorage key。
验收:
pnpm test 通过。
刷新页面后不再跳回登录页。
未登录用户仍然正常跳转登录页。
输出:
直接修改代码,并说明改了哪些文件。
我常用模板
目标:
上下文:
约束:
验收:
输出:
最重要的是 约束 和 验收。
为什么验收条件很关键
因为 Codex 可以自己跑命令、读结果、修失败。你不给验收条件,它就不知道该停在哪里。
比如:
验收:npm run lint && npm test 通过
比“写得好一点”强太多。
适合写进 AGENTS.md 的内容
如果每个任务都要跑同样命令,可以写进 AGENTS.md:
## Verification
For code changes, run:
- pnpm lint
- pnpm test
这样每次就不用重复交代。
一句话:把“完成定义”写清楚,Codex 的返工会少很多。
3 个帖子 - 2 位参与者