Docs/Cockpit (browser)/Working in a session
Cockpit

Working in a session

5 min read

Select a session in the rail and its page opens on the right. This is where you watch what an agent is doing and steer it - the same controls you have on the desktop Director, in a browser tab. The page has four tabs across the top, an action bar, and a message box at the bottom.

Four views of one session

The Terminal, Chat, Voice, and Source Control tabs are four views of the same live session. Switching tabs never disconnects the session: the live connection stays open in the background, so you can move between them without dropping a beat.

Terminal

The Terminal tab is the live terminal, mirrored exactly as it looks on the machine running the agent - the raw, plain terminal, character for character. It is the ground truth: whatever the agent's command-line tool prints, you see here. It takes input too: click into it and your keystrokes are forwarded to that same terminal, just as if you were typing at the desktop.

Chat

The Chat tab is the same conversation, cleaned up and made readable: the agent's replies and your prompts as chat bubbles, with Markdown rendered so lists, code, and emphasis look right. It updates live as the agent works. A Show: filter lets you reveal the parts that are hidden by default - Tool calls, Results, and Thinking - so you can read just the conversation, or open up every step the agent took.

What you are reading is the copy the machine running the agent pushed up to your Gateway as each turn finished - which is why a conversation you have already had stays readable when that computer is briefly unreachable. Two things follow, and you will see both on screen. A conversation that has stopped being added to carries a line above it saying so, and why - so an hour-old conversation never looks live. And when there is nothing to show, the Gateway writes the reason rather than always telling you to wait: a session that has not spoken yet, an agent that keeps no history at all, and a computer that is offline are different answers, and only one of them means something is coming.

Voice

The Voice tab is Wingman - a hands-free way to keep up with a session without watching the screen. While voice is off for this session the tab offers one button, Switch to voice mode. Turn it on and every completed turn with a written answer in it is sent for narration - Wingman summarizes what the agent decided and did in plain language, so you can step away and still follow along. A clip is not guaranteed: when one cannot be made, the tab says which reason it was rather than going quiet, and Voice on your phone lists those answers in full. When a turn is ready, a small player lets you play and pause, restart, or seek through it, and a Respond button lets you answer back by voice instead of typing.

While a narration is being made, the tab shows what the Gateway says about it and how long it has been waiting - and it stops promising. After three minutes with nothing produced it says so plainly, with the elapsed time, instead of leaving a spinner up forever. The Gateway keeps trying; what ends is the promise, not the effort.

When voice cannot happen, the tab names the reason instead of showing a symptom: Nothing to read aloud (the session is waiting on a prompt or a menu, not a text answer), Voice service down, Voice needs credit, and Update DevThrottle when the computer running the session is too old to send its conversation up. A Generate narration now button appears only when the Gateway says generating one could actually help - never beside a reason it would not.

Note
A clip occasionally arrives with a short notice that it was produced by a backup voice. It is a normal, playable narration; the notice is there so a voice that sounds different does not read as a fault.
Tip
Wingman pairs well with the mobile app. Turn notifications on in the app and your phone shows a silent dot on the app icon when a session needs you - the Gateway checks every eight seconds. It is off until you turn it on, and on a phone it has to be the installed app rather than a browser window. Then listen to what the agent did and answer by voice from wherever you are.

Source Control

The Source Control tab is a read-only view of the session's repository. Click a file and its path is inserted into the message box, ready for your next instruction about it. For reviewing what an agent changed in depth, see Source control and history.

The action bar

Below the session sits a row of controls for the agent itself:

  • Stop - halt what the agent is doing now.
  • Interrupt - cut in while it is working to add or change direction.
  • Compact - summarize the conversation in place, freeing up the agent's context window while keeping what the session has learned.
  • Clear context - start the conversation fresh without closing the session.
  • History - read back the earlier conversation for this session.

Compact and Clear context both ask before they act, and the two questions are worded unalike on purpose: compacting keeps what the session has learned, clearing destroys the conversation. Two confirmations that read the same would train one reflex for two opposite outcomes. Compacting can take a minute or two, and the button says so while it runs.

These are the same steering controls documented for the Director under starting and steering agents - they behave the same way from the Cockpit. Each button appears only when the session's coding agent supports that action, so a session may not show all of them.

The message box

At the very bottom is the composer, where you talk to the agent. It has four actions:

  • Send - send your message to the agent now (Ctrl+Enter also sends).
  • Speak - open the dictation dialog and talk your message straight into the box instead of typing it. This is the same dictation used everywhere in DevThrottle, and it runs through your Gateway on one shared path - so it behaves the same on desktop, in the browser, and on your phone. See Voice.
  • Queue - add the message to the session's prompt queue instead of sending it right away (Ctrl+Shift+Enter queues). It waits there until you send it.
  • Attach - add an image. The Cockpit uploads it from the device you are on to the machine the session runs on, saves it there, and inserts the saved path into your message so the agent can open it. Pasting an image into the box and dragging one onto it do exactly the same thing.

The dock

On the right of the session page is a dock with two panels:

  • Queue - the session's prompt queue: the prompts you have queued, in order. Each waits there until you send it.
  • Screenshots - a gallery of the image files in the screenshots folder on the machine this session runs on. It lists six types - .png, .jpg, .jpeg, .bmp, .gif and .webp - so a file of any other type sits in that folder without appearing here.

The session menu

The three-dot menu at the top right of the session page is the same session menu that sits on each rail card: Rename, Snooze or Unsnooze, Snooze for (pick a length instead of your default), Handover info, and Close session.

Warning
The Handover info dialog is filled in live: the Gateway asks the Director that owns the session, and the Director answers from the running session itself. So the dialog depends on that Director being connected - if it is offline, or running a version too old to answer, the dialog reports an error instead of showing stale details. The dialog does not retry on its own: once the Director is back, close it and choose Handover info again.
Note
Everything you do here executes on the machine the session lives on, not on the device in your hand. The Cockpit is a view onto that machine, served by your own Gateway.

Where to go next