2026年6月26日 1 分钟阅读

当 AI 编码 Agent 需要知识库:OpenKnowledge 开源方案让 AI 助手拥有持久记忆

tinyash 0 条评论

每次用 Claude Code 重构一个模块时,它都不记得上周你写的架构决策文档。每次让 Cursor 处理一个新功能,都要重新解释项目约定和代码规范。AI 编码 Agent 确实强大——但它们没有长期记忆。每个新会话都是一次”失忆”重启。

这个问题在团队协作中更明显:Agent A 今天写的分析文档,Agent B 明天完全不知道。项目知识散落在对话历史里,既不可搜索也无法版本管理。

OpenKnowledge 正是为解决这个问题而生——一个开源的、AI Agent 原生的 Markdown 知识库,让你的 AI 编码助手拥有可读写、可版本控制的持久记忆。

痛点对比:当 Agent 需要知识库

维度传统方案(Obsidian/Notion)OpenKnowledge
MCP 集成无,Agent 无法直接读写17 个 MCP 工具,Agent 原生读写
Agent 活动记录不追踪每次 Agent 编辑都有记录和回滚
版本管理付费功能或手动管理Git 原生,带时间线恢复
安装复杂度独立应用,需导出导入一行命令集成到现有项目
价格免费版有限制 / 付费订阅开源免费(GPL-3.0)
文件锁定专有格式 / 半开放纯 Markdown,编辑器无关

快速上手:五分钟让 Agent 拥有知识库

前提:Node.js 24+(或 macOS 用户直接下载桌面应用)。

npm install -g @inkeep/open-knowledge

cd your-project
ok init

ok start --open

ok init 会自动为 Claude Code、Cursor、Codex 配置 MCP 集成。你只需要打开浏览器中的编辑器,就能看到项目的 Markdown 文件树。

第一次打开项目时,在 Cursor 中批准 open-knowledge MCP 服务器即可。之后 AI Agent 就能通过 MCP 工具读写知识库。

三层架构:为什么这是正确的设计

OpenKnowledge 的核心架构是三层分离:

Layer 1 — 编辑器:面向人类的 WYSIWYG Markdown 界面,支持 Mermaid 图表、LaTeX 公式、YouTube 嵌入、Callout 块、折叠区块等丰富内容。支持源模式切换。

Layer 2 — 知识引擎(MCP):薄薄的 MCP 包装层,向外暴露 17 个工具。Agent 通过这个层读写所有文档,每次操作自动维护 frontmatter、backlinks 和编辑历史。

Layer 3 — 文件系统:最底层就是纯 Markdown 文件,版本控制在 Git 中。没有独立数据库,没有专有格式,无需数据迁移。

这个设计的精妙之处在于:你始终可以直接在终端里用 catgrepvim 操作文件,完全绕开编辑器。没有任何锁定——你可以随时从编辑切换到命令行,或者反过来。

Agent 如何读写知识库:17 个 MCP 工具

OpenKnowledge 的核心价值在于它的 MCP 接口。Agent(Claude Code、Cursor、Codex 等)通过这些工具像操作数据库一样读写知识库:

读取类

  • exec — 在文件系统上执行只读 shell 命令(catlsgrepfindhead 等),同时返回 frontmatter 和 backlinks
  • search — 全文搜索(BM25 + 标题权重 + 时间衰减,可启用语义搜索)
  • links — Wiki 链接图查询(反向链接、正向链接、孤立页面、枢纽页面)
  • history — 文档版本时间线
  • config — 读取合并配置

写入类

  • write / edit / delete — 对 document、folder、template、asset 的 CRUD 操作
  • move — 移动/重命名文件并重写所有受影响的链接
  • checkpoint — 创建项目级快照
  • restore_version — 恢复到历史版本

协作类

  • share_link — 生成基于 Git 的分享链接
  • conflicts / resolve_conflict — 读取和解决 Git 同步冲突

这个接口设计保证了 Agent 的所有操作都经过一致性检查——links 和 backlinks 自动维护,不会出现悬空引用。

Agent 活动追踪:谁改了什么,一目了然

在实际使用中,最实用的功能之一是 Agent Activity 面板。

当 Claude Code 或 Cursor 通过 MCP 修改文档时,编辑器顶部会出现该 Agent 的头像图标。点击即可查看当前会话中 Agent 修改的所有文件列表,每个文件展开后能看到逐次编辑的增删行数和 diff。Agent 会话未结束时,可以直接撤销任意一次编辑。

如果 Agent 会话已经结束,时间线(Timeline) 功能保留了完整的编辑历史——包括人类编辑、Agent 编辑、Git 同步、乃至文件系统外部修改。每条记录都有 contributor 归属和变更摘要,支持 unified/split diff 两种视图。恢复操作是 append-only 的,不会删除历史。

这种设计特别适合”Agent 写 → 人类审”的工作流:让 Agent 自由探索和编辑,你通过活动面板和时间线审核每处变更。

LLM Wiki 与 Entity Vault 两种工作流

OpenKnowledge 内置了两个预配置工作流:

Karpathy 式 LLM Wiki:以文档为中心的知识管理,适合项目文档、技术笔记、API 参考。文档之间通过 [[Page]] Wiki 链接语法互联,自动维护 backlinks。

Entity Vault(GBrain 兼容):以实体为中心的知识管理,追踪人物、公司、会议、概念。每个实体分为”已确认事实”和”时间线证据”两部分。这种结构与 Garry Tan 的 gbrain 工具兼容——你可以在 OpenKnowledge 中编辑,在 gbrain 中做向量检索和图索引。

通过 ok seed --pack entity-vault 即可生成标准目录结构。

横向对比

特性OpenKnowledgeObsidianNotion纯 Git Wiki
开源✅ GPL-3.0
MCP Agent 集成✅ 原生
本地优先
实时协作✅ CRDT
Agent 活动追踪
版本时间线✅ Git + 增强✅ 插件✅ Git

注意事项

  • Node.js 24+ 是硬性要求,早期版本无法通过 engines 检查
  • Windows 暂不支持桌面应用和 CLI(官方文档标注)
  • 知识引擎对 Agent 的操作会经过一致性校验,但手动编辑的文件不会触发 backlinks 更新——需要用 MCP 工具或编辑器进行修改
  • 语义搜索需要 opt-in 启用,因为涉及内容外传
  • 目前项目处于早期阶段(GitHub 24 stars),文档和 API 可能随版本变化

总结

OpenKnowledge 解决了 AI 编码 Agents 的一个核心痛点——缺乏持久记忆和协作上下文。通过将知识库设计为普通的 Markdown 文件 + Git + MCP 接口的三层架构,它在开放性和智能性之间找到了一个很好的平衡点。

如果你的工作流中频繁使用 Claude Code、Cursor 或 Codex,并且希望它们能记住项目上下文、维护技术文档、或者参与知识库写作,OpenKnowledge 值得一试。只要你的环境满足 Node.js 24+,从 npm install 到让 Agent 第一次读写知识库,只需五分钟。

相关链接

发表评论

你的邮箱地址不会被公开,带 * 的为必填项。