One drive for all your boxes

herdfs

.
Mount your space at every login.
Simple
Focus on your files, not free space.
Convenient
One space for all your boxes.
Shared
Sign in once, in your browser, with your own identity provider.
Files stream in as apps read them, so a huge space needs only a small cache on disk.
Your laptop, your servers and your agents share the same files, and every save reaches them all.

Any bucket. One space.

herdfs keeps your files in any S3-compatible bucket, on storage you own.
AWS S3
Cloudflare R2
MinIO
Backblaze B2
Google Cloud
Wasabi
DigitalOcean
Hetzner
Scaleway
OVHcloud
Ceph
Akamai
Vultr
Exoscale
Level up

Never wait for
     
a full download again.

Terabytes at your fingertips

Files open without a full download. A read fetches only the chunks it touches, straight from your bucket.

Works with the apps you use

A space is an ordinary folder. Editors, compilers, ffmpeg and Finder use it as they are, with no plugins.

Every save, a version

Each save becomes a version you can restore. Fork a whole space without copying a byte.

herdfs

Built for
     
people, boxes and agents.

Written in Rust, herdfs mounts one space on your laptop and every server you run.

Agents on call. Write a prompt into a folder and a session runs on that box.

Secure and private

The secure way
     
to share a drive

Version history

Browse a file’s history and restore any version in it.

Root gets nothing extra

Root on a box reads only what that box was granted.

Revoke means revoke

New grants stop at once. Open ones expire within 60 seconds.

No keys on your boxes

Only the authority holds your bucket’s credentials.

Any questions ?

FAQ

herdfs is one shared drive for all your boxes. Mount the same space on your laptop and on every server your agents run on, while the bytes live in an S3-compatible bucket you own. Read the docs.

Your files live in a bucket you own, behind one authority you run, instead of on someone else’s servers. herdfs fetches only the byte ranges an app actually reads, so a space can be far larger than any disk.

No. A mount uses local disk for metadata, a bounded cache, writes waiting to upload and the files you keep downloaded, never for a full copy of the space.

Yes. A space is an ordinary folder. Editors, compilers, ffmpeg, Finder and your agents use it like any other folder, with no plugins.

Files and folders you keep downloaded stay readable offline while the mount runs. Edits to existing files are journaled on your box and committed when you reconnect. Creating, renaming and deleting need the authority, so they fail until you are back online.

The last save becomes the current version, and the others stay in the file’s history for as long as your retention keeps them. You can restore any version in that history, and a restore makes a new one.

Linux, through FUSE, and macOS 26 or newer on Apple silicon, with no kernel extension and no admin password. On the Mac, a menu-bar app signs you in, mounts your spaces at login and adds Keep Downloaded, Version History and Share to Finder.

Any S3-compatible bucket, such as AWS S3, Cloudflare R2, MinIO or Backblaze B2. Chunks are named by their hash, so identical bytes are stored once.

One authority checks every request, and only it holds your bucket’s credentials. Boxes get short-lived grants for the chunks they may read, and every chunk is checked against its hash. Read more about our security here.

No. Root on a box gets no bytes beyond what that box was granted. Revoking access stops new grants at once, and grants already handed out expire within 60 seconds.

Make a folder under /.agents/<host>/, write a prompt file into it, and an agent session runs on that host. Its status and output appear as files beside the prompt. Starting one needs only write access to that folder. See the agents guide.

Show all questions