Scripting artuditu
artuditu’s UI and CLI are the same surface: a local JSON socket
(~/.artuditu/artuditu.sock). Whatever you can click, you can script.
The essentials
Section titled “The essentials”artu pane split --down # split the focused paneartu pane run 7 cargo test # run a command in pane 7artu pane read 7 # print a pane's recent outputartu wait output 7 --match "passed" # block until text appears (exit 0; 2 on timeout)artu wait agent-status 7 --status done --timeout 600artu attach 7 # open the TUI fullscreen into one paneartu events # stream every status change (ND-JSON)Agents scripting artuditu
Section titled “Agents scripting artuditu”Every pane gets $ARTUDITU_PANE_ID and $ARTUDITU_SOCKET_PATH injected, so
commands inside a pane default to that pane, so an agent can split itself a
scratch pane, run tests there, and wait on the result:
artu pane split --down # agent makes itself a helper paneartu pane run "$id" ./repro.shartu wait output "$id" --match "done" --timeout 300wait exit codes are script-friendly: 0 = condition met, 2 = timeout.
Watching everything
Section titled “Watching everything”artu events emits newline-delimited JSON for agent status changes, task and
lease activity, and more, which is ideal for a monitor loop or an orchestrator agent.
See orchestration
for the task/lease command set, and run artu help all for the complete
reference.
For raw JSON, external tools, delegated access, and harness integrations, see Automating with UHP.