maoruibin434 downloadsSync notes from inBox app to your vault via WebDAV/S3.
将 inBox 笔记单向同步到 Obsidian vault 的插件。
inBox 是收集箱,编辑/删除交给桌面端做。插件只读云端,不在 Obsidian 里修改云端数据。
#tag/subtag)插件尚未进入 Obsidian 官方社区目录(审核排队中),目前推荐用 BRAT 安装。
BRAT 可以从 GitHub 仓库直接安装插件,并自动接收更新。适合尚未进入官方目录的插件。
maoruibin/obsidian-inbox-sync
之后本仓库发版,BRAT 会自动拉取更新。
main.js、manifest.json、styles.css.obsidian/plugins/inbox-sync/升级时需要重复上述步骤手动替换文件,所以非开发者推荐用 BRAT。
git clone https://github.com/maoruibin/obsidian-inbox-sync.git
cd obsidian-inbox-sync
npm install
npm run dev
npm run dev 会监听文件变化自动重新构建,并把产物复制到配置的 Vault 插件目录。
/inbox/)inBox)同步后的目录结构会按盒子组织:
inBox/
├── notes/ # 无盒子笔记(根目录平铺)
│ ├── 2025-04-10 note-title.md
│ └── 2025-04-11 another.md
├── 工作/ # "工作"盒子下的笔记
│ └── project-xxx.md
├── 生活/ # "生活"盒子下的笔记
│ └── shopping-list.md
├── assets/ # 资源文件(所有盒子共享)
│ ├── images/
│ │ └── photo.jpg
│ ├── videos/
│ │ └── video.mp4
│ ├── audios/
│ │ └── recording.mp3
│ └── attachments/
│ └── file.pdf
└── .inbox-sync-meta.json # 同步元数据(含盒子文件夹映射)
盒子文件夹规则:
content.box_id 在云端 boxes.json 里查得到 → 进 <盒子名>/ 子文件夹inBox/ 平铺box: 字段同步更新assets/,不按盒子分盒子名清洗规则: / \ : * ? " < > | 替换为 -,空名 fallback 到 box_id 短码,撞名追加 box_id 后缀。
同步后的笔记包含 YAML frontmatter:
---
title: 今日记录
inbox_id: note-abc123
created: 2025-04-10T10:30:00.000Z
updated: 2025-04-10T10:30:00.000Z
box: 工作
tags:
- 日记/生活
- 心情/开心
---
#日记/生活
今天天气不错 #心情/开心
![[../assets/images/2025/04/photo.jpg]]
box字段表示笔记所属的盒子(来自云端boxes.json),无盒子的笔记不会写这一行。
flags.is_removed=true → 插件下次同步时移除 Obsidian 对应文件# 安装依赖
npm install
# 开发模式(监听文件变化)
npm run dev
# 构建生产版本
npm run build
本插件与 inBox Android/Flutter 版本共享数据格式:
XBlock:笔记数据结构XTag:标签数据结构XResourceInfo:资源信息结构MIT