Skip to content

Screens / Watching the work

Run console with recovery

List every run, steer the ones in flight, and say what to do about the ones that stopped.

For: The people who run agents day to day.

Markdown

3 ways to lay it out

1. List and run detail

Pick it when: The default: a table of runs and the selected one's detail.

A run list on the left; on the right the selected run's log, state and a steer box.
  • Run logProEvery run, one line each, filterable to failures.
  • Run recoveryProA run that stopped, and what the person can do next.
  • Steer composerProSend a message into a run, and see whether the agent has picked it up yet.
  • Log streamProThe live log.
  • Agent screenProA computer-use or browser run's screen, saying who has control, with Take over and Hand back.
Install list and run detail

Pro and Premium items need a licence key; free ones install as they are.

2. Chat starts runs, console beside

Pick it when: Runs start from a conversation, and the person wants to watch them without leaving it.

A thread on the left; a column of running tasks and their states on the right.
  • Task trayProBackground work as one pill: how many are running and how many need you.
  • Agent activityProWho is working right now, in words.
  • Run logProThe runs the chat started.
Install chat starts runs, console beside

Pro and Premium items need a licence key; free ones install as they are.

3. A stopped run

Pick it when: A run failed, was cancelled or went quiet: the page leads with what can be done.

A recovery card with the reason and three choices, above the last lines of the log.
  • Run recoveryProWhy it stopped and the options: resume, retry, or leave it.
  • Run heartbeatProPast a threshold, "No update since 10:42".
  • Log streamProThe last lines, with gaps marked.
Install a stopped run

Pro and Premium items need a licence key; free ones install as they are.

Rules that matter most here

Already covered elsewhere

Brief for a coding agent

Paste this into the agent that builds the screen. The docs MCP server returns the same text from get_screen.

Build a run console with Candor UI. Start from the run-console block (run-console-claude for the Claude Agent SDK): an agent starts and steers runs from the chat, and a console lists every run with its log, trace and receipt.
List runs with RunLog; open one to show its LogStream, TraceViewer and RunReceipt.
RunHeartbeat shows "No update since <time>" past a threshold; it never calls a silent run alive.
A stopped run shows RunRecovery: why it stopped and what the person can do, with no option pre-selected.
SteerComposer sends a message into a run and shows whether the agent has picked it up yet, never as "read" before it is.
Say what a retry or resume repeats and what it skips.
Show background work as a TaskTray in the shell.

Start from the "List and run detail" layout: A run list on the left; on the right the selected run's log, state and a steer box.
Candor items: run-log (https://candor.themethodic.com/docs/run-log.md), run-recovery (https://candor.themethodic.com/docs/run-recovery.md), steer-composer (https://candor.themethodic.com/docs/steer-composer.md), log-stream (https://candor.themethodic.com/docs/log-stream.md), agent-screen (https://candor.themethodic.com/docs/agent-screen.md).
Install: npx candor-ui add run-log run-recovery steer-composer log-stream agent-screen
Read each item's docs before using it and take its props from there; don't guess them. Pro and Premium items need the person's licence key, which they add with `npx candor-ui key <key>`; don't ask for it.