Sharing
Share one Thing, not your whole computer.
Everything on your computer starts private. Only you can open it. You can share a Thing with specific people or make it public. A site or service keeps the same address whoever can open it. A file has a separate address for each audience; empty things shows each Thing's current link.
| Audience | Who can open it | Command |
|---|---|---|
| Private | Only you. This is the default. | None |
| Named people | You, plus each person you name, after they sign in with Google | empty share olive --with alice@example.com |
| Public | Anyone, without signing in. Search engines can index it. | empty expose olive |
Share with someone
$ empty share olive --with alice@example.com
Shared olive with alice@example.com
Link: https://olive.yourname.emptyos.com/
EmptyOS queued an email with this link
They sign in there with Google as alice@example.com; no invitation or computer needed
This share opens only olive to them, not your Home, other Things, or Databases
EmptyOS emails the link to the person you named. The email comes from your Google name via EmptyOS and shows the recipient your Google account email; replies go to that address. The command reports whether an email was queued. Queued does not mean delivered. If no new email was queued, or the status is unknown, send the link yourself if they need it. Sharing the same Thing with the same person again queues no second email; that result says nothing about earlier delivery. The recipient opens it and signs in with Google as the address you named. If they have an EmptyOS computer, the Thing also appears under Shared with me on their Home page and in empty shared. They see the Thing's name and whether it is a file, site, or app.
Sites and apps built with the EmptyOS guidance end their header with an account badge: small initials avatars. You see your own avatar and the people you shared the Thing with. Click it to see their emails, and their names once they have opened something you shared. Someone you shared with sees their own account, your name, and how many other people can open it, but not who they are. They can also switch to a different account from it. Both links lead to the person's own computer. On a public Thing the badge shows a globe and the word Public instead, the same for everyone, including you.
To stop sharing, run empty unshare olive --with alice@example.com, or empty unshare olive --all to remove everyone.
Make something public
$ empty expose olive
Thing olive is now public at https://olive.yourname.emptyos.com/
Anyone on the internet can read it without signing in, and search engines can index it
Your other Things stay as they were
Make it private again: `empty unexpose olive`
$ empty unexpose olive
Thing olive is now private
To make something public as you upload it, add --public, as in empty put notes.html --as ideas --public. A static site whose thing.yaml sets visibility: public is also public as soon as you put it. Unexposing takes effect on the next request.
Before you share
- Check the files. Making a site public makes everything in its folder readable. EmptyOS does not scan for secrets.
- Shared apps are not read-only. People you share an app with can use its actions, and so can everyone once it is public. The app decides what each person can see or change. Public visitors are anonymous, even you.
- Undo does not remove people. Sharing with named accounts is not a file change, so Undo cannot reverse it. Use
empty unshare. - Opened content stays opened. Revoking access does not recall content someone already viewed or downloaded.
- Public keeps your share list. Unexposing a Thing lets the people you named back in. To make it owner-only again, run both
empty unexpose oliveandempty unshare olive --all.
What you can share
Files, sites, and services. A static site qualifies when it serves a folder inside its repository, such as dist, rather than the repository root. Create a service privately first, then share or expose it once it is running.
How the computer checks access on every request: Trust and privacy. Full rules for agents: The empty skill.