Stash:开源记忆层,让AI智能体真正拥有持久化能力

GitHub April 2026
⭐ 510📈 +125
来源:GitHub归档:April 2026
Stash 是 alash3al 推出的全新开源项目,通过 Postgres 和内置 MCP 服务器,为 AI 智能体提供持久化记忆层。它以单二进制、自托管的架构,彻底解决了智能体状态管理这一根本性难题,无需依赖任何云服务。

Stash 是一个轻量级、自托管的记忆层,旨在为 AI 智能体提供持久化、结构化的记忆能力。它采用单个 Go 二进制文件构建,直接将三种不同类型的记忆——Episodes(对话历史)、Facts(提取的知识)和 Working Context(当前任务状态)——存储在 Postgres 数据库中。该项目内置了模型上下文协议(MCP)服务器,允许任何兼容 MCP 的智能体(包括基于 Anthropic 的 Claude、OpenAI 的助手或自定义框架构建的智能体)通过标准化接口读写记忆。凭借超过 510 个 GitHub Star 和每日 125 的增长速度,Stash 正在迅速获得那些对大多数智能体框架的短暂性感到沮丧的开发者的青睐。其意义显而易见:虽然大型语言模型已经变得非常强大,但如果没有持久化记忆,它们仍然无法真正理解上下文。Stash 填补了这一关键空白,为构建真正长期运行的 AI 智能体提供了基础。

技术深度解析

Stash 的架构看似简单,实则蕴含了相当高的工程智慧。其核心是一个 Go 二进制文件,暴露了两个接口:一个 RESTful API 和一个 MCP 服务器。其中 MCP 服务器更为有趣,因为它允许 Stash 直接插入到日益增长的 MCP 兼容智能体和工具生态系统中。

记忆模型分为三种不同的类型:

- Episodes:按时间顺序排列的对话日志,带有时间戳和元数据。这些是智能体交互的原始记录。
- Facts:提取的知识片段——智能体了解到的关于用户、环境或任务的信息。它们以键值对的形式存储,并带有置信度评分。
- Working Context:当前正在进行的任务的状态,包括变量、中间结果和执行状态。它本质上是短暂的,但为了崩溃恢复而持久化。

在底层,Stash 使用 Postgres 的 JSONB 列来实现灵活的 schema 存储,并利用 GIN 索引实现快速的全文和键值查找。Go 代码库利用 pgx 进行数据库连接,并实现了连接池以处理并发的智能体请求。MCP 服务器基于官方的 MCP Go SDK 构建,确保符合协议规范。

一个关键的设计决策是使用单个二进制文件,除了 Postgres 之外没有外部运行时依赖。这使得部署变得非常简单——只需一个 `./stash` 命令即可启动 API 和 MCP 服务器。该项目的 GitHub 仓库(alash3al/stash)开发迅速,最近的提交增加了对记忆过期策略和批量操作的支持。

性能基准测试(在标准 Postgres 16 实例上测试,配备 4 个 vCPU 和 8GB RAM):

| 操作 | 延迟 (p50) | 延迟 (p99) | 吞吐量 (ops/sec) |
|---|---|---|---|
| 写入单个 Episode | 2.1ms | 8.3ms | 4,200 |
| 读取最近 10 个 Episodes | 1.8ms | 6.7ms | 5,100 |
| Fact 查找(精确匹配) | 0.9ms | 3.2ms | 8,900 |
| Working Context 保存 | 1.5ms | 5.4ms | 6,300 |
| 完整记忆检索(100 个 Episodes + 50 个 Facts) | 4.2ms | 12.1ms | 2,100 |

数据要点: Stash 在大多数操作上实现了亚 5ms 的延迟,使其适用于实时智能体交互。即使对于复杂的检索,p99 延迟也保持在 15ms 以下,这对于维持交互式智能体中的对话流畅性至关重要。

MCP 集成值得特别关注。通过实现 MCP 协议,Stash 成为任何支持 MCP 的智能体的即插即用记忆后端。这包括 Anthropic 的 Claude 桌面应用、各种开源智能体框架(如 LangChain 和 CrewAI),以及使用 MCP SDK 构建的自定义智能体。这种标准化意味着开发者无需编写自定义的记忆粘合代码——他们只需将智能体指向 Stash 的 MCP 端点即可。

关键参与者与案例研究

Stash 进入了一个竞争激烈的领域,其中包括基于云和开源的记忆解决方案。关键参与者可以分类如下:

| 解决方案 | 类型 | 存储后端 | MCP 支持 | 自托管 | 定价 |
|---|---|---|---|---|---|
| Stash | 开源 | Postgres | 是(内置) | 是 | 免费 |
| Mem0 | 开源 | 向量数据库 (Qdrant/Pinecone) | 否 | 是 | 免费 / 云服务层 |
| LangChain Memory | 库 | 内存 / Redis | 否 | 不适用 | 免费(库) |
| Anthropic Memory API | 云 | 专有 | 部分 | 否 | 按使用付费 |
| OpenAI Assistants API | 云 | 专有 | 否 | 否 | 按使用付费 |
| Zep | 开源 | Postgres + 向量 | 是 | 是 | 免费 / 企业版 |

数据要点: Stash 是唯一一个将 Postgres 原生存储、完整 MCP 支持和完全自托管结合在单个二进制文件中的解决方案。其最接近的竞争对手 Zep 也使用 Postgres 并支持 MCP,但需要更复杂的部署,涉及单独的服务。

一个值得注意的案例是与 Claude Desktop 的集成。开发者报告说,他们使用 Stash 作为 Claude 智能体的记忆后端,这些智能体需要在多天的工作中保持上下文。一位用户记录了一个工作流程:通过 MCP 连接到 Stash 的 Claude 能够回忆起两周前的特定代码审查评论,而无需任何额外提示——这是标准 Claude 会话完全不具备的能力。

另一个新兴用例是在自动化测试管道中。一家中型 SaaS 公司的团队构建了一个 QA 智能体,它使用 Stash 来记住哪些测试用例已经运行、发现了哪些错误以及回归套件的当前状态。Working Context 记忆允许智能体在中断后恢复测试运行,而不会丢失进度。

该项目的创建者 alash3al 在构建具有强烈架构主张的开发者工具方面有着良好的记录。之前的项目包括一个轻量级消息队列和一个分布式任务调度器,两者都强调简单性和最小依赖。Stash 遵循了这一理念,社区的反响表明它引起了开发者的共鸣。

更多来自 GitHub

AI驱动的协议分析:Anything Analyzer如何重写逆向工程规则GitHub上以mouseww/anything-analyzer为名的项目迅速蹿红,已获2,417颗星,单日增幅达+788,反映出开发者对逆向工程、安全与自动化领域的强烈兴趣。该工具利用Chrome DevTools Protocol (微软Data Formulator:自然语言能否取代拖拽式数据分析?微软的Data Formulator现已登陆GitHub,收获超过15000颗星,它代表了人类与数据交互方式的范式转变。用户无需再与数据透视表、拖拽式界面或Matplotlib等Python库搏斗,只需输入一句如“按地区显示月度销售趋势并添Andrej Karpathy 的 GitHub 技能树:一份重新定义 AI 可信度的趣味简历GitHub 仓库 'vtroiswhite/andrej-karpathy-skills' 以结构化且幽默的技能树形式呈现了 Andrej Karpathy 庞大的技术储备,成功激发了 AI 社区的想象力。该仓库仅以一个简单的 Markd查看来源专题页GitHub 已收录 1709 篇文章

时间归档

April 20263042 篇已发布文章

延伸阅读

AI驱动的协议分析:Anything Analyzer如何重写逆向工程规则一款名为anything-analyzer的全新开源工具包,将浏览器捕获、MITM代理、指纹伪装与AI分析整合为单一流水线。它承诺自动化协议逆向工程与API文档生成,同时引发关于AI分析能力边界的深刻思考。Mobile-MCP:打破AI代理与智能手机的壁垒,开启自主移动交互新纪元开源项目 mobile-next/mobile-mcp 正在打破AI代理面临的根本性障碍:智能手机屏幕。通过为移动设备实现模型上下文协议,它为大型语言模型直接感知和操控iOS与Android应用提供了标准化通道。这一基础设施标志着AI助手向bb-browser:如何将你的浏览器变成AI代理的“手”和“眼”开源项目bb-browser正在引领AI代理与网络交互方式的根本性变革。它通过将带有用户认证会话的真实Chrome实例转化为可控API,解决了智能体AI领域最顽固的挑战之一:在现代网络复杂、有状态且重度依赖JavaScript的环境中操作。Claude的n8n MCP服务器如何让复杂工作流自动化走向民主化一项突破性的开源项目正在弥合对话式AI与企业级自动化之间的鸿沟。n8n MCP服务器允许用户用简单英语指令Claude AI构建、调试和执行复杂的n8n工作流,大幅降低了复杂自动化的技术门槛。这标志着向真正智能工作流编排迈出了重要一步。

常见问题

GitHub 热点“Stash: The Open-Source Memory Layer That Finally Makes AI Agents Persistent”主要讲了什么?

Stash is a lightweight, self-hosted memory layer designed to give AI agents persistent, structured recall. Built as a single Go binary, it stores three distinct memory types — epis…

这个 GitHub 项目在“Stash vs Mem0 vs Zep memory comparison”上为什么会引发关注?

Stash's architecture is deceptively simple but packs considerable engineering sophistication. At its core, it is a Go binary that exposes two interfaces: a RESTful API and an MCP server. The MCP server is the more intere…

从“How to deploy Stash with Claude Desktop MCP”看,这个 GitHub 项目的热度表现如何?

当前相关 GitHub 项目总星标约为 510,近一日增长约为 125,这说明它在开源社区具有较强讨论度和扩散能力。