Skip to main content
USER.md 是代理工作区中可选的用户模型工件。它以指令的形式存储稳定的偏好、沟通风格、关系以及当前项目上下文,以便指导未来的会话。 OpenClaw 在会话开始时会将 USER.mdMEMORY.md 一起加载。它有一个单独的小型启动预算,并且在长时间运行的会话中,后续轮次会拾取对它的编辑。如果该文件不存在,启动将继续进行而不受影响。

编写指令,不要写观察

每条记录都有一行元数据,后面跟着一条祈使式指令:
使用这些规则:
  • AlwaysNeverPrefer 这样的祈使式开头。
  • 记录观察到该偏好的日期。
  • 状态只使用 activesuperseded
  • 每条指令只保留一个行为要求。
  • 只存储能提升协助效果的细节。不要把文件变成档案袋。
PrefEval 发现,即使有检索和提示,在更长的对话中,偏好遵循也会急剧下降(arXiv:2502.09597)。将稳定的偏好重述为指令,可以在智能体使用它的那个时点明确预期行为。

原地取代

当偏好发生变化时,请更新其现有部分。不要在文件的其他位置再追加第二条处于激活状态的指令。 之前:
之后:
请将已被取代的条目放在其替代项旁边,以便当前指令清晰明确。HorizonBench 报告称,系统在用户更改偏好后,常常仍会选择最初陈述的偏好 (arXiv:2604.17283);仅追加且相互矛盾的历史会重现这种失败模式。

选择合适的文件

保持简洁

USER.md 的启动预算刻意小于通用工作区文件。当它变得拥挤时,移除过时且已被替代的条目,并将不会改变行为的项目细节移动到日常记忆或 MEMORY.md

相关内容