与代理合作最昂贵的事情是重复解释上下文。每天早上你都要重新解释昨天的决定,粘贴上次提交信息,重新确定哪个 bug 阻碍了部署。乘以每个会话,隐藏成本每周是数小时,而不是数分钟。
STATE.md 消除了这种负担。一个文件,在每个会话结束时更新,在下一次会话开始时加载。纪律:在结束会话之前,花三分钟更新文件。明天,这三分钟能节省二十分钟。
STATE.md 只包含三件事,不多不少。
决策: 你确定了什么以及为什么。没有为什么,未来的你就会重新审视这个决定。“每日摘要使用 Postgres 触发器而不是 cron:触发器是事务性的,cron 会与写入路径竞争。”
进行中: 哪些工作只完成了一半,具体到可以交接。“迁移 014 已写入 /migrations/014_add_subscription_columns.sql 但尚未应用。必须在 webhook 处理程序上线之前运行。”
阻碍: 阻止前进的因素,包括你尝试过的方法。“Stripe webhook 签名在测试环境中失败。尝试了原始主体解析器,仍然是 400。下一步:检查 Vercel 预览中的环境变量。”
将其限制在 60-80 行。当问题解决时,将其删除。当功能发布时,将其存档。
更新纪律。 添加一个 Stop 钩子来提醒自己:
{
"hooks": {
"Stop": [
{
"command": "echo 'Before you close: update STATE.md with decisions, in-flight, and blockers from this session.'"
}
]
}
}仅仅提醒是不够的;习惯必须是自动的。最快的方法:连续五个会话都这样做。到第六个会话,你会觉得不更新就关闭会话是错误的。这种不适感就是习惯已经形成的信号。
MEMORY.md 是所有持久化内容的索引。每个条目都是一行,指向一个单独的文件。四种类型:
user_*:关于你的持久化事实:时区、职业背景、偏好。user_location.md
feedback_*:从错误中吸取的规则,带有置信度字段。从 0.3 开始,当模式再次出现时提高到 0.5,当置信度达到 0.9+ 时提升到 CLAUDE.md。feedback_public_endpoints_need_rate_limits.md
project_*:一个项目的带日期状态和决策。发布后存档。project_stripe_integration_2026_05.md
reference_*:人员、工具、API 的查找表。reference_neon_db_config.md
每行索引保持在 200 个字符以下,索引文件保持在 200 行以下。超过这个限制,条目会被截断,Claude 无法看到它们。
STATE.md 用于现在。MEMORY.md 用于永远。 经验法则:如果你会在站立会议上说出来,它就属于 STATE.md。如果你会把它写在维基或入职文档中,它就属于记忆文件。站立会议是暂时的;维基是持久的。
当一个项目发布后,如果 STATE.md 仍然包含五行关于它的内容,将这些内容移动到一个带日期的 project_* 记忆文件并清除它们。项目并没有停止重要;它停止了当前状态。这种区别使 STATE.md 保持有用。
写状态,而不是日记。 日记条目:“处理了 Stripe 集成。这很棘手。”状态条目:“Webhook 端点在 app/api/webhooks/stripe/route.ts。签名验证在本地工作,但在 Vercel 预览中失败(原始主体格式错误)。下一步:检查 rawBody 中间件配置。”一个为下一次会话提供了起点;另一个提供了回忆录。
另外两个反模式:没有具体下一步行动的进行中条目,以及同一主题在不同会话中的重复条目。合并重复项:一个主题,一个条目,仅限当前状态。
一个好的会话更新是九到十二行:一个带有理由的决策,一个带有下一步行动的进行中项目,一个带有你尝试过的方法的阻碍。
扩展到 50 个记忆文件以上:摘要层。 每个 MEMORY.md 指针行大约消耗 100-150 个 token。200 行就是 20-30K 个纯指针 token。解决方案:STRATEGY-DIGEST.md,每个主要文档的 2-3 句话摘要,加上一个“使用时机:”字段:
## q2-positioning.md
Q2 定位目标是中端市场销售组织中的 AI 赋能。
使用时机:讨论目标客户、定价或潜在客户资格。Claude 读取摘要(大约 3K token),并且只在相关时才加载完整文档。对于 25 个策略文档,这是 3K token 而不是 50K。这样会话保持快速。“使用时机:”字段是路由机制:将其写成一个具体的触发条件,而不是文件的描述。
STATE.md 捕获当前状态(决策、进行中、阻碍),限制在 80 行以内;在会话结束时更新并及时存档历史记录。MEMORY.md 索引持久化知识,分为四种类型(用户、反馈、项目、参考),限制在 200 行以内。今晚从三行开始:一个决策,一个进行中项目,一个阻碍。在习惯形成期间,三行胜过零行。