Brave
@47c132035ed7a1105a867946b99d67af 开源软件研究 公开
讨论 Trilium Notes:用开源自托管软件打造数字花园和个人知识王国

Trilium Notes:用开源自托管软件打造数字花园和个人知识王国

"知识管理的本质不是收集,而是连接。"


一、什么是 Trilium Notes

1.1 软件概述

Trilium Notes 是一款开源的、分层的、支持多端同步的笔记应用程序,专注于帮助用户建立大型个人知识库。它由开发者 zadam 于 2017年12月25日 首次发布,至今已有超过8年的发展历程

截至2026年1月,该项目已由社区接管,以 TriliumNext 的名义继续开发维护,最新版本为 v0.101.3。原开发者 zadam 已将项目仓库慷慨转让给社区,TriliumNext 团队也宣布将品牌名称恢复为 Trilium Notes,延续这一经典笔记工具的生命力。

与市面上众多笔记软件不同,Trilium Notes 采用树状层级结构作为核心组织方式,这种设计更贴近人类自然思维的分类习惯——从大类到小类,从抽象到具体,层层递进。

1.2 名称溯源:延龄草的寓意

Trilium Notes 的名字来源于延龄草(Trillium),一种春季开花的多年生草本植物。

🌸 延龄草特征📝 软件象征意义
三片花瓣笔记的三个核心:结构、关联、内容
多年生植物知识的长期积累与沉淀
春季绽放知识体系的生长与更新

值得一提的是,白花延龄草(White Trillium)是加拿大安大略省的省花,其图案出现在该省的驾照和健康卡上。软件名称开头的发音与"Tree"(树)谐音,巧妙呼应了软件的树状层级结构。

据百度百科和维基百科记载,延龄草属(学名:Trillium)是黑药花科下的一个属,全球约有30种,分布于东亚和北美的温带地区。延龄草的中文名听起来像中药名称,其果实(俗称天珠)、根茎(俗称地珠)具有镇静安神、活血止血、解毒等功效。这也为软件增添了一层"知识如药,可以疗愈心智"的隐喻意味。

1.3 核心特点详解

Trilium Notes 的主要特点包括:

📄 多样化的笔记类型

笔记类型适用场景说明
📝 文本笔记日常记录、文章写作支持富文本和 Markdown
💻 代码笔记编程学习、代码片段支持语法高亮
🖼️ 图像笔记图片收藏、视觉素材支持多种图片格式
📐 数学公式学术研究、公式记录支持 LaTeX 语法
🗺️ 思维导图头脑风暴、概念梳理可视化思维工具
📅 日历笔记日程安排、时间管理支持周视图、月视图、年视图
🌐 网页剪辑网络资料收集配合浏览器插件使用
🎨 画布笔记图表绘制、视觉规划基于 Excalidraw 技术,可自由排列形状、图像和文本
📋 看板笔记任务管理、项目跟踪Kanban 风格的任务组织方式

✏️ 强大的编辑能力

  • 所见即所得(WYSIWYG):采用 CKEditor 5 作为富文本编辑器,最新版本已从 v42 升级至 v45,支持更流畅的编辑体验
  • Markdown 支持:可以使用 Markdown 语法快速排版,适合习惯纯文本编辑的用户
  • 丰富的内容元素:支持插入表格、列表、链接、图片、代码块、数学公式等多种元素
  • 快捷键操作:提供完善的快捷键体系,大幅提升编辑效率

🌲 无限层级结构

Trilium Notes 支持无限深度的笔记层级,你可以:

  • 按照知识领域建立一级分类
  • 在每个领域下细分二级、三级甚至更多层级
  • 通过拖拽自由调整笔记位置和层级关系
  • 每个笔记本身就可以包含子笔记,无需创建传统意义上的"文件夹"

这种设计理念的优势在于:树状结构反映了人类自然的思维分组方式。正如 XDA Developers 的评测所言:"与 Notion 和 Obsidian 不同,Trilium 不会在你写下第一个字之前就强迫你去构建复杂的系统。你只需将笔记倾倒到大致的分类中,当模式浮现时再嵌套子分类,当理解深化时再重组分支。"

🔗 双向链接与克隆功能

  • 双向链接:在笔记 A 中引用笔记 B,笔记 B 会自动显示被 A 引用,形成真正的知识网络
  • 克隆功能:同一笔记可以出现在多个父级笔记下,无需复制内容。这是 Trilium 被低估的一个强大功能——你可以将同一笔记放置在多个父级分支下,而无需复制,保持内容的单一来源

🔒 安全与版本控制

  • 版本历史:自动记录笔记的每次修改,可以随时回溯到任意历史版本
  • 数据加密:支持对敏感笔记进行加密保护
  • 本地优先:数据存储在本地,你完全掌控自己的数据

🌐 多端同步与部署

  • 自托管服务器:可以将 Trilium 部署在自己的服务器上,实现真正的数据自主
  • 多端同步:桌面客户端与服务器端数据实时同步
  • Web 访问:通过浏览器随时随地访问你的知识库
  • 部署便捷可通过 Docker、Umbrel、TrueNAS、Cloudron、Tipi 等多种方式快速部署

🛠️ 高度可定制

  • 自定义脚本:使用 JavaScript 编写前端/后端脚本扩展功能,新版本支持使用 Preact 和 JSX 编写自定义组件
  • 自定义模板:创建可复用的笔记模板,提升创建效率
  • 自定义主题新版本引入了名为 Trilium.Rocks 的全新默认主题,UI 更加现代化
  • 自定义小部件可以创建自定义 Widget 集成到 UI 中,例如字数统计、进度跟踪等功能

二、为什么要使用 Trilium Notes

2.1 与其他笔记软件的对比

在选择笔记软件时,了解不同工具的定位和优劣势非常重要。以下是 Trilium Notes 与主流笔记软件的详细对比:

对比维度Trilium NotesObsidianNotion
定价🆓 完全免费开源免费增值(同步功能收费)免费增值
数据存储本地/自托管本地文件☁️ 云端(有数据锁定风险)
组织方式🌲 树状层级图谱/Wiki 风格数据库/块
同步功能✅ 内置免费同步付费($4-8/月)内置
学习曲线中等较陡峭中等
离线使用✅ 完整支持✅ 完整支持⚠️ 有限支持
可扩展性JavaScript 脚本插件生态有限
开源✅ 完全开源❌ 闭源❌ 闭源

根据 Slant 社区的评选,在"最佳个人知识库系统"问题中,Obsidian 排名第1,Notion 排名第6,Trilium Notes 排名第10。然而,Trilium 在开源自托管、数据隐私、内置同步等方面具有独特优势。

2.2 Trilium Notes 的核心优势

🏠 数据主权

  • 所有数据存储在本地或你自己的服务器上
  • 不依赖任何第三方云服务
  • 没有 Notion 那样的"即时锁定"风险——你的数据完全可以自由导出和迁移
  • 开源代码可审计,无隐私担忧

🧠 认知负担低

  • 树状结构反映自然思维方式,无需像工程师一样思考关系数据库
  • 不强制要求预先设计复杂系统
  • 可以从简单开始,逐步深化
  • "Notion 希望你构建仪表板、属性和过滤视图;Obsidian 推动你走向图数据库和链接思维。两者都很强大,但它们都前置了认知负担。"——来自用户评价

🔄 灵活的知识组织

  • 同一笔记可以通过克隆出现在多个位置
  • 无限层级满足复杂分类需求
  • 双向链接构建知识网络
  • 标签、属性、关系等多维度组织方式

💰 零成本同步

  • 与 Obsidian Sync($4-8/月)不同,Trilium 的同步功能完全免费
  • 只需自备一台服务器或使用家庭 HomeLab

2.3 适用场景

Trilium Notes 是一款适合长期使用和深度挖掘的笔记工具,它可以帮助你:

📔 记录和管理日常信息

  • 日记与反思:记录每日思考和感悟
  • 待办事项:管理任务和项目进度
  • 读书笔记:整理阅读摘录和心得
  • 健康数据:追踪健身、饮食、睡眠等信息
  • 软件使用:记录软件配置和使用技巧
  • 编程学习:保存代码片段和技术笔记

🌐 搜集和整理网络资源

  • 使用网页剪辑插件一键保存有价值的文章
  • 收藏视频链接并添加观看笔记
  • 保存图片和评论素材
  • 建立个人资料库和参考文献系统

💡 沉淀和输出知识

  • 写作:利用大纲和草稿功能组织文章结构
  • 总结:定期回顾和提炼知识点
  • 分享可以将笔记导出为多种格式分享给他人
  • 使用模板和脚本优化个人写作流程

🌳 构建个人数字花园

  • 建立系统化的知识体系
  • 通过双向链接关联知识点
  • 发现知识间的隐藏联系和规律
  • 打造属于自己的知识王国

正如一位用户所说:"Trilium 教会了我,层级化的笔记记录其实可以是令人平静的。"


三、如何使用 Trilium Notes

3.1 安装与部署

Trilium Notes 提供多种安装方式,适应不同用户的需求:

🖥️ 桌面客户端安装

操作系统下载方式说明
WindowsGitHub Releases提供安装包和便携版
macOSGitHub Releases支持 Intel 和 Apple Silicon
LinuxGitHub Releases / Flatpak提供多种发行版支持

下载地址:https://github.com/TriliumNext/Trilium/releases

🐳 服务器端部署(Docker)

Docker 部署是最推荐的服务器端部署方式,官方镜像支持 AMD64、ARMv7 和 ARM64/v8 架构。

基础部署命令:

# 拉取最新镜像
docker pull triliumnext/trilium

# 运行容器
docker run -p 8080:8080 -d \
  -v ~/trilium-data:/home/node/trilium-data \
  triliumnext/trilium

使用 Docker Compose 部署:

version: '3'
services:
  trilium:
    image: triliumnext/trilium
    container_name: trilium
    restart: unless-stopped
    ports:
      - "8080:8080"
    volumes:
      - ~/trilium-data:/home/node/trilium-data
    environment:
      - TRILIUM_DATA_DIR=/home/node/trilium-data

⚠️ 重要提示:

  • 如果使用 SMB/CIFS 共享作为数据目录,需要在挂载时添加 nobrlnoperm 选项
  • 可以创建 systemd 服务实现开机自启
  • 从 zadam/trilium 迁移到 TriliumNext/Trilium 无需特殊步骤,直接使用新版本即可读取现有数据库
  • 注意:v0.90.4 及之前的版本与 zadam/trilium v0.63.7 兼容,之后的版本由于同步版本号变更,无法直接迁移

🏠 HomeLab 一键部署

对于家庭服务器用户,以下平台提供一键部署支持:

  • Umbrel:在应用商店中搜索 Trilium 即可安装
  • TrueNAS:通过 Apps Market 安装
  • Tipi:支持一键部署
  • Cloudron:提供托管式部署
  • Synology NAS:可通过 Docker 安装

3.2 初次使用

第一步:熟悉界面

打开 Trilium Notes,会看到一个欢迎页面,里面包含:

  • 📖 使用指引和入门教程
  • 📝 示例笔记,展示各种笔记类型
  • ⌨️ 快捷键参考
  • 🎨 界面自定义选项

新版本 UI 更新说明:

  • 新布局重新设计了现有 UI 元素,目标是使应用更加现代化和直观,同时减少视觉杂乱
  • 笔记层级可通过标签栏下方的面包屑导航更轻松地浏览
  • 如果偏好旧版布局,目前仍可切换回去

第二步:创建第一个笔记

  1. 点击左上角的 "+" 号按钮
  2. 选择想要的笔记类型:
    • 📝 文本(Text)—— 最常用的笔记类型
    • 💻 代码(Code)—— 保存代码片段
    • 🖼️ 图像(Image)—— 图片笔记
    • 📐 数学(Math)—— 数学公式
    • 🎨 画布(Canvas)—— 自由绘图和排版
    • 📅 日历(Calendar)—— 日程管理
  3. 输入笔记标题
  4. 开始编写内容

第三步:编辑笔记

富文本编辑器功能:

功能快捷键说明
加粗Ctrl+B突出重点内容
斜体Ctrl+I强调文字
链接Ctrl+K插入超链接
标题Ctrl+1~6设置标题级别
列表Ctrl+Shift+8无序列表
代码`Ctrl+``行内代码

Markdown 快捷输入:

  • 输入 # + 空格 → 一级标题
  • 输入 - + 空格 → 无序列表
  • 输入 1. + 空格 → 有序列表
  • 输入 > + 空格 → 引用块
  • 输入 ``` → 代码块

3.3 组织笔记

层级结构管理

📁 我的知识库
├── 📚 学习笔记
│   ├── 📖 编程语言
│   │   ├── Python
│   │   ├── JavaScript
│   │   └── Go
│   └── 📊 数据科学
│       ├── 机器学习
│       └── 数据可视化
├── 💼 工作项目
│   ├── 项目 A
│   └── 项目 B
├── 📔 生活记录
│   ├── 日记
│   ├── 健康追踪
│   └── 财务管理
└── 🌐 网络收藏
    ├── 技术文章
    └── 灵感素材

组织技巧:

  • 拖拽排序:直接拖动笔记到新位置
  • 层级调整:拖动到其他笔记上方可创建父子关系
  • 标签管理:使用 #标签名 为笔记打标签
  • 属性标记:通过属性系统添加元数据
  • 笔记克隆:让同一笔记出现在多个位置

3.4 关联笔记

双向链接

在笔记中创建链接的方式:

  1. 快捷键方式:选中文字后按 Ctrl+L
  2. 自动补全:输入 [[ 开始搜索并链接笔记
  3. 拖拽链接:将左侧笔记树中的笔记拖入编辑区

链接效果示例:

  • 在笔记 A 中链接到笔记 B
  • 打开笔记 B,会自动显示"被 A 引用"
  • 形成真正的双向关联网络

笔记克隆

克隆 vs 复制的区别:

操作克隆复制
内容关系同一份内容独立副本
修改影响所有位置同步更新互不影响
适用场景多分类归属创建变体版本

使用克隆的场景:

  • 一本书既属于"读书笔记"也属于"投资学习"
  • 一个项目文档既在"工作"下也在"参考资料"下
  • 一个联系人既在"朋友"下也在"同事"下

3.5 同步与分享

设置同步

  1. 部署服务端:在服务器上运行 Trilium Server
  2. 配置连接:在桌面客户端设置服务器地址
  3. 输入密码:使用同步密码建立连接
  4. 自动同步:连接后数据将自动双向同步

同步架构:

┌─────────────────┐
│   Trilium       │
│   Server        │ ◄───── Web 浏览器访问
│  (自托管)       │
└────────┬────────┘
         │
    双向同步
         │
┌────────┼────────┐
│        │        │
▼        ▼        ▼
💻       💻       📱
Windows  macOS   Web端
客户端   客户端  (移动端)

⚠️ 移动端说明:目前没有官方移动应用,但可以通过以下方式在移动设备上使用:

  • Web 端访问服务器
  • 安装第三方 Android 客户端(需从 GitHub 下载 APK 侧载安装)

3.6 扩展功能

自定义脚本

Trilium 提供强大的 JavaScript 脚本系统,包含两个运行环境:

环境运行位置能力
前端脚本浏览器操作 UI、DOM、用户界面
后端脚本Node.js访问数据库、文件系统、API

创建脚本的步骤:

  1. 创建类型为"Code"的笔记
  2. 选择 MIME 类型为 JavaScript
  3. 编写脚本代码
  4. 添加相应的标签触发运行

常用脚本标签:

  • #run=frontendStartup —— 前端启动时运行
  • #run=backendStartup —— 后端启动时运行
  • #run=mobileStartup —— 移动端启动时运行(新增)
  • #widget —— 作为自定义小部件加载

自定义小部件示例

新版本支持使用 Preact + JSX 编写自定义组件,以下是一个字数统计小部件的示例概念:

// 创建代码笔记,添加 #widget 标签
// 小部件将显示当前笔记的字数和字符数
// 可以通过给目标笔记添加 #wordCount 标签来激活
// 也可以设置为可继承,对整个子树生效

模板系统

创建可复用的笔记模板:

  1. 创建一个模板笔记
  2. 添加 #template 标签
  3. 新建笔记时选择该模板
  4. 自动继承模板的结构和内容

模板应用场景:

  • 📅 日记模板:日期、天气、心情、待办、反思
  • 📖 读书笔记模板:书名、作者、摘录、感想
  • 🎯 项目模板:目标、任务、进度、复盘
  • 👤 人物档案模板:姓名、联系方式、关系、备注

四、进阶使用技巧

4.1 搜索与过滤

Trilium 提供强大的搜索功能:

  • 全文搜索:搜索所有笔记内容
  • 标签过滤:通过标签快速筛选
  • 属性查询:使用属性条件精确查找
  • 正则表达式:支持高级模式匹配

4.2 导出与备份

导出格式适用场景
HTML网页分享
Markdown文本编辑器
OPML大纲工具
原生格式完整备份和迁移

4.3 安全最佳实践

  • ✅ 定期备份数据目录
  • ✅ 使用强密码保护服务器
  • ✅ 启用 HTTPS 访问
  • ✅ 对敏感笔记单独加密
  • ✅ 使用反向代理(如 Nginx、Traefik)增强安全性

五、总结与展望

5.1 核心价值回顾

Trilium Notes 是一款功能强大且灵活的笔记应用程序,适合个人和小团队使用。它的核心价值在于:

💎 核心优势📋 具体表现
开源自由代码透明,社区驱动,持续更新
数据自主本地存储或自托管,完全掌控
层级清晰树状结构,符合思维习惯
知识连接双向链接 + 克隆,构建网络
高度定制脚本 + 模板 + 主题,个性化
零成本同步内置同步,无需付费订阅

5.2 适用人群

🎯 特别适合以下用户:

  • 📚 需要构建大型个人知识库的知识工作者
  • 💻 喜欢折腾自托管服务的技术爱好者
  • 🔒 重视数据隐私和所有权的隐私倡导者
  • ✍️ 需要长期积累素材的写作者和研究者
  • 🌱 想要打造数字花园的终身学习者

5.3 未来展望

Trilium Notes 在 TriliumNext 社区的推动下,正在积极发展:

  • 🎨 UI 现代化:部分组件已迁移至 React,界面更加美观
  • 📱 移动端改进:社区正在探索更好的移动端解决方案
  • 🔌 生态扩展:支持 Preact + JSX 编写组件,扩展能力增强
  • 📖 文档完善:新文档站点 docs.triliumnotes.org 持续更新

"最好的笔记系统不是最复杂的,而是你愿意持续使用的那个。"

无论是记录日常事务、搜集资料、输出思考还是构建知识体系,Trilium Notes 都能提供便捷的编辑和组织功能,帮助你更好地管理和挖掘知识,打造属于自己的知识王国。