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

# Channels

> Connect your OpenPawz agents to 12 messaging platforms — all running simultaneously from one app.

# Channels

Connect your agents to messaging platforms. Users on those platforms chat with your agents directly — all from one app, running simultaneously.

<Note>
  All incoming messages are scanned for **prompt injection** — messages with critical severity are blocked automatically.
</Note>

***

## Supported channels

<Columns cols={3}>
  <Card title="Telegram" href="/channels/telegram" icon="paper-plane">
    Bot API — public bots, group chats
  </Card>

  <Card title="Discord" href="/channels/discord" icon="discord">
    Gateway WebSocket — community servers
  </Card>

  <Card title="Slack" href="/channels/slack" icon="slack">
    Bot API — workplace teams
  </Card>

  <Card title="Matrix" href="/channels/matrix" icon="hashtag">
    Client-Server API — decentralized chat
  </Card>

  <Card title="IRC" href="/channels/irc" icon="terminal">
    IRC protocol — classic chat rooms
  </Card>

  <Card title="Mattermost" href="/channels/mattermost" icon="comments">
    WebSocket API — self-hosted teams
  </Card>

  <Card title="Nextcloud" href="/channels/nextcloud" icon="cloud">
    Talk API — Nextcloud users
  </Card>

  <Card title="Nostr" href="/channels/nostr" icon="bolt">
    NIP relay protocol — decentralized social
  </Card>

  <Card title="Twitch" href="/channels/twitch" icon="twitch">
    IRC + API — live streaming chat
  </Card>

  <Card title="Webchat" href="/channels/webchat" icon="globe">
    HTTP/WebSocket — your own website
  </Card>

  <Card title="WhatsApp" href="/channels/whatsapp" icon="whatsapp">
    Evolution API — personal & group messaging
  </Card>

  <Card title="Discourse" href="/channels/discourse" icon="discourse">
    REST API — community forum support
  </Card>
</Columns>

***

## How channels work

```mermaid actions={false} theme={null}
graph TD
    A["External message arrives"] --> B["Prompt injection scan\nBlock critical threats"]
    B --> C["Access control check\nOpen / Allowlist / Pairing"]
    C --> D["Route to agent\nFirst-match routing rules"]
    D --> E["Create per-user\nper-agent session"]
    E --> F["Auto-recall memories\nfor this user"]
    F --> G["Agent responds\nvia worker_model"]
    G --> H["Auto-capture\nmemorable facts"]
    H --> I["Provider fallback\non errors"]
    I --> J["Split response\nfor platform limits"]
```

## DM policies

Control who can message your agents:

| Policy        | Behavior                    |
| ------------- | --------------------------- |
| **Open**      | Anyone can chat             |
| **Allowlist** | Only approved users         |
| **Pairing**   | Users must pair with a code |

## Channel routing

Route messages to specific agents based on rules:

1. Go to **Settings → Channels**
2. Add routing rules with filters:
   * **Channel** — which platform
   * **User filter** — specific users
   * **Channel ID filter** — specific channels/groups
   * **Agent** — which agent handles it

Rules are evaluated **first-match-wins** — the first matching rule determines the agent.

## Security

* All incoming messages are scanned for prompt injection
* Messages with `critical` severity are blocked automatically
* Each user gets an isolated session (no cross-user contamination)
* Access control is per-channel and per-user
* Channel agents use `worker_model` by default (cheaper, faster)

## Lean channel context

Channel bridges use a **minimal context strategy** optimized for speed and low token cost:

* **Core identity only** — the agent loads its identity, soul, and user files, but skips the full agent context (other agents, all tools, custom files)
* **No memory recall overhead** — memory search (BM25 + vector) is skipped for channel messages to reduce latency. Memory is still available on-demand via the `memory_search` tool if the agent needs it.
* **Minimal tool set** — channel agents only get the tools relevant to that bridge (\~4 tools), not the full 25,000+ integration catalog
* **Worker model** — channels default to `worker_model` (cheaper/faster) rather than the boss model

This means a channel message costs a fraction of a full chat turn. An agent responding on Discord or Telegram uses \~2K–4K tokens of context instead of \~10K–30K for a full desktop chat. Over thousands of channel messages, this saves significantly on token costs.

:::tip
If you need a channel agent to have full capabilities (memory recall, all tools), configure it as a dedicated agent with a larger context window and full tool access in **Settings → Agents**.
:::

## Provider fallback

If the primary provider fails (billing, auth, or rate limit errors), Pawz automatically tries other configured providers before failing.
