Hindsight 版本演进实录:从 v0.1 到 v0.9 的 Agent 记忆引擎成长路线图
2026/9/13 19:25:53 网站建设 项目流程

Hindsight 版本演进实录:从 v0.1 到 v0.9 的 Agent 记忆引擎成长路线图

【免费下载链接】hindsightHindsight: Agent Memory That Learns项目地址: https://gitcode.com/GitHub_Trending/hindsight2/hindsight

导读:本文以 Hindsight 官方里程碑博文为主线,系统梳理该项目从 2025 年 12 月首个开源提交到 v0.9.x 的完整版本演化——67 个版本、900+ 次跟踪变更,覆盖嵌入式记忆、多租户、学习层、检索扩展、生产加固到知识页面与编码 Agent 接入的全过程。读完本文,你将掌握每个版本阶段的核心能力、关键实现路径与仓库内对应的源码/配置位置,可作为理解 Hindsight 架构演进与选型参考的速查图。

为什么版本史本身就是技术史

Hindsight 是一个定位为 "Agent Memory That Learns" 的开源 Agent 记忆引擎。与常见的"提示词技巧"型记忆方案不同,它的核心是数据库、检索策略、学习层、写入(retain)、提取(recall)、反思(reflect)、鉴权与运维管线——一套可度量的、适合生产环境运行的工程基础设施。

2025 年 12 月开源后,项目在约 9 个月内完成了67 次版本发布、超过 900 项跟踪变更,并于 2026 年 8 月跨过20,000 GitHub Star。仓库当前各子包的版本号已推进到0.9.2(见 hindsight-api/pyproject.toml 与 hindsight-all-npm/package.json 中的version字段),即本文所述的里程碑之后仍在持续迭代。

版本时间线总览

版本线时间发布数阶段主题
0.1.x2025.1213地基:嵌入式 Postgres、本地 MCP、hindsight-embed
0.2.x2026.011多 Bank 记忆与跨 Bank MCP 工具
0.4.x2026.02–0323学习层:Observations、Mental Models、知识图谱
0.5.x2026.047检索提速、Constellation 视图、模板中心
0.6 – 0.7.x2026.056搜索层扩展、企业级后端
0.8.x2026.06–087生产加固 + 一波编码工具集成
0.9.x2026.082Knowledge Pages 与面向所有编码 Agent 的记忆

2025 年 12 月 — v0.1.x:把地基打稳

首月 13 个版本确立了一个至今未变的核心:在嵌入式 PostgreSQL 上完成 retain(写入)、recall(提取)、reflect(反思),无需单独运行外部向量数据库。本地化体验被放在首位,目标是"几分钟内即可上手"。

该阶段的关键能力:

  • 本地 MCP 服务器:任何 MCP 客户端无需独立服务即可连接;同时提供hindsight-embed以进程内方式运行记忆。仓库中 hindsight-embed/README.md 展示了其守护进程架构:首条命令自动拉起本地 daemon(首次运行需下载依赖并加载 ML 模型,约 1–3 分钟),后续命令约 1–2 秒响应,daemon 空闲 5 分钟后自动退出,监听localhost:8888,使用嵌入式 PostgreSQL(pg0),所有数据留在本机。
  • 扩展系统:可插拔新操作;首个基于图的检索器利用记忆之间的关系进行召回。
  • Memory Banks、记忆标签、备份/恢复、多语言内容支持
  • 模型与提供方广度:LiteLLM、Cohere 嵌入/重排、可配置嵌入维度、Gemini 3 Pro / GPT-5.2 等。

从仓库结构看,这一阶段奠定的"三件套"沿用至今:记忆引擎实现在 hindsight-api-slim/hindsight_api/engine(retain、consolidation、recall、reflect 等子模块),进程内/本地模式由 hindsight-embed 提供,Control Plane 可视化则位于 hindsight-control-plane/src。

2026 年 1 月 — v0.2.x:多 Bank 记忆成为现实

这是一个聚焦的发布:多 Bank 访问加上跨 Bank 操作的 MCP 工具,让"按用户隔离""按项目隔离"从概念变成了默认能力。同时加入:

  • Anthropic Claude 与 LM Studio 提供方支持;
  • retain 时的自定义实体;
  • reflect的结构化输出;
  • Control Plane 中首个图谱可视化

多 Bank 的隔离语义此后贯穿所有版本:CLI 层通过bank_id参数完成隔离(所有 Bank 共享一个数据库,见 hindsight-embed/README.md 的说明),服务端则通过 hindsight-api-slim/hindsight_api/api 暴露 HTTP 与 MCP 双入口。

2026 年 2–3 月 — v0.4.x:学习层,让记忆"会学习"

这是项目史上最重的版本线:23 个版本、约 300 项变更。如果说 0.1 给了记忆一个存放的位置,0.4 则赋予 Hindsight 从记忆里学习的能力。

Observations:从事实到信念

Observations是从原始事实中提炼、经合并去重后的"信念",支持可配置作用域(scope)、按作用域限额、历史追踪与批量合并(batch consolidation)。观察体提取与合并的调度逻辑集中在 hindsight-api-slim/hindsight_api/engine/consolidation/consolidator.py 及同目录的 prompts.py。

Mental Models:会自我刷新的"常驻答案"

Mental models是会自我刷新的常驻答案,提供完整的 MCP 增删改查、基于标签的触发(tag-aware triggers)、陈旧信号(staleness signals)与历史 diff 视图。测试侧可参见 hindsight-api-slim/tests/test_mental_models.py 及test_mental_model_*系列用例(触发补丁、标签分组、最小刷新间隔、结构化输出等),这些用例印证了 mental model 的触发与刷新语义。

知识图谱

真正的知识图谱落地:实体解析(entity resolution)、更丰富的实体标签,以及改进的**因果链接(causal link)**检测,并配套时间排序。图谱相关实现可参考 hindsight-api-slim/hindsight_api/engine 下的实体与图谱维护模块(test_graph_maintenance*.pytest_entity_resolver*.py等测试覆盖了实体合并、标签、共现聚类等细节)。

围绕学习层的规模化扩展

  • 万物皆可摄入:PDF、图片、Office 文档,Iris 解析器,以及通过各 Provider Batch API 实现的异步批量 retain;
  • 规模化检索:每 Bank 独立的 HNSW 索引、pgvectorscale(DiskANN)支持,大型 Bank 上 observation recall 提速约40 倍
  • 多租户与鉴权:Bearer Token MCP、分层配置作用域、Supabase 租户扩展,以及consolidation.completed/retain.completedWebhook(见 hindsight-api-slim/hindsight_api/webhooks);
  • 集成浪潮开端:Claude Code、Codex CLI、LangGraph、Vercel AI SDK、Chat SDK、CrewAI、PydanticAI、AG2、Agno、Strands、LlamaIndex,以及 Go 与 AI SDK 客户端、原生 Windows 支持。

2026 年 4 月 — v0.5.x:检索"长大成人"

7 个版本、约 137 项变更,聚焦让召回更快、让记忆更可移植。图谱能力收敛为单一的LinkExpansion retriever3 阶段 retain 管线在并发下显著提升摄入吞吐。

  • Constellation 视图:实体图谱的可交互、可缩放画布,带热度渐变色。前端组件位于 hindsight-control-plane/src/components/constellation.tsx。
  • Delta mental-model 刷新:只重读上次运行之后新增的记忆,避免全量重算。
  • Bank 模板导入/导出(Template Hub):把 Bank 的配置、mental models 与指令导出为可复用的 manifest。
  • 本地与开放推理:内置llama.cpp提供方(实现在 hindsight-api-slim/hindsight_api/engine/providers/llamacpp_llm.py,本地模型对齐、服务生命周期、attempt context 等行为由test_llamacpp_*.pytest_local_model_alignment.py等用例覆盖),另有 OpenRouter 与一等公民的 DeepSeek 支持。
  • 新集成:OpenAI Agents SDK、AutoGen、Paperclip、OpenCode、Pipecat 语音。

2026 年 5 月 — v0.6.x / v0.7.x:把搜索层做大

两条 minor 版本线、同一主题:让检索在真实数据规模下既快又准,并触达企业级后端。

  • BM25 搜索后端:ParadeDBpg_search(Citus 兼容)与 PGroonga,多语言搜索更佳,并支持可配置的分词。相关脚本与编排见 docker/docker-compose/pg_search、docker/docker-compose/pgroonga 与 docker/docker-compose/pg_textsearch,服务端开关逻辑见 hindsight-api-slim/hindsight_api/_pg_search.py。
  • 企业级存储:AlloyDB ScaNN 索引(编排见 docker/docker-compose/alloydb)、Oracle Database后端,以及面向召回流量的只读副本(read-replica)选项。
  • 更聪明的调度Bank 优先级合并(bank-priority consolidation)与按 observation scope 的定向合并。
  • 更多提供方与模型:z.ai、Fireworks、带自动回退链的 litellm router、Qwen3 重排器。
  • 集成:Dify、n8n、SmolAgents、AWS Bedrock AgentCore、Google ADK、Flowise、Roo Code、Vapi 语音、Gemini Spark。

2026 年 6–8 月 — v0.8.x:为生产而生

项目史上第二大版本线:7 个版本、230+ 项变更。这一阶段 Hindsight 在运维上变得"认真"起来,集成清单也急剧膨胀。

生产加固

  • 周期性后台维护:自主对账合并状态并在多租户间强制执行保留策略;
  • 可持久、可恢复的进度快照:覆盖长时合并与批量 retain;
  • 可逆的记忆策展(curation):编辑、作废、回滚记忆单元,以及对近似重复观察的语义去重
  • 自诊断健康探针:报告事件循环是否被阻塞、连接池是否耗尽;
  • 整 Bank / 跨 Bank 导入导出(无需重跑 LLM),配合 prompt 前缀缓存与 Anthropic batch + prompt caching 降本;
  • 安全Memory DefenseSIEM 增强,以及多 LLM 故障转移 / 轮询。

Memory Defense 的实现细节值得展开:扩展契约定义在 hindsight-api-slim/hindsight_api/extensions/memory_defense.py。它内置约 40 条高置信度的密钥/PII 脱敏正则(覆盖 AI/LLM 提供方如sk-ant-sk-proj-AIzahf_;云厂商如AKIAASIA;代码托管如github_pat_glpat-;支付类如sk_live/test_;数据库连接串与 JWT、私钥块等),支持allow/redact/block三种动作。值得注意的两个设计:

  1. 指纹化预览(fingerprint)_fingerprint_value()按值长度保留前缀/后缀(如ghp_...AAAA),原始密钥绝不出现在审计输出中,供 SIEM 关联凭证清单;
  2. ASCII token 边界:为规避\b在 CJK 文本中失效的问题(例如凭证为sk_test_ABC...中的密钥逃过检测),使用(?<![A-Za-z0-9_])/(?![A-Za-z0-9_])自定义边界,并有测试test_redaction_patterns_do_not_use_unicode_word_classes强制约束,防止回归。

集成浪潮

GitHub Copilot(CLI 与 VS Code)、AiderZedOpenHandsContinue.devCursor(插件与 CLI)、ClineWindsurfComposioZapierObsidianHaystackMicrosoft Agent Framework等。这些集成在仓库中大多有独立子目录与配套锁文件,见 hindsight-integrations。

2026 年 8 月 — v0.9.x:Knowledge Pages 与"每个编码 Agent 的记忆"

最近的两个版本把前面所有基础设施"向外打开"。

Knowledge Pages:会自愈的 Wiki

Knowledge Pages把 Bank 变成一个"自己写自己"的自愈 Wiki:由合并后的记忆综合而成的活文档(living documents),随 Bank 学习而持续刷新。从数据模型看,它由迁移 hindsight-api-slim/hindsight_api/alembic/versions/a9b8c7d6e5f4_add_knowledge_pages.py 引入的knowledge_pages表承载:

  • 树形层级kind区分folder(纯容器,mental_model_id为空)与page(引用承载内容的 mental model);单一自引用parent_id允许任意嵌套,删除文件夹行会级联删除整个子树;
  • 内容仍留在mental_models:本表只存元数据与树结构;
  • 同文件夹内页名唯一:部分唯一索引uq_kp_folder_pagenameCOALESCE(parent_id, '')+lower(name)处理根级页面的 NULL 父级歧义;
  • managed标记:客户端用于标注"系统拥有 vs 手工撰写",服务端不做行为处理;
  • 同步提供 Oracle 方言实现(因 CLOB 无法lower()建索引,Oracle 侧不强制页名唯一)。

Hindsight Coding Agents:一个包,十个 Agent

Hindsight Coding Agents从单一包把长期记忆带给十个编码 Agent——Claude Code、Codex、Cursor CLI、opencode、Copilot CLI 等,并提供每 Bank 开关,用于在召回时调节时间搜索、图谱扩展与重排

仓库中的 hindsight-integrations/coding-agents/README.md 给出了完整实现图景:

  • 零配置摄入:无需安装命令,仓库的 git 历史与会话在后台自动流入其记忆 Bank;默认每个仓库一个 Bank(coding-agent::{gitProject}),跨 Agent 共享;
  • 安装即接线npx @vectorize-io/hindsight-coding-agents install all一次接线全部检测到的 Agent(hook 型宿主写 hooks,插件型宿主写原生插件入口),install <agent>只装单个,uninstall精确移除,update仅刷新运行时;
  • 三种记忆驻留模式cloud(Hindsight Cloud,默认,需 API token)、self-hosted(自建服务,需 URL)、daemon(本机hindsight-embed,需uv与用于提取的 LLM 密钥)——安装时选择一次,重装不再询问;
  • 每 Bank / 每 Agent 精细调节harnesses.<name>做按 Agent 覆盖,banks.<resolvedBankId>做按仓库覆盖;observationScopes: "shared"保证同一仓库的所有 Agent 构建同一套信念(而非按 harness 分裂成互不可见的平行观测集),per_source则可在"提交说了什么"与"会话里定了什么"之间拆分提问;
  • Knowledge Pages 刷新策略pageTriggerType: "cron"(默认每小时错峰刷新,H * * * *H按 Bank id 与页名哈希为每页独立分钟)、"auto-refresh"(每次合并后刷新,最贵)或"manual";刷新本身是delta 式的——每轮编辑页面而非重建;
  • 可观测性:插件日志 + 结构化 diag 事件(reflect_ok/reflect_failed/reflect_fallback_pages等),hindsight_sync_status工具回答"记忆就绪了吗"("synced": true即种子记忆可查询)。

0.9.1 与 0.9.2

  • 0.9.1(一周后跟进):时间抽取约9 倍提速且结果一致;整 Bank 迁移携带 Knowledge Pages 树xAI OAuth(可用 SuperGrok 订阅运行 LLM);数据库无关的存活探针;
  • 仓库当前版本0.9.2,表明该里程碑发布后迭代仍在继续(见 hindsight-api/pyproject.toml 等)。

贯穿主线:基础设施的胜利

把时间线连起来读,模式非常清晰:这里没有任何提示词技巧。数据库、检索策略、学习层、合并、摄入、鉴权与运维管线——正是这些"不性感"的基础设施,让记忆精确到可以被度量、无聊到可以跑在生产环境。900+ 项变更横跨 67 个版本,架构形态变得越来越锐利。

需要说明的是:Hindsight 并非同类项目中最受 Star 的项目,其团队更愿意在基准测试层面竞争。对于上手路径,可选 Hindsight Cloud 免费试用,或用单条命令自托管;仓库内的 docker/standalone(start-all.sh)、docker/docker-compose 与 helm/hindsight 提供了容器与 Kubernetes 两种自托管参考。若只想在本地进程内体验记忆,可参考 hindsight-embed/README.md 的hindsight-embed configure+memory retain/recall/reflect快速开始流程。


延伸阅读(仓库内)

  • hindsight-embed/README.md — 本地守护进程模式的完整命令与环境变量参考
  • hindsight-integrations/coding-agents/README.md — Coding Agents 包的配置参考与迁移指南
  • hindsight-api-slim/hindsight_api/alembic/versions/a9b8c7d6e5f4_add_knowledge_pages.py — Knowledge Pages 表结构迁移
  • hindsight-api-slim/hindsight_api/extensions/memory_defense.py — Memory Defense 脱敏策略与指纹机制
  • hindsight-control-plane/src/components/constellation.tsx — Constellation 图谱视图前端实现

【免费下载链接】hindsightHindsight: Agent Memory That Learns项目地址: https://gitcode.com/GitHub_Trending/hindsight2/hindsight

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询