02. Everyday Conversation and the Screen

Send, queue, and cancel

Type what you want, send it, and stay in control while the assistant works. MatchaCode has no official cloud and no MatchaCode account.

Sending a prompt starts a turn. It does not lock the composer. You can queue the next message, interrupt and send now, or cancel and keep the draft.

A turn is one assistant pass: it streams into the scrollback above the prompt (replies, shell commands, file edits). While that pass is running, plain Enter does not start a second turn. It queues the text you just typed. Queued follow-ups run after the current turn ends.

Send now stops the current turn and runs your message next, so the new prompt always lands at the bottom of the transcript. Background tasks, sub-assistants, and the rest of the queue keep running.

Cancel stops the running turn without sending anything. Esc keeps the draft. Ctrl+C clears a non-empty draft first.

Queue when you want the assistant to finish. Send now when you want it to change course. Cancel when you want the keyboard back. The shortcuts bar at the bottom shows the keys for the current state: idle, running, or queue open.

Send

KeyWhenWhat happens
EnterIdle, prompt focusedSend the current prompt and start a turn.
Shift+Enter or Alt+EnterPrompt focusedInsert a newline.
Ctrl+M or /multilinePrompt focusedSwap those two: Enter inserts a newline and Shift+Enter / Alt+Enter send. Session-only; not written to config.toml.

Queue

Key or commandWhat happens
Enter with text, turn runningQueue that text. It waits for the current turn to finish.
Enter on an empty composer, turn running, something queuedSend now the top queued follow-up. You do not need to open the queue pane.
Ctrl+; (alt Ctrl+')Toggle the queue pane when it is non-empty.
/queuePrint a read-only list of what is waiting. Works in fullscreen and minimal.

The queue pane [Send now] button (or the send-now chord on a focused row) sends the selected row. From the prompt, send-now always takes the top row.

Queued follow-ups hold while the assistant is blocked on background tasks or a sub-assistant. A hint explains the hold. While it is blocked waiting, plain Enter with text also delivers immediately: Matcha CLI cancels the blocked turn and runs your message next.

/queue does not edit the list. Use the queue pane in the full TUI for that.

/queue

Send now

This chord means “stop what you are doing and take this”:

TerminalPrimaryAlternates
DefaultCtrl+EnterCtrl+I
Apple TerminalCtrl+OCtrl+Enter, Ctrl+I
VS Code familyCtrl+Lnone
  • Non-empty composer → cancel the current turn and send that text now.
  • Empty composer + a queued follow-up → send the top queued row now.
  • Idle, or empty composer with nothing queued → no-op.

To hand the assistant a note without stopping it, queue with plain Enter.

Cancel

GestureEffect
Esc while a turn is running (default)Cancel immediately. The draft is kept. Works from the prompt or the scrollback.
Esc while a turn is running, fullscreen vim modeSwallowed. It does not cancel. Use Ctrl+C or the command palette.
Esc while a turn is already cancellingRe-sends cancel in every mode (retry if the first ack was lost).
Ctrl+C with a non-empty draft, turn runningClears the draft and keeps the turn. A second Ctrl+C on the empty prompt cancels.
Ctrl+C on an empty prompt, turn runningCancel.

Idle Esc is not cancel: two Esc presses within 800ms clear a non-empty prompt, or open the rewind picker on an empty prompt that already has messages. After an Esc-triggered cancel, rewind stays suppressed for about a second so mashing Esc cannot open it by accident.

Ctrl+C while cancelling escalates toward quit. Ctrl+Q (or Ctrl+D in VS Code-family terminals) quits after a double-press.