You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
chat: a queued message is pasted over a draft already in the agent's input #609
Reported by the merge lane for #601 (lane ext-601) while reviewing the pending-input path; pre-existing on main, not introduced by #601. Read from the code by the lane; not reproduced by the lead.
A queued chat message is delivered by pasting into the agent's input and pressing Enter (pendingContext and the delivery loop in server/index.ts). If the agent's input box already holds a draft the user typed in the terminal, the paste lands on top of it and the Enter sends both together. After #601 the same applies to a message Claude Code holds back for invisible characters once the ten-minute note of it has expired (HELD_WINDOW_MS in server/prompt.ts), or once it was edited in the terminal.
Expected: delivery waits (or refuses with a clear reason) while the input box is not empty, the way it already waits behind a prompt card. For Claude Code the box can be read from the screen (the ❯ line between the two rules; grey placeholder text is not a draft, see claudeGreyInput). Other agents need their own reader, or the rule stays Claude-only at first.
Activity
fix(chat): hold a queued message rather than paste it over a Claude d…