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

# Build Custom Server Workflows with Prowl Automation

> Prowl Automation lets you create custom server programs — trigger actions on events, send messages, assign roles, and more — without any code.

Prowl's Automation module provides a set of built-in automation features that help you manage your server without writing a single line of code. Configure auto-roles for new members, protect against raids with anti-raid detection, enforce minimum account ages, and more — all from slash commands or the dashboard.

## What Automation Includes

Automation is not a visual workflow builder — it's a collection of ready-made server management features that you configure with simple commands or dashboard toggles.

<CardGroup cols={2}>
  <Card title="Auto-Role" icon="user-plus" href="/features/automation#auto-role">
    Automatically assign roles to new human members when they join.
  </Card>

  <Card title="Bot Auto-Role" icon="robot" href="/features/automation#bot-auto-role">
    Assign a separate role specifically to bots that join the server.
  </Card>

  <Card title="Anti-Raid" icon="shield-halved" href="/features/automation#anti-raid">
    Detect and kick members when join activity exceeds a threshold.
  </Card>

  <Card title="Minimum Account Age" icon="calendar" href="/features/automation#minimum-account-age">
    Kick members whose Discord accounts are younger than a configured number of days.
  </Card>

  <Card title="Mute Evasion" icon="volume-xmark" href="/features/automation#mute-evasion">
    Automatically re-apply timeouts to members who remove them themselves.
  </Card>

  <Card title="Auto-Nickname" icon="tag" href="/features/automation#auto-nickname">
    Set a nickname for new members on join using a template.
  </Card>
</CardGroup>

## Auto-Role

When a new human member joins your server, Prowl automatically assigns the configured role(s). This is useful for giving new members access to basic channels or a default color role.

```text theme={null}
/automation autorole <role>
```

You can assign multiple roles — each role you set with this command is added to the list.

## Bot Auto-Role

A separate role specifically for bots that join the server. This lets you give bots different permissions than human members.

```text theme={null}
/automation botrole [role]
```

Omit the `role` parameter to remove the bot auto-role.

## Anti-Raid

Anti-raid monitors the rate of member joins and takes action when activity exceeds your configured threshold.

```text theme={null}
/automation antiraid <enabled> [threshold] [window]
```

| Parameter   | Default | Description                              |
| ----------- | ------- | ---------------------------------------- |
| `enabled`   | false   | Toggle anti-raid on or off               |
| `threshold` | 5       | Number of joins that triggers the action |
| `window`    | 10      | Time window in seconds                   |

When the threshold is exceeded within the window, Prowl kicks the excess members. This helps stop mass-join raids before they can cause damage.

## Minimum Account Age

Kicks members whose Discord accounts were created fewer than N days ago. This is effective against fresh bot accounts used in raids.

```text theme={null}
/automation minage <days>
```

Set `days` to `0` to disable. A threshold of 3–7 days blocks most throwaway accounts.

<Warning>
  Always publish your minimum account age in your server rules. Legitimate new users who just created their account deserve a way to contact a moderator for manual verification.
</Warning>

## Mute Evasion

Some members remove their own timeout by declining the mute. When mute evasion is enabled, Prowl automatically re-applies the timeout if it detects a member has removed it.

```text theme={null}
/automation muteevasion <enabled>
```

## Auto-Nickname

Sets a nickname for new members when they join, using a template with placeholders.

```text theme={null}
/automation nickname [nickname]
```

**Available placeholders:**

| Placeholder | Value                 |
| ----------- | --------------------- |
| `{user}`    | The member's username |
| `{server}`  | The server name       |

Omit the `nickname` parameter to remove the auto-nickname setting.

## Viewing Configuration

```text theme={null}
/automation config
```

This displays all current automation settings for the server.

## All Automation Commands

| Command                                               | Description                                 | Permission       |
| ----------------------------------------------------- | ------------------------------------------- | ---------------- |
| `/automation autorole <role>`                         | Set auto-role for new human members         | Manage Roles     |
| `/automation botrole [role]`                          | Set auto-role for bots                      | Manage Roles     |
| `/automation antiraid <enabled> [threshold] [window]` | Configure anti-raid protection              | Administrator    |
| `/automation minage <days>`                           | Set minimum account age (0 to disable)      | Administrator    |
| `/automation muteevasion <enabled>`                   | Toggle mute evasion                         | Administrator    |
| `/automation nickname [nickname]`                     | Set auto-nickname template (omit to remove) | Manage Nicknames |
| `/automation config`                                  | View current automation settings            | Manage Server    |
