> For the complete documentation index, see [llms.txt](https://visionstore.gitbook.io/visionstore-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://visionstore.gitbook.io/visionstore-docs/scripts/crafting/guides/commands-and-keys.md).

# Commands and keys

Every command and key binding on one page.

## Player keys

| Key     | Action            | Setting                    |
| ------- | ----------------- | -------------------------- |
| **E**   | Use the bench     | `Config.Keybinds.interact` |
| **G**   | Pick up the bench | `Config.Keybinds.pickup`   |
| **ESC** | Leave the bench   |                            |

Players can rebind **E** and **G** in **Settings → Key Bindings → FiveM** ("Use crafting bench" and "Pick up crafting bench").

## Placement keys

| Key                 | Action                | Setting                      |
| ------------------- | --------------------- | ---------------------------- |
| ← / →               | Rotate                | `rotateLeft` / `rotateRight` |
| ↑ / ↓               | Move away / closer    | `moveAway` / `moveCloser`    |
| Page Up / Page Down | Raise / lower         | `moveUp` / `moveDown`        |
| Left Alt            | Snap to the ground    | `snapToGround`               |
| **Enter**           | Place                 | `confirm`                    |
| X                   | Cancel                | `cancel`                     |
| TAB                 | Switch placement mode | `switchMode`                 |

All in `Config.Placement.keybinds` (see [Placement](/visionstore-docs/scripts/crafting/configuration/placement.md#keys)).

## Player commands

| Command          | Who         | What it does                                                             |
| ---------------- | ----------- | ------------------------------------------------------------------------ |
| `/craftingperks` | Everyone    | Open your Crafting Mastery tree (`Config.Mastery.command`).              |
| `/policecustody` | Police jobs | Detain the hidden NPC next to you (`Config.NPCOptions.custody.command`). |

## Staff commands

Staff only. In the server console, type them without the `/`. The `crafting` prefix is `Config.Command`.

| Command                                   | What it does                                       |
| ----------------------------------------- | -------------------------------------------------- |
| `/crafting validate`                      | Check the config and list missing items.           |
| `/crafting reload`                        | Rebuild the catalogue from the loaded config.      |
| `/crafting give <id> <type> [amount]`     | Give portable bench(es).                           |
| `/givecraftingbench <id> <type> [amount]` | Shortcut for `crafting give`.                      |
| `/crafting place <type> [fixed]`          | Place a bench where you stand (in game only).      |
| `/crafting move [benchId]`                | Move a deployed bench (nearest one without an id). |
| `/crafting benches`                       | List deployed benches.                             |
| `/crafting bench <benchId>`               | One bench: type, XP, level, location.              |
| `/crafting set-xp <benchId> <xp>`         | Set a bench's XP.                                  |
| `/crafting npcs`                          | Hidden NPCs and their wiring.                      |
| `/crafting npc-progress <id>`             | A player's NPC progress.                           |
| `/crafting npc-reset <id> [npcId]`        | Reset a player's NPC progress.                     |
| `/crafting mastery <id>`                  | A player's Crafting Mastery.                       |
| `/crafting mastery-xp <id> <amount>`      | Grant Mastery XP.                                  |
| `/crafting mastery-reset <id>`            | Wipe a player's Mastery.                           |
| `/crafting mastery-why <id> <recipeKey>`  | Explain a Mastery XP award.                        |

Run `/crafting` alone to print the list of sub-commands.

## Developer commands (staff)

| Command                                 | What it does                                                |
| --------------------------------------- | ----------------------------------------------------------- |
| `/craftingcalibrate`                    | Line up the screen, camera and player spot on a bench prop. |
| `/craftingdui`                          | Toggle the screen debug overlay.                            |
| `/craftingduireload`                    | Rebuild the bench screens.                                  |
| `/craftingbackdrop <metresX> <metresY>` | Size the black sheet behind the screen.                     |

### Calibration keys

| Key                 | Action                                  |
| ------------------- | --------------------------------------- |
| Arrow keys          | Adjust the selected value               |
| `[` / `]`           | Previous / next field                   |
| Page Up / Page Down | Switch group (screen / camera / player) |
| Shift / Ctrl        | Bigger / finer steps                    |
| Enter               | Print the config block                  |
| Backspace           | Reset to the config values              |
| X                   | Exit                                    |


---

# 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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://visionstore.gitbook.io/visionstore-docs/scripts/crafting/guides/commands-and-keys.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
