☰
Obsidian实时同步插件YAOS完全指南:零终端4步搭建自己的免费笔记同步引擎
2026/10/15 17:47:02 网站建设 项目流程

【免费下载链接】yaos

A zero-terminal, real-time sync engine powered by your own Cloudflare Worker.

项目地址:https://gitcode.com/gh_mirrors/yaos1/yaos
点击查看免费下载

YAOS 是一款免费的 Obsidian 实时同步插件,它让你只用 4 步、完全不碰终端,就能在自己的 Cloudflare Worker 上搭建一个真正的实时笔记同步引擎。相比 iCloud/Dropbox 的"冲突副本"和 Obsidian Sync 的年费模式,YAOS 采用 CRDT 合并语义——两台设备同时编辑同一篇笔记,改动会自动融合,而不是弹出一份"conflicted copy"让你手动比对。

为什么选择 YAOS 做 Obsidian 笔记同步?

很多新手对"同步方案"的第一反应是:iCloud 省事、Git 太麻烦、Obsidian Sync 太贵。YAOS 的思路是第三条路:把同步服务部署到你自己的 Cloudflare 账号里,用浏览器一键完成,全程无终端、无.env文件、无数据库配置。

冲突处理实时性部署方式需要终端费用
iCloud / Dropbox冲突副本无托管否免费
Obsidian Sync罕见冲突有延迟托管否$96/年
Git / LiveSync手动解决看配置自托管是免费
YAOSCRDT 自动合并实时自部署 Cloudflare否$0

数据来源:README.md。

对新手来说,"CRDT 合并"这个词听起来高深,实际体验就是:两边打字都不丢字。底层由 Yjs 引擎维护一份跨设备的实时 vault 状态,相关实现见 src/sync/vaultSync.ts。

YAOS 工作原理:3 分钟看懂架构

不需要深入代码,只需知道 YAOS 由两部分组成:

  1. Obsidian 插件(源码位于 src/):在你设备本地维护 Yjs 文档,监听文件变化,并把远端更新"物化"回本地磁盘——所以你的 vault 始终是普通 Markdown 文件,脚本、CLI 工具、AI Agent 直接改文件也能被同步(见 docs/architecture.md);
  2. Cloudflare Worker 服务端(源码位于 server/src/):每个 vault 对应一个 Durable Object 房间,负责存状态、发回执。

几个对新手友好的安全设计:

  • 保护优先:当磁盘、CRDT、编辑器三方内容不一致时,YAOS 会保留所有版本,而不是赌一个"赢家"(docs/sync-contract.md);
  • 安全刹车:单次同步若将覆盖超过 20 个本地文件且超过 vault 25%,会阻止覆盖并通知你(docs/sync-contract.md);
  • 服务器回执:状态栏显示的"已同步"表示服务器已持久化你的最新状态,而不是"另一台设备已收到",这是两个不同概念(docs/sync-contract.md)。

4步搭建 YAOS 实时同步:完整步骤

第 1 步:一键部署你的同步服务器

点击仓库首页的Deploy to Cloudflare按钮(对应部署入口为 server/ 目录)。Cloudflare 会在你的账号里自动创建 Worker 及所需的 Durable Object 绑定,配置文件见 server/wrangler.toml。默认部署为"纯 Markdown"模式,无需任何 Token 或存储桶。

⚠️ 新手提示:部署按钮会生成一个独立的部署仓库(与上游分离)。后续更新插件/服务器版本时,需在 YAOS 设置页使用Open update action触发更新工作流,流程见 docs/operations.md。

第 2 步:Claim 服务器,生成配对密钥

打开 Worker 的 URL,会看到 "Claim your sync server" 页面(页面实现见 server/src/setupPage.ts)。点击Claim按钮,服务器即锁定为你的专属服务,并自动生成 setup token 和移动端二维码。

这一步等于给你的同步引擎"上锁"——之后只有持有该 token 的设备能连接。

第 3 步:安装 YAOS 插件

在 Obsidian 中打开Community plugins,从 Marketplace 搜索YAOS安装并启用(插件元信息见 manifest.json)。

第 4 步:连接 Vault,开始同步

回到 Claim 页面,打开 setup 链接或用手机扫码,YAOS 会自动把服务器地址和 token 填入插件配置,无需手动复制粘贴。设置完成后,设置页顶部会出现 Sync status 分组,显示服务器地址、vault ID、设备名和实时状态(src/settings/settingsTab.ts)。

完事。你的 vault 已经在同步了。🎉

选配:开启附件同步与每日快照

纯文本同步开箱即用;如果你还需要同步图片、PDF 等附件以及每日自动快照,只需再花约一分钟创建一个 Cloudflare R2 存储桶并绑定为YAOS_BUCKET(配置示例见 server/wrangler.toml,说明见 docs/operations.md)。

开启 R2 后你会得到:

  • 📎 附件全文件同步(默认单文件上限 10 MB,见 src/settings/settingsStore.ts);
  • 📸 每日自动快照 + 手动快照,可以浏览历史版本、对比差异、按文件选择性恢复(快照服务见 src/snapshots/snapshotService.ts);
  • ⚙️ 设置页出现Attachment storage状态项,可刷新服务器能力(src/settings/settingsTab.ts)。

跳过 R2 也完全没问题——文字同步不受影响,只是没有附件同步和快照。

常用设置与命令速查

设置页关键项

在 Obsidian 设置 → YAOS 中(实现见 src/settings/settingsTab.ts):

设置项作用新手建议
Device name在其他设备的实时光标旁显示的设备名填 "My laptop" 这类好认的名字
Exclude paths排除同步的路径前缀,逗号分隔排除templates/, .trash/这类目录
Max text file size (KB)超过此大小的文本文件不同步默认 2048 KB 即可
Show remote cursors显示其他设备的实时光标和选区保持开启,体验"双人编辑"的直观感受
Pair another device为第二台设备生成配对链接/二维码换手机、平板时必用
Back up connection details导出"恢复套件",包含连接信息建议导出并存好,换机救急用

实用命令(命令面板搜索)

以下命令注册在 src/commands.ts:

  • Reconnect to sync server:手机端同步"卡住"时的第一选择;
  • Force reconcile vault with sync state:怀疑本地与服务器不一致时强制执行一次对账;
  • Take snapshot now/Browse and restore snapshots:手动打快照、恢复历史版本;
  • Import untracked files now:批量导入尚未跟踪的文件;
  • Reset local cache (re-sync from server):本地缓存出问题时清掉重拉;
  • Nuclear reset (wipe sync state and reseed from disk):核弹级重置——以磁盘为准重建同步状态,慎用。

故障排查:5 个最常见问题的解法

症状原因与解法
Unauthorized错误插件与服务器 token 不匹配,核对两处是否完全一致后重连
R2 not configured服务器还没绑定YAOS_BUCKET;不加也能同步文字,只是没附件/快照
手机端同步停止用 "Reconnect to sync server" 命令;确认网络可用
某些文件不同步检查排除路径和文件大小上限;打开 debug 日志看细节
状态一直等待回执重连并等待本地缓存加载完成;回执代表"服务器已存",不是"对方已收到"

更多排查细节见 docs/operations.md。排查时可用设置页的Show sync debug info本地检查;安全诊断导出会自动脱敏服务器 URL、vault ID、设备名和路径。

当前使用限制(先知道,不踩坑)

YAOS 的边界很明确(docs/operations.md):

  • 📁空文件夹不同步(文件夹由文件路径派生);
  • 📏 附件上传默认上限10 MB;
  • ⚙️.obsidian配置目录不参与同步;
  • 🖼️.canvas、.excalidraw等走附件通道(整文件传输),不做文字级合并;
  • 单 vault 对应单个 Yjs 文档,服务器内存上限 128 MB,超大 vault 用户留意内存增长。

小结

YAOS 用"零终端 + 4 步 + $0"的组合,把过去只有付费服务或 Git 极客才能拥有的实时无冲突笔记同步变成了普通用户也能完成的流程:部署 Worker、Claim、装插件、连 Vault。它把数据主权(自己的 Cloudflare 账号)和现代冲突处理(CRDT)结合,同时保留了 Markdown 纯文本的本色——对脚本和 AI 工具同样友好。

如果你正受够了冲突副本和同步延迟,不妨现在就花 10 分钟,给自己搭一个专属的 Obsidian 实时同步引擎。🚀

【免费下载链接】yaos

A zero-terminal, real-time sync engine powered by your own Cloudflare Worker.

项目地址:https://gitcode.com/gh_mirrors/yaos1/yaos
点击查看免费下载

相关推荐

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询