> ## Documentation Index
> Fetch the complete documentation index at: https://chatcli.edilsonfreitas.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Compact UI Mode

> Minimalist display mode for coder mode: inline tool indicators, zero verbosity.

The **compact** mode is an ultra-minimalist rendering option for both `/coder` and `/agent` modes, inspired by tools like [Claude Code](https://claude.ai/claude-code) and [aru](https://github.com/estevaofon/aru). Instead of bordered cards, all operations are displayed as compact inline lines.

<Info>
  **Starting with v1.119, `CHATCLI_CODER_UI` affects BOTH modes** (`/coder` and `/agent`). Previously it only applied to `/coder`. The env var name is kept for back-compat. If you already had `CHATCLI_CODER_UI=compact` in your `.env`, `/agent` will also render in compact mode now.
</Info>

***

## Visual Comparison

<Tabs>
  <Tab title="Full (default)">
    ```
    ╭── 🧠 REASONING
    │  I'll analyze the code and make changes...
    │  Plan:
    │  1. Read main.go
    │  2. Modify handleRequest
    │  3. Update tests
    ╰──────────────────────────────────────────────

    ╭── 🔨 EXECUTE ACTION (1/3)
    │  Tool: @coder
    │  Command: {"cmd":"read","args":{"file":"main.go"}}
    ╰──────────────────────────────────────────────

    ╭── ✅ SUCCESS
    │  1  package main
    │  ... [200 lines] ...
    ╰──────────────────────────────────────────────
    ```
  </Tab>

  <Tab title="Compact">
    ```
      ● PLAN
        1. Read main.go
        2. Modify handleRequest
        3. Update tests

      ↻ Read(main.go)
      ✓ Read(main.go) 0.8s
      ↻ Patch(main.go)
      ✓ Patch(main.go) 0.3s
      ↻ Exec(go test ./...)
      ✓ Exec(go test ./...) 2.1s

      ✓ 3/3 completed

      ◆  Timeout param added. Tests passing.
    ```
  </Tab>
</Tabs>

***

## Activation

Set the `CHATCLI_CODER_UI` environment variable:

```bash theme={"system"}
# Compact mode (ultra-minimalist)
export CHATCLI_CODER_UI=compact

# Minimal mode (smaller cards, no streaming)
export CHATCLI_CODER_UI=minimal

# Full mode (default, complete cards with output)
export CHATCLI_CODER_UI=full
```

***

## Display Modes

| Mode        | Variable                           | Description                                                  |
| ----------- | ---------------------------------- | ------------------------------------------------------------ |
| **full**    | `CHATCLI_CODER_UI=full` (or empty) | Full cards with borders, streaming output, visible narration |
| **minimal** | `CHATCLI_CODER_UI=minimal`         | Smaller cards with compact text, no output streaming         |
| **compact** | `CHATCLI_CODER_UI=compact`         | Zero cards. Inline indicators: `✓ Read(main.go) 0.8s`        |

***

## What Changes in Compact Mode

### Tool Calls

| Full                               | Compact                                  |
| ---------------------------------- | ---------------------------------------- |
| Card `╭── 🔨 EXECUTE ACTION (1/3)` | `↻ Read(main.go)` (cyan spinner)         |
| Card `╭── ✅ SUCCESS` with output   | `✓ Read(main.go) 0.8s` (green checkmark) |
| Card `╭── ❌ FAILED` with error     | `✗ Patch(file.go) 0.2s` (yellow X)       |

### Smart Labels

Compact mode auto-generates labels from tool call arguments:

| Subcommand | Label                   |
| ---------- | ----------------------- |
| `read`     | `Read(main.go)`         |
| `write`    | `Write(pkg/handler.go)` |
| `patch`    | `Patch(main.go)`        |
| `exec`     | `Exec(go test ./...)`   |
| `search`   | `Search(TODO)`          |
| `tree`     | `Tree(.)`               |

***

## Anti-Verbosity Rules

Compact mode includes **anti-verbosity rules** in the `/coder` system prompt. These apply to **all UI modes**:

* The AI does not narrate actions: zero "Let me...", "I will...", "Now I'll..."
* Tool calls are emitted directly after the `<reasoning>` block
* Text output only appears for the final result (1-3 sentences)

***

## Independence from Function Calling

Compact mode is **independent** of the function calling method:

| Provider           | Function Calling       | Compact UI |
| ------------------ | ---------------------- | ---------- |
| Claude (Anthropic) | Native (API)           | ✓          |
| OpenAI             | Native (API)           | ✓          |
| Ollama             | XML fallback           | ✓          |
| GitHub Models      | Native (OpenAI-compat) | ✓          |

***

## Next Steps

<CardGroup cols={2}>
  <Card title="Coder Mode" icon="code" href="/core-concepts/coder-mode">
    Understand the full engineering cycle
  </Card>

  <Card title="Native Tool Use" icon="wrench" href="/features/native-tool-use">
    How native function calling works
  </Card>

  <Card title="Multi-Agent" icon="users" href="/features/multi-agent-orchestration">
    Parallel orchestration of specialized agents
  </Card>
</CardGroup>
