关于 Basic Memory
Basic Memory 是一个为 AI 对话提供持久记忆的 MCP 服务。知识以 Markdown 文件形式保存在本地或云端,AI 与用户都可以读写和搜索,适合希望跨会话保留项目上下文的用户。
主要功能
- 01以 Markdown 文件保存本地优先的知识
- 02AI 与人工可双向读写并同步
- 03基于观察和双向链接的知识图谱
- 04按语义而非关键词搜索笔记
- 05工具带有只读、破坏性等行为提示
- 06可选的云端托管与跨设备同步
适用场景
- 01跨会话保存项目背景,无需重复说明
- 02记录学习笔记和工作日志并随时检索
- 03在 Obsidian 等工具中查看 AI 写入的笔记
MCP 相关
Basic Memory 作为 MCP 服务运行,向 Claude、Cursor、VS Code 等 MCP 客户端提供笔记的读取、写入与搜索工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
21收录的工具列表 · 更新于 3 周前
此工具无需参数。
详细介绍
跳过安装——在云端试用 Basic Memory
连接 Claude、Codex 或 Cursor,只需 30 秒。无需 Python、JSON 或
终端。每月 $15.00,终身锁定(按年付费每月 12.50)。免费试用 7 天——
如果不适合你,可在第 7 天前随时取消。Beta 定价——
现在注册,价格永不上涨。OSS 用户:使用代码 BMFOSS,可再享 3 个月 8 折优惠。
Basic Memory Teams 现已上线!
为团队提供一个共享的云工作区。知识不再局限于一个人——团队成员撰写的内容会立即提供给其他所有人及其 AI 助手。 实时共同编辑笔记,在人和 Agent 之间交接工作,并构建一个互联的知识库,而不是散落各处的副本。定价不变——从一个用户开始,并可按需添加更多用户。
Basic Memory
让你的 AI 永不遗忘。
无论使用 Claude、Codex、Cursor、ChatGPT,还是任何支持 MCP 的工具, 都能从上次中断处继续。你的知识以 Markdown 文件的形式保存,你和 AI 都可以读取、写入和 搜索。
- 本地优先。 磁盘上的纯文本,永久保存。
- 双向协作。 AI 和人类写入相同的文件;同步让双方保持一致。
- 真正的知识图谱。 观察记录和 Wiki 链接不断累积,形成上下文。
- 语义搜索。 按含义而非仅按关键词查找笔记;还可选择使用 交叉编码器重排序,以获得更高质量的向量和混合搜索结果。
- 原生支持 MCP。 适用于所有主流 AI 客户端和 IDE。
- 渐进式工具发现。 每个工具都标注了行为提示 (只读、破坏性、幂等),让 Agent 能按需选择合适的工具——无需浪费上下文尝试操作来了解工具用途。
- 云端,按需启用。 想要时可跨设备同步——但绝非必需。
开始使用
选择适合你的方式。两种方式运行的都是同一款产品,处理的也都是同一份 Markdown。
| ☁️ 云端 | 💻 本地安装 |
|---|---|
|
30 秒。 注册账号,连接 AI 客户端,完成。
每月 $15.00,终身锁定价格 · 免费试用 7 天 · 随时取消 |
2 分钟。 安装、配置 AI 客户端,然后运行。
必须使用 对于在 Postgres 部署中使用 Milvus 存储语义向量的情况,请安装官方提供的可选扩展:
|
用户评价
Basic Memory 改变了我与大模型相处的方式。因为这项集成,我从 GPT 和 Gemini 转而只用 Claude 和 Claude Code,并正在围绕 Basic Memory 工作流,全面改造我们公司的流程。
— Alex,TrainerDay
Basic Memory 补上了 AI 聊天机器人的缺失一环,带来了“哇”的感觉。现在我已经无法想象没有它的 Claude 或 Claude Code 了。
— Caleb,Caleb Picker Consulting
现在我写代码已经离不开 Basic Memory 了。能够查阅当前没有在进行的项目,并持续记录所有心得和实用技巧,实在节省了很多时间。
— @groksrc,开发者
更多信息请访问 basicmemory.com。
Basic Memory 云端版
Basic Memory 的托管版本。产品相同、Markdown 文件相同、MCP 工具相同——只是由我们托管数据库、运行同步,并让你在手机上使用。
你将获得
- 所有设备,共享同一大脑。 在网页端、移动端和桌面端访问你的知识图谱。无需在不同设备间复制粘贴。
- 连接任何 MCP 客户端。 Claude Desktop、Claude Code、Codex、Cursor、ChatGPT(Custom GPTs)、VS Code——在网页应用中一键连接。
- 与本地双向同步。 在手机上编辑,笔记本电脑上的 Obsidian 中即可查看。由 rclone 驱动,并提供冲突解决功能。
- 快照和备份。 可恢复到特定时间点。浏览历史记录。再也不会丢失笔记。
- 没有锁定。 你的笔记都是纯 Markdown。随时导出为本地 Markdown——文件相同、格式相同、维基链接也相同。随时取消,数据始终归你所有。
基于 WorkOS AuthKit、Neon Postgres 和 Tigris S3 构建。
定价
每月 $15.00,订阅期间价格始终不变(常规价格为 $19)。在测试期间注册,价格永不上涨——只要你持续订阅,就能保留此价格。一个套餐,无等级之分,没有意外升级。笔记数量不限、项目数量不限,所有功能均可使用。
- 免费试用 7 天。如果不适合你,可在第 7 天前随时取消。
- 之后也可随时取消——想什么时候导出笔记都可以。
- 开源用户:使用代码
BMFOSS,可再享 3 个月 8 折优惠(约 $11.40/月)。
云端与本地
| 云端 | 本地 | |
|---|---|---|
| 设置时间 | 30 秒 | 2 分钟(需要 Python) |
| 费用 | $15.00/mo,终身锁定(7 天试用) | 免费 |
| 存储 | 我们托管(Tigris S3) | 你的磁盘 |
| 跨设备同步 | 内置 | 手动(Git、Syncthing 等) |
| 移动端访问 | 支持(网页 + 应用) | 不支持 |
| 隔离网络环境 | 不支持 | 支持 |
| 你的数据归你所有 | 是 — 可随时导出 | 是 — 数据已在本地 |
| 源代码 | AGPL-3.0 | AGPL-3.0 |
| 快照与备份 | 内置 | 自行配置 |
两种方式使用相同的开源引擎和相同的 Markdown 文件。无论选择哪种方式,都不会被锁定 — 需求变化时可随时切换。
兼容你已在使用的工具
| 客户端 | 传输方式 | 备注 |
|---|---|---|
| 云端 Web 应用 | https | 在 basicmemory.com 登录 — 无需安装 |
| Claude Desktop | stdio/https | macOS / Windows / Linux |
| Claude Code | stdio/https | claude mcp add |
| Codex | stdio/https | OpenAI 的编码 Agent |
| Cursor | stdio/https | .cursor/mcp.json |
| VS Code | stdio/https | 原生支持 MCP |
| ChatGPT | https | 自定义 GPT 操作(search / fetch) |
| Obsidian | — | 直接读取 / 写入相同的 Markdown 文件 |
| 任何 MCP 工具 | stdio/https | 只要支持 MCP,就能使用 |
官方 Agent 软件包
此仓库也是 Basic Memory 原生宿主 Agent 软件包的权威发布源。核心 Python 软件包、Claude Code 插件、共享技能、Hermes 插件和 OpenClaw 插件都来自同一源代码树。
维护者可以在仓库根目录验证整个整合后的组件:
just package-check
在单个宿主环境中工作时,也可以使用各软件包目录下的 justfile:
just package-check-claude-code
just package-check-skills
just package-check-hermes
just package-check-openclaw
Claude Code 插件
Claude Code 插件是 Claude 工作记忆与 Basic Memory 之间的桥梁 — 提供会话开始简报、压缩前检查点、可选启用的捕获输出风格,以及 /basic-memory:bm-setup · :remember · :share · :status。
请先连接 Basic Memory MCP 服务 — 参见连接你的 AI 客户端。插件的钩子和技能会调用该服务,因此这是必需的前置条件。然后安装插件:
bm install claude-code
这会注册市场并通过 Claude Code 安装插件。添加 --scope project,即可在仓库的设置中声明两者,供团队使用;添加 --dry-run,则可查看底层的 claude plugin 命令而不实际运行。
源代码:plugins/claude-code。
共享技能
与框架无关的 SKILL.md 文件位于 skills/。如果你的 Skills CLI 支持从仓库子目录获取资源:
npx skills add basicmachines-co/basic-memory/skills -g
对于 Claude 和 ChatGPT,请从 skills-latest 版本下载 basic-memory.zip 或 basic-memory-chatgpt.zip 并上传;详情参见 skills/README.md。
如果你安装的 Skills CLI 无法加载该来源,请更新 CLI,或将 skills/ 中的 memory-* 目录复制到 Agent 的技能目录。
Hermes
Hermes 在 integrations/hermes 中保留其原生插件结构:
hermes plugins install basicmachines-co/basic-memory/integrations/hermes
Hermes 不会安装插件的 Python 依赖,因此还要将 mcp 软件包添加到 Hermes 虚拟环境中 — 具体步骤和支持的 Hermes 版本请参见插件 README。
OpenClaw
OpenClaw 保持软件包原生形态,并从 integrations/openclaw 发布:
openclaw plugins install @basicmemory/openclaw-basic-memory
从上次中断处继续
https://github.com/user-attachments/assets/a55d8238-8dd0-454a-be4c-8860dbbd0ddc
连接你的 AI 客户端
如果你选择了云端方式,Web 应用会引导你连接客户端。以下代码片段适用于本地安装。
Claude Desktop
编辑 ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"basic-memory": {
"command": "uvx",
"args": ["--prerelease=allow", "basic-memory", "mcp"]
}
}
}
重启 Claude Desktop。默认情况下,笔记位于 ~/basic-memory。
Claude Code、Codex CLI、Cursor、VS Code、ChatGPT、Obsidian
Claude Code
claude mcp add basic-memory -- uvx --prerelease=allow basic-memory mcp
如需完整的记忆桥接功能——会话简报、上下文压缩前检查点,以及
/basic-memory:* 命令——还需在此基础上安装 Claude Code
插件。
Codex CLI
添加到 ~/.codex/config.toml:
[mcp_servers.basic-memory]
command = "uvx"
args = ["--prerelease=allow", "basic-memory", "mcp"]
Codex 可以保留默认的 MCP 审批行为;或者,你也可以在同一配置表中添加此服务器范围的设置,预先批准符合条件的 Basic Memory 工具:
[mcp_servers.basic-memory]
command = "uvx"
args = ["--prerelease=allow", "basic-memory", "mcp"]
default_tools_approval_mode = "approve"
这不会全局禁用 Codex 审批,也不会扩大服务器可访问的 Basic Memory 项目范围。对于声明了破坏性注释的工具(包括 Basic Memory 的写入、编辑和删除工具),Codex 仍要求审批。如果你安装了 Basic Memory Codex 插件,请改用其插件范围配置。
Cursor
添加到 .cursor/mcp.json(项目级)或 ~/.cursor/mcp.json(全局):
{
"mcpServers": {
"basic-memory": {
"command": "uvx",
"args": ["--prerelease=allow", "basic-memory", "mcp"]
}
}
}
VS Code
添加到用户设置(JSON):
{
"mcp": {
"servers": {
"basic-memory": {
"command": "uvx",
"args": ["--prerelease=allow", "basic-memory", "mcp"]
}
}
}
}
ChatGPT
Basic Memory 为自定义 GPT 操作提供兼容 OpenAI 的 search 和 fetch 工具。请参阅 ChatGPT 集成
指南。
Obsidian
无需设置。让 Obsidian 指向 ~/basic-memory(或你的项目文件夹),AI 写入的相同 wikilink、frontmatter 和 Markdown 就会显示在图谱视图中。编辑任一端即可,其余工作由同步完成。
试试这个提示词:
"Create a note about our project architecture decisions."
"Find information about JWT auth in my notes."
"What have I been working on this week?"
最新动态
- 自动更新。 Basic Memory 会为
uv tool和 Homebrew 安装自动保持最新;bm update可触发手动检查。 - 语义向量搜索。 按含义而非仅按关键词查找笔记。使用 FastEmbed 嵌入,在 SQLite 或 Postgres 上进行全文与向量混合排序。
- 可选搜索重排序。 使用本地 FastEmbed 交叉编码器或由 LiteLLM 支持的提供方,对最相关的向量及混合搜索候选结果重新评分。
- 架构系统。 使用
bm_schema(command="infer")、bm_schema(command="validate")和bm_schema(command="diff")推断、验证知识库的结构并比较差异。 - 按项目进行云端路由。 通过 API 密钥(
bm project set-cloud)将单个项目路由到云端,同时让其他项目保持本地运行。 - 明确的笔记变更。
bm_edit更新现有笔记;bm_write创建笔记并防止意外覆盖。 - 更丰富的搜索结果。 包含匹配的文本块,让大模型获得上下文,而不只是命中结果。
- FastMCP 3.0 + 工具注释。 每个工具都附带 MCP 行为提示(
readOnlyHint、destructiveHint、idempotentHint、openWorldHint),让 Agent 能在运行时逐步发现功能,而无需猜测或浪费令牌。 - CLI 全面改版。 支持用于脚本处理的
--json输出、感知工作区的命令,以及受 htop 启发的项目仪表板。
查看 v0.18 → v0.20 的完整 CHANGELOG。
可选的交叉编码器重排
重排会在向量检索或混合检索后,再进行一轮相关性排序。默认情况下,此功能处于禁用状态,因为它会增加推理延迟,而且使用本地提供方时,首次运行还会下载模型。文本、标题和永久链接搜索仍沿用现有排序。
启用默认的本地 FastEmbed 重排器:
export BASIC_MEMORY_RERANKER_ENABLED=true
默认模型为 jinaai/jina-reranker-v1-tiny-en。若要改用通过 LiteLLM 接入的托管重排器,请先安装可选的 LiteLLM
SDK,然后进行配置:
export BASIC_MEMORY_RERANKER_ENABLED=true
export BASIC_MEMORY_RERANKER_PROVIDER=litellm
export BASIC_MEMORY_RERANKER_MODEL=cohere/rerank-v3.5
export COHERE_API_KEY=...
如果配置无效,此功能会立即失败;启用的提供方发生故障时,不会静默退回检索顺序。有关提供方设置、全部配置项、调优、分页和故障行为,请参阅语义搜索指南。
为什么选择 Basic Memory
大多数大模型对话都是短暂的。你提出问题,得到答案,然后一切都被遗忘。变通方案各有局限:
- 聊天记录会保存对话,但并非结构化知识。
- RAG让大模型能够查询文档,却无法将内容写回文档。
- 向量数据库需要复杂的基础设施,而且通常托管在他人的云端。
- 知识图谱需要专用工具来维护。
Basic Memory 采用更简单的方式:结构化 Markdown 文件,人类和大模型都能读写。
- 所有知识都保存在由你掌控的纯文本文件中。
- 双方都读写同一批文件。
- 熟悉的 Markdown 搭配语义模式,无需学习新格式。
- 可遍历的图谱,大模型可以逐个链接地跟进。
- 兼容你已有的编辑器(Obsidian、VS Code 等)。
- 只需文件和本地 SQLite 索引,无需服务器。
工作原理
你正在像平常一样聊咖啡:
我一直在尝试不同的冲煮方式。手冲比法压壶更能凸显清晰风味,水温 205°F 左右似乎最好,而现磨咖啡豆的影响非常大。
让大模型记录下来:
“记一条关于咖啡冲煮方式的笔记。”
Markdown 文件会实时出现在你的项目目录中:
---
title: Coffee Brewing Methods
permalink: coffee-brewing-methods
tags: [coffee, brewing]
---
# Coffee Brewing Methods
## Observations
- [method] Pour over highlights subtle flavors over body
- [technique] Water at 205°F (96°C) extracts optimal compounds
- [principle] Freshly ground beans preserve aromatics
## Relations
- relates_to [[Coffee Bean Origins]]
- requires [[Proper Grinding Technique]]
- affects [[Flavor Extraction]]
下次会话中,大模型会接着之前的内容继续。它会沿着关联,找出你对埃塞俄比亚咖啡豆和锥刀磨豆机已有的了解,并在此基础上继续,而不是从头开始。你可以在 Obsidian 或其他编辑器中查看相同的文件。手动编辑这些文件,AI 也能看到你的修改。
真正的双向流转:人类编辑 Markdown,大模型通过 MCP 读写,同步机制确保内容一致,而事实来源始终是你的文件。
Markdown 格式
每个文件都是一个 Entity。Entity 包含 Observations(关于它的事实)和 Relations(指向其他 Entity 的链接)。这就是全部语法。
Frontmatter
---
title: <Entity title>
type: note
permalink: <uri-slug>
tags: [optional, list]
---
Observations
关于该 Entity 的事实。类别写在 [方括号] 中,标签以 # 开头,可选的上下文写在圆括号中。
- [method] Pour over highlights subtle flavors
- [tip] Grind medium-fine for V60 #brewing
- [fact] Lighter roasts contain more caffeine than dark
- [resource] James Hoffmann's V60 technique on YouTube
- [question] How does temperature affect compound extraction?
Relations
构成图谱的 Wiki 风格链接。关系类型可以是单个词,也可以为多词关系类型加上引号。
- pairs_well_with [[Chocolate Desserts]]
- grown_in [[Ethiopia]]
- requires [[Burr Grinder]]
- "pairs well with" [[Dark Chocolate]]
裸写的 - [[Target]] 和正文形式的 - Worth checking out [[Target]] 都会被索引为 links_to。完整说明请参阅文档。
MCP 工具
Basic Memory 向任何 MCP 客户端提供这些工具。每个工具都标注了 MCP 行为提示(只读、破坏性、幂等、开放世界),以便 Agent 无需反复试错即可选择合适的工具:
- 内容:
bm_write、bm_read、bm_edit、bm_move、bm_delete - 搜索与发现:
bm_search、bm_list、bm_find - 知识图谱:
bm_context - 项目:
bm_project(command="list" | "create" | "recent");bm_project_delete是独立工具,且需要服务端选择启用。 - 架构:
bm_schema(command="validate" | "infer" | "diff") - 手册:
bm_man - 云连接器适配器:
search和fetch仅由 Cloud 注册。 本地诊断请使用bm doctor。
大多数工具默认返回文本;bm_context 默认返回 JSON。传入
output_format="json" 可获取结构化响应。项目范围的工具接受名称、
workspace/project 或通过 project 传入的外部 UUID。
请使用 bm_man(page="bm-search(3)") 查看已安装版本的规范,或参阅
工具指南。CLI 命令保留其 shell 名称。
CLI 基础
# Projects
basic-memory project list
basic-memory project add research ~/research
basic-memory project set-cloud research # route through cloud
basic-memory project set-local research # revert
# Config
basic-memory config list # all settings, effective values, env overrides
basic-memory config set cli_output_style plain # validated through the config model
basic-memory config unset cli_output_style # revert to default
# Health & maintenance
basic-memory status
basic-memory doctor # report project problems and the commands that fix them
basic-memory tool edit ... # CLI access to MCP tools
basic-memory update # check for and install updates
# Imports
basic-memory import claude conversations
basic-memory import chatgpt
basic-memory import memory-json
在混合模式下,路由标志(--local / --cloud)可强制指定目标。完整 CLI 参考请见
文档。
自动更新
默认情况下,CLI 安装每 24 小时检查一次更新,并静默应用更新 (以确保 MCP 服务持续响应)。
- 支持的安装来源:
uv tool、Homebrew uvx不支持(由 uv 管理的临时运行时)- 手动操作:
bm update(检查并应用)或bm update --check(仅检查)
在 ~/.basic-memory/config.json 中禁用:
{ "auto_update": false }
遥测
收集最少的匿名事件,以了解 CLI 到云端的转化漏斗。
我们会收集: 云端推广内容的展示次数、云端登录尝试及结果、推广内容的选择退出事件。
我们不会收集: 文件内容、笔记标题、知识库数据、PII、IP 地址、按命令或工具进行的跟踪。
事件会通过后台线程发送到我们的 Umami Cloud 实例(开源且注重隐私)——不会阻塞 CLI。
选择退出:
export BASIC_MEMORY_NO_PROMOS=1
这会停用推广内容和所有遥测。
日志
Basic Memory 使用 Loguru。不同入口的默认设置有所不同:
| 入口 | 默认设置 | 原因 |
|---|---|---|
| CLI 命令 | 仅文件 | 不会干扰命令输出 |
| MCP 服务 | 仅文件 | 标准输出会破坏 JSON-RPC |
| API 服务 | 文件(本地)或标准输出(云端) | Docker/云端使用标准输出 |
日志文件:~/.basic-memory/basic-memory.log(10 MB 轮转,保留 10 天)。
环境变量
| 变量 | 默认值 | 说明 |
|---|---|---|
BASIC_MEMORY_LOG_LEVEL | INFO | DEBUG / INFO / WARNING / ERROR |
BASIC_MEMORY_CLOUD_MODE | false | API 日志使用带结构化上下文的标准输出 |
BASIC_MEMORY_FORCE_LOCAL | false | 强制本地 API 路由 |
BASIC_MEMORY_FORCE_CLOUD | false | 强制云端 API 路由 |
BASIC_MEMORY_EXPLICIT_ROUTING | false | 将路由选择标记为显式指定 |
BASIC_MEMORY_ENV | dev | 设置为 test 以启用测试模式(仅标准错误) |
BASIC_MEMORY_NO_PROMOS | false | 停用云端推广内容和遥测 |
BASIC_MEMORY_IMPORT_UPLOAD_MAX_BYTES | 104857600 | 导入文件的最大上传大小 |
BASIC_MEMORY_LOG_LEVEL=DEBUG basic-memory reindex
tail -f ~/.basic-memory/basic-memory.log
开发
Basic Memory 支持 SQLite(默认选项,速度快,无需 Docker)和 Postgres (通过 testcontainers,需要 Docker)。
just install # Install with dev dependencies
just test-sqlite # All tests, SQLite
just test-postgres # All tests, Postgres (testcontainers)
just test # Both backends
just fast-check # fix/format/typecheck + impacted tests
just doctor # File <-> DB consistency check (temp config)
just package-check # Claude Code, skills, Hermes, OpenClaw package checks
just lint
just typecheck # Pyright (primary)
just typecheck-ty # ty (supplemental)
just format
just check # All quality checks
just migration "msg" # New Alembic migration
测试使用 pytest 标记:windows、benchmark、smoke。完整列表请见
justfile。
欢迎贡献——请参阅 CONTRIBUTING.md。
许可证
由 Basic Machines 倾心打造 ♥️
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。