如何让 Obsidian 成为 Claude Code 的大脑

编译摘要

1. 浓缩

  • 核心结论1: Agent 越用越聪明不取决于模型,而取决于它住的文件夹结构——三层记忆(L1 持久画像 / L2 程序性记忆 / L3 历史检索)分离是解决 token 膨胀和记忆腐化的关键
    • 关键证据: 作者实测把 3000+ 行的单文件 memory.md 拆成三层后,每次对话启动从 3 万 token 降到不到 3000 token;L2 按主题切碎为独立小文件 + 超薄索引(标题 + 一句话钩子),命中再加载
  • 核心结论2: Agent 从"每次对话重新猜测"变成"越用越像用户",靠的是对话交班协议(5 步收班)+ 语义去重写入 + 项目级 PROGRESS.md 跨对话续接
    • 关键证据: memory_update.py 语义去重保证 L2 条目不重复;飞书发图踩坑案例在三周后新对话中自动被 Agent 绕开(吃一堑长一智闭环);PROGRESS.md 把项目状态压成 300 字摘要(不到 500 token)即可续接
  • 核心结论3: 工具发现靠"能力地图反向索引"(按"我要做什么"索引工具)+ Skill 封装工作流为肌肉记忆 + 三层 QA(动作自检 / PostToolUse Hooks / 定期体检)保障产出质量
    • 关键证据: 发飞书群消息从 5 分钟 5000+ token(摸索式)降到 2 秒 200 token(查表式);vault-gardener 每周扫描 14,287 篇笔记,cc-health 每月审计 6 层配置栈

2. 质疑

  • 关于"三层记忆通用性"的质疑: 作者的三层划分高度贴合个人开发者 + Obsidian Vault 场景。企业级 Agent 系统中,L1 用户画像可能涉及多人/多角色/权限分层,L2 程序性记忆可能涉及团队协作和版本冲突,L3 历史检索面临数据合规和审计要求。三层模型的扩展性需要更多验证
  • 关于"语义去重可靠性"的质疑: memory_update.py 的语义去重依赖 LLM 判断两条经验是否同义,但 LLM 判断本身有噪声。误合并(把不同经验判为同义)比漏写更危险——会导致关键经验丢失
  • 关于数据可靠性的质疑: 文章是一人实践复盘,token 数据(3 万→3000、5000→200)缺乏控制组和可复现条件。效果高度依赖作者个人的工程能力和 Vault 整理纪律

3. 对标

  • 跨域关联1: 三层记忆(L1/L2/L3)直接对标人类认知科学中的三层记忆模型——情景记忆(episodic)≈ L3、程序性记忆(procedural)≈ L2、语义记忆(semantic)≈ L1。Agent 记忆架构正在趋近人类认知架构
  • 跨域关联2: 能力地图反向索引类似 Unix man -k(apropos)命令——按"我要做什么"搜索工具,而非按工具名搜索。也类似 Agent-Harness 中"工具作用域策略"的一种实现
  • 跨域关联3: Skill 内化(提取设计思想 + 自己语料重组)类似 Knowledge-Compilation——不是搬运原始知识,而是编译为适合自己语境的版本

关联概念