sirioctl
sirioctl overview
The control-socket CLI: how it connects, how to identify yourself, and the command groups.
sirioctl talks to a running Sirio over a local socket and is the way scripts and agents drive the app. Sirio sets SIRIO_ENV=1 and SIRIO_PANE_ID (naming the current pane) in every terminal it launches.
[ "$SIRIO_ENV" = "1" ] || exit 1
sirioctl ping
sirioctl identify --json
Command groups
| Group | Commands |
|---|---|
| System | ping, version, capabilities, identify, quit |
| Workspaces | list-workspaces, new-workspace, select-workspace, current-workspace, close-workspace, worktree-set, restore-session |
| Panels | panel create | split | list | write | key | read | state | scrollback | wait | focus | close |
| Panes and tabs | pane split | focus | close, tab cycle | select |
| Surfaces | surface changes open | read | stage | unstage | discard | stage-all | discard-all, surface settings open | select | read |
| Notifications | notify, list-notifications, clear-notifications |
Add --json to any command for machine-readable output.
Identity, not selection
Every panel operation takes a --id. Capture the UUID a command returns and pass it back; Sirio does not infer a target from the current selection.