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

# Overview

> Key features, chat workflow, speak to prompt, and context management

The nao chat combines context-aware analytics with transparent execution.

## Key Features

<CardGroup cols={2}>
  <Card title="Natural Language Queries" icon="message">
    Ask questions in plain English and get actionable answers.
  </Card>

  <Card title="Data Visualization" icon="chart-bar">
    Automatically generate charts and visual explanations from query results.
  </Card>

  <Card title="Transparent Reasoning" icon="eye">
    Inspect the SQL and logic behind each answer.
  </Card>

  <Card title="Conversation History" icon="clock">
    Continue previous analyses with full chat history.
  </Card>

  <Card title="Speak to Prompt" icon="microphone">
    Dictate a question with your microphone and send the transcribed prompt.
  </Card>

  <Card title="Memory" icon="brain">
    Preserve user-level preferences across conversations.
  </Card>
</CardGroup>

## How It Works

When you ask a question, the agent follows this flow:

<Steps>
  <Step title="Context Discovery">
    The agent searches and reads your context files to understand your data model, definitions, and rules.
  </Step>

  <Step title="Query Generation">
    It composes SQL based on the available context and your question.
  </Step>

  <Step title="Execution">
    The query runs against connected data sources and returns results.
  </Step>

  <Step title="Visualization">
    If useful, the agent renders charts from the result set.
  </Step>

  <Step title="Response">
    The agent summarizes findings in plain language with supporting evidence.
  </Step>
</Steps>

## Speak To Prompt

From the chat input:

1. Click the microphone icon.
2. Grant microphone access when prompted.
3. Speak your request.
4. Review or edit the transcription, then send it.

Only transcribed text is stored in chat history.

<Warning>
  Speak to Prompt requires an admin-configured OpenAI API key, and is currently supported with OpenAI models.
</Warning>

## Context Management

The agent grounds answers in project context, including:

* Context files and business definitions synced into your project.
* Rules and instructions that shape generation behavior.
* Data source metadata and available schema information.

For details on configuring context, see [Context Builder](/nao-agent/context-builder/overview).

## Visualizations and Image Input

The chat UI can render charts directly from agent query results. Supported chart types include:

* Bar charts
* Line charts
* Pie charts
* Area charts
* Stacked area charts
* Scatter charts
* Radar charts

For large numeric values, nao formats chart Y-axis labels into shorter values such as `100K`, `1.5M`, or `2B` to keep charts readable.

**View the SQL and data behind a chart**

Every chart the agent renders is backed by a SQL query and its result set. Click the **View SQL query and data** action (the `<>` icon) on the chart toolbar to open a side panel showing the SQL query on top and the result table below, so you can verify exactly how a chart was built.

### Image input

You can attach images directly in the chat input when you want the agent to inspect a screenshot, dashboard, chart, or UI state. The agent treats images as part of the conversation - it can describe them, transcribe text out of them, compare them to data, or use them to disambiguate a question ("the spike in *this* chart").

**How to attach an image**

There are three ways to add images to a message:

* Click the `+` menu in the chat input and pick **Upload image**.
* Drag an image file from your desktop into the chat input - the input shows a highlighted drop zone while you drag.
* Paste an image directly from your clipboard (e.g. after `cmd+shift+4` on macOS or a snipping tool on Windows). The paste handler is scoped to the chat input so pasting elsewhere on the page still works normally.

Selected images appear as thumbnails above the input. Click the small `X` on any thumbnail to remove it before sending.

**Supported formats and limits**

* Formats: `image/png`, `image/jpeg`, `image/gif`, `image/webp`.
* Up to **4 images** per message.
* Up to **5 MB** per image.

Files outside these formats or above the size cap are rejected client-side before upload.

**Viewing images in the conversation**

Images you've sent stay attached to the message and re-display when the chat is reloaded or shared. Click any image in the conversation to open it in a full-size lightbox - close it with `Esc`, the X button, or by clicking outside.

Images are stored against your project and served from a stable URL, so they keep rendering inside the chat history and any story or shared link the conversation feeds into.

## Editing, resending, and message versions

Hover over any of your sent messages to reveal a toolbar with actions and a relative timestamp (e.g. `8m ago`, with the full date and time in a tooltip).

* **Resend** - the resend button (circular-arrow icon) re-runs the same prompt as-is, superseding the conversation from that turn onward.
* **Edit** - change the prompt text and resend it to branch the conversation from that point.

When a message turn has been edited or resent, a `‹ i/n ›` control appears next to the action icons. Use it to navigate the history of superseded versions and restore any of them as the active branch - the message and the answer below it update together.

## Sharing and forking chats

Every chat can be shared with your project or with specific people from the share icon in the chat header. Recipients can:

* **Continue chat** - open a new forked chat that contains the full shared history. Each fork is independent, so the original is never modified.
* **Ask about a selection** - highlight any text in the chat and click the **Ask** button that appears above the selection. The quoted text becomes a pending citation in the input, and once sent, the answer keeps a **Go to original selection** link back to the source passage.

Selection-based asks also work on your own chats and stories, not just shared ones, and in the admin **Chats replay** view. For the story-specific flow (**Discuss story** and version handling), see [Stories](/nao-agent/chat/capabilities/stories#sharing-forking-and-text-selection).

## Managing Your Chat History

Your chat list lives in the left sidebar, sorted by most recent activity (last updated first). The list shows the 10 most recent chats by default; click **Show more** to expand the full list and **Show less** to collapse it again.

**Group and filter**

Use the filter menu at the top of the chat list to organize conversations:

* **Group by** stars, date, project, ownership, or none.
* **Filter** the visible chats with the search box to narrow the list to matching titles.

When a chat starts from a text selection or **Ask about a selection** action, nao automatically regenerates its title using the quoted context, so the sidebar entry reflects the question rather than a generic placeholder.

**Pruning the list**

To keep the sidebar tidy, nao gives you two ways to remove conversations:

* **Star** the chats you want to keep so they're always preserved.
* Open **Settings -> General -> Danger Zone** and click **Delete all non-starred chats** to bulk-clear everything you haven't starred.

The action is destructive but recoverable internally: chats are soft-deleted (hidden from your sidebar, search, and history), not erased. Starred chats are never affected.

## Tool call density

Control how much detail the chat shows for the agent's tool calls (SQL queries, sandbox runs, and similar steps). Set it from **Settings -> Account**:

* **Detailed** - tool calls are expanded inline so you can read the SQL and intermediate steps as the agent works.
* **Compact** - tool calls are collapsed into a compact group, keeping the conversation focused on the answer. Expand any step when you want the detail.

The preference is stored against your account, so it follows you across devices and sessions.

## Query Guardrails

For BigQuery connections, nao can enforce a maximum query size in GB before the agent runs SQL.

When configured, nao performs a dry run first:

* Queries under the limit execute normally
* Queries over the limit are blocked before BigQuery scans the data
