start_session
Start a sealed X11 or Wayland session with its own display, D-Bus, accessibility bus, and scratch home so agents can run GUI programs apart from the desktop.
Instructions
Start a sealed session: a display of its own (X11 under Xvfb, or Wayland under a headless sway), its own D-Bus and accessibility bus, and a scratch home. Nothing in it reaches the desktop of the person you're working for, and nothing of theirs reaches it. The answer gives its name, display and size, the programs spawn_program can start in it, and anything it couldn't seal. It lasts until stop_session.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| tz | No | Its time zone, Europe/Berlin (UTC) | |
| net | No | A network its programs share and nothing else is on: nothing reaches in or out | |
| a11y | No | An accessibility bus (default true) | |
| dark | No | GTK and libadwaita's dark style | |
| name | No | What to call it (s1, s2... by default) | |
| audio | No | A sound server whose sink plays to nowhere | |
| clock | No | ISO 8601, 2026-09-26T18:40:00, in tz or UTC: where its wall clock starts and runs on from, so dates in pictures don't change (needs libfaketime) | |
| usage | No | Say, when it's stopped, what its programs used: peak memory and CPU time | |
| screen | No | WIDTHxHEIGHT (1280x800), up to 7680x4320 | |
| wayland | No | Wayland, not X11 | |
| gamepads | No | Virtual Xbox 360 pads, for use_gamepad | |
| identity | No | USER@HOST: who and where its programs are, for whoami, hostname, ls -l and $USER | |
| xwayland | No | Wayland, with Xwayland for X programs | |
| text_scale | No | Their text size, 1.25 for 125% | |
| high_contrast | No | Their high contrast style |