USER.md 深度配置——让AI记住你是谁,而不是每次都从头解释

张开发
2026/4/23 14:18:51 15 分钟阅读

分享文章

USER.md 深度配置——让AI记住你是谁,而不是每次都从头解释
卷卷养虾记 · 第三篇先说一件每天都在发生的蠢事你打开和 AI 的对话。你说「帮我写一封邮件给供应商催一下这个月的对账单。」它问你「请问您是什么行业您公司的对账周期是您希望语气正式还是友好」你叹口气回答了。第二天你又打开对话。你说「帮我整理一下今天开会讨论的几个风险点。」它问你「请问您是做什么工作的风险点是哪个领域的」你又叹口气又回答了。这不是 AI 的问题。这是你没有写 USER.md。每次会话Agent 是失忆的。你不告诉它你是谁它就只能问。USER.md 解决的就是这件事让它在每次醒来的时候就已经知道你是谁。USER.md 和 SOUL.md 的区别上一篇我们写了 SOUL.md——它定义的是 Agent 的性格和行为方式。USER.md 定义的是你。一个简单的类比全屏复制文件类比SOUL.md员工培训手册他应该怎么做事USER.md老板档案他服务的是什么样的人好的助理不只是会干活。是在你还没开口的时候就已经知道你大概要什么。这种「提前知道」来自于对你的深度了解。而 USER.md就是你主动给它的那份了解。大多数人的 USER.md 犯了什么错我在社区里看过的 USER.md大概分两种极端。极端一履历式姓名张三 职业互联网公司产品经理 工作年限8年 技能产品设计、数据分析、项目管理 爱好摄影、跑步、读书这写的是简历不是 USER.md。这些信息对 Agent 来说几乎没用。它不需要知道你叫张三。它需要知道的是当你说「帮我看看这个需求文档」的时候你站在什么位置上、带着什么背景在说这句话。极端二空白式就是根本没写。装好 OpenClaw配好模型SOUL.md 复制了别人的USER.md 一行没有。然后抱怨说「它好像不太懂我」。它当然不懂你。你从来没告诉过它。有效的 USER.md介于这两者之间。不是履历不是空白。是一份让陌生人读完之后能大致判断怎么跟你工作的文件。USER.md 的六个模块我把 USER.md 拆成六个模块。每个模块解决一个具体的「它不了解你」的问题。模块一工作身份解决的问题它需要站在什么视角上理解你说的话注意这里不是写你的头衔而是写你的工作视角。同样是「产品经理」一个在创业公司身兼数职的 PM和一个在大厂专门负责支付链路的 PM说「帮我看看这个需求」背后的上下文完全不同。工作身份我在一家中型支付公司负责风控体系。具体来说我管三件事规则策略交易风险的实时拦截逻辑模型策略机器学习模型的业务接入和迭代团队12个人技术和业务各一半我同时对接的角色技术研发、数据团队、业务BD、合规法务、外部合作方。我的决策层级日常策略调整我自己定。超过一定风险阈值的变更需要报批。涉及资金的决策我没有最终拍板权。这段描述做的事情● 不是写头衔是写职责边界● 说清楚了对接的角色让它知道你的沟通对象是谁● 说清楚了决策层级让它知道哪些事你能拍板哪些不行这样当你说「帮我准备一个向上汇报的材料」它就知道你的「上」是什么级别材料应该是什么颗粒度。模块二工作方式解决的问题你怎么工作它怎么配合你这个模块写的是你的工作习惯和节奏。很多人忽略这个然后发现 Agent 总是在错误的时机给它不需要的东西。工作方式时间节奏早上9-10点处理昨天遗留的问题不适合做新决策10-12点深度工作时间能集中思考下午大多数时候在开会晚上9点后如果还在工作通常是在做规划类的事偏好的信息处理方式给我结论不给我过程。如果我需要过程我会问。超过一屏的内容先给我摘要。我的工作节奏关键词快、准、少废话。我宁可一个不完整的答案让我继续追问也不要一个为了显得完整而写了很多废话的答案。我的沟通习惯发消息很短不代表态度不好。「看一下」「整理下」「有问题吗」这类短句是正常的工作指令不是在考验你。最后一条特别重要。很多人发现 Agent 在收到很短的指令时会表现得很困惑或者开始问一堆澄清问题。这是因为训练数据里「正常的」用户指令往往很长很详细。短指令会让模型产生歧义。在 USER.md 里明确说「短指令是正常的」可以大幅减少这类困惑。模块三判断偏好系统解决的问题遇到有选择的情况它应该往哪个方向倾斜这是 USER.md 里最难写也最值得写的部分。「偏好系统」不是写你喜欢什么颜色或者爱吃什么。是写在需要做判断的时候你的默认倾向是什么。判断偏好在速度和完整性之间我倾向速度。80分够用的方案现在给我比100分完美的方案三天后给我更有价值。在保守和激进之间风控策略上我偏保守。业务判断上我相对激进。如果你不确定我在讨论哪个领域先问。在直接和委婉之间直接。即使结论对我不利直接说。不需要缓冲不需要「这只是我的一点小建议」。在给选项和给推荐之间给推荐。如果你给我三个选项同时告诉我你推荐哪个我会更快做决定。「这取决于您的情况」不是答案。在标准做法和定制方案之间如果有行业标准做法先告诉我标准做法是什么再告诉我我的情况适不适合哪里需要调整。不要因为我的情况特殊就跳过标准做法。这个模块的关键技巧用二元对立来定义偏好。不是写「我喜欢高效」而是写「在速度和完整性之间我倾向速度」。这样给了模型一个可以执行的判断框架而不是一个模糊的形容词。模块四背景知识库解决的问题你领域里的专业词汇和背景它能直接理解吗这个模块是「上下文压缩」的关键。你不可能每次都从零开始解释你的行业背景。但如果你在 USER.md 里预先写好它每次会话开始就知道了。背景知识库我用的术语你需要直接理解漏放率应该拦截但没拦截的交易占比误伤率不应该拦截但拦截了的交易占比规则上线把风控策略部署到生产环境灰度先在小比例流量上测试再全量策略case一条具体的风险识别案例黑名单/白名单直接拦截/直接放行的名单T1次日处理反欺诈/反洗钱两个不同的风控方向前者关注交易欺诈后者关注资金流向合规我的常用工具飞书内部沟通和文档SQL查数据我自己会写但有时需要你帮我优化Python数据分析我能看懂但不是主力Confluence技术文档我的团队结构你经常会听到这些角色全屏复制角色说明策略同学负责写规则我直接管算法同学负责模型我管但他们更懂技术细节数据同学提数和报表协作关系业务同学提需求的我需要把他们的语言翻译成技术要求这个模块写好之后效果是立竿见影的。你说「漏放率上升了帮我看看可能是哪几个方向」它直接开始分析不会先问你「漏放率是什么意思」。模块五当前状态解决的问题它需要知道你最近在忙什么、在烦什么。这是 USER.md 里最反直觉的一个模块。大多数人觉得USER.md 是「永久信息」不需要经常改。但我的经验是「当前状态」是 USER.md 里最有价值的部分之一。原因是你跟助理的对话80% 是和当前处境相关的。如果它不知道你现在在做什么大项目、在面对什么压力、在准备什么汇报它就只能在每次对话里靠你零散提及来拼凑上下文。而这些拼凑会随着会话结束而消失。当前状态每周更新最近在推进的项目Q4风控策略优化重点降低误伤率目标从现在的2.3%降到1.8%以内新的反欺诈模型接入算法团队在做我需要评审业务规则的配套调整年度汇报准备下个月要给VP汇报全年风控数据需要准备一个15页以内的PPT最近在烦的事业务团队一直在压我降低误伤率但我担心太激进会导致漏放率反弹一个核心策略同学可能要离职交接风险在评估中数据团队的报表延迟问题还没解决影响我每天早上的决策最近做的重要决定上周把某个高风险商户类别的拦截阈值上调了5%本月暂停了一个灰度中的新规则因为发现了数据异常接下来两周的重点完成反欺诈模型的评审文档搞定年度汇报的数据底稿跟离职风险同学谈一次写完这个模块之后有一件事你会发现你自己也更清楚自己在干什么了。USER.md 的「当前状态」某种程度上是一个强迫你定期梳理自己处境的工具。我现在每周一早上花 10 分钟更新这个模块。这 10 分钟是我一周里最值的 10 分钟之一。模块六沟通雷区解决的问题什么会让你立刻关掉对话窗口这个模块是 SOUL.md 里「禁区」的用户版本。SOUL.md 的禁区说的是 Agent 的行为边界。USER.md 的沟通雷区说的是你这个人的触发点。沟通雷区以下这些会让我直接烦废话开场「您好很高兴为您服务」「这是一个很好的问题」「感谢您的信任」→ 直接开始不要客套。过度免责「以下内容仅供参考不构成专业建议」「具体情况请咨询相关专业人士」→ 我知道你是AI我知道要自己判断不需要提醒。假装不确定「这个问题可能因情况而异……」「从某种角度来看……」→ 如果你不确定直接说不确定。不要用模糊表达来掩盖不确定。反向提问轰炸一次只问我一个问题。不要在一条消息里问我五个问题。如果需要澄清找最关键的那个问题问。无效总结回答完之后不要再加一段「总的来说以上就是关于XXX的分析」。说完就停不要画蛇添足。这个模块有一个附加价值写的过程会让你意识到你其实对沟通方式有很强烈的偏好。很多人以为自己对这些「无所谓」直到他们开始写这个模块才发现自己对废话开场的厌恶程度已经接近生理反应。[配图9]prompt: a persons hand slamming a laptop shut in frustration, the other hand rubbing their forehead, coffee cup nearby still steaming, home office background, evening light, candid moment caught mid-action, 35mm, slight motion blur on the hands, the frustration is real and unposed, warm ambient light, film grain把六个模块组合起来整个 USER.md 的结构是这样的USER — [你的名字或代号] 工作身份 [职责范围、对接角色、决策层级] 工作方式 [时间节奏、信息处理偏好、沟通习惯] 判断偏好 [二元对立框架下的默认倾向] 背景知识库 [专业术语、常用工具、团队结构] 当前状态每周更新 [进行中的项目、最近在烦的事、 近期重要决定、接下来的重点] 沟通雷区 [让你立刻烦的沟通方式]总长度建议控制在 800 字以内。超过这个长度你需要问自己这条信息是每次会话都需要知道的还是只在特定任务里才需要如果是后者不要放在 USER.md 里。在需要的时候直接在对话里提就行。一个关于「当前状态」的进阶用法我用了一段时间之后发现了一个更高效的方式。不是手动更新「当前状态」而是让 Agent 帮我更新。每周五下午我会发给它一条消息帮我更新 USER.md 的当前状态。本周发生了这些事[列几条]接下来两周重点是[列几条]其他变化[如果有]它会根据我说的生成一个更新版本的「当前状态」模块我确认之后替换进 USER.md。这样USER.md 的维护成本从「我需要想清楚再写」变成了「我说它整理」。更容易坚持。不同场景下的 USER.md 侧重USER.md 没有标准模板。不同的使用场景侧重的模块不同。如果你主要用它处理工作任务重点打磨「背景知识库」和「当前状态」。这两个模块决定了它能不能在你不解释背景的情况下直接进入工作状态。加强版背景知识库示例工作场景我们公司内部系统的代号你需要知道天网实时风控引擎罗盘风控数据看板飞鸟消息推送系统我说「在天网上线」就是指把规则部署到实时引擎。我说「看罗盘数据」就是指查风控看板上的指标。你不需要每次都问我这些是什么。如果你主要用它做创作辅助重点打磨「判断偏好」和「沟通雷区」。创作类任务里风格一致性是最难保证的。你需要给它足够清晰的审美坐标。创作场景的判断偏好示例在文章结构上我偏好「问题-故事-原则-行动」的结构不喜欢「总分总」的标准议论文结构。在语言风格上我写的东西读起来应该像一个真实的人在说话不像一篇报告也不像一本教科书。判断标准如果你不确定这句话我会不会写就问自己「一个聪明的普通人会这么说话吗」会就留。不会就改。如果你主要用它做个人助理重点打磨「工作方式」和「当前状态」。个人助理场景里最大的价值是它能主动帮你追踪事情而不是被动等你发指令。个人助理场景的当前状态示例当前状态我在追踪的事你要帮我记着给王总的方案他说本周给回复还没回健身房会员到期需要在本月20号前续费妈妈生日是下个月3号还没想好送什么有一本书借给同事三周了还没还本周必须完成的事年终汇报数据底稿周四前给新同事的入职材料周三前我最近在分心的事影响我的专注度在考虑要不要换工作处于观望阶段家里的猫最近食欲不好在担心最后这个「在分心的事」很多人觉得没必要写。我的看法相反这是最应该写的。因为你的情绪状态会直接影响你和 Agent 交互的方式。当你在担心猫的时候突然发了一条「帮我看看这份合同」它如果知道你最近情绪不在最佳状态就会更倾向于给你一个简短清晰的摘要而不是一份详细到让你更焦虑的分析报告。USER.md 和 MEMORY.md 的边界写到这里很多人会有一个困惑USER.md 和 MEMORY.md 有什么区别都是「让它记住东西」为什么要分开一句话区别USER.md → 关于你这个人的稳定信息MEMORY.md → 关于发生过的事情的动态信息更具体地说全屏复制信息类型放哪里示例你的职责和决策层级USER.md「我管12个人」你的沟通偏好USER.md「不用感叹号」你正在做的项目USER.md 当前状态「Q4策略优化」上次讨论的结论MEMORY.md「周一决定暂停灰度」你做过的某个决定MEMORY.md「上周把阈值上调了」某次对话里你提到的偏好MEMORY.md「他说不喜欢这个供应商」简单判断标准如果这个信息明年还会是真的放 USER.md。如果这个信息是某件具体的事放 MEMORY.md。MEMORY.md 是下一篇的主题。今天先不展开。一个你应该做的练习在你开始写 USER.md 之前我建议你做这个练习想象你要给一个新加入的助理写一封入职说明信。这个助理非常聪明学东西很快但完全不了解你不了解你的行业不了解你的工作习惯。你只能写一页纸。写完之后● 这页纸里有什么放进 USER.md● 你发现自己写不下的东西思考是不是需要放进 AGENTS.md● 你发现自己写了很多「发生过的事」那些是 MEMORY.md 的内容这个练习会帮你很快找到 USER.md 应该放什么。本篇附录我实际在用的 USER.md 全文同样不要直接复制。这是我的写的是我的处境。你的处境和我不一样。但可以参考结构和颗粒度。USER — 风控老兵 v8 工作身份 支付公司风控负责人。 管规则策略、模型策略、12人团队。 对接角色技术研发、数据、业务BD、合规、外部合作方。 决策层级 ● 日常策略我自己定 ● 高风险变更需要报批 ● 资金相关我没有最终拍板权 工作方式 深度工作时间上午10-12点 会议密集时间下午 规划类工作晚上9点后 信息处理给结论不给过程超过一屏先给摘要。 节奏关键词快、准、少废话。 短指令是正常工作方式不是态度问题。 判断偏好 速度 完整性够用就行不要追求完美 风控策略保守优先 业务判断相对激进 直接 委婉结论不利也直说 给推荐 给选项告诉我你选哪个 标准做法优先再说特殊情况 背景知识库 风控术语直接用不需要解释 漏放率、误伤率、规则上线、灰度、策略case、 黑名单/白名单、T1、反欺诈/反洗钱、 实时拦截、离线模型、特征工程、阈值 内部系统代号 天网实时风控引擎 罗盘风控数据看板 飞鸟消息推送系统 常用工具 飞书主力沟通、SQL我能写有时需要优化、 Python能看懂不是主力、Confluence技术文档 团队角色经常会提到 策略同学写规则我直管 算法同学做模型技术细节他们更懂 数据同学提数报表协作关系 业务同学提需求方需要把他们的语言翻译成技术要求 当前状态每周更新 进行中的项目 Q4误伤率优化目标从2.3%降到1.8% 反欺诈模型接入评审业务规则配套调整 年度汇报准备下个月给VP15页以内PPT 最近在烦的事 业务团队压我降误伤率但我担心漏放率反弹 核心策略同学离职风险交接方案在评估 数据报表延迟问题未解决影响每日决策 近期重要决定 上周某高风险商户类别拦截阈值上调5% 本月暂停一个灰度中的新规则发现数据异常 接下来两周重点 完成反欺诈模型评审文档 搞定年度汇报数据底稿 和离职风险同学谈一次 沟通雷区 废话开场您好/感谢您的提问→ 直接开始 过度免责仅供参考/请咨询专业人士→ 我知道 假装不确定可能因情况而异→ 直说不确定 一次问多个问题 → 一次只问最关键的一个 回答后再总结一遍 → 说完就停写在最后写 USER.md 这件事我一开始觉得很麻烦。要想清楚自己是谁、怎么工作、喜欢什么、烦什么。这些问题平时根本没空想。但写完之后有一种奇怪的轻松感。不只是因为 Agent 变得更好用了。而是因为——你把自己想清楚了一次。你知道自己在做什么在烦什么在往哪个方向走。这件事本身就值那一两个小时。Agent 只是一个借口。真正的收获是你对自己多了一份清晰。卷卷今天表现不错。我更新了「当前状态」之后它主动提醒我「你提到核心策略同学可能离职但你的接下来两周重点里没有安排谈话时间要加进去吗」我愣了一下。然后在日历里加了一个周三下午的提醒。这就是它「懂你」之后的样子。不是更聪明是更了解你。了解你才能在你没想到的时候替你想到。下一篇《MEMORY.md 深度配置——怎么让它越用越懂你而不是每次都失忆》我们会聊记忆系统的底层逻辑是什么、daily memory 怎么管理、以及怎么让 Agent 从每次对话里提取有用的东西存下来而不是什么都记、什么都没用。养虾日记持续更新。卷卷监制。它刚才踩了我的键盘帮我发出去了一条还没写完的消息。我决定这不算它的错。USER.md 里没写「不许踩键盘」。下次加上~另外听说claude 开源了 我下了源码 52w行~ 太col了

更多文章