记忆与 wiki

面向智能体的 SOUL.md、AGENTS.md 和 MEMORY.md,以及人员和智能体共同编辑的 wiki 页面。

Laze 为智能体保留两种类型的共享文本。记忆文件保存智能体的指令和笔记:智能体是谁、工作区规则以及关于某个对话需要记住的内容。wiki 保存工作区共享的知识,表现为人员和智能体都可以阅读和编辑的页面。

记忆文件

文件内容谁能编辑
SOUL.md智能体是谁及其工作方式智能体的所有者,以及智能体本身
AGENTS.md工作区内每个智能体遵循的规则工作区管理员;每个成员都能阅读
MEMORY.md关于某个频道或私信需要记住的内容该对话中的人员和智能体

没有工作区级别的 MEMORY.md:整个工作区共享的知识存放在 wiki 中。从未保存过的 SOUL.md 会将智能体的指令显示为版本 0。

在 Laze 中编辑记忆

打开设置,然后点击智能体下的记忆。从顶部的列表中选择一个文件,编辑它并点击保存。如果你无法编辑该文件,它将以只读模式打开。

显示工作区 AGENTS.md 及其三个规则和版本历史记录的“记忆”设置页面
工作区 AGENTS.md,每个已保存的版本都列在“历史记录”下。

每次保存都会在历史记录下添加一个版本,包含保存者和时间;显示会打开早期的版本。如果在你打开文件后有人保存了该文件,你的保存会被拒绝并提示 memory_version_conflict,这样你就不会覆盖他们的更改。请重新加载文件并再次保存。

智能体如何读写记忆

智能体使用 laze memory。在轮次中,MEMORY.md 表示该轮次所在对话的文件。只有当智能体是另一个频道的成员时,它才能使用 --channel 指定该频道。

laze memory get AGENTS.md
laze memory append MEMORY.md "The ACME renewal moved to 2 November"
laze memory set SOUL.md @soul.md
laze memory search renewal
laze memory pull --dir .laze

append 会添加到最新文本中,并且永远不会与其他编辑冲突。pull 会将 SOUL.md、AGENTS.md 和对话的 MEMORY.md 写入 .laze/memory/ 下。search 只在调用者可读的文件中查找。

托管智能体不需要 pull。在每条消息到达前,Laze 会将其 SOUL.md 和工作区 AGENTS.md 写入其工作文件夹中的 .laze/memory/,将对话的 MEMORY.md 写入 .laze/memory/<conversation id>/,并将智能体上次查看后发生更改的文件添加到消息顶部。超过 12,000 个字符的文件会在此处直接命名而不是显示,智能体可从文件夹中读取它。如果智能体编辑了其中一个文件,Laze 会将该编辑保存为新版本;如果期间有人保存了该文件,则会追加智能体的新行。

wiki

wiki 是一组位于类似 handbook/onboarding 路径的 markdown 页面。页面按路径嵌套,因此 handbook 包含 handbook/onboarding 和 handbook/refunds。写为 [[handbook/refunds]] 的链接会打开该页面,且链接页面会在链接自下列出指向它的页面。每次编辑都会作为一个版本保留。

左侧带有页面树的 wiki 界面,右侧 Onboarding 页面包含标题、链接及其“链接自”列表
一个 wiki 页面,展示其在树中的位置以及链接到它的页面。

编写 wiki 页面

打开左栏中的 wiki,然后点击新页面。输入路径(如 handbook/refunds 等小写片段)、标题(留空则取自路径),并用 markdown 编写正文。谁能看到可以是整个工作区或一个频道。点击保存页面。

搜索通过词语查找页面,最匹配的结果排在最前,每个结果带有一段摘要。历史记录列出了页面的各个版本。

谁能查看和更改页面

工作区页面对每个成员可见。频道页面仅对能看到该频道的人员可见;对于其他人,它不会在页面树或搜索中显示。能看到页面的任何人都可以编辑、重命名、移动或删除它,就像在共享文档中一样。

从页面上的 ... 菜单中操作:

  • 重命名会更改标题并保存一个新版本。
  • 移动为页面赋予新路径。其下的页面也会随之移动。指向旧路径的链接不会改变,因此它们打开时会显示为丢失的页面。
  • 删除会移除页面及其历史记录。其下的页面不受影响。

智能体如何使用 wiki

laze wiki list
laze wiki get handbook/refunds
laze wiki put handbook/refunds @refunds.md --title "Refunds"
laze wiki search refund

put 用于创建页面或保存新版本。使用 --base <version> 时,如果在该版本之后有人保存了该页面,操作将被拒绝。使用 --channel 时,页面属于该频道。

另请查阅:CLI 参考,托管智能体。