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

# Auto Responders

> Reply automatically when someone says a trigger word.

## Overview

Pick a word or phrase, pair it with a response, and misery posts it whenever someone says the trigger. Useful for FAQ answers, canned links, or self-serve verification.

> [!NOTE]
>
> Every command here requires the **Manage Server** permission.

## Creating a responder

The trigger and the response are separated by a comma.

```javascript Syntax theme={null}
,autoresponder add (trigger), (response)
```

```javascript Example theme={null}
,autoresponder add welc, welcome to the server!
```

> [!TIP]
>
> Responses accept full embed syntax. Start with `{embed}` to build a rich embed instead of plain text — see [Scripting](/resources/scripting).

## Flags

Flags go after the response and start with `$`.

> **\$not\_strict**
>
> By default the message has to match your trigger exactly. This flag matches the trigger anywhere inside a message, so `hello` also fires on `hello there`.

> **\$self\_destruct**
>
> Deletes misery's response after a set number of seconds. Both `$self_destruct 10` and `$self_destruct=10` work.
>
> > [!WARNING]
> >
> > Must be between **6** and **60** seconds.

> **\$delete**
>
> Deletes the member's trigger message once the response goes out.

> **\$reply**
>
> Sends the response as a reply to the trigger message instead of a standalone one.

> **\$ignore\_command\_check**
>
> Lets the responder fire even when the message looks like a misery command. `$ignore_command` is accepted as shorthand.

```javascript theme={null}
,autoresponder add welc, welcome to the server! $self_destruct 10 $reply
```

## Variables

Run `,autoresponder variables` for the list in Fluxer, or see [Variables](/resources/variables) for every one.

| Variable | Resolves to |
| - | - |
| `{user.mention}` | Mention of the member |
| `{user.name}` | Their username |
| `{user.display_name}` | Their display name |
| `{user.id}` | Their user ID |
| `{user.avatar}` | Their avatar URL |
| `{guild.name}` | Your server's name |
| `{guild.count}` | Member count |
| `{channel.mention}` | Channel mention |
| `{date.now}` | Current date |
| `{time.now}` | Current time |

## Editing and removing

### Updating a response

```javascript Syntax theme={null}
,autoresponder update (trigger), (response)
```

```javascript Example theme={null}
,autoresponder update welc, welcome back!
```

### Removing one

```javascript Syntax theme={null}
,autoresponder remove (trigger)
```

```javascript Example theme={null}
,autoresponder remove welc
```

### Removing all of them

`,autoresponder reset` clears every responder in the server after you confirm with a ✅ reaction.

## Restricting where it fires

Lock a responder to specific channels or roles.

```javascript Syntax theme={null}
,autoresponder exclusive (role or channel) (trigger)
```

```javascript Example theme={null}
,autoresponder exclusive #general welc
```

> [!NOTE]
>
> This toggles. Running it again on the same target removes the restriction.

Check what's restricted with `,autoresponder exclusive list (trigger)`.

## Handing out roles

A responder can add or strip roles when someone says the trigger — handy for self-verification.

```javascript Syntax theme={null}
,autoresponder role (add or remove) (role) (trigger)
```

```javascript Example theme={null}
,autoresponder role add @Verified verify
```

> [!WARNING]
>
> These toggle as well. Running the same command twice undoes it.

## Viewing your responders

`,autoresponder list` pages through every responder with its active flags.

> [!TIP]
>
> Turn auto responders off in specific channels with [events](/resources/events): `,event disable #serious-chat autoresponder`.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.