Spacedrive:跨设备文件管理,一个入口搞定所有

GitHub 上斩获 38k+ Star 的开源文件管理器 Spacedrive,把跨设备文件管理这件事做明白了。

正文顶部截图

Spacedrive 是一个跨设备数据平台,用一套虚拟分布式文件系统把本地磁盘、外接硬盘、NAS、云存储里的文件全部拉到一个界面里管理。支持 macOS、Windows、Linux、iOS 和 Android。

它不只是个文件浏览器。每个文件会生成一个 BLAKE3 内容哈希,同一个文件在不同设备上哈希值相同。Spacedrive 据此追踪冗余和去重,不管你有多少台设备,文件只存一份。

P2P 同步,不走云

设备之间通过 Iroh/QUIC 直接连接,没有中间服务器,没有单点故障。元数据在设备间同步,文件本身留在原处。所有 P2P 流量走 QUIC/TLS 加密,库也可以用 SQLCipher 落盘加密。

没有遥测,没有数据采集,完全本地优先。

云存储也能管

Spacedrive 把 S3、Google Drive、Dropbox、OneDrive、Azure、GCS 当成一等公民的卷来挂载,和本地存储平起平坐。

README区域截图

九种视图,按需切换

网格、列表、分栏、媒体、体积、最近、搜索、知识、splat,九种浏览方式。QuickPreview 支持视频、音频、代码、文档、3D 和图片的快速预览。

数据归档,不止文件

通过脚本适配器,Spacedrive 还能索引外部数据源:Gmail、Apple Notes、Chrome 书签、Chrome 历史、Safari 历史、Obsidian、Slack、GitHub、日历、联系人。每个数据源变成一个可搜索的仓库,和文件放在一起。

适配器就是一个文件夹,里面放一个 adapter.toml 清单和一个同步脚本,脚本能读 stdin、能输出行就行。不限语言。

AI 安全屏障

Spacedrive 内置了一套安全筛查流程,每条记录在进入索引前都要过一遍:

Prompt Guard 2 是个本地分类器,专门检测邮件、消息、文档里的提示注入。自己写的内容走宽松筛查,外部来源(比如收件箱)走严格筛查。被标记的记录隔离起来,不参与 AI 查询,可以在桌面端审查。

搜索结果附带信任元数据,AI 代理能区分哪些内容安全、哪些不可信。

Spacebot:内置 AI 代理

Spacedrive 集成了 Spacebot,一个开源的 AI 代理运行时。Spacebot 作为独立进程运行,Spacedrive 负责数据、权限和执行层。每个 Spacebot 实例绑定一个 Spacedrive 节点作为主设备,通过 P2P 连接到库里的所有设备。

你可以用手机和代理对话,任务在服务器上执行。代理读 NAS 的文件、在工作站跑命令、把结果报到笔记本,一个任务串起来。

所有操作都过 Spacedrive 的权限系统:哪些设备可访问、哪些路径可读写、哪些操作需要人工确认。一套安全模型,一个审计面。

技术栈

核心是 Rust 写的单 crate,CQRS/DDD 架构。每个操作(文件复制、标签创建、搜索查询)都是注册的 action 或 query,类型安全的输入输出自动生成 TypeScript 类型给前端用。

数据库用 SQLite(SeaORM + sqlx),P2P 层用 Iroh,向量搜索用 LanceDB + FastEmbed,云存储用 OpenDAL,桌面端用 Tauri 2,移动端用 React Native + Expo,前端是 React 19 + Vite + TanStack Query + Tailwind CSS v4。

安装

需要 Rust 1.81+、Bun 1.3+、just、Python 3.9+。克隆仓库后跑 just setup 装依赖,just dev-desktop 启动桌面端。

Python 3.9+。克隆仓库后跑 just setup 装依赖,just dev-desktop 启动桌面端。

Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐