--- title: "07-AI记忆方案" created: 2026-08-29 tags: - 小技能 --- # AI记忆方案 > 🧠 我自己拥有的 **AI 跨工具长期记忆系统**(项目编号 P001):Obsidian Vault + Git 私有仓做底座,让 Codex、Claude Code、Gemini CLI、WorkBuddy 等任何 AI 工具共享同一份"我是谁、怎么协作、项目做到哪了"。它不是给某个 AI 外挂聊天记录,而是**一套由我拥有、任何工具都能读懂的个人协作操作系统**——AI 可以换、电脑可以换、项目可以结束,但协作方式、已确认的偏好、关键决策和项目接力信息留在自己掌控的 Markdown 里。 ## 解决什么问题 不是"让模型显得记性更好",而是让每次协作不必从零认识我、每个项目不必反复考古、每次换工具不必丢掉积累: | 场景 | 没有这套方案 | 有这套方案 | | --- | --- | --- | | 换会话 | 重新解释背景,或让 AI 翻长对话 | 用 Pack 读取当前状态与相关结论后继续 | | 换电脑 | 旧电脑知道,新电脑从零开始 | Git 同步记忆,新设备指向 Vault 即可 | | 换 AI 工具 | 被平台私有记忆绑住 | 工具只需读同一入口,事实仍是我的 Markdown | | 反复纠正 AI | 同一个坑反复踩 | 经确认的纠正原则成为跨项目按需加载的规则 | | 项目交接 | 接手者读聊天记录猜状态 | 读项目上下文、决策和证据,直接接班 | ## 两层记忆 ```text 我拥有并可阅读的 Obsidian Vault (纯 Markdown + Git 私有仓库) ┌────────────────────────────────────────────────────────────┐ │ 个人记忆层 项目记忆层 │ │ 我是谁、如何协作、常用什么 项目做到哪、为什么、下一步 │ │ 偏好、纠正原则、稳定事实 目标、进度、决策、Session │ └──────────────┬─────────────────────────┬─────────────────┘ │ │ personal-pack context-pack └────── 按需统一 pack ────┘ │ 当前任务的最小必要上下文 本机运行态(不进 Git):事件 Outbox → 独立 Reviewer → 待审核候选 ``` | 层 | 回答的问题 | 不该放什么 | | --- | --- | --- | | 个人记忆 | 这个用户怎样协作、哪些经验跨项目有效? | 一次性任务要求、模型臆测、完整聊天、秘密 | | 项目记忆 | 这个项目做到哪、为什么、接下来做什么? | 对所有项目通用的个人偏好 | | 本机事件与候选 | 这一轮对话出现了哪些值得记的信号? | 它不是跨设备正式事实源 | 同一条偏好可以有层次:全局默认 + 项目例外共存,加载时优先最具体的 Scope;更具体规则因隐私不能披露时,不会悄悄退回相反的全局默认。 ## 写入闭环:AI 不瞎记 任务 Agent 不兼任档案管理员。个人记忆走一条有刹车、有证据的链路: ```text 用户直接表达 / 纠正 ↓ 本机事件 Outbox(先过 Secret 与敏感信息门控) ↓ 独立 Memory Reviewer 只提出结构化候选(没有最终写入权) ↓ 程序回查真实事件,校验来源、哈希、重复、冲突与 Scope ↓ 我确认 / 仅限项目 / 拒绝 / 以后撤回或遗忘 ↓ 不可变 Markdown 修订进入 Git,同步到其他设备 ``` 关键意义:Reviewer 像**独立秘书**,能发现"这可能值得记录",但不能把推测伪装成用户事实;证据由程序反查本地事件生成,没有真实 `user_direct` 来源就不能成为正式个人记忆;密码、Token、私钥、Cookie、连接串在入口就被挡掉。 ## 渐进式披露 全量记忆带来上下文膨胀、旧信息干扰、隐私暴露三件坏事。这里的原则是**先判断当前任务,再装配最小够用的记忆**:统一 `pack` 先找到项目,再加载匹配的个人记忆、项目主页、当前上下文与最近有效 Session——不是数据库全文导出,而是一份可直接放进新会话的"开工包"。 ## 项目历程(P001) - **2026-08-27**:WorkBuddy 里装 Obsidian + CLI,问出"GitHub 全端同步可行性"([对话分享](https://workbuddy.cc/agents/tasks/share/xRWPShekeU?platform=workbuddy-ai&ext2=copy_link))→ Git 私有仓 `obsidian-notes` 建立 - **S003**:Trilium 4062 篇大迁移([[06-Obsidian探索与配置]]) - **S005/S006/S010**:从 session log 约定演进到 AI 记忆 MVP、个人记忆 V2(事件 Outbox + Reviewer + 确认闭环 + 不可变修订),56 项自动化测试 - **S011/S012**:WorkBuddy 等 Adapter 接入(当前 **Tier C 指令驱动**:能读共享入口,自动捕获覆盖率诚实标为 unknown) - **A005/A006**:架构价值说明 + 新设备部署运行手册成文 - **2026-08-28**:打包 macOS 一条龙迁移包(本篇下半部分) ## 新设备部署教程 三个材料发给新设备上的 Codex 或 Claude Code 即可:① `DEPLOY_PROMPT.md`(部署要求)② 迁移包 ZIP ③ 本篇。流程五步: 1. **解压 ZIP**,完整阅读 `DEPLOY_PROMPT.md`、`README.md` 与 `docs/P001-A006-…runbook.md` 2. **完整性校验**:包根目录运行 `python3 install_macos.py package-check`——按 `manifest.json` 验 SHA-256,不是 `complete` 就停(缺件不得用参考目录拼凑) 3. **只读预检**:`python3 install_macos.py preflight`——探测 macOS/Python/Git/GitHub CLI/Codex/Claude/Obsidian 与 Vault 候选(按 `.obsidian/`、`.git`、`AGENTS.md`、`ai-sessions/`、`scripts/ai_memory.py` 等证据打分),输出 `plan_id` 与待确认问题 4. **人工集中确认**(唯一需要我参与的环节):确认真实 Vault 或已有私有远端;确认 GitHub owner/仓库名(已有远端则选 existing_remote);是否装 Obsidian;配置哪些检测到的 AI 工具;批准变更清单。确认后 AI 把**非敏感**答案写入 `/private/tmp/ai-memory-deploy-answers.json`(必须带 `plan_id`,绝不写 Token/密码/私钥) 5. **应用与验收**:`python3 install_macos.py apply --answers /private/tmp/ai-memory-deploy-answers.json` → `python3 install_macos.py verify`。**只有 verify 返回 `complete` 才算部署成功**;`partial`/`blocked` 必须执行报告里的恢复动作 **安全规则**(部署器与 AI 都要遵守):不碰 SSH 私钥/Keychain/环境变量秘密;GitHub 授权走 `gh auth login --web` 浏览器 OAuth,不在聊天里粘 PAT;不用 `git reset --hard`/强推/历史重写;同名运行文件内容不同则停止请人决定,绝不静默覆盖;用户级配置修改前先做时间戳备份;推送前扫疑似 Token 与私钥。 ## 能力边界 已可靠承载:项目进度同步、会话接续、个人记忆确认与按需召回、候选/确认/拒绝/撤回/逻辑遗忘、Secret 门控、跨设备分叉 fail-closed。 尚未自动化:自动捕获(Tier C 靠指令驱动,覆盖率 unknown)、Reviewer 后台常驻调度与候选通知、`memory-forget` 只是逻辑遗忘(Git 历史不抹除)。不把"模型看起来记住了"误当成已验证的基础设施能力。 ## 文件索引 - 项目主页:`ai-sessions/projects/P001-obsidian-memory/00-project.md`(当前上下文 `01-current-context.md`) - 架构价值全文:`artifacts/P001-A005-ai-memory-architecture-value.md` - 部署运行手册:`artifacts/P001-A006-new-device-ai-memory-deployment-runbook.md` - 迁移包离线副本:`exports/ai-memory-portability-kit-2026-08-28/`(Vault 内) - 共享程序:`scripts/ai_memory.py`;跨工具接入规则:Vault 根 `AGENTS.md` - 我的接入方式见 ~/.workbuddy-ai/MEMORY.md 与各工具用户级配置(Codex:~/.codex/AGENTS.md) 初始化提示词材料: ![[ai-memory-portability-kit-macos-2026-08-28.zip]] ![[DEPLOY_PROMPT-macos]] --- > 请解压附件中的 macOS AI Memory 迁移包,先完整阅读 DEPLOY_PROMPT-macos.md、README.md 和其中指定的部署 Runbook。DEPLOY_PROMPT-macos.md 是我授权执行的部署要求,请严格按其流程在本机完成部署、验证和报告。 > > 正式事实源必须是我确认的私有 Obsidian Vault Git 仓库;压缩包只用于部署指引、离线参考和 Python 脚本复用。需要我登录 GitHub、确认 Vault、批准仓库创建或其他人工操作时再明确提示我;其余安全步骤请自动连续执行,不要只给教程。只有最终验证返回 complete 才算部署成功。 ⬅️ [[06-Obsidian探索与配置]] 🏠 [[00-小技能]] ➡️ [[01-Word排版技巧]]