mcpField
P
Pensyve

Pensyve

本地服务
github.com记忆与知识973 周前更新

关于 Pensyve

Pensyve 是一个开源的 AI Agent 持久记忆运行时,可存储事实、对话、观察与行动结果,并在之后的会话中检索。它可通过 Python、MCP 服务、命令行或 REST 使用,适合需要为 Agent 添加长期记忆的开发者。

主要功能

  1. 01事实、对话、观察与行动结果四类记忆
  2. 02基于 SQLite 的本地存储与本地嵌入模型
  3. 03支持文本、语义与实体关系检索
  4. 04提供 Python、TypeScript、Go SDK
  5. 05本地 MCP 服务,无需 API 密钥
  6. 06记忆巩固与保留期管理

适用场景

  1. 01为 Python Agent 添加跨会话的用户偏好记忆
  2. 02让 Claude Code、Cursor 或 Codex 访问记忆工具
  3. 03通过 HTTP 网关在多个客户端之间共享记忆库

MCP 相关

Pensyve 提供本地 stdio MCP 服务(pensyve-mcp),并在 HTTP 网关上提供 /mcp 端点,向 Claude Code、Codex、Cursor 等客户端暴露 pensyve_remember、pensyve_recall、pensyve_observe 和 pensyve_inspect 等工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"major7apps-pensyve": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/major7apps/pensyve-mcp:5.0.0"
]
}
}
}
启动命令docker run -i --rm ghcr.io/major7apps/pensyve-mcp:5.0.0

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
ocighcr.io/major7apps/pensyve-mcp:5.0.0

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Pensyve 标志

Pensyve

CI 许可证:Apache 2.0 Python 3.10+ Rust 1.94+

Pensyve 是一个用于持久化 AI Agent 记忆的开源运行时。它存储事实、 对话、观察结果和行动结果,让 Agent 能在后续会话中检索这些内容。 你可以通过 Python、模型上下文协议( MCP)服务、命令行工具或 REST API 使用它。

Rust 引擎使用 SQLite 进行本地存储,并在本地运行嵌入模型, 以便按含义进行搜索。TypeScript 和 Go 客户端连接到你自行运行的网关。 本地使用无需 Pensyve 账户或 API 密钥。 你的应用或客户端集成会调用 Pensyve 来保存和检索 记忆。

选择一种配置方式

用途从这里开始
为 Python Agent 添加持久化记忆Python 快速入门
让 Claude Code、Cursor 或 Codex 使用记忆工具MCP 服务和客户端配置指南
通过 TypeScript、Go 或 REST 共享记忆存储HTTP 网关
使用 LangChain 或 LangGraph 适配器Python 集成或TypeScript 集成

项目状态

Pensyve Cloud 已于 2026 年 10 月 1 日关闭。开源项目将继续在 此仓库中以 Apache 2.0 许可证维护,引擎、SDK、 集成和文档均可在此获取。

Pensyve 目前处于维护模式。版本更新仅包含安全修复和依赖项 更新,暂无新功能计划。有关贡献和支持的预期,请参阅维护政策。 如果你已保存 Cloud 导出文件,请参阅自托管指南, 了解如何将其用于自己的网关。

你可以做什么

  • 存储有关用户、项目或其他命名实体的事实,并将对话记录为片段。
  • 使用文本匹配、嵌入以及实体之间的关系搜索记忆。
  • 记录观察结果和行动结果,并使用整合来提升重复事实的优先级并更新记忆保留策略。
  • 将数据保存在本地 SQLite 存储中,或使用 SQLite 或 PostgreSQL 运行 HTTP 网关。

首次加载嵌入模型时,可能会下载模型,除非模型已缓存。 如需在无网络访问的情况下运行,必须先准备好模型文件。 请参阅模型配置和部署指南。

Agent 记忆的工作原理

Pensyve 在大模型之外存储记忆。你的应用会保存 事实或对话、搜索相关记录,并将结果添加到后续的提示词中。 重复使用相同的存储路径和命名空间,可以让 Agent 跨进程和会话检索信息。保存记忆 不会训练大模型,也不会改变其权重。

存储中有四类记录:事实(语义记忆)、对话 (情景记忆)、行动结果(程序性记忆)和观察结果。 由你的集成决定记录什么以及何时检索。记录 对话不会自动将其转化为成功的程序。请参阅存储和检索的工作原理以及 使用示例,了解 API 及其限制。

Python 快速开始

需要 Python 3.10 或更高版本。

pip install pensyve

创建本地存储,保存一条事实并检索:

import pensyve

p = pensyve.Pensyve(path="./memories", namespace="my-agent")
user = p.entity("user", kind="user")

p.remember(
    entity=user,
    fact="Prefers dark mode and vim keybindings",
    confidence=0.95,
)

for memory in p.recall("editor preferences", entity=user):
    print(memory.content)

在后续进程中使用相同的路径和命名空间来检索已保存的记忆。Python SDK 会在你的进程中运行引擎,无需 HTTP 网关。

你也可以使用相同的 p 和 user 记录对话:

with p.episode(user) as episode:
    episode.message("user", "Use dark mode in my editor")
    episode.message("agent", "I updated the editor settings")
    episode.outcome("success")

groups = p.recall_grouped("editor settings", limit=10)
for group in groups:
    for memory in group.memories:
        print(memory.content)

recall_grouped() 会按来源会话对结果分组,以便在 Agent 的提示词中使用。更多示例请参阅 Python SDK 指南和实用教程。

MCP 服务

Pensyve 的本地 MCP 记忆服务让 Claude Code、Codex 和 Cursor 等客户端能够跨会话存储和检索记忆。在本仓库的检出目录中,使用 Rust 1.94 或更高版本安装该服务:

git clone https://github.com/major7apps/pensyve.git
cd pensyve
cargo install --path pensyve-mcp --locked

确保 Cargo 的二进制文件目录位于客户端的 PATH 中,然后在其 MCP 配置中添加一个 stdio 服务条目:

{
  "mcpServers": {
    "pensyve": {
      "command": "pensyve-mcp",
      "args": ["--stdio"],
      "env": {
        "PENSYVE_NAMESPACE": "my-project"
      }
    }
  }
}

该服务提供 pensyve_remember、pensyve_recall、pensyve_observe 和 pensyve_inspect 等工具。它会在本地存储数据,无需 API 密钥。配置文件的位置取决于你的客户端。请参阅 MCP 设置指南和集成指南。

HTTP 网关

运行网关即可通过 REST 或 MCP HTTP 访问 Pensyve,TypeScript 和 Go SDK 也可使用。从仓库根目录启动本地实例:

HOST=127.0.0.1 PENSYVE_API_KEYS=psy_local_example \
  cargo run --release -p pensyve-mcp-gateway

在另一个终端中保存并检索一条事实:

curl http://localhost:3000/v1/remember \
  -H "Authorization: Bearer psy_local_example" \
  -H "Content-Type: application/json" \
  -d '{"entity":"user","fact":"Prefers Python","confidence":0.95}'

curl http://localhost:3000/v1/recall \
  -H "Authorization: Bearer psy_local_example" \
  -H "Content-Type: application/json" \
  -d '{"query":"programming language","entity":"user"}'

MCP HTTP 端点为 http://localhost:3000/mcp。在客户端的 Authorization: Bearer 标头中使用相同的 API 密钥。

示例密钥仅用于本地测试。部署时,请选择带有所需 psy_ 前缀的自定义密钥,并配置 HTTPS 和允许的主机。请参阅自托管指南、网关配置和安全文档。

SDK 和集成

TypeScript 和 Go SDK 需要运行中的网关。配置网关 URL;如果启用了身份验证,还需配置该网关提供的 API 密钥。

接口安装或指南
Pythonpip install pensyve,SDK 指南
TypeScriptnpm install @pensyve/sdk,SDK 指南
Gogo get github.com/major7apps/pensyve/pensyve-go/v5@latest,SDK 指南
Claude Code插件设置
CursorMCP 设置和规则
Codex插件设置
LangChain 和 LangGraphPython 适配器,TypeScript 适配器
其他客户端和框架集成索引

命令行工具

在仓库根目录安装 CLI 并查看其命令:

cargo install --path pensyve-cli --locked
pensyve --help
pensyve status
pensyve recall "editor preferences" --entity user

二进制文件名为 pensyve。默认输出为 JSON,使用 --format text 可选择文本输出。CLI 使用自己的默认本地存储位置;不会自动打开 Python 示例中的 ./memories 目录。有关存储和命名空间选项,请参阅 CLI 源代码和命令定义。

文档

指南内容
文档索引选择一种配置方式,查找 API 指南,并了解历史计划
快速入门按客户端或 SDK 配置
自托管网关部署、模型文件、备份和保存的 Cloud 导出内容
使用示例回忆、事实、事件、观察及其他 API 示例
架构存储、检索和组件边界
安全身份验证、命名空间隔离和执行限制
可靠性测试和运行时保证
更新日志发布历史和重大变更

开发与贡献

请先阅读 CONTRIBUTING.md,了解先决条件和配置方法。 在仓库根目录运行:

uv sync --extra dev
make build
make check

make build 会编译 Rust 并构建 Python 扩展。make check 会运行 Rust 和 Python 的 lint 及测试命令。TypeScript 和 Go 有单独的检查, 详见贡献指南。

问题和拉取请求遵循维护政策。 请通过私密漏洞报告报告安全问题。

许可证

Pensyve 基于 Apache 2.0 许可协议授权。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。