Piia Engram
让多个 AI 编程工具共享一套由用户掌控、可审阅和覆盖的本地工作身份与长期知识。
- Star 数
- ★ 162
- 最近更新
- 1 天前
- License
- AGPL-3.0
- 主语言
- Python
- FA 评分
- 88/100 · 表现良好
30 秒速览
- 运行形态
- 可在哪里用
- 通用 · 跨平台Codex · Claude CodeChatGPT(部分支持)
- 费用
- 免费,无需付费服务
- 上手难度
- 低 · 几分钟可跑通
- 开始前需要
- 典型场景
- 同时使用 Claude Code、Codex 和 Cursor 的开发者,希望各客户端读取同一套编码偏好、质量标准与经验。
- 不适合
- 需要加密所有本地记忆文件的团队
- 需要经过加密认证的调用方隔离的组织
- 只想保存单次任务历史、而非用户身份知识的人
- 源码审查
- 88/100 · 表现良好
这个 Agent 能做什么,适合哪些场景?
Piia Engram 是面向开发者的本地优先 AI 工作身份层,而不是通用的 Agent 会话记忆数据库。它把身份、偏好、质量标准、项目快照、经验教训、关键决策和操作 Playbook 保存到 `~/.engram/` 下的 JSON 与 Markdown 文件中。项目通过 Python CLI 和 MCP stdio 服务器向 Claude Code、Codex、Cursor 等客户端提供读取、检索、写回、审阅、导入导出和会话恢复能力;不支持 MCP 的 ChatGPT、Gemini 和 Kimi 可使用导出的 Markdown 身份卡。默认身份与知识操作不联网,混合检索、远程 SSE 服务、加密、治理及遥测均属于可选能力。它适合频繁切换 AI 编程工具、希望知识可见且可迁移的用户,但本地明文默认值和调用方身份边界需要在采用前认真评估。
安装后,engram setup 检测 Python 环境和已安装的 AI 工具,询问数据目录,并在用户确认后备份、写入 MCP 配置。MCP 客户端可用 get_user_context 加载身份和已批准知识,用 search_knowledge、get_relevant_knowledge 或 get_recall 检索经验、决策与 Playbook,并通过 add_lesson、add_decision、add_playbook 或统一入口 memory_store 写回本地存储。save_project_snapshot、get_recent_context 和 get_resume_brief 负责项目及跨会话衔接;wrap_up_session 可提取会话成果,并把检测到的多步骤流程生成为待确认的 Playbook 草稿。高风险内容进入审阅流程,低中风险写入可审计并可撤销,设置 ENGRAM_APPROVAL=strict 可拦截所有写入。engram preview --as automation 展示调用方实际能收到的内容,engram doctor 检查安装和配置,export_engram、import_engram 与 get_identity_card 分别处理完整备份、预览式导入和非 MCP 工具的 Markdown 输出。默认使用关键词搜索;安装 vector 扩展并设置 ENGRAM_SEARCH=hybrid 后,可启用 FTS5 与语义向量结合的跨语言检索。
- 同时使用 Claude Code、Codex 和 Cursor 的开发者,希望各客户端读取同一套编码偏好、质量标准与经验。
- 经常开启新对话的工程师,希望通过
get_user_context或get_resume_brief减少重复说明背景。 - 架构师需要长期保存决策、被否决方案及原因,并在后续项目中检索决策链。
- 维护重复发布或部署流程的团队,希望从会话中生成待审阅的 Playbook,并记录执行结果。
- 重视数据主权的个人用户,希望记忆保存在可直接检查、编辑、备份和迁移的本地文件中。
- 需要在不支持 MCP 的 ChatGPT、Gemini 或 Kimi 中复用工作身份的用户,可导出并粘贴 Markdown 身份卡。
如何安装或部署这个 Agent?
需要 Python 3.10+。基础安装和交互式配置为:
pip install piia-engram
engram setup向导会列出将要修改的客户端配置文件,并在确认后写入 MCP 连接;每次外部配置写入前都会备份。用于 CI 或非交互环境时可直接应用外部配置:
engram setup --apply-external-config配置完成后重启对应 AI 工具,并执行健康检查:
engram doctor若需要可选的语义向量检索:
pip install "piia-engram[vector]"随后在 MCP 环境中设置 ENGRAM_SEARCH=hybrid。身份与知识功能默认不要求网络或 API 密钥。
如何使用这个 Agent?
Codex 可在 ~/.codex/mcp.json 中添加:
{
"mcpServers": {
"piia-engram": {
"command": "python",
"args": ["-m", "piia_engram.mcp_server"]
}
}
}Claude Code 也可直接注册 stdio MCP 服务器:
claude mcp add piia-engram -- piia-engram-mcp重启客户端后,先调用 get_user_context 获取已批准的身份与知识;工作中用 search_knowledge 查找经验和决策,用 memory_store 或 add_lesson、add_decision、add_playbook 保存新内容,结束时调用 wrap_up_session。可在终端预览 AI 将看到的内容并检查连续性:
engram preview --as automation
engram continuity若要开放全部高级工具,可在 MCP 服务器配置中加入:
{
"mcpServers": {
"piia-engram": {
"command": "python",
"args": ["-m", "piia_engram.mcp_server"],
"env": {
"ENGRAM_TOOLS": "all"
}
}
}
}不支持 MCP 的工具可使用 get_identity_card 生成 Markdown,再粘贴到对话中;该路径不是自动同步。
这个 Agent 有哪些优点和局限?
- 同一份本地存储可供多个 MCP 编程客户端使用,减少被单一工具的原生记忆锁定。
- JSON 和 Markdown 数据可直接查看、修改、备份与迁移,并提供 Memory Lens 预览调用方实际可见内容。
- 具备经验、决策和 Playbook 的结构化生命周期,包括暂存审阅、版本历史、关系、合并及知识继承。
- 默认身份和知识操作不发起网络请求,远程遥测及反馈需要单独明确启用。
- 提供 CLI 健康检查、配置修复、备份式外部配置写入和可逆导入预览。
- 既支持 MCP stdio,也记录了自托管 SSE 服务以及非 MCP 工具的 Markdown 回退路径。
- 本地 JSON 和 Markdown 默认是明文;AES-256-GCM 只覆盖受支持的资料字段,并非整个存储。
- 任何能读取
~/.engram/的进程都能访问数据,restricted_fields也不是真正的 ACL。 - MCP 不提供可靠的工具身份,治理依赖环境变量而非加密认证,不能视为强化沙箱。
- 各客户端证据等级不一致:Claude Code 与 Codex 有部分跨工具连续性证明,Cursor 仅有读写路径证据,多款客户端只是预期可用。
- 混合搜索需要额外安装 vector 依赖,远程模式还要求 HTTPS 反向代理、令牌和 CORS 配置。
- 文档中的工具数量存在不一致:部分位置写 19 个核心工具或总计 59 个,明确枚举和 FAQ 则写 18 个核心加 40 个高级工具。
这个 Agent 与同类方案有什么区别?
与 Claude Memory 相比,Piia Engram 把资料存放在用户控制的本地文件中,并面向多个 MCP 工具,而不是限定在 Claude 生态。与 CLAUDE.md 或 .cursorrules 相比,它保存跨仓库的个人偏好、经验与决策;仓库规则文件仍更适合项目专属构建步骤和规范。与 Mem0、Zep、Letta 这类 Agent 记忆系统相比,它强调“用户是谁”及其长期工作标准,而不是单次 Agent 工作流发生了什么。与官方 @modelcontextprotocol/server-memory 的通用实体关系图相比,它提供开发者身份、质量标准、经验、决策和审阅治理等专用结构。
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| Piia Engram 当前 | 88 · 表现良好 | 命令行工具免费 | ★ 162 | 1 天前 | Python | Codex · Claude Code |
| Remnic 智能体记忆 | 85 · 表现良好 | 命令行工具免费 + 模型费 | ★ 210 | 6 天前 | TypeScript | ChatGPT · Codex · Claude Code · OpenAI API |
| Obsidian Mind | 79 · 表现良好 | 命令行工具免费 | ★ 4.7k | 23 天前 | TypeScript | Codex · Claude Code |
| Emulo | 78 · 表现良好 | Agent 插件 / 技能免费 + 模型费 | ★ 292 | 今天 | HTML | Codex · Claude Code |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
核心身份与知识功能默认本地运行且无网络访问,遥测、远程遥测、反馈、网页读取和扩展工具均需分别启用;外部配置写入前列出目标并确认,高风险知识等待审核,严格模式可拦截全部写入。数据位置、明文默认值、有限字段加密、披露范围、审计日志、网络端点和遥测负载均有具体说明;配置写入会备份,修复操作也区分预览与应用。扣分主要在依赖安全:CI生成SBOM并运行pip-audit,但漏洞扫描以“|| true”结束,不能阻止存在漏洞的构建,多数依赖也仅设下限。来源与操作审计有记录,但包作者仅写作“Engram Contributors”,发布者身份未知,维护归属和个人知识来源归因证据不够完整。
README、包元数据和CI中的版本、Python范围、核心依赖及公开声明保护机制基本一致;CI覆盖四个Python版本和三类操作系统,并另测安全、UI和读取器扩展。扣分在依赖可用性和故障信息:可选向量功能需要约230–280MB模型下载,部分远程/向量表面明确未纳入扩展CI;虽然提供doctor、status、安装提示和回退路径,但给定材料没有展示主要运行失败的具体错误结构、恢复建议或对应实现。
目标用户、跨工具切换、频繁新会话以及多种专业场景描述清楚;核心与高级工具、默认与可选网络功能、MCP与Markdown回退、实测与“预期可用”客户端均有边界标注。环境适配覆盖Python 3.10–3.13、Linux/macOS/Windows和多种客户端配置。触发精度扣分,因为材料虽提到自动提取、启动加载、高风险分类和能力组,却未给出全部工具模式、触发条件、冲突优先级及误触控制的源码级定义。
README结构完整,提供快速安装、配置片段、向导步骤、检查命令、示例、FAQ入口、客户端证据等级和明确限制;AGPL-3.0-or-later元数据与完整AGPL文本一致。命名方面同时存在piia-engram、piia-engram-mcp和待移除的engram别名,迁移方向虽有注释但仍造成一定不稳定。版本4.21.0及发布一致性门禁可见,但未提供实际CHANGELOG内容或版本迁移记录,因此版本变更记录仅得薄弱分。安全邮箱和响应目标明确,但作者仅为泛称贡献者,未知发布者背景下无法确认更具体的长期维护责任或替代维护路径。
产品输出可通过JSON、Markdown身份卡、MCP响应、HTML预览、状态页和元数据连续性报告供人或工具使用,且编辑、审计、筛选和导出路径清楚。相对单一客户端原生记忆,它提供跨客户端、用户可控且可检查的独立层,边际价值陈述具体。成本效益扣分是因为静态材料不能验证实际召回质量或日常工作节省;高级向量搜索有显著下载体积,用户还需维护本地数据、审批、客户端配置和可选密钥。
公开事实清单、声明漂移检查、信任声明检查、能力见证、合成演示、内存评估和发布门禁为主要声明提供了明确的静态追踪路径;README也明确区分合成回归、客户端证据等级和真人模型合规测试。扣分在跨来源佐证:所给材料只包含部分被引用文档和少量测试辅助文件,无法检查大量链接文档、实现代码或测试断言,且CI中的漏洞审计不强制成功。事实与推断区分较好,例如明确标注“partial”“pending”“expected to work”和静态检查不能证明第三方审计。
- 本评估仅基于所给静态文件,未执行安装、测试、演示、基准或安全扫描,也未核验README链接的文档与实现。
- 本地身份和知识文件默认是明文JSON/Markdown;可选AES-256-GCM只覆盖受支持的敏感资料字段,并非整库加密。共享设备、备份或同步目录上的用户应另行采用磁盘或目录级保护。
- CI中的pip-audit使用“|| true”,发现依赖漏洞不会使该任务失败;部署前应独立运行强制失败的依赖审计并审查完整锁定或约束策略。
- engram setup --apply-external-config会跳过交互确认;自动化环境应先核对目标配置文件和生成的备份。
- 远程遥测、反馈和read_web_content虽默认关闭或需显式调用,但启用后会产生网络外发;应检查环境变量端点和预览负载。
- 发布者未被FollowAgents企业注册表验证,且包作者字段为泛称贡献者;这表示身份与长期维护责任未知,并不表示恶意。
- AGPL-3.0-or-later可能对修改、分发及网络服务部署产生源代码提供义务,采用前应完成许可证合规评估。
常见问题
使用它是否需要付费模型或云账户?
数据是否默认加密?
piia-engram[secure] 并设置 ENGRAM_SECRET 后,可对受支持的资料字段启用 AES-256-GCM,但这不是全盘加密。它会自动修改 Codex 或 Cursor 配置吗?
engram setup 会先显示目标文件并等待确认,写入前创建备份;拒绝则不修改。engram setup --apply-external-config 会跳过确认,适合明确需要非交互写入的环境。升级后 MCP 断开怎么办?
piia-engram doctor --fix,然后重启受影响的 AI 工具;该命令会检查已知 MCP 配置并修复旧条目或错误路径。ChatGPT 能否直接连接同一份记忆?
get_identity_card 导出后粘贴到 ChatGPT。它不是与 MCP 客户端相同的实时本地连接。