浏览 AI 使用教程
操作教程

Codex项目规则怎么写:让它先读边界,再开始改文件

Codex项目规则实操:区分长期规则与临时要求,写清目录、禁区和验证命令,再用低风险任务确认AGENTS.md真正生效。

Codex项目开发与自动化工作流主视觉

先看重点:快速结论

  1. 给出完整根规则和子目录规则,目录、命令与示例项目一致。
  2. 规则是指令,不是操作系统权限;生效不能只靠模型自述。
本文目录 · 跳到当前步骤

同一个仓库反复出现“直接改生成页面”“漏跑已有测试”,适合写入 AGENTS.md。一次性的按钮文案仍写在当前任务中。下面以 Node.js 静态站为教学案例;命令和路径先与自己的仓库核对,不要把示例规范原封不动套进别的项目。

根规则应该放在哪里

假设项目结构如下,package.json 中 build 指向 node scripts/build.mjs,test 指向 node --test:

text
site-demo/
  AGENTS.md
  package.json
  scripts/build.mjs
  content/AGENTS.md
  content/home.json
  tests/content.test.mjs
  public/index.html

把下面完整文件放到 site-demo/AGENTS.md。已有规则时合并有效要求,保留用户尚未完成的改动。

markdown
# 项目规则

- 本项目的手写内容在 content/,构建脚本在 scripts/。
- public/ 是构建产物,修改内容先改 content/,再执行 npm run build。
- 动手前查看 git status --short,识别既有修改;不要还原与当前任务无关的文件。
- 不读取或输出 .env、认证缓存和真实客户资料。
- 涉及脚本或内容结构时先读取 package.json 和对应测试。
- 内容修改完成后执行 npm test 和 npm run build;失败时保留错误并说明尚未完成的检查。
- 不自动提交、推送或部署。
- 交付时说明改动文件、验证命令与结果,以及仍需人工判断的问题。

这里的 build 和 test 只是这个案例的真实脚本约定。你的仓库如果没有这两个命令,应写现有检查方式;不存在的验证命令会让规则无法执行。

子目录补充只写局部差异

把下面文件放在 site-demo/content/AGENTS.md。它补充内容编辑要求,无须重复整份根规则。

markdown
# content 目录规则

- 编辑 JSON 保留既有字段名;不为改文案删除字段。
- 标题和正文中的数字、产品能力、价格必须有当前来源;缺少依据时标记待核实。
- 本目录文案改动后,运行 npm test 和 npm run build。
- 不改 scripts/ 的生成逻辑来掩盖内容格式错误;确需改脚本时先报告原因和影响。

Codex 会结合全局规则与项目路径上的规则;路径更近的项目规则用于更局部的范围。同目录还可能有 AGENTS.override.md,它会影响实际采用的文件。排查时检查真实目录层级、工作目录和配置过的备用文件名。不要假设从仓库根启动就已经发现所有尚未进入的子目录规则。开始编辑 content/ 前,明确让它检查该目录的规则。

用一个小任务验证实际行为

先在仓库副本或可恢复分支中,用新会话发出:

text
只读检查这个项目的规则。我要修改 content/home.json 中的副标题。
请列出对这项任务生效的规则文件路径、内容源、生成物和验证命令。
检查根目录与 content 子目录的规则;不要修改文件,也不要运行构建。

预期回答应指向两个 AGENTS.md,说明先改 content/home.json,再由构建更新 public/index.html。若它只重复“遵循最佳实践”,要求给出路径和原句,先解决读取问题。

确定规则被理解后,再给这个案例中的实际需求:

text
把 content/home.json 的 subtitle 改为“先完成一个可以检查的小任务”。
保留所有其他字段和既有修改,按项目规则运行检查,报告差异与真实命令结果。

用 git diff -- content/home.json public/index.html 检查差异,并核对测试与构建输出。若 public/index.html 改了,但 content/home.json 没改,应追查来源,不能因为页面看起来正确就判定规则生效。未执行的检查应写“未执行”,不要把规则中的命令列表写成通过记录。

没有生效时按范围查

现象 先查什么
只读了另一项目的规则 当前工作目录、打开的项目、是否进入了正确仓库
根要求正确,内容目录仍误改 content/AGENTS.md 是否存在、是否在编辑前读取
改了规则却沿用旧判断 在新会话重新核对加载文件;不要只重复上一轮摘要
规则互相冲突 找出来源和作用范围,把长期冲突消除,不继续堆重复句子

AGENTS.md 能描述工作方式,不能代替文件权限、沙箱和版本控制。“禁止部署”写在文件里,仍应与工具权限和真实授权一致。最终证据是一次实际任务的读写范围与结果,不是 Codex 口头说已遵守。

资料来源

下一步

继续阅读与你当前问题相关的教程: