youros

How it worksUsing it

First minute

The flow is four steps:

  • Land. The browser makes a keypair, then redirects to a random name such as brave-otter-42.your.os. The key is the account.
  • First boot. Three panes: the welcome note, Add a machine, Your devices.
  • Keep it. Pick a name and add a passkey in one step; the page reloads at alice.your.os. Until then the account is one browser's storage, and clearing site data loses it; this is the moment to fix that, not before the first wow.
  • Switch user. This browser's account names, never their keys.

One origin per person

A browser node's key is bytes any script on its origin can read, and storage, service workers and cookies are all per origin. On a shared origin one XSS reaches every account used in that browser. So your.os is on the Public Suffix List, like github.io, apps get origins of their own inside yours, and your own domain is a setting, later.

Renaming is the hard case. A plain reload at the new name lands on empty storage with no key, so the old page opens the new one as a top-level window (an embedded frame would get partitioned storage) and hands over the grant by postMessage, checking origin both ways; the data arrives by sync, as it would to a new device.

Adding a machine

The install line carries a pairing code (pairing/one-key): the machine makes its own key, joins with the code through the relay, and appears in Your devices with what it may do. Its terminal is the first service the browser calls (terminal/reattach).