tolaria
本地优先的 Markdown 知识库桌面应用,支持 AI Agent 通过 MCP 协议直接操作笔记
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
本地优先的 Markdown 知识库桌面应用,支持 AI Agent 通过 MCP 协议直接操作笔记
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象一下,你花了多年积累的笔记、灵感、工作文档散落在硬盘各处,每次找东西都要翻遍文件夹。有些人最终选择 Notion、Obsidian 这样的工具,但这些工具往往把数据锁在自家数据库里——一旦服务商出问题,或者你想换个工具,所有迁移成本都要自己扛。
Tolaria 正是为解决这个痛点而生的:一个完全基于本地 Markdown 文件的桌面知识库,它不建自己的数据库,你的笔记就是你硬盘里的 .md 文件,格式公开、随时可迁移,任何编辑器都能打开。这听起来像是最原始的笔记方式,但 Tolaria 用精心设计的四面板界面,把这套朴素的文件系统打造成了真正好用的「第二大脑」。
Tolaria 的作者是 Luca Rossi,来自瑞士,运营着 Refactoring 这个专注于代码重构的播客/Newsletter(该播客在 iTunes 技术类排名靠前)。他的个人笔记库积累了超过 10,000 条笔记,这些笔记来自播客制作、日常 journal、以及他所说的「second braining」(用外部系统分担大脑记忆压力)。
正是在管理这个庞大笔记库的过程中,Luca 意识到现有工具要么数据不透明(闭源数据库),要么不够好用(纯文件管理缺少结构)。于是他决定自己动手,开发了 Tolaria。项目的命名来自 MTG(万智牌)中的位面——一个充满古老知识与魔法的世界,很贴合「知识管理」的主题。
Tolaria 的界面布局借鉴了 Bear Notes 的经典四面板设计:左侧边栏(笔记分类/标签)、笔记列表、富文本编辑器和详情/属性面板。这使得它既保留了文件系统级的开放性,又提供了结构化的浏览体验。
最特别的是它的「约定优于配置」哲学。Tolaria 预定义了一系列标准字段名(type、status、url、Workspace、belongs_to、related_to、has、start_date、end_date),这些字段在 Markdown 文件中以 YAML frontmatter 形式存储(如 type: article),无需任何配置,Tolaria 就能自动识别并赋予对应的 UI 行为。比如设定 type: book,笔记列表里就会出现书的图标;设定 start_date,就能按时间线浏览。
这套约定的深层目标是让 AI Agent 能像人一样理解和操作笔记库——有通用的结构约定,AI 不需要为每个用户的自定义配置写专门的处理逻辑。
Tolaria 是一款典型的 Tauri 应用:用 Rust 编写底层逻辑和系统交互,用 WebView(Chromium)渲染 React 前端。相比 Electron,Tauri 不捆绑完整 Chromium 运行时,体积小得多,启动快,资源占用低。
前端技术栈非常现代:React 18 + TypeScript + Vite 构建系统,UI 组件来自 Mantine(主要)和 Radix UI(底层),编辑器基于 CodeMirror 6 和 BlockNote(富文本/Markdown 混合编辑),样式用 Tailwind CSS。
后端 Rust 代码处理文件系统监控(notify crate)、YAML frontmatter 解析(gray_matter)、异步运行时(Tokio)和 Git 操作。Tauri 2.x 提供了丰富的插件生态:对话框、进程管理、自动更新、深链接等。
前端依赖中还包含了一些有趣的库:tldraw(无限画板)、mermaid(图表渲染)、katex(数学公式),说明项目在朝着多模态笔记方向发展——不只是纯文本,还支持图表、公式和画板。
Tolaria 最有特色的功能之一是其内置的 MCP Server(Model Context Protocol Server)。MCP 是一个让 AI Agent 与外部工具/数据源交互的标准化协议,Tolaria 将笔记库暴露为一组 MCP 工具:
search_notes:跨笔记库全文搜索get_vault_context:获取笔记库整体结构(分类、笔记数量、文件夹)get_note:读取指定笔记(自动解析 frontmatter + 正文)open_note:让 Tolaria 界面跳转到指定笔记refresh_vault:触发笔记库重新扫描这意味着 AI Agent 可以直接「看见」用户的笔记库并执行操作。对于运营 Newsletter 或播客的人来说,这意味着可以训练一个了解你所有笔记背景的 AI 助手,它不只是通用对话,而是真正理解你的工作上下文。
别看 Tolaria 是个人项目,代码质量管控相当专业:
lara.yaml 配置化管理翻译文件。这些工程实践放在中型团队里也毫不逊色。
Tolaria 的定位是桌面应用,需要下载安装包或从源码编译。不像 Obsidian 有移动端,Tolaria 目前只有 macOS、Windows、Linux 桌面版。对于习惯纯 Web 或移动端访问的用户,这是个限制。
从源码构建的门槛中等偏高:需要 Node.js 18+、pnpm、Rust toolchain、以及 Tauri 所需的系统级依赖。对于没有开发经验的用户,建议直接下载官方编译好的 release 版本。
另一个值得注意的是数据安全:虽然笔记本地存储,但 Tolaria 会调用 AI API(Claude SDK)进行某些操作,笔记内容会上传到外部 API,用户需要注意这一点。
近年来知识管理工具市场,Notion、Obsidian、Logseq 等百花齐放。Tolaria 的独特价值在于它极端坚持「文件系统优先」的设计哲学——数据永远属于用户自己,不被任何平台锁定。这与开放标准和本地优先(Local-First Software)运动高度契合。
同时,它的 MCP Server 集成预示了一个趋势:未来的知识管理工具不只是给人用的,还要能被 AI Agent 理解和操作。Tolaria 在这方向上做了很有意义的探索。
如果你在寻找一个完全掌控自己数据、不依赖云服务、同时有良好桌面体验的知识管理工具,Tolaria 值得关注。