ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

OpenAI:GPT-6 开始你需要给 Skill 和 AGENTS.md 做一次大扫除了

OpenAI:GPT-6 开始你需要给 Skill 和 AGENTS.md 做一次大扫除了 这个问题 GPT 5.6 sol 的时候大家就都在说Anthropic 在 Fable 5 的时候我记得应该也说过比如 Superpower 在现在的强模型下就变成负优化除了浪费 Token 毫无用处。所以不得不感慨那句名言只要你学得够慢你就不用学了。这个说法其实和 OpenAI 给 GPT-6 Astra 的官方 prompting guidance 也基本一致在 OpenAI 的 API 说明里也提到过 GPT-6 Astra 的 instruction following 比前代更强所以也更容易受到 Skill、**AGENTS.md**等上下文指令影响模糊、互相冲突、范围过宽的规则会让它提前暂停、询问用户甚至直接阻塞任务比如官方提供的这两个例子「Use when working with databases, queries, models, or persistence.」这些词的覆盖范围太大比如你可能只是改一个 ORM model或者修一条 query 这些普通逻辑的时候模型都可能判断 migration Skill 和当前任务相关这时候的结果就是 Skill 被过度触发后面的 migration 规则、检查步骤、参考资料也跟着进入上下文然后官方推荐的版本把触发条件收紧成「adding or changing a migration, or reviewing its rollout」这样它描述的就是具体任务不会被多次多余执行混入上下文。另外一个也是因为很多人的 AGENTS.md 现在就是这类 BAD 版本Before every edit, read architecture.md, database.md, and deployment.md.这种规则其实过去很常见因为早期 Agent 经常不知道主动找项目文档所以大家直接强制它“每次都读”但是现在来到 Astra 之类的模型 AI 真的会认真反复执行这个约束。你就算只改了一个字符串它也会完整把你几个 md 都读一遍改第二次它又会完全读一遍整个过程除了浪费 token 让进度变慢实际上毫无意义而且上下文会快速膨胀导致幻觉更重。而在推荐的版本里Use architecture.md for service boundaries, database.md for schema changes, and deployment.md when preparing a deployment.实际上是在建立一个简单的context routing table当前任务加载的上下文修改 service boundaryarchitecture.md修改 schemadatabase.md准备部署deployment.md普通 UI bug都不用修一个 typo都不用也就是 OpenAI 一直提到的 Harness 工程的方式给一套精准的上下文索引和项目约束。实际上这确实是目前 AI flow 工程的常见问题因为模型在变但是你的 AGENT.md 和 Skill 还有 Rule 一直没变的话实际上会跟不上模型的能力。现在很多 Coding Agent 配置本质上记录的是上一代模型的缺陷然后现在模型逐步优化完善后如果还有大量强制行为或者规则在那就可能反而导致执行混乱。所以从目前的情况来看我们其实应该把 prompt maintenance 当成模型迁移的一部分每次换模型都需要考虑需不需要适配。特别是 Skills多加载和多执行 Skills 会带来是很大的上下文问题可能很多人对 Skill 的理解是项目里放几十个 SKILL.md 没什么关系需要的时候模型自然会加载。但是 Codex 目前用的是 progressive disclosure也就是启动时不会把所有 Skill 正文全部塞进上下文但它必须先知道有哪些 Skill还有什么时候应该选择它们。也就是说启动时模型会先拿到每个 Skill 的 name 和 descriptionCodex 还会带上文件路径如果模型判断某个 Skill 和当前任务匹配以后就会再读取完整 SKILL.md这里隐式触发本身就依赖description。也就是 description 实际就承担了 Skill router 的职责如果像前面的例子一样一个 PostgreSQL migration Skill它的描述被写成创建和检查 PostgreSQL migration。处理数据库、query、model 或 persistence 时使用。这时候会带来什么问题其实前面我们就提到过了所以类似过去的 Superpowers 规则在 Astra 这里的问题会特别明显因为它什么流程都介入还把很多流程从“建议”写成了“强制门禁”。特别 Superpowers 的核心 using-superpowers Skill 写得很激进只要有哪怕 1% 的可能某个 Skill 适用就必须调用任何回复、澄清问题、浏览代码、检查文件之前都先做 Skill 判断。虽然 Superpowers 后来作者调整过流程但是实际上这种「约束哲学」在现在的模型已经没什么必要就它那种严格流程纪律在模型激活喜好和轨迹上都很不友好。比如可能会把模型从“高概率自然轨迹”硬推到一条规定轨迹上还有干扰什么时候做判断。所以在现在的强模型时代特别 Codex 里用的 Progressive Disclosure 重点就是必须让 Skills 能做到按需加载不能有太过于宽放的规则Skill 必须是一套按任务加载的操作手册类似这个道理同样在 AGENTS.md也一样因为 AGENTS.md 的覆盖范围更广根据 OpenAI 的建议现在把这类规则最好成有条件的文档目录比如前面说的architecture.md 用于涉及 service boundary 的修改database.md 用于 schema 相关修改deployment.md 只在准备 deployment 时读取所以比如常见的 AGENTS.md 写Always run tests after every change. Always verify your implementation. Never finish until all tests pass.目前 Astra 本身已经更倾向于执行验证如果你还写这些规则那你的 GPT 就会疯狂些测试用例这个 GPT 5.6 sol 应该有人体验过了。所以模型越会遵守指令一些历史遗留规则的副作用越容易完整执行出来。还有一类似需要注意的 Coding Agent 的约束行为比如我们以前可能会把“需要确认”的范围写得很宽比如Ask before modifying additional files. Ask before making architectural decisions. Ask before running commands that change the repository.这些规则在老模型上可能会有用但是在Astra 可能就反而成为干扰它决策时的判断方向会找不到安全的边界。按照目前的 AI 情况可能我们一年前建立起来的 CLAUDE.md、AGENTS.md、rules、Skill、system prompt到了现在可能反而都是累赘所以我们应该在每次模型升级之后根据不同模型重新评估下整个 Prompt 的可靠性。
返回列表