# Command List

### Authentication

{% hint style="info" %}
These commands can only be used by the server owner or a user with permissions configured in `/settings`
{% endhint %}

* **`/2fa`**
  * Setup 2FA authentication

{% hint style="warning" %}
This will be a different 2FA code than your Discord account one.&#x20;

Pandez Shield will never ask you for your Discord account 2FA, only othe one you setup using the bot.&#x20;
{% endhint %}

### Server Owner

{% hint style="info" %}
These commands can only be used by the server owner
{% endhint %}

* **`/settings`**
  * View and edit the current bot settings (e.g. configure role permissions)
* **`/sessions`**
  * View a list of current active sessions
* **`/logout <user>`**
  * Log out another user from their current session
* **`/permissions <user>`**
  * View the list of bot permissions a specific user has
* **`/logs`**
  * Shows logs of actions that were performed through Pandez Shield (e.g. when someone uses a Pandez Shield command)
  * Optional arguments:
    * `user` - Shows logs of actions performed by a specific user
    * `export` - Export logs

### Permission Commands

{% hint style="info" %}
These commands can only be used by users with permissions configured in `/settings`
{% endhint %}

* **`/role give`**
  * Give a role to a user
  * Arguments:
    * `user` - User to give the role to
    * `role` - Role to give to the user
  * Optional arguments:
    * `reason` - Add a reason for performing this action
* **`/role take`**
  * Take a role from a user
  * Arguments:
    * `user` - User to take the role from
    * `role` - Role to take from the user
  * Optional arguments:
    * `reason` - Add a reason for performing this action
* **`/mention`**
  * Mention @everyone, @here or any roles in a specific channel
  * Arguments:
    * `channel` - Channel to mention in
* **`/ban`**
  * Ban a user from the server
  * Arguments:
    * `user` - User to ban
  * Optional arguments:
    * `reason` - Add a reason for performing this action
* **`/unban`**
  * Unban a user from the server
  * Arguments:
    * `user` - User to unban
  * Optional arguments:
    * `reason` - Add a reason for performing this action
* **`/kick`**
  * Kick a user from the server
  * Arguments:
    * `user` - User to kick
  * Optional arguments:
    * `reason` - Add a reason for performing this action
* **`/channel create`**
  * Create a new channel
  * Arguments:
    * `name` - Name for the new channel
  * Optional arguments:
    * `reason` - Add a reason for performing this action
* **`/channel delete`**
  * Delete a channel
  * Arguments:
    * `channel` - Channel to delete
  * Optional arguments:
    * `reason` - Add a reason for performing this action
* **`/role create`**
  * Create a new role
  * Arguments:
    * `name` - Name for the new role
  * Optional arguments:
    * `reason` - Add a reason for performing this action
* **`/role delete`**
  * Delete a role
  * Arguments:
    * `role` - Role to delete
  * Optional arguments:
    * `reason` - Add a reason for performing this action

### Other

* **`/logout`**
  * Logout from your current session


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.pandezlabs.com/pandez-shield/command-list.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
