> For the complete documentation index, see [llms.txt](https://headhunter-1.gitbook.io/headhunter/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://headhunter-1.gitbook.io/headhunter/core-features/commands.md).

# Commands

{% hint style="info" %}
Most commands support tab-completion. Press <mark style="color:blue;">Tab</mark> while typing to see available options and arguments.
{% endhint %}

***

### Main Command

{% hint style="info" %}
Prefixes every command
{% endhint %}

| Command                                          | Description                                                              | Permission | Aliases                                  |
| ------------------------------------------------ | ------------------------------------------------------------------------ | ---------- | ---------------------------------------- |
| <mark style="color:$success;">/headhunter</mark> | Shows a list of all commands available to you based on your permissions. | None       | <mark style="color:$success;">/hh</mark> |

### Player Commands

{% tabs %}
{% tab title="Selling Heads" %}

| Command                                            | Description             | Permission                                                 |
| -------------------------------------------------- | ----------------------- | ---------------------------------------------------------- |
| <mark style="color:$success;">/hh sellheads</mark> | Open the sell heads GUI | <mark style="color:$success;">headhunter.sell-heads</mark> |

***

Opens an inventory menu where you can sell collected heads for money.

**Alternative methods:**

* Hold head and right-click (requires <mark style="color:$success;">headhunter.sell-heads.hand</mark>)
* Right-click a sell heads sign (requires <mark style="color:$success;">headhunter.sell-heads.sign.use</mark>)
  {% endtab %}

{% tab title="Statistics" %}

| Command                                                  | Description                         | Permission                                                  |
| -------------------------------------------------------- | ----------------------------------- | ----------------------------------------------------------- |
| <mark style="color:$success;">/hh stats</mark>           | Open your statistics GUI            | <mark style="color:$success;">headhunter.stats</mark>       |
| <mark style="color:$success;">/hh stats \<player></mark> | View another players statistics GUI | <mark style="color:$success;">headhunter.stats.other</mark> |

***

**Displays:**

* All mob heads and their counts
* Heads sold and heads stored
  {% endtab %}

{% tab title="Level Up" %}

| Command                                          | Description              | Permission |
| ------------------------------------------------ | ------------------------ | ---------- |
| <mark style="color:$success;">/hh levelup</mark> | Level up to the next mob | None       |

***

Attempts to level up if you have enough <mark style="color:$success;">XP</mark> and <mark style="color:$success;">money</mark>. Shows appropriate error messages if requirements aren't met.
{% endtab %}
{% endtabs %}

### Admin Commands

{% tabs %}
{% tab title="Admin Menu" %}

| Command                                        | Description                      | Permission       |
| ---------------------------------------------- | -------------------------------- | ---------------- |
| <mark style="color:$success;">/hh admin</mark> | Open the admin configuration GUI | headhunter.admin |

***

**Opens an interactive menu to configure all plugin features including:**

* Masks and rewards
* Level system settings
* Custom enchantments
* Player HH data management
* Sign data
* Game rules

**Sub-permissions for menu sections:**

* <mark style="color:$success;">headhunter.admin.masks</mark> - Manage masks
* <mark style="color:$success;">headhunter.admin.rewards</mark> - Manage rewards
* <mark style="color:$success;">headhunter.admin.rules</mark> - Manage rules
* <mark style="color:$success;">headhunter.admin.player</mark> - Manage player data
* <mark style="color:$success;">headhunter.admin.custom-enchantments</mark> - Manage enchantments
* <mark style="color:$success;">headhunter.admin.levels</mark> - Manage levels
* <mark style="color:$success;">headhunter.admin.signs</mark> - Manage signs
  {% endtab %}

{% tab title="Head Management" %}

| Command                                                                                                     | Description                       | Permission              |
| ----------------------------------------------------------------------------------------------------------- | --------------------------------- | ----------------------- |
| <mark style="color:$success;">/hh heads get \<player></mark>                                                | Get total heads sold by a player  | headhunter.heads.get    |
| <mark style="color:$success;">/hh heads set</mark> <mark style="color:$success;">\<player> \<amount></mark> | Set total heads sold for a player | headhunter.heads.set    |
| <mark style="color:$success;">/hh heads delete</mark> <mark style="color:$success;">\<player></mark>        | Delete a player's head data       | headhunter.heads.delete |
| <mark style="color:$success;">/hh heads give \<player> \<entityType> \<amount></mark>                       | Give mob heads to a player        | headhunter.heads.give   |

***

#### Examples:

```
/hh heads get Steve
/hh heads set Steve 100
/hh heads delete Steve
/hh heads give Steve ZOMBIE 10
```

{% endtab %}

{% tab title="Stored Heads Management" %}

| Command                                                                              | Description                                          | Permission            |
| ------------------------------------------------------------------------------------ | ---------------------------------------------------- | --------------------- |
| <mark style="color:$success;">/hh heads get \<player> \<entityType></mark>           | Get total stored heads on an entity type by a player | headhunter.stored.get |
| <mark style="color:$success;">/hh heads set \<player> \<entityType> \<amount></mark> | Set total stored heads on an entity type by a player | headhunter.stored.set |
| {% endtab %}                                                                         |                                                      |                       |

{% tab title="Head Storage Blocks" %}

| Command                                                   | Description                              | Permission                    |
| --------------------------------------------------------- | ---------------------------------------- | ----------------------------- |
| <mark style="color:$success;">/hh headstorageblock</mark> | Convert held block to Head Storage Block | headhunter.head-storage-block |

***

#### How it works:

1. Hold any placeable block in your hand
2. Run <mark style="color:$success;">/hh headstorageblock</mark>
3. Block is converted to a Head Storage Block
4. Place it anywhere for players to use
   {% endtab %}

{% tab title="Level Management" %}

| Command                                                               | Description                  | Permission           |
| --------------------------------------------------------------------- | ---------------------------- | -------------------- |
| <mark style="color:$success;">/hh level get \<player></mark>          | Get a player's current level | headhunter.level.get |
| <mark style="color:$success;">/hh level set \<player> \<level></mark> | Set a player's level         | headhunter.level.set |

***

#### Examples:

```
/hh level get Steve
/hh level set Steve 5
```

{% endtab %}

{% tab title="Mask Management" %}

| Command                                                                                        | Description            | Permission            |
| ---------------------------------------------------------------------------------------------- | ---------------------- | --------------------- |
| <mark style="color:$success;">/hh masks get \<entityType> \<level> \<amount></mark>            | Give yourself masks    | headhunter.masks.get  |
| <mark style="color:$success;">/hh masks give \<player> \<entityType> \<level> \<amount></mark> | Give masks to a player | headhunter.masks.give |

***

#### Examples:

```
/hh masks get ZOMBIE 1 1
/hh masks get PIG 3 2
/hh masks give Steve ZOMBIE 1 1
/hh masks give Steve PIG 2 5
```

**Note:** Entity type must be uppercase (PIG, ZOMBIE, etc.)
{% endtab %}
{% endtabs %}

***

### Command Details

**Heads Commands**

<details>

<summary><mark style="color:$success;">/hh heads get &#x3C;player></mark></summary>

* Returns total number of heads sold by the player
* Example output: "Total heads for player Steve is 150."

</details>

<details>

<summary><mark style="color:$success;">/hh heads set &#x3C;player> &#x3C;amount></mark></summary>

* Sets the total heads sold counter
* Useful for fixing data or rewarding players
* Amount is clamped to valid range

</details>

<details>

<summary><mark style="color:$success;">/hh heads delete &#x3C;player></mark></summary>

* Completely removes player's head count data
* Cannot be undone!

</details>

<details>

<summary><mark style="color:$success;">/hh heads give &#x3C;player> &#x3C;entityType> &#x3C;amount></mark></summary>

* Gives sellable mob heads directly to player
* Entity type must match a level in [Levels Config (levels.yml)](/headhunter/configurations/levels-config-levels.yml.md)
* Heads are added to player's inventory or dropped on floor if full

</details>

**Stored Commands**

<details>

<summary><mark style="color:$success;">/hh stored get &#x3C;player> &#x3C;entityType></mark></summary>

* Returns the total number of stored heads of the given entity type by the player
* Example output: "Total stored pig heads for player Steve is 150."
* Entity type must match a level in [Levels Config (levels.yml)](/headhunter/configurations/levels-config-levels.yml.md)

</details>

<details>

<summary><mark style="color:$success;">/hh stored set &#x3C;player> &#x3C;entityType> &#x3C;amount></mark></summary>

* Sets the total number of stored heads of the given entity type by the player
* Example output: "Total stored pig heads for player Steve was set to 150."
* Entity type must match a level in [Levels Config (levels.yml)](/headhunter/configurations/levels-config-levels.yml.md)

</details>

**Masks Commands**

<details>

<summary><mark style="color:$success;">/hh masks get &#x3C;entotyType> &#x3C;level> &#x3C;amount></mark></summary>

* Gives you the specified mask(s)
* Entity type: PIG, ZOMBIE, COW, etc.
* Level (must exist in [Levels Config (levels.yml)](/headhunter/configurations/levels-config-levels.yml.md))
* Amount: How many masks to receive

</details>

<details>

<summary><mark style="color:$success;">/hh masks give &#x3C;player> &#x3C;entityType> &#x3C;level> &#x3C;amount></mark></summary>

* Same as get, but for another player
* Useful for rewards or events

</details>

**Level Commands**

<details>

<summary><mark style="color:$success;">/hh level get &#x3C;player></mark></summary>

* Shows player's current HeadHunter level
* Returns a number (1, 2, 3, etc.)

</details>

<details>

<summary><mark style="color:$success;">/hh level set &#x3C;player> &#x3C;level></mark></summary>

* Forcefully sets player's level
* Triggers level-up rewards
* Updates player's progression

</details>

**LevelUp Command**

<details>

<summary><mark style="color:$success;">/hh levelup</mark></summary>

* Player-only command
* Checks if player has enough:\
  &#x20; \-  XP (heads collected)\
  &#x20; \-  Money (Vault balance)
* If successful: Levels up and applies rewards
* If not: Shows what's missing

</details>

**HeadStorageBlock Command**

<details>

<summary><mark style="color:$success;">/hh headstorageblock</mark></summary>

* Must hold a block in main hand
* Converts block to special storage block
* Block glows and has custom name/lore
* Players can use it to store heads

</details>

***

### Console vs Player Commands

| Command                                                            | Console    | Player |
| ------------------------------------------------------------------ | ---------- | ------ |
| <mark style="color:$success;">/hh admin</mark>                     | ❌ No       | ✅ Yes  |
| <mark style="color:$success;">/hh sellheads</mark>                 | ❌ No       | ✅ Yes  |
| <mark style="color:$success;">/hh stats</mark>                     | ❌ No       | ✅ Yes  |
| <mark style="color:$success;">/hh levelup</mark>                   | ❌ No       | ✅ Yes  |
| <mark style="color:$success;">/hh headstorageblock</mark>          | ❌ No       | ✅ Yes  |
| <mark style="color:$success;">/hh heads get/set/delete/give</mark> | ✅ Yes      | ✅ Yes  |
| <mark style="color:$success;">/hh stored get/set</mark>            | ✅ Yes      | ✅ Yes  |
| <mark style="color:$success;">/hh masks get/give</mark>            | ⚠️ Partial | ✅ Yes  |
| <mark style="color:$success;">/hh level get/set</mark>             | ✅ Yes      | ✅ Yes  |

{% hint style="info" %}
**Note:** Masks <mark style="color:$primary;">get</mark> requires a player (you receive the item), but <mark style="color:$primary;">give</mark> can be used from console.
{% endhint %}

{% hint style="warning" %}
Commands like <mark style="color:$warning;">/hh heads delete</mark> and <mark style="color:$warning;">/hh level set</mark> directly modify player data. Always backup before using these commands on a live server!
{% endhint %}

***

### Error Messages

**Common errors and their meanings:**

<details>

<summary>Player not found</summary>

* The specified player is not online
* Check spelling (names are case-sensitive)
* Player must be on the server

</details>

<details>

<summary>Invalid entity type</summary>

* Entity type doesn't exist or not configured
* Must use UPPERCASE (PIG not pig)
* Check Levels.yml for valid types

</details>

<details>

<summary>Invalid level</summary>

* Level doesn't exist for that entity
* Check [Masks Config (masks.yml)](/headhunter/configurations/masks-config-masks.yml.md) for available levels
* Levels start at 1

</details>

<details>

<summary>Invalid number</summary>

* Amount/level must be a valid integer
* No decimals or special characters
* Must be positive

</details>

<details>

<summary>You're not holding a block</summary>

* Used <mark style="color:$success;">/hh headstorageblock</mark> without holding a block
* Hold any placeable block in main hand

</details>

<details>

<summary>Console may not use this command</summary>

* Command requires a player
* Run from in-game, not console

</details>

***

### Tips & Tricks

<table data-view="cards"><thead><tr><th></th><th></th></tr></thead><tbody><tr><td><strong>⌨️ Tab Completion</strong></td><td><ul><li>Press Tab for argument suggestions</li><li>Works with player names</li><li>Shows entity types and options</li></ul></td></tr><tr><td><strong>🎯 Efficient Admin Work</strong></td><td><ul><li>Use <mark style="color:$success;">/hh admin</mark> GUI for most tasks</li><li>Commands for bulk operations</li><li>Script repetitive commands</li></ul></td></tr><tr><td><strong>🔍 Finding Entity Names</strong></td><td><ul><li>Check <a data-mention href="/pages/I3JZuCufE4nbKWklHbD8">/pages/I3JZuCufE4nbKWklHbD8</a> for valid names</li><li>Tab-complete shows options</li><li>Must be exact match (UPPERCASE)</li></ul></td></tr><tr><td><strong>📦 Bulk Operations</strong></td><td><ul><li>Give multiple items at once</li><li>Use amount parameter</li><li>Script with command blocks</li></ul></td></tr></tbody></table>

{% hint style="info" %}
For a complete list of permissions, see the [permissions](/headhunter/core-features/permissions.md) page.
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://headhunter-1.gitbook.io/headhunter/core-features/commands.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
