Chat Interface

The heart of Broski - where you interact with your AI coding assistant.

Real-time Interaction
The chat screen streams AI responses in real-time, shows tool execution progress, displays file diffs, and handles permission requests - all from your phone.

App Bar

The top bar contains:

ElementDescription
Back ArrowReturn to previous screen
Session TitleCurrent session name
Project SubtitleProject folder name
Sidebar ButtonOpen session context panel
More MenuAdditional session actions

More Menu Options

Tap the three-dot menu for session actions:

OptionDescription
Fork SessionCreate a branch from current point
Share SessionGenerate shareable URL (OpenCode)
CompactSummarize old messages to save context
InitializeCreate AGENTS.md for the project

Claude Code Menu

When using Claude Code, additional options appear:

  • Model - Switch between Sonnet, Opus, Haiku
  • Tools - Configure permissions and enabled tools
  • Commands - View available slash commands
  • Skills - Browse loaded skills
  • Hooks - View active hooks
  • MCP Servers - Check MCP server status

Session Sidebar

Tap the sidebar button to reveal session context:

SectionInformation
Token UsageInput/output/cache read tokens
CostEstimated API cost in USD
Modified FilesList of changed files with +/- counts
TodosTask list (OpenCode)

Message Types

User Messages

Your messages appear on the right side:

  • Primary color background - Subtle accent color
  • Rounded corners - Bubble shape with sharp bottom-right
  • Text content - Your input preserved as-is

Assistant Messages

AI responses appear on the left:

  • Left accent bar - Subtle vertical line
  • Markdown support - Headers, bold, italic, code, links
  • Streaming indicator - Pulsing blue dot while generating

System Messages

Status and error information:

  • Error messages - Red background with error icon
  • Diff-only messages - Hidden (diffs shown inline)

Markdown Rendering

AI responses support GitHub-flavored markdown:

SyntaxRendering
**bold**Bold text
*italic*Italic text
`code`Inline code with background
```code blocks```Syntax highlighted with line numbers
# HeadingStyled headers (H1-H3)
[link](url)Clickable blue links
- itemBulleted lists with indentation
> quoteBlock quotes with left border

Code Blocks

Code blocks in messages feature:

  • Syntax highlighting - Language-specific colors
  • Dark theme - Atom One Dark style
  • Monospace font - JetBrains Mono
  • Copy support - Select and copy code text

Tool Calls

When the AI uses tools, you'll see Tool Call Cards:

ElementDescription
Tool IconType-specific icon (edit, read, bash, etc.)
Tool Namee.g., "Editing file.dart"
Status IndicatorRunning (spinner) or Completed (checkmark)
Expand ArrowTap to see details

Tool Types and Icons

ToolIconDescription
ReadDocumentReading file contents
EditPencilModifying existing file
WritePlus-documentCreating new file
BashTerminalRunning shell command
SearchMagnifying glassSearching files/text
TaskRobotDelegating to subagent
ThinkingBrainModel reasoning

Expanded Tool Card

When expanded, tool cards show:

  • Input parameters - File paths, content, commands
  • Output - Tool execution results
  • Code preview - Syntax-highlighted content
  • Undo button - Revert changes (edit tools only)
  • Copy button - Copy content to clipboard

File Diffs

When the AI modifies files, inline diff viewers appear:

Diff Card Elements

  • File icon - Code file indicator
  • File name - Just the filename (not full path)
  • Change stats - Green +X and red -Y counts
  • Expand arrow - Show more diff lines

Inline Diff Preview

  • Red lines - Removed content with - prefix
  • Green lines - Added content with + prefix
  • Line numbers - Position reference
  • Stats badges - +5 -3 showing net changes

Diff Actions

ActionResult
TapExpand/collapse diff preview
"View full" buttonOpen full-screen diff viewer
"Undo" buttonRevert this specific change

Full-Screen Diff View

Tap "View full" to open the full-screen viewer:

  • Split view - Before (left) and After (right)
  • Unified view - Single column with +/- prefixes
  • Line numbers - Both old and new line numbers
  • Color coding - Red/green backgrounds
  • Scroll sync - Both panes scroll together

Permission Requests

When the AI needs to perform potentially dangerous actions, you'll see a permission prompt:

ElementDescription
Title"Permission required"
DescriptionWhat the AI wants to do
CommandSpecific command (if bash)
Diff PreviewProposed changes (if file edit)
Deny ButtonRed outline, rejects the action
Approve ButtonPrimary color, allows the action
Common Permission Scenarios
File edits show the proposed diff before applying. Shell commands show the exact command. Destructive operations require extra confirmation.

Thinking Card

When the AI is reasoning (extended thinking), you'll see a Thinking Card:

  • Brain icon - Indicates reasoning mode
  • Elapsed time - "Thinking... 2.3s"
  • Expandable content - See reasoning text
  • Streaming animation - Pulsing while active

Input Bar

The input bar at the bottom is where you type messages:

ElementDescription
Text FieldMulti-line text input
Attachment ButtonAdd files or images
Send ButtonSubmit your message

Input Styles

The input bar supports different styles (Settings > Customization):

  • Standard - Simple text field
  • Rounded - Pill-shaped input
  • Outlined - Border emphasis style

Attachments

Tap the attachment button for:

  • Take Photo - Use device camera
  • Choose from Gallery - Select existing image
  • Attach File - Type @ to search files

@ File Mentions

Type @ in the input to search and attach files:

  1. Type @ followed by search query
  2. Autocomplete dropdown appears
  3. Shows matching files from project
  4. Tap to attach file to message
  5. File content is sent to the AI

For Claude Code, @ inserts the file path as text instead of attachment.

Slash Commands

Type / to see available commands:

CommandDescription
/undoUndo last message
/redoRedo last message
/compactSummarize session
/forkFork session
/shareShare session
/newCreate new session
/helpShow all commands

Custom commands from .claude/commands/ also appear here.

Agent @ Mentions

Type @ followed by an agent name to direct your request:

  • @explore - Code exploration agent
  • @librarian - Documentation agent
  • @security - Security analysis agent

Auto-Scroll Behavior

The chat automatically scrolls as new content arrives:

  • During streaming - Follows new text
  • During tool execution - Shows tool progress
  • After scrolling up - Stops auto-scroll (respects your position)
  • Return to bottom - Auto-scroll resumes when you scroll back down

Message Actions

Long-press on a message for options:

  • Fork from here - Create new session branch starting at this message
  • Copy - Copy message text to clipboard

Next