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

# Slack

> Chat with Indexbrain directly in your Slack workspace.

The Slack integration lets your team ask questions, search conversations, and get proactive updates right where they already work — no need to open the Indexbrain dashboard.

## Setup

<Steps>
  <Step title="Start installation">
    Go to **Settings > Integrations > Slack** and click **Connect**.
  </Step>

  <Step title="Authorize">
    Review permissions and click **Allow** to add Indexbrain to your workspace.
  </Step>

  <Step title="Choose channels">
    In Settings, pick which channels Indexbrain can sync from — nothing syncs until a channel is explicitly enabled.
  </Step>

  <Step title="Invite to channels">
    Type `/invite @Indexbrain` in any channel where you want it available.
  </Step>
</Steps>

### Permissions requested

| Permission                                                         | Why it's needed                                                                   |
| ------------------------------------------------------------------ | --------------------------------------------------------------------------------- |
| Read messages (`channels:history`, `groups:history`, `im:history`) | To understand questions, build company knowledge, and evaluate proactive triggers |
| Send messages (`chat:write`)                                       | To reply to questions and post proactive updates                                  |
| Access files (`files:read`)                                        | To analyze uploaded spreadsheets, PDFs, and JSON files                            |
| Read reactions (`reactions:read`/`write`)                          | Used to acknowledge a question is being processed                                 |
| View workspace/user info (`users:read`, `team:read`)               | To resolve who sent a message                                                     |

<Note>
  Indexbrain only sees channels it has been invited to. There is no
  `channels:join` scope — it never joins a channel on its own.
</Note>

## Using Indexbrain in Slack

### Direct messages

Message @Indexbrain directly for private questions:

```
You: @Indexbrain what's our deploy process?

Indexbrain: Deployment runs through GitHub Actions on merge to main...
```

### Channel mentions

Mention @Indexbrain in any channel it's been invited to:

```
#engineering

Sarah: @Indexbrain who owns the billing service?

Indexbrain: Based on recent GitHub activity, [name] has been the primary
owner of the billing service for the last quarter.
```

Channel replies are ephemeral (visible only to the person who asked) to keep channels from filling up with bot replies — except proactive replies (see below), which post visibly since the whole point is the team seeing them.

### Thread replies

Reply inside a thread and Indexbrain keeps the last several turns of context, so follow-ups don't need to repeat themselves.

### Searching raw Slack history

```
@Indexbrain search Slack for discussions about the pricing change
```

This searches actual message history directly, separate from extracted knowledge — useful for finding a specific past conversation rather than a synthesized fact.

## Proactive responses

By default, every channel and thread is in **mention-only** mode — Indexbrain only responds when tagged. To let it respond on its own, tag it once and describe when it should chime in:

```
@Indexbrain respond to any top-level message reporting a bug,
but skip casual chatter.
```

### Modes

| Mode                       | Behavior                                                                                                                      |
| -------------------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| **Mention only** (default) | Only responds when explicitly tagged.                                                                                         |
| **Smart**                  | You write a one-line plain-English policy. Every new message is evaluated against it, and Indexbrain replies when it matches. |
| **Always**                 | Responds to every message in scope. Best for a dedicated bot channel.                                                         |

Trigger mode can be set at the **channel** level or overridden per **thread** — a thread-level setting takes precedence over its channel's default. To change or revert it, just tag @Indexbrain again and say what you want (e.g. *"go back to only responding when tagged"*).

<AccordionGroup>
  <Accordion title="Example policies">
    * *"Respond to any top-level message announcing something was shipped or released."*
    * *"Respond when someone asks a how-to question about onboarding."*
    * *"Respond to top-level bug reports, including short messages like 'broken' or 'doesn't work.'"*
  </Accordion>
</AccordionGroup>

Proactive replies are posted in a thread anchored to the message that triggered them, so they don't clutter the channel.

## File analysis

Drop a file into a conversation for instant analysis:

**Supported formats:** CSV, XLSX, PDF, JSON (2MB max per file). Files are read entirely in memory and are never stored — nothing is written to disk or saved as a permanent record.

```
You: [uploads Q3_sales.csv]
@Indexbrain analyze this and find any trends

Indexbrain: Analysis of Q3 Sales Data:
1. Revenue peaked in August...
```

<Warning>
  Not yet supported: images, screenshots, Word documents (`.docx`).
</Warning>

## Live metrics

Indexbrain can answer live numeric questions for two connected sources:

* **Google Analytics 4** — traffic, sessions, conversions by channel.
* **PostHog** — product usage/event counts.

```
@Indexbrain what's our traffic looked like this week?
```

Metric queries are **not** available for every connected app — only GA4 and PostHog have a live metric handler today. For everything else (HubSpot, Linear, ClickUp, etc.), Indexbrain answers from extracted knowledge, not a live numeric query. There is no Stripe integration, so revenue metrics like MRR aren't available.

## How the data actually moves

For anyone debugging "why doesn't it know X":

1. A message is posted in an enabled, invited channel.
2. Slack's Events API delivers it to Indexbrain in real time.
3. Indexbrain extracts it into searchable knowledge within roughly a minute — not tied to a long batch sync interval.
4. It becomes answerable via DM, @mention, or proactive trigger mode.

<AccordionGroup>
  <Accordion title="Common reasons a message doesn't show up">
    * The channel was never toggled on in Settings.
    * The bot hasn't been invited to that channel (`/invite @Indexbrain`).
    * The message predates the channel's 90-day initial sync window.
    * The message was very short (under 20 characters for a top-level message, 10 for a thread reply) and got filtered as noise before reaching the AI.
    * The message was classified as personal/off-topic and dropped before extraction.
    * A later message produced a conflicting fact that silently superseded the earlier one.
  </Accordion>
</AccordionGroup>

## What Indexbrain does not do in Slack (yet)

* **No per-user accounts.** Indexbrain doesn't create an individual account per Slack user — it's scoped to your organization's workspace, not individual sign-in.
* **No write-back to other systems.** Indexbrain can draft text (e.g. a reply or summary) but cannot send emails, update a CRM, or take any action outside of itself — every connected integration is read-only.
* **No image generation or image analysis.**
* **Scheduled/recurring reports** to a channel exist, but are configured through Automations, not through a plain-English Slack command yet.

## Troubleshooting

<AccordionGroup>
  <Accordion title="Indexbrain isn't responding">
    * Confirm it's been invited to the channel (`/invite @Indexbrain`).
    * Confirm the channel is toggled on in Settings > Integrations > Slack.
    * Confirm you're mentioning it correctly.
  </Accordion>

  <Accordion title="Indexbrain doesn't know about something I posted">
    * Check whether enough time has passed (should be under a couple of minutes from posting).
    * See "How the data actually moves" above for the most common causes.
  </Accordion>

  <Accordion title="File analysis isn't working">
    * Confirm the file is CSV, XLSX, PDF, or JSON and under 2MB.
  </Accordion>
</AccordionGroup>
