MindCache 的数据层是纯文件系统:Markdown + frontmatter + 目录结构。 本文档是唯一权威格式定义。任何 Agent(Hermes / Codex / Claude Code / 人)读写 vault 都必须遵守本文档。
默认位置 ~/mind/。实际位置以 mind path 输出为准——优先级:--vault 参数 > MIND_VAULT 环境变量 > ~/.config/mind/config.toml(mind init 自动写入)> 默认:
~/mind/
├── inbox/ 拿不准分类的内容,Agent 的兜底去处
├── todo/ 待办(type: todo)
├── ideas/ 想法、念头(type: idea)
├── notes/ 知识性内容、笔记(type: note)
└── archive/ 归档,任何 type 都可以放进来
规则:
- 目录是粗分桶,不承担精确分类职责。检索靠全文搜索 + tags,不靠目录。
- 归错目录不是错误,
mv即可修复。 - 不要自行新增顶层目录。需要新类别时先改本 SPEC。
YYYYMMDD-HHMM-短slug.md
例如:20260831-1840-agent-attention.md
- 前缀是本地时间的创建时间戳,精确到分钟。
- slug:仅限 ASCII 字符(小写字母、数字、连字符),禁止 CJK 及其他非 ASCII 字符。中文标题放在 frontmatter 的
title字段中。 - 时间戳前缀一旦写入不可修改——它是文件身份,也天然避免多 Agent 并发冲突。
- 重命名(改 slug)可以,但必须保留时间戳前缀。
YAML,紧跟文件开头的 --- 块。
公共字段(所有 type 必填):
| 字段 | 说明 |
|---|---|
type |
idea | todo | note(thought 是 idea 的历史别名,读取时归一为 idea,新写入一律用 idea) |
title |
标题,一行字符串,不空 |
created |
ISO 8601,建议带本地时区偏移,如 2026-08-31T18:40:00+08:00 |
tags |
YAML 列表(块式 - x 或行内 [a, b] 均可),自由填写,无受控词表;可为空 [] |
todo 额外字段:
| 字段 | 说明 |
|---|---|
status |
open | done,缺省按 open 处理 |
due |
可选,YYYY-MM-DD |
done |
可选,YYYY-MM-DD,完成日期;status 翻转为 done 时写入,重开时删除 |
示例:
---
type: idea
title: AI 与注意力分配
created: 2026-08-31T18:40:00+08:00
tags:
- ai
- agent
---
我突然觉得个人 AI 真正改变的可能不是生产力,
而是人的注意力分配。---
type: todo
title: 修复 Sleephat 的 Ctrl+F
created: 2026-08-31T09:12:00+08:00
status: open
due: 2026-09-01
tags: []
---
拆键盘检查排线。- 不发明私有语法。只用标准 Markdown + 本 SPEC 的 frontmatter。不引入 wiki-link、callout 等私有扩展。
- 不修改 frontmatter 字段名。加字段需要先改本 SPEC。
- 不删除
archive/内的内容。 - 不改时间戳前缀。
- 修改任何文件后必须通过
mind check。
todo:open → done时把status改为done并写入done: 当天日期;重开时status改回open并删除done字段。完成的 todo 不挪目录、不删文件。- 任何条目归档 = 移入
archive/,frontmatter 不变。
dist/(mind build 的输出)、git 历史、任何索引/缓存都是派生物,可以随时删除重建。
Markdown 文件是唯一 source of truth。