关于 gknowledge
gknowledge 是面向 GNOME 用户的本地优先 LLM Wiki 应用,可将文档整理成持续维护的 Markdown 链接页面。它支持离线使用、来源追溯和人工审核,也提供 MCP 服务供 Agent 搜索和更新 Wiki。
主要功能
- 01将文档增量整理为链接 Wiki
- 02基于页面生成带引用的回答
- 03离线运行或连接兼容端点
- 04以 Markdown 和 YAML 保存页面
- 05审核队列检查生成内容
适用场景
- 01把研究文档整理成可链接页面
- 02针对个人笔记提问并查看引用
- 03让 Agent 搜索和补充项目 Wiki
MCP 相关
gknowledge-mcp 向 MCP 客户端提供 Wiki 搜索、页面读取与列出、带引用提问、来源导入和近期活动查询。回答还可选择保存回 Wiki。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
gknowledge
English · 简体中文 · Italiano · Français · Português (BR) · Español
将 Karpathy 的 LLM Wiki 打造成原生 GNOME 应用。
导入文档,即可获得一个由大模型持续更新的关联 Wiki。
原生 GNOME 应用。默认离线,磁盘上采用纯 Markdown 格式,并兼容 Obsidian。
自由选择大脑:本地模型、任意兼容 OpenAI 的端点,或你自己的 ChatGPT 套餐。
离线引擎对 6 篇 AI 论文的实际输出(data/demo/papers),无需 API 密钥。
使用 make demo-svg 重新生成。
一行命令,适用于 Ubuntu 24.04+ 和 Debian 13+。 该命令会添加经过签名的 gknowledge APT 仓库,因此可通过 apt upgrade 获取更新(其他发行版采用按用户安装的方式):
curl -fsSL https://github.com/openapi/gknowledge/releases/latest/download/install.sh | bash
也可以自行添加 APT 仓库。 apt 还会一并安装 GTK 4、Libadwaita 和 PyGObject:
sudo curl -fsSLo /usr/share/keyrings/gknowledge.gpg https://openapi.github.io/gknowledge/gknowledge.gpg
sudo curl -fsSLo /etc/apt/sources.list.d/gknowledge.sources https://openapi.github.io/gknowledge/gknowledge.sources
sudo apt update && sudo apt install gknowledge
任何发行版均可通过 Flatpak 安装(GNOME 运行时来自 Flathub):
flatpak install --user https://openapi.github.io/gknowledge/io.github.openapi.Gknowledge.flatpakref
两个仓库的说明见 openapi.github.io/gknowledge。
然后从应用网格中打开 gknowledge。移除方法:sudo apt remove gknowledge(或 flatpak uninstall io.github.openapi.Gknowledge)。
其他发行版、源码安装和发行版构建
- Fedora、Arch 及其他发行版: 使用包管理器安装 PyGObject、GTK 4 和 Libadwaita,然后运行上面的一行安装命令。该命令会将应用安装到
~/.local,无需 root 权限。 - 从源码安装:
git clone https://github.com/openapi/gknowledge && cd gknowledge && make install。 - 单独下载文件: 每个版本的
.deb和 Flatpak 包都在 Releases 页面上,例如,下载 gknowledge_all.deb 后运行sudo apt install ./gknowledge_all.deb。
为什么选择 gknowledge
如果你用过 LLM Wiki、Tolaria、OpenKnowledge、Reor 或 Khoj,就已经熟悉这一流程:导入来源,让模型构建并维护一个 wiki,然后针对它提问。 gknowledge 以真正的 GNOME 应用的形式实现了同样的功能。
- 原生应用,不是网页视图。 使用 GTK 4 和 Libadwaita 构建,遵循 GNOME HIG。没有 Electron、Tauri 或浏览器引擎。
- 无需账号即可使用。 内置的启发式引擎可离线导入内容并回答问题。需要更好的综合能力时,再添加模型。
- 数据由你掌控。 内容采用带 YAML frontmatter 的 Markdown 格式,并配有易读的 SQLite 索引。可在 Obsidian 或任何编辑器中打开该文件夹。
- 有引用、可审核、渐进更新。 每个生成的页面都会记录其来源,回答会引用页面,审核队列则让你始终掌控全局。
熟悉的工作流
| 你从……了解到 | 功能 | 在 gknowledge 中的实现 |
|---|---|---|
| Karpathy's LLM Wiki、LLM Wiki | 导入:读取新来源,更新涉及的页面 | 已完成:包含来源追溯信息的两步提取 |
| Reor、Khoj | 提问:根据笔记回答问题并附上引用 | 已完成:词法搜索与图扩展、引用、已保存的回答 |
| LLM Wiki、OpenKnowledge | index.md 和 log.md、[[wikilinks]]、兼容 Obsidian 的知识库 | 已完成 |
| LLM Wiki、Tolaria | 审核 AI 的修改,然后再应用 | 审核队列已完成,Git diff 计划中 |
| Karpathy's LLM Wiki、OpenKnowledge | 检查:孤立页面、矛盾、过时页面 | 计划中 |
| LLM Wiki | 知识图谱、聚类、缺口 | 计划中 |
| Tolaria、OpenKnowledge、LLM Wiki | 供 Agent 读取和写入 wiki 的 MCP 服务 | 已完成:gknowledge-mcp |
| LLM Wiki | 网页剪藏工具、文件夹监视、深度研究 | 计划中 |
日期请参阅 ROADMAP.md,待办事项请参阅 TODO.md。
Karpathy 的 LLM Wiki,原生运行于 GNOME
2026 年 4 月,Andrej Karpathy 介绍了 LLM Wiki 模式:LLM 不再针对每个问题重新阅读原始文档,而是构建并维护一个随时间不断积累的持久化 Wiki。gknowledge 将其实现为一款桌面应用。
我们保留了什么
- 三层结构:不可变的
sources/、生成的knowledge/Wiki,以及用于告知引擎如何工作的设置。 - 两种操作:摄取(读取来源并更新相关页面)和查询(基于 Wiki 给出带引文的回答)。Lint 即将推出。
- 用
index.md作为目录,用log.md记录只追加、不修改的历史。 - 使用带有
[[wikilinks]]和 YAML frontmatter 的纯 Markdown,因此可以在 Obsidian 中打开该文件夹。 - 人负责整理,模型负责维护。
我们做了哪些改动和新增
- 做成原生应用,而非概念文件。 使用 GTK 4 和 Libadwaita,在一个窗口中整合来源、Wiki、助手和审核功能。
- 完全无需模型也能运行。 离线引擎可以摄取内容并回答问题;模型则能让效果更好。
- 自带大脑。 使用你的 ChatGPT 套餐(通过 Sign in with ChatGPT)、Ollama,或任何兼容 OpenAI 的端点。
- 两步摄取,并记录来源。 先分析,再生成页面;每个页面都会记录其来源。
- 没有空页面,也没有重复项。 只有存在实际内容时才会创建页面;不同来源中的名称会合并(例如“Kasparov”和“Garry Kasparov”);次要人物名称会先作为提及保留,直到第二个来源引用他们。
- 审核队列,用于处理模型不确定的内容。
- MCP 服务,让 Claude Code、Codex 或 Cursor 能够搜索、阅读并扩展同一个 Wiki。
在 Claude Code、Codex 或 Cursor 中使用你的 Wiki
gknowledge 附带 MCP 服务。将任何 Agent 指向一个项目文件夹:
claude mcp add gknowledge -- gknowledge-mcp ~/Knowledge/my-project # Claude Code
codex mcp add gknowledge -- gknowledge-mcp ~/Knowledge/my-project # Codex CLI
对于 Cursor 或其他客户端,将以下内容添加到 MCP 配置中:
{ "mcpServers": { "gknowledge": { "command": "gknowledge-mcp", "args": ["/home/you/Knowledge/my-project"] } } }
| 工具 | Agent 可以执行的操作 |
|---|---|
search_wiki | 按关键词查找页面 |
read_page | 阅读页面及其来源和反向链接 |
list_pages | 按类型列出页面 |
ask | 获取带引文的回答,并可选择将其保存回 Wiki |
add_source | 导入并摄取文件 |
recent_activity | 查看近期变更 |
从源码试用
sudo apt install python3-gi gir1.2-gtk-4.0 gir1.2-adw-1 # Ubuntu / Debian
git clone https://github.com/openapi/gknowledge && cd gknowledge
make start # opens a demo project with six AI papers already ingested
make start 还会在你编辑源码时重启应用,这是开发 gknowledge 最快捷的方式。日常使用时,可通过 make install 安装。
自带大脑
| 提供方 | 需求 | 说明 |
|---|---|---|
| 离线(默认) | 无 | 使用启发式提取和抽取式回答。完全私密。 |
| ChatGPT 套餐 | Plus 或 Pro 账户 | 依次打开 Preferences、Provider,选择 Sign in with ChatGPT。用量计入你自己的套餐,无需 API 密钥。 |
| Ollama / LM Studio / vLLM | 本地服务 | 使用你设备上任何兼容 OpenAI 的端点。 |
| 兼容 OpenAI 的云服务 | API 密钥 | OpenAI、OpenRouter、Together 等。 |
除非你选择非离线提供方,否则不会向任何地方发送任何内容。
对比
| gknowledge | LLM Wiki | Tolaria | OpenKnowledge | Reor(已归档) | Khoj | |
|---|---|---|---|---|---|---|
| 原生 GNOME / GTK 4 | 是 | Tauri | Tauri | Electron | Electron | Web + Electron |
| 离线运行,无需密钥 | 是 | 需要模型 | AI 可选 | 由 Agent 驱动 | 本地模型 | 可自托管 |
| 纯 Markdown 知识库 | 是 | 是 | 是 | 是 | 是 | 可读取你的知识库 |
| Linux 打包格式 | .deb、Flatpak | .deb、AppImage | AppImage、.deb | .deb、.rpm | AppImage | pip、Docker |
| 许可证 | MIT | GPL-3.0 | AGPL-3.0 | GPL-3.0 | AGPL-3.0 | AGPL-3.0 |
各项目的详细信息和历史记录见 DISTRIBUTING.md。
gknowledge 是……的替代选择
gknowledge 处于 大模型驱动的知识库、本地优先的笔记工具 和 文档 RAG 系统 的交汇处。如果你用过下面的任何工具,就已经了解这类问题的概貌——gknowledge 以一款原生 GNOME/GTK 应用的形式解决这一问题,本地优先、不绑定特定提供商,并且完全离线可用(得益于内置的启发式提取引擎,无需 API 密钥)。
LLM wiki / 自动知识库构建工具(最接近的同类项目,其中有几个已在 NOTES.md 中研究):
- LLM Wiki(
nashsu/llm_wiki) — Tauri 桌面应用,实现了 Karpathy 的增量式“LLM 构建并维护 wiki”模式 - Tolaria — 文件优先、Git 优先的 Markdown 知识库,支持 AI 辅助编辑
- WeKnora(Tencent) — 企业级 RAG + Agent + 自动 wiki 框架
- OpenKnowledge(Inkeep) — 所见即所得的 Markdown 编辑器,集成了用于 LLM wiki 的 Agent/MCP 功能
- Reor — 本地优先的 AI 笔记工具,可自动关联相关笔记
- Khoj — 可自托管的 AI“第二大脑”,用于处理你的文档
并非同类产品:Google NotebookLM 提供了类似的带引用笔记本体验,但它是闭源的,且只能通过云端使用。
文档 RAG /“与你的知识对话”引擎:
本地优先 / 网络化思维笔记工具(gknowledge 通过自动摄取和来源追溯功能与它们互为补充):
- Obsidian(+ Smart Connections / Copilot 插件)、Logseq、SiYuan、Trilium Notes、Zettlr、Foam、Dendron、Joplin、Notion、Tana、Capacities、Heptabase、RemNote
AI 功能日益丰富的文档 / 参考资料管理工具:
gknowledge 有何不同
- 原生适配 GNOME,而非 Electron/Tauri 或 Web 优先 — 基于 GTK 4 + Libadwaita,遵循 HIG,并适配 Flatpak。
- 离线优先且不绑定特定提供商 — 内置本地启发式引擎;OpenAI 兼容端点(OpenAI、Ollama、LM Studio、vLLM、OpenRouter 等)均为可选项,可替换,并按项目配置。
- 格式透明,数据归用户所有 — 知识以纯 Markdown 和 YAML frontmatter(兼容 Obsidian)保存,并附带易读的 SQLite 索引;不会有任何内容被同步服务锁定。
- 增量处理,而非无状态 RAG — 来源只需摄取一次,便会进入持久化、交叉链接的知识空间,并保留来源信息;而不是每次提问时都从头检索。
- 人在回路 — 生成的内容会有明确标记,审核队列让你始终掌握编辑控制权。
项目文档
ROADMAP.md— 里程碑以及我们借鉴同类项目的功能TODO.md— 可执行的待办事项DISTRIBUTING.md— 同类项目的定位与发行研究(意大利语)CONTRIBUTING.md— 如何参与贡献docs/DESIGN.md— 最初的产品与设计文档CHANGELOG.md— 各版本的变更内容
许可证
MIT。欢迎贡献,详见 CONTRIBUTING.md。
Star 历史
如果 gknowledge 对你有帮助,请点个 Star,让更多 GNOME 用户找到它。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。