本文探讨了如何通过渐进式披露优化大模型的信息组织方式,提升Agent任务执行效率。文章建议拆分AGENTS.md和SKILL.md,采用四层加载机制,以流程而非知识为核心撰写SKILL.md,并利用目录进行知识路由。此外,文章还强调了设置停止条件的重要性,并提供了可直接使用的模板和常见的写法问题。通过这些方法,即使是小白程序员也能更好地利用大模型,提高工作效率。
前阵子帮人排查一个 Agent 项目。打开它的 SKILL.md,三万 token,从"什么是 Bug"一路讲到"什么是回归测试",后面还附了五份 Java 编码规范。作者的逻辑很直白:知识都写全了,模型总该会用。
结果不太一样。任务一来,Agent 直接打开业务代码就开始改,改完跑不通,换个思路再猜一次。那份三万字的文档,它基本没读进去。
问题不在模型,在信息的组织方式。
这件事有个名字,叫渐进式披露(Progressive Disclosure),一句话说得清:
不要把 Agent 完成任务所需的全部知识,一次性塞进
AGENTS.md和SKILL.md。先给最小必要的信息,让它需要时自己往下取。
下面说具体怎么做。
一、先把 AGENTS.md 和 SKILL.md 拆开
这两个文件常被当成一回事,其实职责完全不同。
| 文件 | 回答的问题 | 什么时候读 |
|---|---|---|
AGENTS.md | 这个项目怎么工作 | 进入项目就要知道,常驻 |
SKILL.md | 这类任务怎么做 | 任务匹配之后再加载 |
references/*.md | 深层知识与规范 | 执行中要用到时 |
examples/* | 真实案例与模板 | 需要参考实现时 |
scripts/* | 确定性操作 | 需要执行时 |
rules/*.md | 特定场景约束 | 进入对应场景时 |
混在一起的后果很直接:项目背景被反复塞进每一次任务,任务流程又被埋在项目说明里,两件事都没做透。落地时把它拆成skills/<任务名>/一层目录,各文件归位,路由问题就解决了一半。
二、四层加载,每一层都要"上一层同意"
Agent 取信息的过程可以拆成四层:
Layer 1 元信息 / 索引 name + description,判断要不要用这个 Skill Layer 2 SKILL.md 核心流程与约束 Layer 3 references/ 深度知识与规范 Layer 4 examples/ scripts/ 案例、工具、模板重点是每一层都带判断条件,而不是一次性读完。
第一层只回答一个问题:有没有必要用这个 Skill?
name: bug-fix description: > Investigate and fix software bugs by tracing the complete execution chain before modifying code.读到这句,Agent 就能定下来:用户在修登录 token 丢失,匹配 bug-fix,加载SKILL.md。换成别的事情,这个 Skill 根本不进上下文。
三、SKILL.md 写流程,不写知识
写 Skill 最常见的偏差,是把它写成了一篇科普:
# Bug Fix Skill Bug 是软件运行过程中出现的错误。 常见 Bug 类型包括:空指针、数据错误、网络错误、并发问题……这种内容对 Agent 没什么用。它不需要知道 Bug 的定义,它需要知道下一步做什么。
同一件事,换一种写法:
## Workflow 1. **理解上报的现象。** 2. **找到入口点。** 3. **追踪完整的执行路径。** 4. **定位失效机制。** 5. **形成修复假设。** 6. **用代码验证假设。** 7. **定义最小的安全修复。** 8. **实施修复。** 9. **跑针对性测试。** 10. **跑回归检查。** ## Constraints - 在失效机制成立之前,不要改代码。 - 不要把上报的现象当成根因。 - 改行为之前,先追调用方和被调用方。 - 选择能修掉根因的最小改动。至于"什么叫调用链"“Spring Bean 生命周期”"数据库事务隔离级别"这类内容,全部移到references/。
判断标准就一条:
SKILL.md负责 WHEN、WHAT、HOW、CONSTRAINT、OUTPUT;references/负责 WHY、DETAIL、BACKGROUND、EDGE CASE。
四、目录本身就是知识路由
把 references 按领域切开,路由就自然形成了:
skills/bug-fix/ ├── SKILL.md ├── references/ │ ├── debugging-methodology.md │ ├── java.md │ ├── cpp.md │ ├── frontend.md │ └── database.md ├── examples/ │ ├── java-null-pointer.md │ ├── cpp-memory-corruption.md │ └── frontend-state-bug.md └── scripts/ ├── collect-stack.sh └── run-regression.shAgent 一开始只读SKILL.md。判断出这是 C++ 内存问题,再读references/cpp.md;需要参照案例,读examples/cpp-memory-corruption.md;要验证,调scripts/run-regression.sh。
流程于是从"需求 → 加载五万字 → 开工",变成"需求 → 发现 Skill → 分类任务 → 选 reference → 选 example → 执行"。差别全在上下文。
这里有个细节容易写坏。很多人会这样写:
Before starting, read: - references/a.md - references/b.md - references/c.md这等于又回到一次性加载。应该写成条件句:
Read `references/cpp.md` only when the affected component is C++.五、最容易被忽略的一条:停止条件
Agent 有一个很稳定的行为倾向,无限调查。读了一个文件,再读一个,链路越铺越宽,最后忘了要干什么。另一头也常见:不调查,直接改。
两种都要用文字约束住:
## Investigation Stop Conditions Stop investigation when: - the failure mechanism is identified - the hypothesis is supported by code evidence - the affected execution path is understood - the repair point is identified - additional investigation is unlikely to change the repair plan补上停止条件,流程才算闭环:调查 → 方案 → 实施 → 验证。
为什么有的模型读完代码直接动手,有的会先把链路走完?决定因素往往不只是模型能力,而是这五样东西的组合:Skill、Workflow、Tool policy、Stop conditions,再加一份 Output contract。
六、可以直接拿去用的模板
我们内部把 Skill 统一成这个结构:
# <Skill Name> ## Purpose What this skill does. ## When to Use When this skill should be activated. ## When NOT to Use Cases where another skill should be used. ## Workflow 1. **...** 2. **...** ## Decision Rules - If A -> do X - If B -> read `references/b.md` - If C -> use tool Y ## Constraints - ... ## Verification Before completing the task: - [ ] ... - [ ] ... ## Output The final result must contain: 1. **...** ## References Load only when needed: - `references/a.md` ## Examples Load only when a concrete example is required: - `examples/a.md`结构本身就是渐进式披露:越往下越具体,也越晚加载。
七、四个我见过最多的写法问题
SKILL.md 过长。 流程、规范、背景、案例、API、源码、FAQ 全塞进一个文件,三万 token 起步,Agent 抓不到重点。
要求读取所有 reference。 上面提过,这会让分层直接失效。
把 Skill 写成教程。 教程回答"什么是 X",Skill 回答"先做什么、后做什么、什么时候停、什么时候读资料、什么时候调工具、最后交付什么"。
规则没有优先级。 同时写"优先最小改动"“必要时重构”“不要动无关代码”“有机会就改进架构”,Agent 不知道听谁的。补一段优先级就好:
## Priority 1. **Preserve correctness.** 2. **Fix the root cause.** 3. **Preserve existing behavior.** 4. **Minimize the change scope.** 5. **Refactor only when required for correctness.**写在最后
一句话收束整套体系:
AGENTS.md建立工作环境,SKILL.md规定任务方法,references提供专业知识,examples提供经验样本,scripts承担确定性动作。Agent 只在当前任务需要时,逐层往下取。
如果落到多智能体系统上,最终会形成一个四级知识结构:项目上下文常驻,任务 Skill 匹配后加载,领域知识按需加载,工具调用真正需要时才执行。Agent 的上下文应该是动态构建的,不是静态堆进去的。
值得比的不是谁的 Prompt 写得更长,而是谁在完成同一个任务时,喂给模型的东西更少。
最后
当下AI大模型是当下实打实的优质风口,岗位缺口大、发展前景广、薪资待遇突出,对比内卷严重、涨薪晋升困难的传统技术岗,是普通人转行逆袭的绝佳选择。
但很多想要入局大模型领域的朋友,都面临无系统学习路径、无实战资源、求职无方向的难题,一个人硬啃最容易走弯路、浪费大量时间精力。这里我结合多年一线实战与教学经验,整理出一套零基础大模型专属资料,包含:
- 系统化学习路线图(零基础到精通)
- 大模型学习书籍 & 文档(电子版)
- 2026 最新行业报告
- 项目实战 & 配套源码
- 大厂面试真题
需要的朋友,微信扫描下方 CSDN 官方认证二维码免费领取,保证 100% 免费。
👇👇扫码免费领取全部内容👇👇
下面简单介绍一下资料包含的内容:
1、大模型系统化学习路线图
专属定制从零基础入门到企业级实战的全阶段学习体系,划分清晰的四大学习阶段,规避碎片化学习弊端,适配新手
2、0基础到进阶视频教程
配套完整高清实操教程,覆盖Prompt提示工程、RAG知识库搭建、Agent智能体开发、模型微调、部署落地等核心知识点,所有课程搭配实操演示,零基础也能轻松看懂、上手实操。
3、大模型学习书籍 & 文档
汇总30+本行业经典AI、大模型、深度学习精选书籍,涵盖理论原理、开发实战、算法基础、AI产品思维等各类内容
4、AI大模型最新行业报告
整理2024-2026年最新大模型行业白皮书、市场分析报告,清晰展现行业发展趋势、技术迭代方向、岗位需求变化,帮助学习者精准把握行业风口,找准学习和就业方向
5、大厂面试真题
汇总了常见的AI大模型面试问题、知识点梳理和面经参考,方便求职时针对性准备。
6、大模型项目实战 & 配套源码
包含GPT应用开发、RAG私有知识库、智能问答系统等多个企业级实战项目,配套完整可运行源码,从简易Demo到完整商业应用全覆盖,帮助学习者将理论转化为落地实战能力,积累项目经验。
7、适合谁学?
- 传统后端 / Java / 前端开发,想转型 AI 应用
- 大学生、应届生,想拿更好的 offer
- 产品经理、运营,想武装职业竞争力
- 技术负责人,想给团队落地提效
学习是反人性的,但回报是真金白银。技术会更新,赛道会切换,但只要你先动手,机会就永远站在你这边。
8、这些资料真的有用吗?
这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理,现任上海殷泊信息科技CEO,其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证,服务航天科工、国家电网等1000+企业,以第一作者在IEEE Transactions发表论文50+篇,获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。
资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的技术人员,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。
想要入局AI大模型赛道、抢占行业红利的朋友,微信扫描下方CSDN官方认证二维码,即可100%免费领取全套学习资料!