我给每个文件夹写了一份说明书,是专门写给 AI 看的

先说一件小事。

我在做一套每周的训练复盘:AI 读我这一周的数据,写一份总结,再给出下周的计划。

跑了三周,我发现一个东西不对。

复盘里有个硬指标——某一类训练的心率不能超过某个值。这个数字不是我拍脑袋定的,是按一次实测标定的,算是这套系统的地基之一。

某一周,AI 把这个值悄悄往下挪了一截。

它不是弄错了。它是算出来的:它读到一张心率区间表,觉得照表推,上限应该更低才合理,于是替我改了规矩。

问题是,那个数字来自真实测试;区间表只是用来判断强度的工具。它把推算当成事实,写进了我的计划。

我从没告诉过它:已有的标定不许动。


一、AI 让人不爽的,往往不是笨

这件事之后我留意了一下,发现绝大多数让人窝火的 AI 翻车,都不是「它不会」,而是「它不知道边界在哪」。

比如这三个,我都遇到过,而且前后脚发生在同一套系统里:

  • 它照着一张表推算,替你把实测标定的数值改低了一档——因为没人告诉它已有的定标不许动
  • 它把另一节课的心率数值写进了当天的报告——因为没人告诉它数字不能从一个记录挪到另一个记录
  • 它把还没到来的日期写成「已执行」——因为没人告诉它没发生的事不能写成已经发生

复盘到最后,结论都一样:不是模型不够强,是我给它的信息里只有内容,没有规矩。

规矩光在对话里说一遍没用。聊着聊着就被挤到后面去了,换个新对话更是干干净净,像从没说过。

规矩得有个固定的地方放着,AI 每次来都能翻到。

我的做法很土:在每个重要的文件夹里,放一页写给 AI 看的说明书。

这个文件叫 AGENTS.md。名字听着挺技术,做的事其实特别朴素——告诉 AI:这里是干什么的,你能动什么,不能动什么。


二、哪些工具认这个文件

你可能会问:我写了,AI 就一定会读吗?

坦白讲,这一点我没法打包票——那些主流的 AI 编程工具,我一个都没真正用过,不敢装内行。

但 AGENTS.md 这个东西值得写,恰恰因为它不是某家公司的一个功能,而是一个被大家自发认下来的写法:把规矩写成一个固定名字的文件,工具进来干活之前先读它。我确认这个约定是真成立的,依据是我自己踩到的两个证据——

证据一:OpenSpec。 规范驱动的开发工具,它的早期版本就是直接把整套工作流写进 AGENTS.md 的。这个我能查证,因为我装了它,翻出来的旧代码里还留着当时的处理逻辑。

不过它这里有个挺有意思的反转:我现在用的新版已经不这么干了。初始化之后,它往项目里生成的是一组能被 AI 直接调用的技能(.agents/skills/ 下面六个:propose、explore、apply-change、update-change、archive-change、sync-specs)。

也就是说方向是反过来的:一部分规矩,从「给 AI 读的一段话」,长成了「能被直接调用的一个个动作」。

证据二:我自己的笔记库。 我在用的这套流程里,规矩确实是靠放在目录里的这个文件生效的。这也正是这篇文章讲的东西。

所以我的判断是:你现在就写它,不吃亏。

文件名是免费的,内容是明摆着能复用的——就算将来换工具,或者某个工具压根不认这个文件,把里面那六段挪到别处去,也一样能用。它是你的东西,不是哪个工具的附属品。

我做的只是把它的作用域缩小了点:不只根目录可以有,每一层文件夹都可以有。


三、我的四份说明书

我的笔记库里有四份:

放在哪 多大 管什么
所有「做完就结束」的事 2.5 KB 怎么立项、怎么起名、什么时候算完
放脚本的文件夹 2.4 KB 脚本怎么改、改完怎么验证、什么绝对不能做
读书笔记 2.5 KB 哪些目录是软件自动生成的、不能手动改
骑行 9.9 KB 身体数据、车辆设定、判断之前先确认什么

最有意思的是最后那份——9.9 KB,是其他三份的四倍。

因为它管的领域数据最密集:身体测量、车辆几何、功率基线,每一项都不是随手写的心情,而是后面所有分析的起点。

这里的数字一旦被改写,AI 后面每一次分析都会从一个错的起点往下推,而且推得越远,你越难发现——根早就被人换掉了。

文件最厚的地方,恰恰是错了最贵的地方。


四、一份说明书里写什么

四份文件的结构几乎一样,都是六段。不是我设计的,是补了几次窟窿之后自然长成的。

1)这里是干什么的

最容易含糊、也最值得写清楚的一段。

比如「一次性的事」和「要长期维护的事」我怎么分,写完就一句话:

能说出「做完就结束」的 → 放这边
需要「一直维护下去」的 → 放那边

一句话定完,AI 以后新建什么都自己会分类。

2)文件怎么起名

别让它自由发挥,直接列表格:

类型 格式 例子
一次性的 日期-名称 260315-存储整理
长期的 名称 财务系统

3)每一篇必须带哪几项信息

比如每个项目的主文件都必须有名称、日期、状态、目标四项。少一项就不许建——不然时间一长,会留下一堆没法统计、也搜不到的孤儿文件。

4)哪些东西不许自己改

比如「状态」这个字段,以及状态之间怎么流转。看着像废话,但它挡的是一类很自然的行为:看到某个项目很久没动静,顺手收拾成「已完成」。问题是状态直接影响统计和判定,错一个字,整套东西跟着歪。

所以我在那儿写了一句很硬的:

状态字段不许擅自改,必须人点头。

5)物理红线

  • 文件夹最多三层
  • 命名用数字前缀方便排序
  • 不许用删除命令,一律丢进废纸篓

最后这条是被现实教出来的:我有一次在笔记软件外面删掉一个文件夹,结果同步软件不知道这件事,下次同步一看「本地怎么没了」,又把整包文件从云端下载了回来。等于白删,还多出一堆冲突副本。

6)AI 行为守则:最值钱的一段

这一段是全篇的核心。我把规矩和它要挡的事一一列出来,并且标明哪些是真出过事、哪些只是预防——这个区分是有意的,别把自己吓住:

规矩 它挡住的是什么 备注
已有定标不得改动 AI 照表推算,把实测标定值改低一档 ✅ 发生过
数值不得跨记录挪用 把另一节课的数据写进当天的报告 ✅ 发生过
没发生的事不能写成既成事实 把还没到的日子标成「已执行」 ✅ 发生过
不许擅自改状态 状态一改,统计和判定全跟着错 ⚠️ 高风险,堵上为止
动数据前先走一遍预览 改的是外部服务,执行完才发现错就晚了 ⚠️ 预防性
退役脚本不许删,只打个标注 删完发现还得回来对照 ⚠️ 预防性
密码之类不许写进脚本和笔记 泄露一旦发生没法回头 ⚠️ 预防性,宁可一辈子不做数

它的价值不在于「写了规矩」,在于把吃过一次的亏,变成了不用吃第二次的东西。

而那些「预防性」的条目,是我判断一旦出事就回不了头的地方。规矩不一定要拿事故换,代价不可逆的地方,可以先写。


五、规矩也分大小

一份全局文件管不了所有事,因为不同领域的边界完全不一样。我的办法是分层:

1
2
3
根目录的说明书      ← 全局底线(不许删、不许编数据)
└ 领域的说明书 ← 这个领域特有的(比如脚本必须先预览)
└ 子文件夹…… ← 更细的约定

冲突的时候就近说了算:离当前文件越近的规矩,效力越高。

好处是 AI 不用一次读完全库的规矩。它在哪个文件夹干活,就只需要知道那一个地方的规矩,注意力也集中。

代价当然是维护成本。但我后来发现,这玩意儿的更新频率低得超出预期。它是「出事驱动」生长的:不出事就不改。我最长的一份,也是几个月前搭好骨架之后就没怎么动过。

真正会慢慢变长的,只有第六段——每踩一次坑,多加一条。而这是好事。


六、写了不等于它会照做

我用三个笨办法验收。

第一,让它复述。 派活之前先问一句:「动手前,你先说一遍这个目录的规矩是什么,尤其是哪些不许做。」答不上来,说明它压根没读。这时候重开一次对话,比事后返工便宜太多。

第二,硬规矩要自带护栏。 别指望它自觉。比如「不许直接删除」,光写在文档里没用,工具层面也得把删除命令禁掉,只留回收站。文档管的是「它想怎么做」,工具管的是「它最多能错到什么程度」。

第三,动数据之前必须先给我看一遍。 所有会改数据的脚本,我都要求有个「预览模式」——先打印一遍打算干嘛,确认没问题再真动手。AI 犯错不可怕,可怕的是它犯完错你才知道。


七、一份可以直接抄的模板

复制到任何一个文件夹里,改名 AGENTS.md 就能用:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# XX 文件夹 · AI 使用说明

> 适用范围:本目录及其子目录
> 最后更新:YYYY-MM-DD

## 一、这里是干什么用的
这里放什么,不放什么。一句话讲清边界。

## 二、命名规则
| 类型 | 格式 | 例子 |
|------|------|------|
| …… | …… | …… |

## 三、必须带的信息
每个文件的必填项,缺一样不许建。

## 四、哪些不许擅自改
字段、状态、流转规则……

## 五、物理红线
层级上限、命名格式、禁止操作(如禁止删除)。

## 六、AI 行为守则
1. ……
2. ……
3. ……

写不出来的段落就先空着。我最早的一份只有三段,也照样够用了两个月。


八、最后

回到开头那个被悄悄改掉的标定值。

现在那条规矩就写在文件里,六个字:已有定标不得改动。从那以后,同样的事没再发生过。

AI 的能力每几个月就翻一翻,但有件事一直没变:它执行力极强,却对你真正在意什么一无所知。

你给它任务,它给你结果。你给它规矩,它才给你想要的结果。

而规矩最省力的写法,从来不是坐下来凭空设计——是每次它犯完错,花两分钟,把这次的教训变成一行写在那里的字。

几个月之后回头看,那些文件就是这段合作关系里最值钱的东西。

本文同步发表于微信公众号「糊涂老虎」。

我给每个文件夹写了一份说明书,是专门写给 AI 看的

https://www.makiblog.cn/2026/10/16/我给每个文件夹写了一份说明书/

作者

maki

发布于

2026-10-16

更新于

2026-10-16

许可协议

You forgot to set the business or currency_code for Paypal. Please set it in _config.yml.

评论

You need to set client_id and slot_id to show this AD unit. Please set it in _config.yml.