Docs contents
DOCS / WORKING IN THE DESKTOP
A ticket's detail and activity
Open a ticket to read its notes, touchpoints, and activity, follow the agent's run live, and message or pause the agent working on it.
A ticket is the unit an agent is actually given. Its screen puts everything about that ticket in one column: what was asked, what changed, what the agent wrote, and the ways you can reach the agent while it works or after it stops. For the terms, see seats, hands and lines.
Get to a ticket
- On the board, press a manifest's card. This opens the manifest's detail view.
- Its Tickets list shows every ticket on the manifest. A ticket's summary icon opens its completion note, or the latest progress update if it is still running.
- Press a ticket's row to open the Ticket screen. The ‹ chip at the top, followed by the manifest's key, takes you back to the manifest.
What the Ticket screen shows
- Notes: the ticket's plan and deliverable, with the revision it was last written at.
- Touchpoints: the ticket's ordered steps.
- Resources: the files the ticket changed in its working copy. The Open button in that section opens the working copy in another app.
- Mentions: the seats on record for this ticket (the seat holding it, and any seat whose run left events on it), each with a note on whether it can be reached now.
- Activity: the ticket's ledger history, newest first, with a read receipt on each message sent to its agent.
Follow the run
Below Activity is the Hand card for the agent on this ticket, labelled with its seat. A badge shows its state: never dispatched, live, paused or ended. Beside it is the time of its last activity, such as last activity 12m ago.
While the agent runs, what it writes appears in the card as it happens, with no need to reselect the ticket. Runtimes that do not produce a structured transcript show the raw log instead. If the ticket was never dispatched, there is no card. A line names the hm run dispatch command that would start one.
The card's action row offers:
- Pause freezes the agent where it is. The run is kept, not ended.
- Terminate ends the agent and records why.
- Ask for a plan fills the message box with a request for the agent's plan. You still press send.
The row also shows Resume the run, but only as a note. hm has no command that unfreezes a paused run. To start the work again, dispatch it from the board.
Message the agent
Which box you get depends on the run's state. You never get two at once.
- Live run: Mail. Write a message and press Queue message. An agent cannot be interrupted mid-run, so hm holds the message until the agent next checks its mail. The message reads QUEUED · not yet read until the agent actually picks it up, then READ at the time it did. If the seat has no
hmtools, nothing will ever collect the message. The pane says so instead of showing a box. - Still unread? While any message is unread, a row of next steps is shown: Pause, then Converse, then Re-dispatch. Only Pause is a button. The other two tell you where to go next.
- Paused or ended run: Hand Session. Press Resume the session to reconnect to the agent's own conversation and talk to it. Replies are labelled with its seat, and Stop ends the reply in progress. This does not start the work again. Leaving the ticket closes the session.
The Activity list is what the run wrote while it ran. The Hand Session is a separate conversation you have with the agent afterwards, and it is recorded separately.
Advanced
From the command line
hm ticket activity <ticket-id> # the ticket's history, with mail receipts
hm manifest activity <manifest-id> # the same, across every ticket on a manifest
hm run log <ticket-id> # the tail of the run's own log
hm ticket mail <ticket-id> --body "..." # queue a message for the running agent
hm run pause <ticket-id> # freeze the running agent
hm run terminate <ticket-id> # end it, with an audit trailChecked against crates/hm-desktop/ui/src/lib/mail.ts, reviewed 2026-09-14. That file is what makes these steps true; this page is a reading of it, and is not where it is edited.