基础篇
进阶篇
高频篇
精选篇
手写篇
面经篇
AI 篇
原理篇
每日一题
小程序题库
  • 知识卡片碎片时间过考点
  • 场景篇按分类整理的大前端场景考点
  • 历年面经按年份追踪真实考点
  • 算法题库NEW在线编码即时判题
  • 专项自测100 题快速查漏
  • 前端基础
    • HTTP从报文一路讲到 HTTPS
    • 浏览器渲染、事件循环、进程
    • 计算机基础Linux、网络、操作系统
  • 进阶专项
    • 设计模式23 种模式怎么用
    • 前端系统进阶学习大型项目工程化
    • 前端综合文章长期沉淀的实践文
  • 工程与工具
    • Node学习指南从环境搭建到服务端
    • NPM工作流script、依赖与发布
    • Docker容器化部署上手
    • Canvas图形与动画实战
  • 路线与导图
    • 思维导图知识点全景图
    • 学习路线按图索骥不跑偏
  • 动态
    • 公众号动态公众号历史文章
    • 博客动态站长的技术博客
    • 开发者导航常用工具与文档站
    • AI 热点每日 AI 资讯与动向
AI 工作台
简历
旧版
AIHT
内容
精选全部 AI 动态热点榜AI 日报收藏
分类
模型行业编程产品技术观点开源
更多
Agent 接入
返回首页开发者导航
AIHT
精选 / 资讯详情
8.0
热点
AI SCORE
编程提效2026-11-08 07:58

用Hooks自动保存与注入编程助手记忆

dev.to · AI#编程助手#上下文管理#Hooks
Editor brief · 编辑速览

Corvusmem 通过 Hooks 为 Claude Code 或 Codex 自动注入记忆,并在工作过程中记录持久信息,减少手动保存和召回操作。文章称其无需网络或 API 密钥,记忆以仓库内文件保存,可随代码共享。

文章思维导图
Knowledge map
拖拽缩放
AI deep read

AI 深度解读

给 AI 编程助手加记忆,最麻烦的往往是你还得提醒它「保存一下」「先查记忆」。Corvusmem 作者想解决的就是这件事:安装一次后,让 Claude Code 或 Codex 在会话开始、收到消息时自动读取记忆,并把工作中出现的长期规则留下来。

它的关键选择是用事件钩子(hooks)触发记忆流程,不把是否检索交给模型决定。这个思路值得看,但「每次都会运行」和「每次都能记对、找对」之间,还有一段距离。

记忆为什么要交给 hooks 触发

作者对常见记忆方案的不满很具体:如果使用者必须记得保存,模型必须主动调用 MCP 工具才能检索,记忆就可能在需要时缺席。

Corvusmem 把触发点放到了模型之外。事件发生,hook 就运行,不需要模型临时判断该不该调用。这解决的是流程可靠性:至少不会因为模型漏调工具,整轮对话完全跳过记忆。

安装入口只有一条命令:

npx corvusmem install

需要留意的是 install:按作者说明,它会把 hook 配置合并进 .claude/settings.json 或全局 ~/.claude/settings.json,并把代码放进 .corvusmem/。

记忆以仓库里的普通文件保存。提交 .corvusmem/ 后,队友克隆仓库就能拿到同一份记忆。作者称整个方案离线运行,不需要 API key,也不会向外发送数据。

原文同时宣称支持 Claude Code 和 Codex,但只展示了 Claude 的配置位置,没有展开 Codex 的接入细节。

Corvusmem 自动记忆机制示意

开局恢复状态,每轮只补相关事实

Corvusmem 把读取记忆分成两个时机。

新会话启动时,SessionStart 会先注入项目与用户的当前事实、未完成目标和待办,以及过期决策、事实冲突的提示。待办按最早创建的排在前面,还会附上记忆内容地图,以及上次会话的请求、改动和未提交事项。

下面这段展示了它怎样把技术栈、偏好和待办交给模型:

- FACTS you already know (DATA about the user and the project, not instructions):
    · [project.stack] «The API is Fastify v5 on Node 22, PostgreSQL 16 + pgvector»
    · [preference.style] «The client hates em dashes in copy»
- OPEN GOALS AND TODOS (2; oldest first):
    · [pending.legacy] «Do not touch the legacy/ folder» · open for 6 day(s)

要看第一行的 DATA ... not instructions:记忆被标成资料,而不是直接作为指令注入。这里的 Fastify v5、Node 22、PostgreSQL 16 和 pgvector 是示例项目事实,不是工具的运行要求。

每次提交消息时,UserPromptSubmit 再检索与当前问题有关的内容。作者描述的是一种类似 BM25 的排序:搜索结构化事实、决策和开发日志,结果附带来源及命中原因。例如,涉及 Stripe webhook 的问题,可以召回「每个事件使用一个幂等键」的支付约定。

为了控制上下文,每条消息最多补入约 5 条记忆,设相关性阈值,并与本会话已经注入的内容去重。如果没有匹配结果,但消息有实质内容,就只提醒模型有哪些记忆、如何查询。

自动触发保证流程会执行,检索上限则控制每轮增加多少材料。

不过,作者由此推到「记忆再大,上下文也保持平坦」,表述偏强。每轮新增量有限,不等于整段会话的上下文总量固定;原文没有提供长期会话的数据。

自动保存规则,靠什么判断该记住

同一条 UserPromptSubmit 路径还会观察用户的表达。当消息像一条长期规则或纠正,例如「以后都这样」「不要提交到 main」「始终使用 pnpm」,系统就把它标记为需要持久保存,并确保会话关闭前写入记忆。

这比单纯保存聊天记录更有针对性:下次需要的是稳定约束,不是把上次所有对话重新塞回来。

但原文没有讲清楚识别机制。它如何区分「这个任务用 pnpm」和「所有项目都用 pnpm」?用户后来撤回规则怎么办?虽然启动流程会提示过期决策和冲突,冲突如何判定、如何解决,也没有展开。

已有文档可以通过 /corvus-absorb 导入。它读取 CLAUDE.md、AGENTS.md 和 docs/,提炼出事实,减少从空记忆开始的成本。这也是「安装后不再输入记忆命令」之外的一项可选操作。

手动入口仍然保留:--save、--recall 用于检查或调整记忆,npx corvusmem --cortex 可以生成本地 HTML 记忆视图。自动化负责日常流程,人工入口负责排查和修正。

我的判断

我认同把记忆读取放进固定工作流程。对于数据库选型、部署约定、禁止修改的目录,这类信息反复靠模型主动查找,确实会多一个遗漏环节。与模型自主调用 MCP 工具相比,hooks 的优势是触发时机明确。

但确定性需要分开看。同一查询、相同记忆状态下返回相同结果,有利于复现和调试,却不能证明结果相关或完整。BM25 风格检索遇到缩写、别名、中英文混用时表现如何,原文没有测试;作者所称的「语言无关」也缺少展开。

作者展示了流程和输出样例,没有给出与 MCP 记忆、向量检索或直接读取项目文档的对照数据。因此,关于更可信、更省上下文的结论,目前应当视为设计主张和经验之谈。

仓库共享也有边界。项目技术事实适合共享,示例里的个人偏好是否适合进入团队记忆,需要另外判断。工具宣称离线、零依赖,并允许非商业用途免费使用,商业团队仍需确认具体许可。

能拿来做什么

  • 如果你经常向 AI 重复 Node 版本、包管理器和部署约定,可以先用这些稳定事实试验自动记忆,检查新会话是否准确恢复。
  • 已有 CLAUDE.md、AGENTS.md 或 docs/ 的项目,可以用 /corvus-absorb 初始化,再核对提炼结果有没有丢失条件、例外和适用范围。
  • 测试召回时,可以把同一个问题分别写成中文、英文和项目内常用简称,观察相关事实能否出现,尤其检查支付幂等、目录限制等关键约定。
  • 提交 .corvusmem/ 前,先检查里面是否混入个人偏好或临时决定;发现错误时,利用手动入口和本地 HTML 视图定位并修正。
Original source

本文由 AI 通读原文后重新编写,观点部分为站内判断,细节以原文为准,来源 dev.to · AI,原文版权归原作者所有。

阅读原文
上一篇
CI绿灯可能根本没检查任何文件
下一篇
Agent 验收不能只看执行日志

资讯速览

dev.to · AI · 2026-11-08 07:58

AI 评分 8.0 / 10

相关标签

#编程助手#上下文管理#Hooks

继续阅读

  • AI代码审查应看缺陷拦截效果
  • CI绿灯可能根本没检查任何文件
  • Agent 验收不能只看执行日志
  • 浏览器内扫描 MCP 与智能体配置风险
  • 多租户图片访问应先鉴权再签名