Claude Code 和 Cursor 总是记不住项目上下文?用 OpenKnowledge 给 AI Agent 建一个「持久知识库」
用 AI Agent 写代码时,你大概率遇到过这个问题:Claude Code 或 Cursor 刚理解完项目结构,切个会话就忘了;上次写过的架构决策,这次又得从头解释。这不是 AI 的能力问题,而是 Agent 没有「长期记忆」——每个新会话都是一张白纸。
市面上已有的方案要么太重(Notion、Obsidian 上的插件),要么需要自建服务。OpenKnowledge 走了一条不同的路:一个原生 AI Agent 的 Markdown 知识库编辑器,让 Claude Code、Cursor、Codex 通过 19 个 MCP 工具直接读写你的知识库,而底层只有纯 Markdown 文件和 git。
三个层面:编辑器 + MCP 引擎 + 纯 Markdown
OpenKnowledge 的核心架构分三层:
- Layer 1 — 编辑器:WYSIWYG 的 Markdown 编辑器,支持 Callout、手风琴、标签页、Mermaid 图表、图片/视频嵌入,体验类似 Notion
- Layer 2 — MCP 知识引擎:暴露 19 个工具给 AI Agent,让 Agent 能搜索、读写、组织知识库
- Layer 3 — 纯 Markdown 文件:你的内容就是磁盘上的
.md文件,git 版本控制,没有任何专有数据库或锁
这意味着你随时可以用 vim 或任何编辑器修改文件,Agent 也能操作,两者不会冲突。没有 lock-in,你的知识就是可移植的 Markdown。
5 分钟上手
macOS 用户:直接下载桌面 App,打开后点击「Create New Project」即可。
Linux/Windows/Intel Mac 用户:全局安装 CLI:
npm install -g @inkeep/open-knowledge cd my-project ok init ok start --open
ok init 会自动配置 Claude Code、Cursor、Codex 和 OpenCode 的 MCP 集成,还会为项目创建一个知识库骨架。ok start --open 在浏览器中启动编辑器。
如果你只想打开一个单文件,不需要完整项目:
ok notes.md
这会在临时会话中打开一个独立 Markdown 文件,用完即弃。
AI Agent 的 19 个知识工具
OpenKnowledge 的 MCP 服务器是核心亮点。它向 AI Agent 暴露了 19 个工具,分为读写两大类:
读取工具
exec— 读类 shell 操作(cat、ls、grep、find、head、tail),直接对磁盘操作,无需编辑器在线search— 全工作区排名搜索(标题加分 + BM25 全文 + 时效性),可选开启语义搜索links— Wiki 链接图:反向链接、正向链接、孤立页面、枢纽页、建议链接history— 文档版本时间线,每个版本包含 commit SHA,可用来恢复skills— 查找和读取 AI 技能(tasks)config— 读取合并后的配置(Project + User + Local 三级级联)palette— Markdown 原生创作模板和主题 tokenpreview_url— 获取编辑器可访问的完整预览 URL
写入工具
write— 创建或覆盖文档、文件夹、模板或资源。可指定replace(全量重写)、append(追加)或prepend(前置)。从模板实例化:write({ document: { path, template } })edit— 文档的 find/replace 编辑,或 frontmatter 的 JSON Merge Patchdelete— 删除文档、文件夹、模板或资源(支持批量)move— 移动或重命名文档/文件夹/资源,自动重写所有受影响的内链install— 将创作的 Skill(Draft)安装到编辑器(Draft → Installed 流程)checkpoint— 创建项目级别的版本快照restore_version— 恢复文档到某个历史版本conflicts/resolve_conflict— 检测和解决 GitHub 同步的合并冲突workflow— 流程指南:ingest(捕获来源)、research(调研并撰写初步结果)、consolidate(将调研成果提升为正式文档)、discover(引入现有仓库)
输出保持对称
OpenKnowledge 的写入工具返回值结构与输入保持对称:write({ folder }) 返回 { folder: { ok, path } },edit({ document }) 返回 { document: { … } }。所有工具还在顶层统一返回 previewUrl,Agent 可直接打开预览。
冲突感知写入
每个修改工具(write、edit、delete、move、restore_version)都会拒绝修改处于 GitHub 冲突状态的文档。Agent 需要先通过 conflicts 检测冲突文件,再用 resolve_conflict 选择 mine、theirs、content 或 delete 来解决。
实际使用场景
场景一:团队 LLM Wiki
创建一个 LLM 主题的知识库,Agent 自动扩展和更新内容:
→ 在编辑器中输入 "Create a knowledge base about Large Language Models" → Agent 调用 OpenKnowledge 的 write 工具,创建 overview 页面和多个概念页面 → 团队成员通过 GitHub 同步协作 → 新成员入职时,Agent 通过 search 工具直接检索已有知识,无需重复解释
场景二:架构决策文档(ADR)
每次 Agent 做一个重要架构决策,自动记录到知识库:
→ Agent 修改代码后,调用 write({ document: { path: "decisions/api-strategy.md", content } })
→ 编辑器右下角出现 Agent 的活动图标,点击可查看每次修改的 diff
→ 团队成员打开编辑器就能看到历史的决策演变
场景三:项目运行手册自动化
将项目的配置、部署流程、排错指南组织成结构化知识库,Agent 在后续开发中自动调用 search 来参考已有规范,不会因为换会话就忘记之前的约定。
Git 同步与团队协作
OpenKnowledge 的团队同步直接基于 git/GitHub——无需额外的数据库或同步服务。编辑器内置了「一键同步」功能,背后就是 git push。GitHub 上的冲突也可以通过 conflicts 和 resolve_conflict 工具在 Agent 工作流中处理。
开源与授权
OpenKnowledge 采用 GPL-3.0-or-later 许可证,GitHub 上已有 1659 颗星(截至 2026 年 7 月)。项目活跃维护,社区有 Discord 和 𝕏 账号。你可以放心将其用于个人知识管理和团队协作。
总结
OpenKnowledge 解决的问题很具体:AI Agent 需要长期记忆,而很多人用 Notion/Obsidian 搭建知识库时发现 Agent 难以直接集成。它通过 MCP 协议的 19 个工具让 Agent 能像人类一样读写知识库,同时保证底层的 Markdown 文件始终可访问、可移植。
如果你正在用 Claude Code、Cursor 或 Codex,并且厌倦了每个新会话都要重复解释项目背景,不妨试试 OpenKnowledge——一小时内就能搭好你的 AI 知识库。
相关链接