ACCOUNT(7)Miscellaneous Information ManualACCOUNT(7)

account — invitations, ssh keys and host keys

The account is a user name and a set of ssh keys. Any of the keys logs in, to chroot.dev and to every VM.

During the beta, accounts are created by invitation. Ask at contact@chroot.dev; you get a one-time code by email. Connect with the key you want to use and type the code, then a user name of lowercase letters, digits and hyphens:

$ ssh -t -o IdentitiesOnly=yes -i ~/.ssh/id_ed25519 chroot.dev
invite: code
email: alice@example.org (from the invite)
user: alice

ssh(1) offers every key in your agent and the first one accepted wins, so name the key explicitly, here or in ssh-config(7).

A code given some other way asks for an email address too, and sends a second code to it; type that one at ‘code:’. It expires in 15 minutes. The address is used for notices about the service, never for ads.

At ‘user:’, ‘github:user’ or ‘sourcehut:~user’ takes the name and the public keys of that account, as published at ‘https://github.com/user.keys’ and ‘https://meta.sr.ht/~user.keys’. The key you connect with must be one of them. A different name may follow: ‘github:alice al’.

The keys are copied once; later changes on GitHub or sourcehut do not reach chroot.dev.

chroot.dev and chroot.run share one host key:

ED25519 SHA256:y0rdGMRXmIFbxKPP6Qhmcx6Npr/rH8PdfYEgv+zehoo

Compare it before the first connection:

$ ssh-keyscan -t ed25519 chroot.dev 2>/dev/null | ssh-keygen -lf -

Your ssh never sees the host keys of the VMs: the connection ends at chroot.run, which reaches the VM over the internal network.

Add the key of another machine from one that already works:

$ ssh chroot.dev ssh-key add < ~/.ssh/id_laptop.pub
$ ssh chroot.dev ssh-key add github:alice
$ ssh chroot.dev ssh-key list

Keys added later reach running VMs on their next boot.

ssh-key(1), whoami(1), chroot.dev(7), ssh-config(7)

chroot.devOctober 7, 2026ACCOUNT(7)