diff --git a/src/terminal/composer.rs b/src/terminal/composer.rs index 1d60d7a8..2d594377 100644 --- a/src/terminal/composer.rs +++ b/src/terminal/composer.rs @@ -149,6 +149,10 @@ pub(super) struct Step { /// unbracketed paste, and the Enter right behind a typed line for one of its /// newlines: the message sat in its input, never sent. A bracketed paste it /// knows for one, and reads its `!`, `?` and `/` off it as typed. +/// - **So is Prime Agent.** Its `@` list opens as a typed mention is +/// typed, stays open past the space after it, and takes the Enter: "read +/// @a.txt " went out as "read @a.txt .git/". A paste it reads whole, its +/// `!` and `/` included. /// - **A leading `!` goes to Claude Code, CodeBuddy, Gemini, Qwen Code and /// OpenCode on its own.** It /// switches the input into shell mode only when it is typed into an empty @@ -156,7 +160,7 @@ pub(super) struct Step { /// character. (Amp's shell mode is a leading `$`, which it reads off a paste /// as well.) /// - **A message with an `@` mention gets a space after it for Gemini, Qwen -/// Code and Copilot.** +/// Code, Copilot, Oh My Pi and Grok Build.** /// With the caret at the end of an `@` word it lists matching files, and /// Enter then takes the list's pick instead of sending — so a message whose /// attachments close it would sit in the input, under the box, unsent. @@ -194,7 +198,8 @@ pub(super) fn submit_plan(agent: CLIAgent, text: &str, bracketed: bool) -> Vec Vec