Memory Notes

如何编写结构良好的 Basic Memory 笔记:frontmatter、使用语义分类的观察、使用 wiki‑links 的关联,以及构建的最佳实践...

安装

概览

什么是Memory Notes

Memory Notes 是一套专为 Basic Memory 设计的结构化笔记编写规范,旨在将分散的 Markdown 文件转化为一个可搜索、可关联的知识图谱。每篇笔记由三个核心部分构成:YAML 格式的元数据(frontmatter)、以语义分类标记的事实观察(observations),以及用于建立跨笔记连接的关系声明(relations)。这种结构化的写作方式不仅让笔记本身更具条理性,更通过自动生成的知识图谱关系,使复杂项目的决策过程、技术选型和背景脉络变得清晰可见且易于追溯。

在内容组织上,笔记主体采用自由格式的 Markdown 撰写,鼓励详细阐述背景动机与权衡分析;而 Observations 部分则要求将关键事实提炼为 `[类别] 具体内容` 的形式,每条观察都成为知识图谱中的一个独立节点。Relations 部分则使用 `relation_type [[目标笔记标题]]` 的语法显式定义笔记间的逻辑联系,同时支持在正文中直接使用 Wiki-link 进行自然引用,从而构建起多维度的信息网络。

此外,Memory Notes 强调增量更新与避免重复创建的重要性,推荐通过 `edit_note` 工具对已有笔记进行追加或修改,而非新建副本。系统还支持基于项目路径的内存 URL(如 `memory://project/path/note`)和通配符查询,极大提升了大规模知识库下的导航效率。整体而言,这套方法融合了传统文档写作的深度与图数据库的连接优势,适合需要长期积累、反复查阅和智能推理的技术团队和个人知识管理场景。

核心功能特点

  1. 采用 YAML frontmatter 定义标题、标签和类型,确保笔记具备唯一标识和分类能力
  2. 使用 `[类别] 内容` 语法定义原子化观察项,每条均为知识图谱中的独立可检索实体
  3. 支持 Relations 显式链接笔记,结合 Wiki-link 实现双向关联与上下文扩展
  4. 自动生成稳定的 memory://URL 地址,支持通配符查询与跨项目路径解析
  5. 提供 edit_note 等精细编辑接口,便于增量更新而不破坏历史记录

适用场景

Memory Notes 特别适用于需要长期维护复杂技术架构或产品决策的知识密集型工作流。例如,在一个微服务系统的演进过程中,架构师可以创建一篇名为 ‘API Design Decisions’ 的笔记,详细描述从 REST 转向 GraphQL 的评估过程,并在 Observations 中明确列出 `[decision] Use REST for public API` 和 `[requirement] Support versioning from v1` 等关键结论。随后通过 Relations 将其与认证系统、性能需求等关联笔记连接起来,形成可追溯的设计脉络。当后续团队讨论缓存策略时,只需搜索 `[decision]` 即可快速定位所有相关决策点,无需翻阅冗长的会议纪要。

对于敏捷开发团队而言,Memory Notes 同样具有实用价值。每日站会产生的待办事项可在 Tasks 类型笔记中记录,并通过 `depends_on` 关系指向依赖的服务模块说明文档;而代码评审中发现的风险点可用 `[risk] Third-party API lacks SLA` 形式归档,并打上 `#security #api` 标签以便后续追踪。随着项目推进,这些零散信息逐渐织成一张覆盖需求、实现、测试与运维的完整知识网络,显著降低新人上手成本和新成员融入周期。

更进一步地,当 AI 辅助编程工具介入时,Memory Notes 的结构化特性能够提升上下文理解精度。例如调用 `build_context(memory://auth-system)` 不仅能读取身份验证设计文档本身,还能自动聚合其依赖的数据库配置、加密方案乃至相关的合规要求笔记,为生成符合企业标准的认证代码提供充分依据。这种深度整合使得知识资产真正服务于自动化流程,而非停留在静态存档层面。