> For the complete documentation index, see [llms.txt](https://securitybot.gitbook.io/securitybot-knowledge-hub/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://securitybot.gitbook.io/securitybot-knowledge-hub/command-reference/chat-filters.md).

# /chat\_filters

{% hint style="info" %}
**Available on all tiers** — Free tier: 10 filtered actions per day, limited allowlist entries. Premium: unlimited. [Compare plans →](/securitybot-knowledge-hub/plans-and-pricing/plans-and-pricing.md)
{% endhint %}

Manage all of SecurityBot's chat filtering settings from a single command. This command contains **8 subcommand groups**, each controlling a different filter type, exemption, or mode.

***

## Subcommand Groups

* [`address`](#address-cryptocurrency-address-filter) -- Cryptocurrency address allowlist
* [`domain`](#domain-domain-link-filter) -- Domain/link blocklist
* [`handle`](#handle-ada-handle-filter) -- ADA handle blocklist
* [`invite`](#invite-discord-invite-filter) -- Discord invite and app-authorization allowlist
* [`image`](#image-image-analysis) -- Scam image detection (PRO)
* [`exempt_channel`](#exempt_channel-exempt-channels) -- Channels exempt from filters
* [`exempt_category`](#exempt_category-exempt-categories) -- Categories exempt from filters
* [`strict`](#strict-strict-mode) -- Apply chat filters to staff too

***

## `address` -- Cryptocurrency Address Filter

Controls which cryptocurrency addresses are allowed in chat. When enabled, messages containing addresses not on the allowlist are deleted.

| Subcommand | Options                      | Description                                 |
| ---------- | ---------------------------- | ------------------------------------------- |
| `about`    | None                         | View address filter status and information  |
| `add`      | `address` (String, required) | Add an address to the allowlist             |
| `remove`   | `address` (String, required) | Remove an address from the allowlist        |
| `toggle`   | None                         | Toggle address filtering on/off             |
| `view`     | None                         | Paginated list of all whitelisted addresses |

### Supported Address Formats

* **Ethereum:** `0x` prefix (42 characters)
* **Cardano:** `addr1` prefix
* **Bitcoin:** `1`, `3`, or `bc1` prefix

### Example

```
/chat_filters address add address: 0x1234abcd5678ef901234abcd5678ef9012345678
```

```
/chat_filters address toggle
```

***

## `domain` -- Domain/Link Filter

Controls which domains are blocked in chat. When enabled, messages containing links to blocked domains are deleted.

| Subcommand | Options                     | Description                               |
| ---------- | --------------------------- | ----------------------------------------- |
| `about`    | None                        | View domain filter status and information |
| `add`      | `domain` (String, required) | Add a domain to the blocklist             |
| `remove`   | `domain` (String, required) | Remove a domain from the blocklist        |
| `toggle`   | None                        | Toggle domain filtering on/off            |
| `view`     | None                        | Paginated list of all blocked domains     |

### Example

```
/chat_filters domain add domain: suspicious-site.com
```

***

## `handle` -- ADA Handle Filter

Controls which ADA handles (Cardano naming service) are blocked in chat.

| Subcommand | Options                     | Description                               |
| ---------- | --------------------------- | ----------------------------------------- |
| `about`    | None                        | View handle filter status and information |
| `add`      | `handle` (String, required) | Add an ADA handle to the blocklist        |
| `remove`   | `handle` (String, required) | Remove an ADA handle from the blocklist   |
| `toggle`   | None                        | Toggle handle filtering on/off            |
| `view`     | None                        | Paginated list of all blocked handles     |

{% hint style="info" %}
Handle input is validated for correct ADA handle format.
{% endhint %}

### Example

```
/chat_filters handle add handle: $fakeminthandle
```

***

## `invite` -- Discord Invite Filter

Controls which Discord server invites and app-authorization links are allowed in chat. When enabled, messages containing an invite or app-authorization link that is not on the allowlist are deleted.

App-authorization links are the `discord.com/oauth2/authorize` links that add a bot to a server. Scammers use them to get a malicious bot installed with wide permissions, so they are blocked by the same toggle and share the same allowlist as invites.

| Subcommand | Options                     | Description                                                   |
| ---------- | --------------------------- | ------------------------------------------------------------- |
| `about`    | None                        | View invite and app filter status and information             |
| `add`      | `invite` (String, required) | Add an invite or app-authorization link to the allowlist      |
| `remove`   | `invite` (String, required) | Remove an invite or app-authorization link from the allowlist |
| `toggle`   | None                        | Toggle invite and app filtering on/off                        |
| `view`     | None                        | Paginated list of all allowed invites and apps                |

{% hint style="info" %}
**Invites:** provide either a full invite URL (e.g., `discord.gg/abc123`) or just the invite code (`abc123`). Invite links are resolved to their target server, so allowing one invite allows every invite to that server.

**Apps:** provide the full authorization URL, including the `client_id` parameter. Allowing an app allows every authorization link for that application.
{% endhint %}

{% hint style="info" %}
SecurityBot's own authorization link is always allowed and never uses an allowlist slot, so members can always share how to add SecurityBot.
{% endhint %}

### Example

```
/chat_filters invite add invite: discord.gg/securitybot
```

```
/chat_filters invite add invite: https://discord.com/oauth2/authorize?client_id=123456789012345678&scope=bot
```

***

## `image` -- Image Analysis

Detects scam images that point to non-allowlisted domains and removes them. Builds on the [domain/link filter](/securitybot-knowledge-hub/bot-guide/chat-filters/link-filter.md), which must be enabled for images to be acted on.

| Subcommand | Options | Description                                |
| ---------- | ------- | ------------------------------------------ |
| `about`    | None    | View Image Analysis status and information |
| `toggle`   | None    | Toggle Image Analysis on/off               |

{% hint style="warning" %}
**PRO only.** Image Analysis requires a PRO subscription. [Compare plans →](/securitybot-knowledge-hub/plans-and-pricing/plans-and-pricing.md)
{% endhint %}

### Example

```
/chat_filters image toggle
```

***

## `exempt_channel` -- Exempt Channels

Channels where chat filters are not enforced.

| Subcommand | Options                       | Description                            |
| ---------- | ----------------------------- | -------------------------------------- |
| `about`    | None                          | View exempt channel configuration info |
| `add`      | `channel` (Channel, required) | Add a channel to exemptions            |
| `remove`   | `channel` (Channel, required) | Remove a channel from exemptions       |
| `view`     | None                          | Paginated list of all exempt channels  |

{% hint style="info" %}
**Free tier limit:** Up to 3 exempt channels. Premium: unlimited. [Free tier details →](/securitybot-knowledge-hub/plans-and-pricing/plans-and-pricing/free-tier-limits.md)
{% endhint %}

### Example

```
/chat_filters exempt_channel add channel: #bot-commands
```

***

## `exempt_category` -- Exempt Categories

Channel categories where chat filters are not enforced. Applies to all channels within the category.

| Subcommand | Options                        | Description                             |
| ---------- | ------------------------------ | --------------------------------------- |
| `about`    | None                           | View exempt category configuration info |
| `add`      | `category` (Channel, required) | Add a category to exemptions            |
| `remove`   | `category` (Channel, required) | Remove a category from exemptions       |
| `view`     | None                           | Paginated list of all exempt categories |

{% hint style="warning" %}
**Premium only.** Exempt categories are not available on the free tier. Use `exempt_channel` to exempt individual channels (up to 3 on the free tier). [Compare plans →](/securitybot-knowledge-hub/plans-and-pricing/plans-and-pricing.md)
{% endhint %}

### Example

```
/chat_filters exempt_category add category: Staff Channels
```

***

## `strict` -- Strict Mode

Applies chat filters to admins and exempt-role holders too. Off by default. Ignored channels, ignored categories, and allowlisted entries are still respected. Only chat filters are affected; name, avatar, account-age, and scammer filters are unchanged.

| Subcommand | Options | Description                             |
| ---------- | ------- | --------------------------------------- |
| `about`    | None    | View strict mode status and information |
| `toggle`   | None    | Toggle strict mode on/off               |

{% hint style="info" %}
**Available on all tiers** for free. [Compare plans →](/securitybot-knowledge-hub/plans-and-pricing/plans-and-pricing.md)
{% endhint %}

### Example

```
/chat_filters strict toggle
```

***

## Permissions

**Administrator** -- All subcommands require the SecurityBot admin role, Discord ADMINISTRATOR permission, or server ownership.
