Chat
The chat panel is the primary interface for interacting with the AI agent in each session. It provides a rich input bar, a structured message list, and several productivity features for working with large or complex conversations.
Message input
Section titled “Message input”The input bar sits at the bottom of the chat panel. It accepts multiline text and supports several input modes:
- Plain text — type and press
Enterto send (orShift+Enterfor a newline). - Slash commands — type
/to open the command menu (see below). - File references — type
@or use the file reference button to attach file paths as context chips. - Image upload — paste an image from the clipboard or use the attachment button to pick a file. Uploaded images appear as thumbnails in the input area before sending.
- Voice input — see the Voice Input page for details.
Slash commands
Section titled “Slash commands”Typing / in the input bar opens a categorized command menu. Commands are divided into two groups:
System commands (built-in):
| Command | Description |
|---|---|
/help | Show available commands |
/clear | Clear conversation history |
/compact | Compact conversation to save context |
/model | Switch AI model |
/cost | Show session cost breakdown |
/doctor | Run diagnostic checks |
/review | Review code changes |
/diff | Show uncommitted changes |
/fork | Fork the current conversation |
/memory | Edit CLAUDE.md files |
/permissions | View and update tool permissions |
/plan | Enter plan mode |
/rename | Rename the current session |
/resume | Resume a previous session |
/rewind | Rewind to a previous point in the conversation |
/tasks | List background tasks |
/context | Visualize context window usage |
/export | Export the conversation |
/copy | Copy the last response to the clipboard |
/fast | Toggle fast mode |
/vim | Toggle vim editing mode in the input bar |
/add-dir | Add a working directory to this session |
/config | Show configuration |
/init | Initialize project settings |
/btw | Ask a side question without consuming session context |
/bug | Report a bug |
/skills | List available skills |
Skill commands (dynamic): any skill marked userInvocable: true in its manifest is automatically listed in the SKILLS section of the menu.
Navigate the menu with arrow keys and confirm with Enter, or click a command directly.
File reference chips
Section titled “File reference chips”Type @ in the input bar or press the file attachment button to add a file path as a reference chip. Referenced files are included as context when the message is sent. Chips can be removed individually before sending.
A directory can also be added as a reference, appearing as a directory chip rather than a file chip.
Image gallery
Section titled “Image gallery”Uploaded images are shown as thumbnails in the input bar. Click a thumbnail to open the full-size image in a dialog. Multiple images can be attached to a single message. Images are encoded and sent as part of the message content.
Context meter
Section titled “Context meter”A circular progress indicator in the toolbar shows how much of the model’s context window is currently used:
- Green — below 50% used
- Amber — 50–80% used
- Red — above 80% used
When usage exceeds 70% and there is enough message history, the meter also displays a prediction of how many interactions remain before the context is full. Hovering the meter shows a tooltip with the exact percentage.
Use /compact to summarize the conversation and free context space when you are running low.
Token bar
Section titled “Token bar”Alongside the context meter, the token bar tracks cumulative token usage for the session including input tokens, output tokens, and cache hits.
Markdown rendering
Section titled “Markdown rendering”Agent responses are rendered as formatted Markdown. Supported elements include:
- Headings, paragraphs, and horizontal rules
- Bold, italic, and inline code
- Fenced code blocks with syntax highlighting (same highlighter as the editor)
- Tables (GitHub Flavored Markdown)
- Ordered and unordered lists, including task lists
- Blockquotes
- Links (open in the system browser)
- Images
Thinking blocks
Section titled “Thinking blocks”When the agent uses extended thinking, the intermediate reasoning is shown as a collapsible Thinking block in the message list. Click the block to expand and read the agent’s internal reasoning. The block header shows the timestamp of when thinking occurred.
Tool cards
Section titled “Tool cards”Agent tool use is displayed as structured cards inline in the message list rather than raw text:
- Bash — shows the command and its output, with a risk classification indicator
- Edit / Write / Read — shows the file path and a diff or content preview
- Web fetch / Web search — shows the URL and a summary of results
- MCP tools — shown as generic tool cards with input and output
- Subagent — shows a nested agent invocation with its own message thread
- Task list — shows a checklist of agent-defined tasks and their statuses
Message branching
Section titled “Message branching”The message list supports branching: if a message was sent at a point in the conversation that has since been rewound or forked, the list shows a branch indicator. You can navigate between branches to compare different continuations of the same conversation.
Working indicator
Section titled “Working indicator”While the agent is active, a pill-shaped status indicator appears below the message list showing the current state — Thinking…, Generating…, or the name of the tool being executed, along with elapsed time. When the agent finishes, the indicator briefly shows Completed in Xs before disappearing.
History search
Section titled “History search”Press Ctrl+R inside the input bar to activate reverse history search. An overlay bar appears above the input showing the current query and the match position (e.g., 2/7). Type to filter through previous messages you have sent in this session. Press Ctrl+R again to cycle to the next match, Ctrl+C or Escape to exit search and restore the original input.
Side questions
Section titled “Side questions”Use /btw to ask a question without consuming the main session context. The question is answered using a separate lightweight call and the answer is shown as a side-question card in the message list. This is useful for quick lookups that do not need to be part of the agent’s working memory.