跳到主要内容

提示指南

Codex 通过提示词(Prompt)驱动——你用自然语言描述要完成的任务,Codex 进入一个循环:调用模型、执行操作(读取文件、编辑代码、调用工具),直到任务完成或你取消。

提示词基础

什么是好的提示词?

Codex 在能够验证自己工作的情况下,产出质量最高。 提示词中包含以下要素可显著提升效果:

  • 复现步骤:如何触发你描述的问题
  • 验证方式:如何确认功能已正常实现
  • 质量检查:Lint 检查、预提交钩子(pre-commit hooks)

示例(低效):

修复登录 Bug

示例(高效):

修复登录 Bug:
- 复现:输入正确邮箱和密码后点击登录,页面无跳转
- 期望:成功登录后跳转到 /dashboard
- 验证:npm test 通过,npm run lint 无报错

拆分复杂任务

Codex 处理多个聚焦的小任务,效果优于处理一个庞大的任务。更小的任务:

  • 更容易测试和验证
  • 出错时更容易回退
  • 提供更清晰的改动边界

不确定如何拆分? 让 Codex 先给出计划,再执行:

实现用户认证系统。先给我一个分步计划,不要直接写代码。

线程(Thread)

线程是一次完整的工作会话,包含你的提示词以及随后的模型输出和工具调用记录。

在一个线程中,你可以连续提交多个提示词,例如:

  1. 先让 Codex 实现某个功能
  2. 再让它为这个功能添加测试

本地线程 vs. 云端线程

类型运行位置特点
本地线程你的机器可访问本地文件,在沙箱环境执行命令
云端线程隔离云环境需要代码托管在 GitHub,适合并行工作或跨设备委托

多个线程可以同时运行,但应避免并发修改同一文件。


上下文管理

提供相关上下文

提交提示词时,提供相关上下文可显著提升质量:

  • 文件引用:直接提及或附加相关文件(CLI 使用 @ 路径,IDE 插件自动包含打开的文件和选中代码)
  • 图像:附加截图或设计稿

自动上下文压缩

Codex 会实时监控和报告模型上下文窗口的剩余空间。对于长任务,系统自动压缩上下文——通过摘要保留关键信息,使工作可以在不超出上下文限制的情况下持续进行。


实用提示技巧

1. 迭代式优化

不需要一次写出完美的提示词:

  1. 从大方向开始:"给这个 API 添加分页功能"
  2. 查看结果,再补充细节:"确保 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 # 查看改动