别指望一份 CLAUDE.md 管住 agent
Agent 干错事,大多数人的反射是往 CLAUDE.md 加一句话。它错在两个方向:指令文件是上下文不是强制,规则在压力下根本不绑得住;而文件越长,越污染那个让 agent 可靠的上下文本身。承重的规则该进 hook、lint、CI,散文应该越写越短。
Agent 干错事,大多数人的反射是往 CLAUDE.md 加一句话。它错在两个方向:指令文件是上下文不是强制,规则在压力下根本不绑得住;而文件越长,越污染那个让 agent 可靠的上下文本身。承重的规则该进 hook、lint、CI,散文应该越写越短。
Agent 能完美遵守一条它看得见的契约,也能毫无知觉地破坏一条它看不见的。能熬过 agent 时代的边界,是那些写进仓库、有类型、有测试、能被 import 的;会被弄坏的,是那些只活在团队记忆里的裸字符串约定。把每条边界都变成契约,是手里杠杆最高的一招。
Agent 最危险的产出不是烂代码,是"我搞定了"这几个字。纯核心、一条命令的验证、一个独立的判官、一份证据账本,全部加起来就为了一件事:把"做完"的裁决权从作者手里拿走,让它变成被证明出来的,而不是被感觉出来的。这是前三篇一直在铺垫的底座。
落进我仓库的改动,现在大部分是 agent 敲的。真正变了的不是效率,是代码的读者换了人——一个每次会话都失忆、只能从文件里重新拼出理解的东西。一旦接受这点,仓库就不再是文档,它变成了 agent 编程时要对着写的接口:目录是导航 API,契约是约束 API,验证是校验 API。
© Xingfan Xia 2024 - 2026 · CC BY-NC 4.0