提示指南
Codex 通过提示词(Prompt)驱动——你用自然语言描述要完成的任务,Codex 进入一个循环:调用模型、执行操作(读取文件、编辑代码、调用工具),直到任务完成或你取消。
提示词基础
什么是好的提示词?
Codex 在能够验证自己工作的情况下,产出质量最高。 提示词中包含以下要素可显著提升效果:
- 复现步骤:如何触发你描述的问题
- 验证方式:如何确认功能已正常实现
- 质量检查:Lint 检查、预提交钩子(pre-commit hooks)
示例(低效):
修复登录 Bug
示例(高效):
修复登录 Bug:
- 复现:输入正确邮箱和密码后点击登录,页面无跳转
- 期望:成功登录后跳转到 /dashboard
- 验证:npm test 通过,npm run lint 无报错
拆分复杂任务
Codex 处理多个聚焦的小任务,效果优于处理一个庞大的任务。更小的任务:
- 更容易测试和验证
- 出错时更容易回退
- 提供更清晰的改动边界
不确定如何拆分? 让 Codex 先给出计划,再执行:
实现用户认证系统。先给我一个分步计划,不要直接写代码。
线程(Thread)
线程是一次完整的工作会话,包含你的提示词以及随后的模型输出和工具调用记录。
在一个线程中,你可以连续提交多个提示词,例如:
- 先让 Codex 实现某个功能
- 再让它为这个功能添加测试
本地线程 vs. 云端线程
| 类型 | 运行位置 | 特点 |
|---|---|---|
| 本地线程 | 你的机器 | 可访问本地文件,在沙箱环境执行命令 |
| 云端线程 | 隔离云环境 | 需要代码托管在 GitHub,适合并行工作或跨设备委托 |
多个线程可以同时运行,但应避免并发修改同一文件。
上下文管理
提供相关上下文
提交提示词时,提供相关上下文可显著提升质量:
- 文件引用:直接提及或附加相关文件(CLI 使用
@路径,IDE 插件自动包含打开的文件和选中代码) - 图像:附加截图或设计稿
自动上下文压缩
Codex 会实时监控和报告模型上下文窗口的剩余空间。对于长任务,系统自动压缩上下文——通过摘要保留关键信息,使工作可以在不超出上下文限制的情况下持续进行。
实用提示技巧
1. 迭代式优化
不需要一次写出完美的提示词:
- 从大方向开始:
"给这个 API 添加分页功能" - 查看结果,再补充细节:
"确保 cursor 是 base64 编码的,并添加 has_next_page 字段"
2. 提供充分上下文
- 说明技术栈和框架版本
- 指出相关文件路径
- 描述现有架构约束
- 说明代码风格要求
3. 利用已有工具
在提示词中指明如何验证,让 Codex 自动运行检查:
重构 src/utils.ts:
- 将工具函数按功能模块拆分
- 确保 npm test 全部通过
- 运行 npm run lint 无报错
4. 善用 Git 检查点
在任务前后保存状态,方便对比和回退:
git add . && git stash # 保存当前状态
# ...执行 Codex 任务...
git diff # 查看改动