boxd connect staging and lands on the same machine. Unsharing only changes who can reach it, never who’s billed.
One command, and the whole org can reach the machine.
Sharing controls team access, and the web URL is a separate thing. The machine’s
https://name.boxd.sh URL is already public to the internet. Sharing decides which teammates can get a shell on the machine.The credential handoff
A machine you’ve been working on holds your personal agent logins on disk. Claude Code, Codex, and OpenCode keep their tokens in your home directory, and the moment a machine becomes reachable by the rest of your team, those tokens should not be sitting there for anyone with a shell to read. boxd enforces this for you. Sharing a machine wipes the in-VM agent credentials the moment it goes shared:Unsharing brings your logins back
Runboxd machine unshare and the machine is private to you again. Your agent logins come back too:
- Claude Code re-authenticates automatically. boxd restores your Claude login the next time you start a session on the machine.
- Codex and OpenCode need a one-time
codex/opencodelogin on the machine. After that they persist normally, because a private machine is never wiped.
Fork a shared machine for private work
Forking a shared machine gives you a private fork by default. The org keeps paying, the copy is yours alone, and your agent logins work in it right away:--shared when you want the fork to stay open to the org. Forking a personal machine is unchanged, and the fork stays personal.
At a glance
See the CLI reference for every flag, and Authentication for the billing and context model.