mcpField
S
Stateless Agent Memory Engine (SAME)

Stateless Agent Memory Engine (SAME)

本地服务
statelessagent.com记忆与知识2412 周前更新

关于 Stateless Agent Memory Engine (SAME)

Stateless Agent Memory Engine (SAME) 是面向 AI 编码 Agent 的本地优先记忆服务。它索引 Markdown 笔记,在不同会话间保留决策与交接内容,并跟踪来源和过期信息;可通过 MCP 服务连接多种编码工具。

主要功能

  1. 01跨会话持久记忆
  2. 02来源追踪与过期笔记检测
  3. 03跨笔记和知识库搜索
  4. 04决策记录与会话交接
  5. 05本地 SQLite 存储与关键词回退
  6. 06PII 扫描与文件认领保护

适用场景

  1. 01在会话开始时恢复项目上下文
  2. 02编码时查找决策和相关笔记
  3. 03使用信息前检查其是否过期
  4. 04防止多个 Agent 覆盖共享文件

MCP 相关

SAME 向 MCP 客户端提供 19 个工具,用于搜索和管理笔记、决策、交接内容及知识库健康状态。它支持 stdio 和带 Bearer Token 身份验证的 Streamable HTTP 端点。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"sgx-labs-same": {
"command": "npx",
"args": [
"-y",
"@sgx-labs/same"
],
"env": {
"VAULT_PATH": "<VAULT_PATH>"
}
}
}
}
启动命令npx -y @sgx-labs/same
需要配置的环境变量
VAULT_PATHPath to your markdown notes directory

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

安装包
npm@sgx-labs/same0.12.1

工具

12

收录的工具列表 · 更新于 2 周前

参数类型必填说明
blockersstring是任何阻碍或未解决的问题
pendingstring是剩余待办事项
summarystring是本次会话完成的工作

详细介绍

SAME — 面向 AI 编码 Agent 的持久记忆

License: BSL 1.1 Go Latest Release GitHub Stars MCP Tools Discord

你的 AI 会忘记所有会话内容。SAME 能解决这个问题。

SAME 为每款 AI 编码工具提供持久记忆。Claude Code、Cursor、Windsurf、Codex CLI、Gemini CLI——一层适用于所有工具的记忆层。它会为你的 Markdown 笔记建立索引,自动呈现相关上下文,并记录决策和交接内容,让 AI 能从上次中断的地方继续。

单个二进制文件。完全本地运行。无云端服务。无遥测。支持 Mac、Linux、Windows 和 Raspberry Pi。

安装

# macOS / Linux
curl -fsSL https://statelessagent.com/install.sh | bash

# Windows (PowerShell)
irm https://statelessagent.com/install.ps1 | iex

也可通过 npm 安装(适用于所有平台):npm install -g @sgx-labs/same

通过 npm 安装? 使用 npx same@latest 或 npm update -g @sgx-labs/same 更新。

查看运行效果

same demo
Indexing 5 sample notes...
Searching: "authentication decision"

  1. decisions/auth-strategy.md (score: 0.94)
     "We chose JWT with refresh tokens for..."

  2. notes/api-security.md (score: 0.87)
     "Auth middleware validates tokens at..."

Asking: "what did we decide about authentication?"

  Based on your notes, you decided to use JWT with refresh
  tokens (decisions/auth-strategy.md). The API middleware
  validates tokens at the gateway level (notes/api-security.md).

No accounts. No API keys. Everything runs locally.

快速开始

# 1. Point SAME at your project
cd ~/my-project && same init

# 2. Test search
same search "authentication decision"

# 3. Done. Your AI now has memory.
# Start Claude Code, Cursor, or any MCP client.

same init 会自动设置钩子和 MCP 工具。每次会话开始时,AI 都能获取相关上下文。

主要功能

  • 让 AI 记住一切——决策、交接内容和上下文会在不同会话间保留。关闭终端、切换项目、明天再回来,都不会丢失任何内容。

  • 记忆完整性——追踪来源(笔记的出处)、检测源文件变化并标记过时知识。过时笔记在搜索中的排名会自动降低。same health 会显示整个知识库的可信状态。

  • 双层记忆——通过大模型从笔记中提取原子事实。事实可单独搜索,并能提升源笔记在搜索结果中的排名。即使事实埋藏在无关对话中,也能呈现正确答案。

  • 可流式传输的 HTTP 传输——same web --mcp 可启用带有 Bearer 令牌身份验证的 HTTP MCP 端点。可从 Open WebUI、LobeChat 或任何 HTTP MCP 客户端连接,无需 stdio。

  • 兼容你的工具——提供 19 个 MCP 工具,适用于 Claude Code、Cursor、Windsurf 或任何 MCP 客户端。无需离开编辑器,即可搜索、保存决策和创建交接记录。

  • 团队安全协作——多个 AI Agent 可在同一代码库中工作,互不干扰。内置文件认领、推送保护和归属追踪。

  • 即时获取专业知识——提供 17 个预构建知识库,包含 870 多条精选笔记。一条命令即可安装。AI 几秒内即可获取领域知识。

  • 互联知识——查看决策、文件和笔记之间的关联。询问“哪些内容依赖于此?”即可获得真实答案。由 SQLite 提供支持。

安全与团队协作

SAME 内置个人身份信息(PII)扫描和推送保护功能:

  • PII 扫描——提交前钩子会在电子邮件、API 密钥、机密和个人数据进入 Git 前检测这些内容。支持可配置的阻止列表,并提供误报审核工作流。
  • 推送保护——多 Agent 文件认领可防止 AI Agent 覆盖彼此的工作。提供带归属追踪的建议性锁定。
  • 审计日志——每次防护扫描、每次允许操作和每次覆盖操作都会记录日志。
  • 隐私等级——_PRIVATE/ 永远不会被编入索引。research/ 会编入索引,但永远不会提交。你的笔记,由你定规则。
same guard settings set push-protect on    # enable push protection
same guard scan                            # run PII scan manually

工作原理

Your Notes (.md)  -->  Embeddings  -->  SQLite  -->  Your AI Tool
                       (local or        (search      (Claude Code,
                        cloud)           + rank)      Cursor, etc.)

你的 Markdown 笔记会经过嵌入并存储在 SQLite 中。AI 启动会话时,SAME 会通过钩子或 MCP 提供相关上下文。决策会被提取出来,交接内容会自动生成。下一次会话会从上次停止的地方继续。

没有 Ollama?没问题。 SAME 无需任何外部依赖即可运行,并使用关键词搜索(SQLite FTS5)。之后添加 Ollama,再运行 same reindex 即可立即升级为语义搜索。

为什么选择 SAME

不使用 SAME使用 SAME
每次会话都要重新解释所有内容AI 会从你上次停止的地方继续
“我们不是决定用 JWT 吗?”自动呈现决策
“这条笔记还准确吗?”信任状态会标记过时的知识
关闭终端 = 丢失上下文交接内容可恢复会话
将笔记复制粘贴到聊天中使用 same ask 并获取来源引用
任务中途上下文被压缩固定的笔记不会因压缩而丢失

数据表现

指标数值
Recall@5内部评估(68 个案例)中,关键词搜索为 100%,语义搜索为 84%。留出测试:30 个盲测案例的 Recall@5 为 90%(参见 eval/METHODOLOGY.md)
MRR关键词搜索为 0.65,语义搜索为 0.62
提示词开销<200ms
二进制文件大小~14MB
设置时间不到 2 分钟

添加到你的 AI 工具

Claude Code(推荐)
same init    # installs 6 hooks + MCP automatically
Cursor / Windsurf / 任意 MCP 客户端

添加到你的 MCP 配置中(.mcp.json、Cursor 设置等):

{
  "mcpServers": {
    "same": {
      "command": "npx",
      "args": ["-y", "@sgx-labs/same", "mcp", "--vault", "/path/to/your/notes"]
    }
  }
}

立即提供 19 个 MCP 工具。无需 Ollama 也能运行(关键词回退)。

在 Claude Code 和 Cursor 之间切换,上下文不会丢失。你的记忆会随你而行。

工具兼容性

Claude Code 可通过钩子实现完整的自动交接。Cursor、Windsurf、Codex CLI、Gemini CLI 可完整访问 MCP 工具(搜索、保存、决策、图谱),但需要手动触发交接。我们正在为更多编辑器开发自动交接支持。

MCP 服务

工具功能
search_notes在你的知识库中进行语义搜索
search_notes_filtered按领域/标签/Agent 筛选并搜索
search_across_vaults在多个知识库中进行联合搜索
get_note按路径读取完整笔记内容
find_similar_notes查找相关笔记
get_session_context固定的笔记 + 最新交接内容 + Git 状态
recent_activity最近修改的笔记
save_note创建或更新笔记
save_decision记录结构化的项目决策
create_handoff编写会话交接内容
reindex重新扫描并为知识库建立索引
index_stats索引健康状态和统计信息
mem_consolidate通过大模型整合相关笔记
mem_brief生成引导简报
mem_health分析信任状态并检查知识库健康情况
mem_forget在搜索结果中隐藏一条笔记
mem_restore撤销 mem_forget(取消隐藏一条笔记)
mem_list_suppressed列出已隐藏的笔记
save_kaizen记录带有来源信息的改进事项

SeedVaults

预构建的知识库。一条命令即可安装。

same seed list                              # browse available seeds
same seed install claude-code-power-user    # install one
种子库笔记数内容
same-getting-started18了解 SAME 本身 — 通用入门指南
claude-code-power-user50Claude Code 工作流和操作模式
ai-agent-architecture56Agent 设计、编排和记忆策略
api-design-patterns56REST、GraphQL、身份验证、速率限制等
typescript-fullstack-patterns55全栈 TypeScript 模式和最佳实践
engineering-management-playbook59工程领导力和团队管理
personal-productivity-os117GTD、时间分块和习惯体系
security-audit-framework61安全审查清单和框架

还有 9 个。 在 GitHub 上浏览全部 17 个种子库。

隐私

所有数据都保留在你的机器上。SAME 创建了三级隐私结构:

目录已索引已提交用途
你的笔记是由你决定文档、决策、研究
_PRIVATE/否否API 密钥、凭据
research/是否策略、分析

无遥测。无云服务。已阻止路径遍历。配置文件仅允许所有者访问。

更多

完整 CLI 参考
命令说明
same init为你的项目设置 SAME
same demo通过示例笔记了解 SAME 的运行方式
same tutorial7 个实践课程
same ask <question>提问并获取带引用的答案
same search <query>搜索你的笔记
same search --all <query>搜索所有知识库
same status查看 SAME 正在跟踪的内容
same doctor运行诊断检查
same claim <path> --agent <name>为多 Agent 提供建议性的文件所有权管理
same pin <path>在会话中始终包含某条笔记
same graph stats知识图谱诊断
same web本地 Web 控制面板
same seed list浏览可用的种子知识库
same seed install <name>安装种子知识库
same vault list|add|remove|default管理多个知识库
same guard settings set push-protect on启用推送保护
same consolidate将相关笔记合并为知识摘要
same briefAI 生成的概览简报
same health知识库健康评分,包含信任度/溯源分析
same stale列出知识库中的所有过时笔记
same search --trust stale按信任状态筛选搜索结果
same search --type decision按内容类型筛选搜索结果
same ignore查看/管理 .sameignore 规则
same facts查看、搜索和管理提取的事实
same config set <key> <value>从 CLI 设置配置值
same brief --no-llm不使用 LLM 生成结构化简报
same tips知识库整理与安全最佳实践
same reindex [--force]重建搜索索引
same repair备份并重建数据库
same update更新到最新版本
same completion [bash|zsh|fish]Shell 补全
配置

SAME 使用由 same init 生成的 .same/config.toml:

[vault]
path = "/home/user/notes"
handoff_dir = "sessions"
decision_log = "decisions.md"

[embedding]
provider = "ollama"           # "ollama", "openai", "openai-compatible", or "none"
model = "nomic-embed-text"

[memory]
max_token_budget = 800
max_results = 2

支持的嵌入模型:nomic-embed-text(默认)、snowflake-arctic-embed2、mxbai-embed-large、all-minilm、text-embedding-3-small(OpenAI)等。

配置优先级(从高到低):CLI 标志 > 环境变量 > 配置文件 > 默认值

其他安装选项
# Docker
git clone --depth 1 https://github.com/sgx-labs/statelessagent.git
cd statelessagent && docker build -t same .

# Build from source (requires Go 1.25+)
git clone --depth 1 https://github.com/sgx-labs/statelessagent.git
cd statelessagent && make install
故障排除

先运行 same doctor——它会执行 20 多项检查,并告知你问题所在。

“No vault found”——在笔记文件夹中运行 same init,或设置 VAULT_PATH=/path/to/notes。

“Ollama not responding”——SAME 会自动回退到关键词搜索。使用 curl http://localhost:11434/api/tags 进行测试。

钩子未触发——运行 same setup hooks 重新安装。使用 same status 验证。

数据库问题——运行 same repair 进行备份并重建。

SAME 与其他方案的比较 | | SAME | mem0 | Letta | CLAUDE.md | |---|:---:|:---:|:---:|:---:| | 安装 | 1 条命令 | pip + 配置 | pip 或 Docker | 编辑文件 | | 运行时依赖 | 无 | Python + 向量数据库 | Python + SQLAlchemy | 无 | | 离线使用 | 完全支持 | 默认不支持 | 使用本地模型 | 支持 | | 是否需要云服务 | 否 | 默认需要 | 否 | 否 | | 遥测 | 无 | 默认开启 | 支持 | 无 | | MCP 工具 | 19 | 9 | 仅客户端 | 不支持 | | 记忆完整性 | 来源追溯 + 信任 | 无 | 无 | 无 | | 知识图谱 | 内置 | 需要 Neo4j | 无 | 无 | | 跨工具记忆 | 支持 | 仅 API | 不支持 | 仅 Claude | | 可在 Pi 上运行 | 支持(约 14MB) | 不支持 | 不支持 | 支持 |
评估方法

在 105 个调优用例上进行内部评估。留出验证集:在 30 个盲测用例上,Recall@5 达到 93.3%(参见 eval/METHODOLOGY.md)。

指标数值数据集
Recall@5(关键词)100%内部(68 个用例)
Recall@5(语义)84%内部(68 个用例)
MRR(关键词)0.65内部(68 个用例)
Recall@590%留出集(30 个盲测用例)

所有评估均使用合成知识库数据。未使用任何用户数据。

链接

参与贡献

欢迎贡献。提交问题或发起讨论。

git clone https://github.com/sgx-labs/statelessagent.git
cd statelessagent
make build && make test

安全相关报告请参阅 SECURITY.md。

支持

请我喝杯咖啡 | GitHub Sponsors

许可证

BSL 1.1。可免费用于个人、教育、爱好、研究和评估用途。将于 2030-02-02 转为 Apache 2.0。请参阅 LICENSE。


README 配图

评论

支持 Markdown

第一次接触 MCP?

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

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