xAI 实际发布的内容
该机制分为三个部分进行描述,每个部分都附带了一个边界。
捕获。 “在一次对话轮次完成后,Grok 会在后台对其进行审查,并记录下任何持久性的内容:规范、决策和项目事实。捕获在每个完成的轮次上运行,不会中断会话。”因此,写入是自动发生的,是在轮次完成后的事后记录。在轮次进行期间不会写入任何内容,也不会询问您。
存储。 “笔记是 Markdown 文件,每个主题一个文件。每个项目都有自己的工作区范围,而全局范围则保存适用于所有地方的偏好设置。”两个范围,磁盘上的纯文本文件。一个名为 /memory 的命令“会打开一个只读浏览器,显示每个记忆文件(按范围分组),并提供所选文件的预览”,而第二个命令 /dream 则“将新的观察结果合并到它们所属的主题中”,并且“也会在后台定期自动运行”。
召回。 “在开始相关工作之前,Grok 会读取涵盖该领域的专题,并应用它们,包括在从未提及该主题的会话中。”然后是优先级规则,仅用一行字说明:“当前对话中的指令优先级高于笔记中的任何内容。”
接着是完整的范围声明:“记忆保存了在以后的会话中最可能起作用的细节:团队如何编写和审查代码、决策及其背后的推理,以及关于项目的持久事实(从子系统的位置到运行测试套件的命令)。任务状态、暂定结论、机密信息以及代码仓库或其文档中已涵盖的任何内容都将被排除在外。”
公告中产品截图里的另一个细节很容易被忽略:生成的索引文件包含这样一行字:“由 Grok 生成。请勿直接编辑此文件。”
可用性的声明毫不含糊:“记忆功能现已在 Grok Build 中可用。它适用于新的会话:运行 /new 或启动一个新的 grok,笔记将在第一个完成的轮次后开始记录。”
这改变了什么,没改变什么
它改变了单个项目内部保持连续性的成本。如果团队通过包装器(wrapper)而不是语言自带的测试命令来运行其测试套件,这正是该功能旨在保存的那种持久项目事实,而公告中给出的实际示例也正是如此。在每个会话中重复这些内容纯粹是额外开销,而现在不再需要了。
它不会改变你进行到一半的事情的后续。“任务状态”是排除列表中的第一项。在迁移进行到一半时关闭终端,笔记会记录你的团队如何编写迁移,但不会记录你正处于七个步骤中的第四步、还有两个文件需要转换。这是一个刻意的设计选择,也是一个合理的选择 —— 半成品状态比项目中的任何其他东西都失效得更快 —— 但这与人们听到的“我的智能体记得我们进行到哪里了”完全相反。
它不会改变你尚未最终得出的结论。“暂定结论”是第二项。你在周二和自己争论是应该在边缘端还是在服务端进行缓存,最后以“可能在服务端吧,再看看”结束 —— 这正是下周最值得参考的推理过程,但也最有可能因为“尚未持久化”而被过滤掉。
它不会复制你的代码仓库。“代码仓库或其文档中已涵盖的任何内容都将被排除在外”是一条明智的规则,它悄悄地转移了问题:这意味着,对于你文档所涉及的一切,记忆的完整度完全取决于你文档的完整度。如果 README 是错的,笔记中也不会有任何内容去反驳它。
而且它不保存机密信息,这是正确的,无需争辩。
这些都不是缺陷。xAI 并不是在为某种局限性道歉,而是在发布页面上提前说明了一种写入策略。这比大多数记忆功能告诉你的都要多。有用的应对方式不是对该功能表示怀疑,而是注意到哪四个类别现在需要另寻归宿,并有意识地选择那个归宿,而不是在三周后才发现这个缺口。
人们会从中得出什么误解,以及为什么不应该
“我的智能体会从我中断的地方继续。” 它会继承你的规范和决策。而你中断的地方属于任务状态,而任务状态已被指名道姓地排除了。
“我可以不用再动手记录了。” 对于单个代码仓库内的规范和项目事实,很大程度上是的。但对于排除列表中的所有内容,以及任何必须能被不同工具或不同机器读取的内容,答案是否定的。笔记是针对每个项目和每次安装的。
“我说过的所有话都会被记住。” 捕获“在每个完成的轮次上运行”,但它记录的是“任何持久性的内容”。“持久性”是模型对你的轮次做出的判断。公告并没有承诺某句特定的话一定会被保留,而且索引文件自己的头部也说明了它是生成的,而不是人工撰写的。
“笔记在与提示词冲突时会胜出。” 它不会,而这是正确的设计:“当前对话中的指令优先级高于笔记中的任何内容。”如果笔记是错的,你现在输入的内容会在该会话中覆盖它 —— 但在明天你修改该文件之前,笔记依然是错的。
“这和 Skills 是一样的。” 机制不同,触发方式也不同。我们在Grok Skills对可复用AI记忆意味着什么中划清了界限,而这种区别的通用版本在为什么智能体技能不是记忆中有所阐述。Skills 是你调用的能力;而这些笔记是关于你的观察记录。
解决方案:给四个被排除的类别一个归宿
排除列表就是一份规范。请像对待规范一样对待它。
步骤 1:自己写下暂定结论
丢失成本最高的类别,往往是当时看起来最不重要的那一个:你已经得出但尚未最终确定的结论。“我们可能不打算对这个进行分片。”“重试逻辑没问题,问题出在超时设置上。”这些内容永远不会进入提交信息,对于文档来说又太临时了,而且在设计上就被排除在捕获之外。
将它们写成陈述句,并附上日期和原因。每条占一行。原因比结论更重要,因为原因会在下个月告诉你该结论是否依然成立。
步骤 2:为任务状态保留一行交接记录
在任务进行到一半关闭会话之前,写下那行因为任务状态被排除而没人会帮你写的内容:你正在做什么、已经完成了什么、接下来要做什么。这只需要花 15 秒,却能代替你原本需要花 10 分钟通过 diff 重新构建上下文的麻烦。
这并不是对该功能的批评。对于一个会持续数月的存储库来说,排除任务状态是正确的。这只是意味着交接工作需要由你来写,而将其写在某个持久的地方,总比写在以后找不到的临时草稿文件里要好。
步骤 3:决定哪些事实必须在离开该工具后依然存在
笔记是单台机器上、单个产品中的 Markdown 文件,范围分为项目和全局。如果你所有的工作都在那里进行,这没问题。但需要超出这一范围而存在的事实,是那些你在下个季度、在不同的机器上、向不同的助手重新陈述的事实 —— 架构决策、所有权、解释某种别扭设计的约束条件。
这与会话连续性是不同的需求,值得明确区分你的哪些事实属于哪一类。我们在你实际上应该给智能体多少记忆中探讨过容量大小的问题。
在 MemoryLake 中进行设置
这三个步骤描述的都是同一个对象:一个你决定刻意保留的事实,而不是从对话记录中推断出来的事实。MemoryLake 是一个由你自己写入这些事实的存储库,可以被你连接的任何助手读取,与产生该事实的工具无关。你用自己的语言亲自编写这些条目。没有任何内容会从 xAI 的系统或其他厂商的存储库中读取、写入或删除 —— 你的 Grok Build 笔记完全保留在 Grok Build 自己的控制之下。
步骤 1:创建 API 密钥
从控制面板生成一个密钥。正是它让编码智能体、聊天助手以及你下个季度使用的任何工具都能获取到相同的事实集。

步骤 2:上传你的第一批记忆
从被排除的四项开始:临时结论、交接记录、以及你不想重新推导其推理过程的决策。通常十几个简短的条目就能覆盖一个项目。将每一条写成带有日期的陈述,而不是写成故事。

步骤 3:连接你的 AI 和智能体
将你的工具指向该层,以便在会话开始时加载这些事实,而不是重新构建。然后用能证明效果的方式进行测试:在不同的工具中开启一个全新的会话,并请求获取其中一个事实。如果它能回答,说明该事实已不再依赖于某个单一产品的写入策略。

这在实践中改变了什么
第一个改变是,公告变得可以验证,而不再只是一个愿景。“它能记住”是一个你无法验证的说法。而“规范、决策和项目事实,减去任务状态、暂定结论、机密信息以及你文档中已涵盖的任何内容”,则是一个你可以对照自己一周的工作来查看缺口在哪里的具体声明。
第二个改变是,你的文档悄然以一种新的方式承担起重任。因为笔记会跳过“代码仓库或其文档中已涵盖的任何内容”,所以一份过时的文档现在成了记忆功能刻意顺从的文档。审查 README 不再只是保持整洁的日常工作,而是变成了记忆维护。
第三个改变是,即使你从未打开过 Grok Build,“每个主题一个文件”的设计也值得借鉴。每个主题一个文件,定期合并,并对结果提供只读浏览器,这比单个不断增长的文件是更好的形态 —— 同样的形态也适用于你手动维护的存储库。不断累积的日志的失效模式在为什么可搜索的会话日志总是让想要记忆功能的人感到失望中有所讨论。
第四个改变是,为 Grok 的聊天端添加记忆功能仍然是一项独立的任务,具有不同的机制;我们在为 Grok 添加持久记忆的实用方法中介绍了这些选择。Grok Build 的笔记范围仅限于 Grok Build。
与自动写入记忆协作的最佳实践
在信任笔记之前先阅读它们。 /memory 命令就是为此而存在的。对文件进行只读浏览是找出那条悄悄出错的笔记的最快方法。
在文件层面修改笔记,而不是在对话中修改。 对话指令在当前会话中会胜出,但不会改变磁盘上的任何内容。如果规范发生了变化,请编辑主题文件。
做好“持久性过滤器”有其自身判断的准备。 捕获记录的是“任何持久性的内容”。你认为持久而它不认为持久的内容将直接不会出现,且不会报错。
不要把机密信息放在它附近,也不要依赖排除规则作为控制手段。 排除规则是一种写入策略,而不是安全边界。
在工具之外,为每个决策保留一份书面记录。 如果一个事实必须向第二个助手重新陈述,那么它就不应该只存在于一个产品的笔记中。
每季度重新阅读一次你的代码仓库文档。 记忆在设计上会顺从它们,因此它们的过时现在就是你记忆的过时。
结论
Grok Build 的记忆功能是一个真正有用的功能,其描述也异常坦诚。它在每个完成的轮次后进行捕获,将 Markdown 主题文件存储在项目范围和全局范围中,在相关工作开始前读取它们,并允许当前对话覆盖笔记所说的任何内容。
值得铭记的部分是告诉你在哪里停止的那句话:“任务状态、暂定结论、机密信息以及代码仓库或其文档中已涵盖的任何内容都将被排除在外。”
xAI 并没有宣布它解决了记忆问题,这里也没有任何内容表明这一点。它发布并公开了一项写入策略。面对公开的写入策略,合理的做法是阅读它、同意其中的大部分内容,然后决定被排除的类别将存放在哪里 —— 因为它们是你最先会想念的内容,而且根据定义,没有任何工具会自动帮你记录它们。