【免费下载链接】claude-code-memory-setup
Up to 71.5x fewer tokens per session on Claude Code with Obsidian + Graphify. Persistent memory, codebase knowledge graphs, and chat import pipeline. 🇧🇷 PT-BR included.
如果你常用 Claude Code,多半被"会话失忆"折磨过:每次新开会话,都要重新解释技术栈、历史决策和待办事项,token 就这么白白烧掉了。claude-code-memory-setup 是一套开源的记忆层搭建指南:用 Obsidian Zettelkasten 笔记库 + Graphify 代码知识图谱,为 Claude Code 打造可持久化的第二大脑,让上下文只查一次、永久复用,把 token 花在刀刃上。
为什么需要记忆层:Claude Code 的两大 token 黑洞
在使用这套方案前,先搞清楚问题出在哪:
- 🧠会话间失忆:Claude Code 不记得上一个会话,你被迫反复粘贴项目背景。
- 🔁代码库反复重读:每次问"这个函数在哪被调用",它可能都要重新翻几十个源文件。
项目用四层互补机制解决这些问题(详见 README.md):
| 记忆层 | 工具 | 解决的问题 |
|---|---|---|
| 项目记忆 | Obsidian Zettelkasten | 会话间失忆 |
| 代码地图 | Graphify 知识图谱 | 源码反复重读 |
| 对话历史 | Chat Import 管道 | 聊天洞察随历史流失 |
| 会话连续性 | /resume与/save命令 | 断点续接困难 |
一句话区分:Obsidian 负责"决定了什么"(陈述性记忆),Graphify 负责"代码怎么组织的"(结构性地图)。
架构总览:一个 Obsidian 库承载所有记忆
整套方案的"中枢"是一个统一的 Obsidian 库(单库原则:多项目共用,跨项目知识才能互相链接),目录结构推荐如下(摘自 README.md):
~/vault/ ├── CLAUDE.md # Claude Code 自动读取的全局指令 ├── permanent/ # 沉淀后的原子笔记 ├── inbox/ fleeting/ logs/ references/ ├── my-project/ # 项目 X:架构决策、功能进度、会话日志 ├── chats/ # 导入的 Claude 对话(code / web) └── graphify/ # 各项目的代码知识图谱⚠️ 注意:代码仓库不要放进库里,否则 Obsidian 会去索引node_modules/和构建产物。
第一步:搭好 Zettelkasten 记忆库,配好 /resume 与 /save
安装好 Claude Code 和免费的 Obsidian 后,只需三件事:
- 建库建目录:
mkdir -p permanent inbox fleeting templates logs references,再为每个项目建architecture/、logs/等子目录; - 写根目录的
CLAUDE.md:这是 Claude Code 每次自动读取的"全局说明书",写清项目技术栈、Zettelkasten 规则(原子化笔记、[[wikilinks]]互链、YAML frontmatter 元数据); - 定义两条会话命令:
/resume:读取最近的会话日志和架构决策,汇总"现在做到哪了";/save:把本次做了什么、决策了什么、遗留什么写入带 wikilinks 的会话日志。
Zettelkasten 方法论的核心是一条笔记只讲一个概念、每条笔记至少两条 wikilinks,笔记越多,知识网越密,Obsidian 的 Graph 视图里能直接看到跨项目的隐藏关联。
第二步:Chat Import 管道,让历史对话变成可检索笔记
和 Claude 聊出来的决策与灵感,散落在聊天记录里等于丢了。这个管道把对话"洗"进库:
claude-extract 导出 .md → claude_to_obsidian.py 加工 → chats/ 目录处理脚本 scripts/claude_to_obsidian.py 会为每篇对话自动识别来源(Code / Web)、按关键词生成标签、补上标准化 frontmatter,并智能插入[[wikilinks]]——对话里提到"Supabase 认证",就会自动链到你已有的同名笔记。
自动化包装脚本 scripts/sync_claude_obsidian.sh 配合 cron 每晚定时跑一次,全程无人值守(配置方法见 scripts/README.md)。导入后在 Obsidian 图视图用tag:chat-import过滤,聊天笔记一目了然,也可用-path:chats一键隐藏。
第三步:Graphify 知识图谱,让 Claude Code 少读源码
Graphify 把代码库转成可查询的知识图谱,替代"翻源码找答案":
- 🔒100% 本地处理:基于 tree-sitter AST,代码内容不出本机;
- ⚡SHA256 缓存:重复构建只处理改动的文件;
- 💰AST 模式 0 token 成本,支持 Python、TypeScript、Go、Rust、Java 等 20+ 语言。
安装与生成(在 Claude Code 内执行):
pip install graphifyy graphify install --platform claude/graphify . --obsidian --obsidian-dir ~/vault/graphify/project-name生成的每个函数/模块都会变成库里的笔记,并产出graph.json和交互式graph.html。之后在项目的CLAUDE.md里写死三层查询规则(README.md):
① 先查
graph.json图谱 → ② 再查 Obsidian 库的决策与进度 → ③ 只有真要改代码时才读源文件。
配合graphify hook install,每次 commit 自动增量重建图谱,图谱永远是新鲜的。
第四步:SessionEnd 自动存档 Hook,忘了 /save 也有日志
/save写得再好,忘了执行也白搭。scripts/session_autosave.py 是一个SessionEnd钩子脚本:会话关闭(退出、/clear、登出)时自动触发,纯解析 JSONL 转录文件,零 LLM 调用、毫秒级完成,在库里留下一条最小化日志(首个 prompt、改动的文件、执行过的命令)。
设计得很克制:🛡️ 它是安全网而非替代品;静默失败绝不干扰会话;少于 2 条用户消息的琐碎会话直接跳过。在~/.claude/settings.json注册一下钩子即可(README.md),自动日志带tag:auto-log,方便过滤。
完整工作流:一次会话的 token 优化闭环
打开 Claude Code ├── /resume ← 从库里恢复上下文,不再重新解释 ├── 工作 ← 查 graph.json 图谱,而非重读源码 ├── /save ← 富日志:决策、待办、wikilinks └── 退出 ← SessionEnd 钩子兜底写入自动日志对比一下每层带来的变化:
| 环节 | 没有记忆层 | 有了记忆层 |
|---|---|---|
/resume | 每会话重新解释项目 | 上下文自动恢复 |
| Graphify | 反复读取几十个源文件 | 查一次图谱输出 |
| Chat 管道 | 洞察埋在聊天记录里 | 全量入库、可搜索 |
/save+ Hook | 做完就忘 | 完整历史 + 自动兜底 |
Token 节省效果:数据与证据边界
项目给出的历史参考数据:在 126 个 TypeScript 文件的 React + Supabase 项目中,图谱 332 节点、生成 456 条库内笔记、AST 模式图谱构建 0 token、每次查询从约 20,000 token 的源码读取降到约 280 token 的图查询输出(约 71 倍的检索上下文缩减)。
但项目官方态度非常诚实:这些是作者报告值,未发布完整测量数据。仓库内置了证据审计与可复现基准协议 benchmarks/README.md,以及离线统计脚本 benchmarks/summarize.py(配套 示例数据),教你怎么科学地量化自己的真实节省——这一点在同类教程里相当难得。✅
常见问题排查清单
| 症状 | 解法 |
|---|---|
| Graphify 笔记没出现在 Obsidian | 确认笔记真的在库目录内(Obsidian 路径常和你想的不一样) |
| 图视图打开是空的 | 关掉 "Orphans" 和 "Existing files only" 过滤后重启 Obsidian |
| Claude Code 不查图谱 | 检查项目CLAUDE.md有 Context Navigation 段、graph.json存在 |
终端报unknown command '.' | 无头 CLI 需要子命令:graphify extract .;带/的 skill 形式只在 Claude Code 内用 |
| macOS cron 不执行 | 给终端/ cron 授予完全磁盘访问权限 |
更多细节见 README.md 的 Troubleshooting 章节。
快速上手与文件导航
仓库本身是一份文档型指南,克隆下来照做即可:
git clone https://gitcode.com/gh_mirrors/cl/claude-code-memory-setup| 文件 | 用途 |
|---|---|
| README.md | 主指南:Obsidian 库、Chat 管道、Graphify、工作流全在这 |
| scripts/claude_to_obsidian.py | 对话导入处理器(标签 + wikilinks) |
| scripts/sync_claude_obsidian.sh | cron 自动化同步脚本 |
| scripts/session_autosave.py | SessionEnd 自动存档钩子 |
| benchmarks/summarize.py | 离线 token 用量统计器 |
| CHANGELOG.md | 版本记录(v1.0.0 起含自动存档钩子) |
| README.pt-BR.md | 葡萄牙语版指南 🇧🇷 |
从/resume开始你的第一个"有记忆"的会话吧——配置一次,之后每次开口的第一个 token 都更值钱。
【免费下载链接】claude-code-memory-setup
Up to 71.5x fewer tokens per session on Claude Code with Obsidian + Graphify. Persistent memory, codebase knowledge graphs, and chat import pipeline. 🇧🇷 PT-BR included.
相关推荐
claude-code-memory-setup对话管线教程:把Claude Code与Web聊天记录自动归档进Obsidian
claude code memory setup对话管线教程:把Claude Code与Web聊天记录自动归档进Obsidian claude code mem
5 分钟给 Claude Code / Cursor 装上"项目大脑":codebase-memory-mcp 接入实操
5 分钟给 Claude Code / Cursor 装上"项目大脑":codebase memory mcp 接入实操 AI 编程助手越来越强,但一个老毛病始
AI 应用MCP 服务知识图谱CLAUDE.md 最佳实践实战指南:用 claude-md Skill 为 Claude Code 打造高质量 AI 项目记忆
CLAUDE.md 最佳实践实战指南:用 claude md Skill 为 Claude Code 打造高质量 AI 项目记忆 CLAUDE.md 是 Cla
文档教程知识库
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考