/monitor, so it works with no .smithers/ pack installed and no UI code written. It is pure observation: opening it launches no run, no workflow, and no agents.
10-second quickstart
bunx smithers-orchestrator ui does (explicit --gateway probe, then runtime-state discovery, then the legacy port probe on --port, default 7331) and autostarts smithers gateway when none is running. Disable autostart with --no-autostart; --no-daemon or SMITHERS_NO_DAEMON=1 disables daemonized autostart. It then opens the gateway’s /monitor page in the browser, deep-linking ?runId= when you passed a run id, and prints a { opened, url, gateway, runId } envelope.
What you see
- Grouped runs list: needs-attention, active, completed, failed, and cancelled groups with search, status and workflow filters, and live elapsed clocks.
- Execution tree per run: the paths through running or failed nodes auto-expand, so the thing you are looking for is already open.
- Node inspector: the selected node’s output and tool calls.
- Live event log: with a follow mode that tracks the newest events.
- Approvals inbox: every pending gate across all runs, with approve/deny inline.
- Run actions: cancel an active run or resume a failed/cancelled one.
- A truthful connection badge: Live when the gateway stream is up, Offline when it is not.
- Deep links:
?runId=and&nodeId=address a specific run and node, so URLs are shareable.
How it relates to the other surfaces
| Surface | What it is for |
|---|---|
bunx smithers-orchestrator monitor | Watch all runs live in the browser: triage, approvals, and drill-down with zero setup. |
bunx smithers-orchestrator ui | Open one workflow’s own custom UI (.smithers/ui/<workflow>.tsx), purpose-built for that workflow’s domain. |
bunx smithers-orchestrator ps / logs / inspect | The terminal watch loop: scriptable, agent-drivable, works over SSH. See the CLI catalog. |
monitor workflow, which had to launch a durable run of agents just to look at another run. The command observes directly through the gateway instead.