文件格式
最后更新于 2026年10月20日
MindLake 如何把每条笔记存为带 YAML frontmatter 的纯 Markdown 文件,资料库中其他文件的用途,以及哪些内容存放在资料库之外。
一条笔记,一个文件
每条笔记都是一个以标题命名的 .md 文件,存放在它所归档的文件夹中;尚未归档的笔记位于 Inbox。如果该文件夹已有同名文件,MindLake 会在文件名后加上笔记 id 的前八个字符,例如 Weekly sync 5e1f3c2a.md。重命名笔记会同时重命名它的文件,并更新整个资料库(vault)中指向它的 [[links]]。
一条笔记由三部分组成:两条 --- 行之间的 frontmatter(前置元数据),正文(以 # 标题形式的笔记标题开头),以及末尾的 ## Transcript 部分。下面是一场录制的会议:
---
id: 5E1F3C2A-7B4D-4C8E-9A61-2F0D8B3E4C57
title: Weekly sync
created: 2026-09-21T09:30:00Z
updated: 2026-09-21T10:12:44Z
duration_minutes: 31
duration_seconds: 1874
source: inPerson
audio_file: Weekly sync.wav
folder: Work
participants: [Sam Carter, Priya Shah]
tags: [team, launch]
speakers: ["Speaker 1 => Sam Carter", "Speaker 2 => Priya Shah"]
---
# Weekly sync
The launch review moves to Thursday.
- [ ] Send the updated timeline @sam 📅 2026-09-24 ⏫
- [x] Book a room for Thursday ✅ 2026-09-21
## Transcript
Sam Carter: Morning. Shall we start with the launch date?
Priya Shah: Yes. Thursday works for the review.Frontmatter
MindLake 按以下顺序写入这些键,笔记用不到的键会省略。
| 键 | 含义 |
|---|---|
id | 笔记的永久标识符。即使重命名笔记,它也不会改变。 |
title | 标题,与正文顶部的 # 标题一致。 |
created | 笔记的日期,采用 ISO 8601 格式(UTC)。较早的文件可能改用 date,MindLake 仍能读取。 |
updated | 内容最后一次更改的时间。如果出现同一条笔记的两个副本,以较新的为准。 |
duration_minutes | 录音时长,以整分钟计,没有录音则为 0。duration_seconds 仅在有录音时出现,以秒为单位给出时长。 |
source | 笔记的类型:inPerson(Meeting)、thought(Idea)、plan(Plan)、details(Reference)或 media(Media)。 |
audio_file | 笔记录音的文件名,位于同一文件夹中。 |
calendar_event | 笔记所属的日历事件,以日历自身的 id 表示。 |
pinned | 笔记被固定时为 true。 |
folder | 笔记的归档位置。如果它与文件的实际位置不一致,以实际位置为准。 |
type | 你自己定义的类型名称,用于五种类型之外的类型。 |
participants | 笔记中涉及的人,例如参会者和已命名的说话人。 |
tags | 笔记的标签。 |
sources | 笔记的来源,以从资料库顶层开始的路径表示。 |
sources_used | 已在笔记中用过的来源。transcript_used: true 表示笔记的转录文本也已用过。 |
sources_log | 每个来源一行可读记录:名称、种类、阶段和文件路径。 |
speakers | 转录时识别出的每位说话人(例如 Speaker 1)被赋予的名字,如果已关联联系人,也包括该联系人。 |
转录文本部分
第一个 ## Transcript 标题之后的所有内容都是笔记的转录文本,所以不要把这个标题用于其他用途。每轮发言一个段落,以说话人和冒号开头;每轮发言都单独占一行,简短的回应也不例外。为说话人命名会更改那里的标签,并把名字记录在 speakers 中。没有转录文本的笔记会在该标题下显示 _No transcript yet._ 这一行。
任务
以 - [ ] 开头的行就是任务,无论它位于笔记的什么位置;- [x] 则是已完成的任务。详细信息以纯文本表情符号标记的形式写在文字之后,其他任务工具也能读取:
| 标记 | 含义 |
|---|---|
📅 2026-09-24 | 截止日期 |
⏳ 2026-09-22 | 计划日期 |
✅ 2026-09-21 | 完成的日期。在 Tasks(任务)页面勾选任务时,MindLake 会添加它;取消勾选时会将其移除。 |
⏫ 🔼 🔽 ⏬ | 高、中或低优先级,或 Backlog:确实要做、但不是现在做的任务 |
🔁 every week | 重复方式,用文字写在符号之后 |
#tag @person | 标签和人员,保留在文字中。任务也会带上所在笔记的标签。 |
Tasks 页面上的快速添加栏会把“tomorrow”或“p1”之类的词自动转换成这些标记。请参阅任务。
录音与单词时间
笔记的录音与笔记同名,存放在它旁边,例如 Weekly sync.md 旁边的 Weekly sync.wav,并由 audio_file 指明。重命名笔记时,录音也会随之重命名。
转录完成后,还会多出一个 Weekly sync.words.json。它保存每个单词的时间和置信度以及说话人名字,正因如此,无论在你的哪台 Mac 上点按某个单词,MindLake 都能播放它。如果某次转录在录音中没有听到任何语音,这个文件会改为记下这一点,并与录音的大小绑定,这样 MindLake 就不会再提议转录它;之后以同一名称保存的另一段录音不会被当作无声。这个文件由 MindLake 写入,请保持原样。
Settings ▸ Audio ▸ Recordings 中的 Keep audio 决定录音保留多久。录音被移除后,其转录文本仍保留在笔记中。
来源
附加到笔记的文件存放在资料库的 Sources 文件夹中,位于以笔记 id 前八个字符(小写)命名的文件夹里:上面那条笔记对应的是 Sources/5e1f3c2a。MindLake 从文件中提取的文本存放在该文件旁边,文件名为完整文件名加上 .extracted.md,例如 report.pdf.extracted.md。sources 键会列出这些文件,而 Sources 中的任何内容都不会显示为笔记。请参阅来源。
笔记中的图片和文件
笔记中显示的图片、视频或其他文件各占一行,写作  或 ![[path]]。它的排版方式保存在这一行中的 | 之后:wide 让它单独占一行、全宽显示,2x2 则让它所在的那组文件排成两列大图,而不是小方块。右键菜单中的 Full Width 和 2×2 Grid,或指针指向文件时出现的按钮,会替你写入这些标记。

![[demo.mp4|2x2]]列表与画布
列表是一个文件夹,而不是单个文件。它的行存放在 data.csv 中,列及其类型存放在 schema.json 中,你在表格下方写的文字存放在 notes.md 中。任何能读取 CSV 的 App 都能打开这些行。画布是一个采用开放 JSON Canvas 格式的 .canvas 文件,其他工具也能读取。
data.csv
schema.json
notes.md锁定的笔记
锁定笔记后,它的 .md 文件会被同一文件夹中的加密 .mdenc 文件取代,该文件以笔记的 id 而不是标题命名。没有密钥时,只能读取 id 和最后更新时间;标题、frontmatter、正文和转录文本都在加密范围内。锁定笔记上的录音不会加密。请参阅笔记与编辑器。
其他文件
| 文件或文件夹 | 内容 |
|---|---|
Inbox | 尚未归档的笔记。 |
Screenshots | 截屏,除非你把它们附加到笔记。 |
Screen Recordings | 你从菜单栏录制的屏幕视频。不会创建笔记。 |
Voice | 你在菜单栏中用 Voice 录制、未创建笔记的音频。 |
.originals | 隐藏,位于你标注过的图片旁边:保存它未经改动的原图。 |
Chats | 与 AI 助手的对话,每段对话一个 Markdown 文件。 |
_Templates | 笔记模板。可在 Settings ▸ Editor ▸ Templates 中选择其他文件夹。 |
snippets.json | 你的文本片段。 |
settings.json | 你的设置副本,新安装的 MindLake 会读回这些设置。 |
lexicon.txt | 转录时用于核对的名称和术语,每行一个。 |
.mindlake | 隐藏。将该文件夹标记为资料库。 |
.mindlake-mirror.json | 隐藏。如果你使用同步文件夹,这里记录通过 git 镜像的资料库文件夹。 |
存放在资料库之外的内容
有些内容 MindLake 保存在每台 Mac 上、资料库之外,因此它们永远不会同步,也不会随资料库转移。以下路径位于你的用户资源库(Library)中。
| 内容 | 位置 |
|---|---|
| 联系人 | MindLake 的数据库,位于 Application Support/Mindlake。联系人只保留在那台 Mac 上,永远不会同步。 |
| 搜索索引 | Application Support/Mindlake/Search/index.sqlite。它根据你的笔记重建,而按含义搜索的部分(默认关闭,除非你将其打开)由 macOS 自带的句子模型在 Mac 上生成。 |
| 剪贴板历史 | Application Support/Mindlake/clipboard-history.json,受 macOS 文件保护:只保存文本,最近 200 项。关闭该功能会将其清空。 |
| 截屏文字索引 | Caches/co.goodanalysis.mindlake/capture-text:为 /ss 从你的图片中读取的文字,在 Mac 上读取。 |
| AI 编辑历史 | Application Support/Mindlake/EditHistory:每条笔记在 AI 编辑之前的最近 20 个版本。 |
| 同步文件夹配对 | Application Support/Mindlake/mirror.json,仅适用于那台 Mac。 |
| 来源缩略图 | Caches/Mindlake/SourceThumbs:Sources 网格显示的图片,这样重新打开 App 后网格能立即填满。文件夹超过 400 MB 后,会删除最旧的缩略图,直到低于 300 MB。 |
| 设置 | Mac 自身为 MindLake 保存的偏好设置,资料库的 settings.json 中另有一份副本。 |
| AI 密钥、登录信息和许可证 | macOS 钥匙串。 |