> For the complete documentation index, see [llms.txt](https://luffyyy.gitbook.io/beardlib/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://luffyyy.gitbook.io/beardlib/modules/keybindmodule.md).

# Keybind

Updated for version 3.38.

## Module Definition

The module is inherited from [ModuleBase](https://luffyyy.gitbook.io/beardlib/modules/modulebase). So base parameters can be found there.

The module uses almost the same parameters of the BLT json keybinds <https://payday-2-blt-docs.readthedocs.io/en/latest/mods/definition/#json-keybinds>

### Module name

The name of the module you use as the meta of the module definition is 'Keybind' or 'KeybindModule' if `_force_search` is set to true in the module definition.

### XML Structure

```markup
<Keybind id name description localized run_in_game run_in_menu script_path/>
```

| Parameter      | Type    | Description                                                                                     |
| -------------- | ------- | ----------------------------------------------------------------------------------------------- |
| id/keybind\_id | String  | a string id for the keybind\[make sure its unique as possible]                                  |
| name           | String  | string of the title/id that will show up as the title in the keybinds menu                      |
| description    | String  | string of the description/id that will show up as the description in the keybinds menu          |
| localized      | Boolean | Determines if the menu should use the name and description as localization keys\[DEFAULT: true] |
| run\_in\_game  | Boolean | Determines if the keybind can be used in game \[DEFAULT: true]                                  |
| run\_in\_menu  | Boolean | Determines if the keybind can be used in menu \[DEFAULT: true]                                  |
| script\_path   | String  | path to the script that the keybind will be running \[ModPath + script\_path]                   |

### Example

This example is what you would put inside your main node within your [mod config](https://github.com/GreatBigBushyBeard/PAYDAY-2-BeardLib/wiki/Module-Config)

```markup
<Keybind keybind_id="mykeybind" name="My keybind" description="Runs a script!" localized="false" script_path="Script.lua"/>
```

This will add a keybind to mod keybinds menu similar to BLT's Json ones. when the key that the keybind is set to is pressed, this will run the script in 'script\_path'.


---

# 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://luffyyy.gitbook.io/beardlib/modules/keybindmodule.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.
