# Attributes

Custom Commands can be personalized with Attributes, Some of them are necesary to get your command working

## Alias

The **Alias** is the name that is Displayed on the **Command List.** If the alias is not configured, The name of the command will be the same as the name registered on the function `RegisterCommand().`

```lua
MyCommand.Alias = "Night Time"
```

## Description

The **Description** is made to give context of how the command works in a short paragraph, If the description is not configured, No description will be shown.

```lua
MyCommand.Description = "Set the Time at 00:00"
```

## Icon

The **Icon** is the icon displayed on your command as a visual representation of the functionality of your command.

```lua
MyCommand.Icon = "rbxassetid://1234567890"
```

## Event

The **Event** is a **`Remote Event`** that will be fired when the command is executed. You will learn how to connect them later.

{% hint style="danger" %}
If the event isn't configured, The command will be locked and it wont allow you to execute it.
{% endhint %}

```lua
MyCommand.Event = RemoteEvent
```

## Access

**Access** allows you to choose which roles on your game can execute a command. If a certain role isn't allowed to execute a command, It won't be visible to them.

{% hint style="info" %}
You can put {"Team"} to allow every person with access to the panel execute the command.
{% endhint %}

```lua
MyCommand.Access = {"Owner"}
```

## Example

After everything you have done, Your code should look like this.

```lua
local players = game:GetService("Players")
local replicated_storage = game:GetService("ReplicatedStorage")

local client = players.LocalPlayer

local storage = replicated_storage:WaitForChild("EXE6_STORAGE")
local events = storage.events

local CustomCommands = require(storage.modules.CustomCommands)

--// REGISTERED CUSTOM COMMANDS

local MyCommand = CustomCommands:RegisterCommand("CC")
MyCommand.Alias = "Custom Command"
MyCommand.Description = "Amazing Description goes here..."
MyCommand.Icon = "rbxassetid://11419714821"
MyCommand.Event = nil --// Replace with event
MyCommand.Access = {"Owner"}
```

<figure><img src="/files/rpUBXpaz1cU0wWQ3EvI2" alt=""><figcaption></figcaption></figure>

Now, Lets go through parameters and how they work.


---

# 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://flare-studio.gitbook.io/exe-6/custom-commands/attributes.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.
