Hook与插件接入原理:Memmy如何实现Claude Code、Codex的实时记忆采集与任务接续(完整指南) Hook与插件接入原理Memmy如何实现Claude Code、Codex的实时记忆采集与任务接续完整指南【免费下载链接】memmy-agent A personal AI agent local memory hub for all AI agents, gives every AI one shared, fully controlled memory and persistent context — all AI remember the same you. Now supports Claude Code, Codex, OpenClaw and Hermes Agent etc.项目地址: https://gitcode.com/gh_mirrors/me/memmy-agentMemmymemmy-agent是一个为所有 AI Agent 提供共享记忆中枢的开源个人 AI 记忆工具它通过 Hook 与插件机制接入 Claude Code、Codex、OpenClaw、Hermes 等 AI Agent实现实时记忆采集与跨 Agent 任务接续让每一个 AI 都记得同一个你。本文将带你拆解 Memmy 的 Hook 与插件接入原理看清它是怎么在不侵入 Agent 核心的前提下完成会话采集、上下文注入与任务接力三大能力的。一、为什么 AI Agent 需要共享记忆如果你同时使用多个 AI 编程助手大概率遇到过这类问题在 Claude Code 里调试到一半换到 Codex 继续时它完全不知道之前做了什么同一个项目背景、偏好、踩过的坑每个 Agent 都要重新交代一遍Agent 会话结束后有价值的上下文随进程消失无法沉淀复用。Memmy 的解法是把记忆从各个 Agent 里抽离出来变成一个独立的本地记忆服务local memory hub再让每个 Agent 通过轻量 Hook 把关键节点的事件上报给它。这样所有 Agent 共享同一份记忆且数据始终由用户本地掌控。二、接入原理总览三层架构Memmy 的 Agent 接入不是写死在某一个产品里的而是分层的。以 Claude Code 和 Codex 为例接入由三层协作完成层次角色关键实现Hook 层在 Agent 生命周期的关键事件上执行脚本实时采集与注入上下文注册到settings.json/hooks.jsonSkill 层通过CLAUDE.md/AGENTS.md标记块 技能目录教会 Agent如何使用记忆!-- memmy:start v1 --标记块Adapter 层独立扫描 Agent 的会话文件JSONL transcript / rollout 文件把完整对话结构化为记忆adapters/Hook 负责实时Skill 负责引导Adapter 负责兜底沉淀——三者互补这就是 Memmy 能同时做到实时记忆采集与任务接续的原因。三、Claude Code 接入注册 5 个 Hook 事件Claude Code 官方支持在~/.claude/settings.json中注册 Hook。Memmy 的安装插件逻辑在 claude-code/target.ts 中实现installPlugin会做这几件事写入 Hook 脚本把memmy-resume-hook.mjs由 memmy-resume-hook.ts 模板渲染生成安装到~/.claude/hooks/目录同时写入配套的memmy-memory-config.json配置文件和memmy-workspace-bridge.mjs工作区桥接运行时注册 5 个 Hook 事件在settings.json的hooks字段中为UserPromptSubmit、Stop、SessionStart、PostCompact、SessionEnd五个事件各追加一条 command 类型 Hook超时设为 60 秒写入引导指令在~/.claude/CLAUDE.md中用!-- memmy:start v1 --标记块注入技能引导并同步替换技能目录提供斜杠命令写入commands/memmy-resume.md让 Claude Code 用户可以通过/memmy-resume快速触发记忆检索与任务接续。这里有个值得注意的细节Hook 命令永远用 Node 执行绝不用 Electron。hook-command.ts 中的resolveNodeExecutable会按优先级环境变量 → Homebrew → 系统路径 → PATH解析出一个安全的node可执行文件并显式排除任何带 electron 字样或.app/Contents/MacOS/路径的候选——因为 Hook 是在用户终端的 Agent 进程里触发的用桌面应用宿主进程执行会引入不必要的依赖和安全隐患。另外所有对settings.json、CLAUDE.md的修改都是幂等的 upsert先移除旧的 Memmy 条目再写入新的卸载时uninstallPlugin也能干净地把这 5 个事件里的 Memmy 条目逐个摘除不破坏用户自己配置的其他 Hook。四、Codex 接入hooks.json 与 Hook 信任机制Codex 的 Hook 配置格式与 Claude Code 不同使用~/.codex/hooks.json。Memmy 的 Codex 接入实现在 codex/target.ts整体套路与 Claude Code 一致Hook 脚本同样安装到~/.codex/hooks/目录引导指令写入~/.codex/AGENTS.mdCodex 的约定指令文件技能块同样带memmy:start标记通过upsertCodexHookConfig把 Hook 命令幂等地写入hooks.json。Codex 接入比 Claude Code 多一步Hook 信任持久化。由于 Codex 对第三方 Hook 有信任校验hook-trust.ts 中的trustMemmyCodexHooks会在安装时把 Memmy 用户级 Hook 的信任状态写入 Codex 的配置保证 Hook 安装后能直接被 Codex 执行而不需要用户每次手动确认。五、Hook 脚本内部记忆如何被实时采集安装好的memmy-resume-hook.mjs是一个独立的 Node 脚本Agent 在触发对应事件时执行它。它读取同目录的memmy-memory-config.json内容指向 Memmy 的配置文件~/.memmy/config.yaml及记忆服务地址然后与本地记忆服务通信主要做两类事事件上报Stop、SessionEnd等事件发生时把当前会话的关键上下文工作目录、近期对话摘要、用户输入提交给 Memmy 记忆服务由服务端完成敏感信息脱敏见 secret-redactor.ts后写入记忆库上下文注入UserPromptSubmit、SessionStart事件触发时根据当前工作区检索相关记忆把记忆上下文注入到即将发送的提示中——Agent 因此开口即懂你。工作区身份识别由 memory-workspace-identity.ts 等契约模块统一处理保证不同 Agent 在同一项目目录下映射到同一份工作区记忆。除了 Hook 这条实时通道Adapter 层还会周期性扫描会话源文件做补充沉淀Claude Codetranscript-reader.ts 解析~/.claude下的 JSONL 会话记录Codexrollout-reader.ts 解析 Codex 的 rollout 会话文件。扫描结果经过去重、截断与预算控制memory-token-budget.ts后写入记忆库即使用户某个会话没触发 Hook内容也不会丢失。六、任务接续换一个 Agent无缝接上任务接续是 Memmy 最实用的场景。流程大致是在 Claude Code 中完成一部分工作后Memmy 已实时采集了该会话的目标、进展与决策切到 Codex或其他 Agent触发/memmy-resume命令或直接提问Hook 拦截请求按工作区 查询词从记忆库中检索最近的上下文注入给当前 Agent新 Agent 立刻获得前情提要接续任务而不必从头交代。/memmy-resume的斜杠命令本质是一个解析垫片parser shimtarget.ts 中写入的命令文本会携带MEMMY_RESUME_COMMAND_ARGUMENTS标记正常情况下被 UserPromptSubmit Hook 直接拦截处理只有当 Hook 未正确安装、文本真正流入模型时才会提示用户重新安装 Hook——这是一个精巧的自检设计。七、安全与可卸载性原子写入所有配置文件修改都走写临时文件 → rename的原子流程writeFileAtomically不会留下半截 JSON 把 Agent 配置搞坏最小侵入Memmy 从不修改 Agent 本体只操作其约定配置目录~/.claude、~/.codex一键卸载uninstallPlugin会摘除全部 Hook 条目、删除 Hook 脚本、清理标记块与技能目录Agent 恢复原状本地可控记忆服务默认运行在本地敏感数据在入库前经过脱敏处理。总结Memmy 的 Hook 与插件接入可以概括为一句话用官方 Hook 事件做实时通道用约定指令文件做行为引导用 Adapter 扫描做兜底沉淀。这一套机制在 Claude Codesettings.jsonCLAUDE.md和 Codexhooks.jsonAGENTS.md上被完整复用并延伸支持 OpenClaw、Hermes、Cursor 等多个 Agent最终实现了所有 AI 共享同一份记忆、任务跨 Agent 无缝接续的核心体验。想进一步了解各 Agent 的接入细节可以查看 integration/ 目录下的目标注册表与 docs/cn/memory/sources.mdx 中的记忆源说明。【免费下载链接】memmy-agent A personal AI agent local memory hub for all AI agents, gives every AI one shared, fully controlled memory and persistent context — all AI remember the same you. Now supports Claude Code, Codex, OpenClaw and Hermes Agent etc.项目地址: https://gitcode.com/gh_mirrors/me/memmy-agent创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考