Zed 编辑器 AI 助手接入 Hindsight 持久记忆:hindsight-zed 完整实战指南 📅 发布时间:2026/9/13 7:28:26 👁 浏览次数: Zed 编辑器 AI 助手接入 Hindsight 持久记忆hindsight-zed 完整实战指南【免费下载链接】hindsightHindsight: Agent Memory That Learns项目地址: https://gitcode.com/GitHub_Trending/hindsight2/hindsightZed 是一款以 Rust 构建的高性能编辑器其 Agent Panel 内置的 AI 助手在单个任务内表现出色却在会话之间彻底失忆。本文基于 Hindsight 开源仓库中的hindsight-zed集成hindsight-integrations/zed/README.md系统讲解如何用一条命令为 Zed 的 Agent 接入跨会话的持久记忆通过 MCP 提供recall、retain、reflect三个工具并结合全局指令文件实现先回忆、后沉淀的自动化记忆闭环。读完本文你将掌握完整的安装配置、命令用法、底层实现原理与排错思路。问题本质出色的助手却没有昨天大多数编码 Agent 都面临同一个问题关闭面板、第二天开启新对话后它完全不记得这个仓库用的是 pnpm、你上周刚确定的仓储repository模式、以及你习惯把测试文件和源码放在一起这些约定。模型本身能力不差缺的只是连续性——于是每次新会话你都要重新解释技术栈、重申约定、再次讨论已经拍板的决策。你成了那个替 Agent 记事的人肉内存。持久记忆的意义正在于此你告诉过 Agent 的事、Agent 自己推敲出来的结论在下一次会话中依然存在。这正是把按会话工作的工具变成真正懂你项目的助手的关键一步。原理解析Zed 没有 pre-prompt但有两个可用构件Zed 没有暴露 pre-prompt 钩子因此无法在每轮对话前自动注入上下文。但hindsight-zed巧妙地利用了 Zed 提供的两个构件源码见 hindsight-integrations/zed/src/zedSettings.js 与 hindsight-integrations/zed/src/rulesFile.js其一MCP context servers。Zed 会运行settings.json中context_servers字段声明的 MCP 服务器并将其工具暴露给 Agent Panel。hindsight-zed把 Hindsight MCP 服务器注册到这里为 Agent 提供recall、retain、reflect三个工具。其二全局指令文件。Zed 会在每一次 Agent 对话中都引入~/.config/zed/AGENTS.md。集成工具把一条简短规则写入该文件且严格包裹在!-- HINDSIGHT:BEGIN --与!-- HINDSIGHT:END --围栏块内见 rulesFile.js 中BEGIN_MARKER/END_MARKER/RULE_TEXT的定义绝不触碰你自己的规则。规则内容为每次任务开始时调用recall加载相关的决策、偏好与项目上下文每当学到值得跨会话记住的持久事实架构决策、用户偏好、约定等就调用retain存储。查询时回忆零滞后这样设计带来的结果是回忆发生在查询时query time直接针对你真正发送的消息执行。它不像定时任务那样在固定时间点运行而是当你提问时按需检索因此能拉取与当前请求最相关的记忆。从你的视角看这一切是自动的你输入Agent 静默查一次记忆然后作答。传输层说明为什么只需要 Node.jsZed 目前尚未内置 HTTP MCP 传输能力因此服务器通过mcp-remote这个 stdio 桥接器经npx运行连接。由于桥接器运行在 Node.js 上而设置 CLI 本身也是 Node 工具所以Node.js 是唯一的环境要求——不需要 Pythoncli.js 中还会在init时检测npx是否在 PATH 上并给出提示。安装与快速开始hindsight-zed是零依赖的 Node CLI直接通过npx运行即可无需全局安装npx vectorize-io/hindsight-zed init --api-token YOUR_HINDSIGHT_API_KEY --bank-id my-memory若希望使用持久化命令可先全局安装npm install -g vectorize-io/hindsight-zed hindsight-zed init --api-token YOUR_HINDSIGHT_API_KEY --bank-id my-memoryinit会在~/.config/zed/settings.json中加入hindsightMCP 服务器并向~/.config/zed/AGENTS.md写入 recall/retain 规则。之后重启 Zed、打开 Agent Panelhindsight服务器应显示绿色圆点——整个配置即告完成。整个设置的底层形态如下这也是init实际写入settings.json的内容完整构建逻辑见 buildContextServer{ context_servers: { hindsight: { source: custom, command: npx, args: [ -y, mcp-remote, https://api.hindsight.vectorize.io/mcp/my-memory/, --header, Authorization: Bearer YOUR_HINDSIGHT_API_KEY ] } } }注意几点实现细节bank 会作为 URL 最后一段路径mcpEndpointUrl会把 base URL 末尾的斜杠归一化后拼出/mcp/bankId/见 zedSettings.js并有对应单元测试覆盖见 test/zedSettings.test.js。未设置 token 时不添加--header自托管开放服务器无需令牌buildContextServer只在有 token 时才追加 Bearer 头test/zedSettings.test.js 对两种情形都有断言。JSONC 保护机制如果settings.json含注释JSONCinit不会重写文件而是打印出完整的context_servers条目供你手动粘贴。任何时候想再查看该片段可执行hindsight-zed init --print-only。这一宁可交给用户手动粘贴也不冒险破坏配置的设计对应applyToSettings返回的manual动作分支zedSettings.js。幂等合并重复运行init时若配置已一致会报告unchanged换 bank 时会merged合并而不会清掉settings.json中其他键测试覆盖见 test/zedSettings.test.js。命令速查命令作用hindsight-zed init添加 MCP 服务器与 recall/retain 规则hindsight-zed status显示服务器与规则是否已配置hindsight-zed uninstall移除服务器与规则hindsight-zed init --print-only仅打印需要手动添加的配置不写入任何文件若未全局安装请为以上命令统一加上npx前缀。命令分发逻辑见 cli.js其中init支持的全部参数--api-url、--api-token、--bank-id、--print-only及测试/高级场景用的--settings-path、--rules-path、--config-path都在OPTIONS中声明cli.js。uninstall时同样遵守 JSONC 保护若settings.json含注释会提示你手动删除hindsight条目AGENTS.md中的规则块则通过clearRule精确移除若移除后文件为空会被删除rulesFile.js。云服务还是自托管Hindsight Cloud从控制台获取 API key 传入即可。API URL 默认是https://api.hindsight.vectorize.io无需额外设置。自托管服务器用--api-url指向自己的地址例如hindsight-zed init --api-url http://localhost:8888 --bank-id my-memory开放的本地服务器不需要 token。配置解析优先级配置按内置默认值 →~/.hindsight/zed.json由init写入→ 环境变量 → CLI 参数的优先级解析后者覆盖前者实现见 config.jsCLI 参数覆盖见 cli.js配置项环境变量默认值API URLHINDSIGHT_API_URLhttps://api.hindsight.vectorize.ioAPI tokenHINDSIGHT_API_TOKEN无Cloud 必填Bank idHINDSIGHT_ZED_BANK_IDzed~/.hindsight/zed.json的键名与上述属性一一对应hindsightApiUrl、hindsightApiToken、bankId映射关系见 config.js。关于 bank一套记忆所有工具共享bank 是一个隔离的存储空间。让 Zed 和其他工具指向同一个 bank id它们就共享同一份记忆——这正是one memory for every AI tool对应文档见 hindsight-docs/blog/2026-04-07-one-memory-for-every-ai-tool.md的理念。在服务端bank 对应一组独立的 HTTP 路由recall、retain、reflect分别映射到/banks/{bank_id}/memories/recall/、/banks/{bank_id}/memories/与/banks/{bank_id}/reflect/路由注册见 hindsight-api-slim/hindsight_api/api/http.py。验证记忆是否生效在第一个会话中给 Agent 一个持久事实例如This repo uses pnpm, never npm.这个仓库用 pnpm绝不用 npm。然后新开一个会话提出相关请求比如add the date-fns dependency。具备记忆能力的 Agent 会在回答前通过recall检索到这条约定无需你提醒就自动使用 pnpm——因为该事实已被retain存入 Hindsight并在新的请求中被recall命中。你也可以从另一侧观察验证打开你的 Hindsight bank第一个会话结束后就能看到这条约定已作为一条存储记忆出现。更完整的验证流程与官方指南 hindsight-docs/guides/2026-07-17-guide-zed-memory-with-hindsight.md 一致运行hindsight-zed status确认服务器与规则均已配置打开 Zed Agent Panel确认hindsight服务器显示绿点在会话一中告诉 Agent 一条约定/事实让它 retain新开会话二就此前的事实提问观察 Agent 能否 recall 到。三个 MCP 工具的分工recall查询时检索。以你当前的消息为输入拉取相关的决策、偏好与项目上下文。对应服务端路由/banks/{bank_id}/memories/recall/http.py。retain写入沉淀。Agent 学到值得跨会话保留的持久事实时调用。对应POST /banks/{bank_id}/memories/http.py。reflect归纳整合。Agent 可调用它对自己已存储的记忆进行整合与推理使记忆随着积累不断改善而不是沦为平铺直叙的笔记堆。对应POST /banks/{bank_id}/reflect/http.py。常见问题Agent 会自动 recall 吗recall 是 Agent 主动调用的工具全局规则会指示它在每个任务开始时调用。因此实际使用中它是自动执行的又因为发生在查询时它会用你真实的输入去检索相关记忆。需要安装什么只需要 Node.js18.3 或更新版本见 package.json 的engines字段。hindsight-zed是零依赖 Node CLIZed 的 MCP 桥接器mcp-remote也通过npx在 Node 上运行无需 Python。会覆盖我的 Zed 配置吗不会。规则位于AGENTS.md中围栏的HINDSIGHT块内init不触碰其余内容若settings.json含注释init改为打印片段而非重写文件。reflect是做什么的与recall、retain并列Agent 可调用reflect对已存储内容做整合归纳让记忆随积累而进化而不是变成一摞扁平的笔记。常见坑来自官方指南的排错清单Node.js 未安装MCP 服务器经npx mcp-remote运行Node 缺失则hindsight服务器无法连接cli.js 会在init时检测并告警。编辑了 JSONC 的 settings 文件含注释时init不重写改用--print-only获取片段手动粘贴。忘记重启 Zed服务器与规则在重启后生效绿点未出现请重启并重开 Agent Panel。误以为编辑器会强制 recallrecall 依赖 Agent 遵循先回忆的常驻规则而非编辑器强制。某次任务没 recall 时提醒 Agent 回忆即可。补充阅读Zed 集成的独立文档页同一集成在官方文档站的版本含recall/retain 依赖 Agent 遵循规则而非编辑器强制的权衡说明。Add Zed Memory with Hindsight 官方指南逐步操作、验证流程与常见错误清单。Cursor persistent memory同一思路在另一个 AI-first 编辑器上的实现对应文档 hindsight-docs/blog/2026-06-12-cursor-persistent-memory.md。One memory for every AI tool让 Zed 与其他 Agent 指向同一 bank共享一套记忆。集成源码与测试hindsight-integrations/zed/src 与 hindsight-integrations/zed/test可用node --test运行测试套件。【免费下载链接】hindsightHindsight: Agent Memory That Learns项目地址: https://gitcode.com/GitHub_Trending/hindsight2/hindsight创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考