Skip to content

Chat Composer

The composer is the text box at the bottom of the TUI where you type prompts. It’s more than a plain input — it has autocomplete for files and commands, supports multi-line input, and drives the option lists the agent shows you.

Keys Action
Enter Send the prompt
Shift+Enter Insert a newline (keep typing)
Ctrl+J / Ctrl+Enter Insert a newline (portable alternatives; prefer these inside tmux)
Ctrl+L Select all composer text
Cmd+A / ⌘A Select all composer text on macOS, when forwarded by the terminal
Ctrl+A Move to the start of the current line (intentionally not select-all)
Ctrl+U Delete backward to the start of the line; at line start, delete the previous line
Ctrl+Shift+V Paste an image from the system clipboard
Alt+V Paste an image from the system clipboard (portable alternative when Shift chords fail)

Ctrl+L is the portable select-all shortcut because Ctrl+A is preserved for terminal-style line navigation. Some macOS terminal emulators reserve Cmd+A for terminal scrollback selection before the TUI can see it; Ctrl+L still works in the composer.

Inside tmux or screen, Shift-modified keys often never reach the app. Use Ctrl+J for newlines and Alt+V or /attach for images. See Terminal & tmux shortcuts for optional tmux config to restore Shift+Enter.

You can keep typing while the agent is still generating. Pressing Enter during an active turn does not interrupt the current response — it queues your text as a follow-up prompt. While a turn is active, the composer status changes to Queue a follow-up… to make this clear.

Queued follow-ups appear in the transcript as Queued entries and are summarized in a small queued-messages panel above the composer. When the current turn finishes, Kolega Code sends queued prompts automatically in FIFO order, and each queued entry becomes a normal user message as it is sent.

File mentions and image attachments submitted with a queued prompt stay attached to that prompt. Interactive prompts still take precedence: explicit questions, tool approval prompts, and planning decisions must be answered before queued follow-ups can drain.

If you cancel the active turn with Ctrl+C or Escape, queued follow-ups are restored into the composer instead of being silently sent. To discard pending follow-ups without stopping the active turn, run /queue-clear.

You can attach images for vision-capable models in several ways:

Method How
System clipboard Ctrl+Shift+V or Alt+V, or run /attach with no path
File path /attach path/to/image.png
File mention @screenshot.png (supported image extensions only)

Use /detach to clear pending attachments before sending. On a non-vision model, Kolega Code warns and blocks the send until you detach or switch models.

Type @ to reference a file. A fuzzy-searchable dropdown of project files appears as you type:

Explain @src/main.py and how it wires up the CLI
  • The file index is gitignore-aware, so ignored files don’t clutter the results.
  • Mentioned files are attached to your prompt so the agent has their contents.
  • Mentions also work in kolega-code ask.

Type / at the start of the composer to run a command. A dropdown shows matching commands with descriptions:

/model Show or switch the active model
/effort Show or set the active thinking effort
/plan Switch to plan mode
/context Show current context token count

See the Slash Commands reference for the full list. Commands come from three sources — the agent’s built-ins, the TUI, and any project Skills.

Both @ and / open the same kind of dropdown. Navigate it with:

Keys Action
Up / Down Move between matches
Tab Accept the highlighted match
Enter Accept (or send, if no dropdown is open)
Escape Dismiss the dropdown

When the agent asks you to make a choice — answering a question, or deciding what to do with a finished plan — the options appear as a vertical list above the composer:

Keys Action
Up / Down Move the highlight
19 Select an option by number
Enter Confirm the highlighted option

When the list closes, focus returns to the composer so you can keep typing.

Keys Action
Ctrl+C / Escape Cancel the current generation
Ctrl+Q Save the session and quit