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

# PumpkinAnnouncer Command Reference and Permissions

> Reference for all /pa commands, permission nodes, tab completion, and the automatic in-game update notification system in PumpkinAnnouncer.

PumpkinAnnouncer registers a single root command — `/pa` — with three subcommands for managing your announcements at runtime. All subcommands require the `pumpkin.admin` permission and work from both in-game and the server or proxy console. Tab completion is built-in, so you never have to remember exact announcement IDs.

## Command aliases

The primary command is `/pa`. On Paper servers, two additional aliases are registered that behave identically:

* `/pa`
* `/pumpkinannouncer` *(Paper only)*
* `/announcements` *(Paper only)*

On Velocity, only `/pa` is available.

## Commands

| Command         | Description                                                                                                                                                   | Permission      |
| --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------- |
| `/pa reload`    | Reloads `paper-config.yml` or `velocity-config.yml` from disk, rebuilds the announcement queue, and restarts the broadcast timer. No server restart required. | `pumpkin.admin` |
| `/pa list`      | Prints a list of every loaded announcement ID along with its configured server and world filters. Useful for verifying your config loaded correctly.          | `pumpkin.admin` |
| `/pa test <id>` | Immediately broadcasts the announcement with the given ID to all currently online players (subject to its server/world filters), ignoring the cooldown timer. | `pumpkin.admin` |

### `/pa reload`

Use this command every time you edit your config file. It performs a full hot-reload: the YAML is re-parsed, the announcement map is rebuilt, the language strings are refreshed, and the timer is reset.

```bash theme={null}
/pa reload
```

On success, you see the `messages.reload-success` response (default: `Reload complete! Everything is working correctly.`).

### `/pa list`

Displays all loaded announcement IDs with their filter metadata, so you can confirm the right entries are active after a reload.

```bash theme={null}
/pa list
```

Output example:

```
Loaded announcements:
» discord  (Servers: [global]) (Worlds: [global])
» security (Servers: [global]) (Worlds: [global])
» nether_warning (Servers: [global]) (Worlds: [world_nether])
```

### `/pa test <id>`

Instantly triggers a single announcement by its config key. This bypasses the cooldown timer entirely and is the fastest way to preview how an announcement looks in-game after editing it.

```bash theme={null}
/pa test discord
/pa test nether_warning
```

If the ID does not exist in the loaded config, you see the `messages.id-not-found` error response.

## Tab completion

PumpkinAnnouncer provides smart tab completion at every level of the command:

* Typing `/pa <TAB>` suggests `reload`, `list`, and `test`.
* Typing `/pa test <TAB>` auto-completes from the list of currently loaded announcement IDs.
* Partial input is filtered — typing `/pa test di<TAB>` suggests only IDs that start with `di`.

<Tip>
  Tab completion reflects the **currently loaded** announcements. After a `/pa reload`, the completion list updates immediately to match your new config.
</Tip>

## Permissions

| Permission node | Description                                                                        |
| --------------- | ---------------------------------------------------------------------------------- |
| `pumpkin.admin` | Grants access to all `/pa` subcommands and enables the in-game update notification |

Assign this permission through your server's permission plugin (e.g., LuckPerms). Console always has full access regardless of permissions.

## Update notifications

When PumpkinAnnouncer detects a new release on Modrinth at startup, it stores the version information in memory. Any player who holds the `pumpkin.admin` permission and joins the server while a newer version is available sees the following in chat:

```
🎃 PumpkinAnnouncer Update Available!
Current version: 2.4 | New version: 2.x
What's new: <release name>
👉 [CLICK HERE TO DOWNLOAD] 👈
```

The download link is clickable and opens the Modrinth plugin page directly in the player's browser. The check is entirely non-blocking — it runs asynchronously at startup and never affects server performance.

<Note>
  Update notifications only appear to players with `pumpkin.admin`. Regular players are never shown the update message.
</Note>
