Rate agent replies and branch a chat from any message
In the UI: each agent reply in Chat has Good and Bad ratings, kept per person, and Branch into new chat, which copies the conversation up to the end of that reply’s turn. Every message you send shows one status row (Sending, Queued, Thinking, Working, Worked for) and Retry if it was not delivered.
In code: POST /v1/sessions/{id}/messages accepts an optional
client_message_id. Sending the same one again returns the stored message
instead of starting a second turn, and the response reports whether the message
started, steered or resumed a turn. The CLI takes --client-message-id.
See Chat and threads and #4502, #4494, #4480.