Smith::Presentation
Inherits Reference < Object
How a run talks to the human, and how it asks them things.
There are two of these — plain lines and the fullscreen UI — and almost
everything that differs between them is a constructor: which renderer the
event stream goes to, which approver asks about a tool call, which gate
reviews a plan, where a hook's warning lands. Gathering them here is what
keeps the CLI from growing another if fullscreen? every time the UI
learns to do something new.
What it deliberately does not decide is whether to ask: --yes, a
missing TTY and plan mode all settle that before anyone gets here. This
only knows how the asking looks.
Instance methods
Where diagnostics that are nobody's event go — a hook warning, an MCP server that would not start.
One line of incidental text: a chat command's answer, a note about shutting jobs down. Not an event, and not part of the transcript.
Lines that are already laid out — a table, a breakdown — and must be shown as they are.