# Creating and using custom skills

A custom skill describes a specific action to perform or rule to follow in a specific context. Custom skills are tied to a specific workspace.

For example, whenever you generate date to a REST API, you want the Agent to use a specific type of credential and a specific endpoint.

When the Data Agent detects that a configured skill applies in the current context, it automatically uses the skill. You can also load the skill directly.

## Displaying the list of available skills

You manage custom skills from the **Skills** page on the **Agent Instructions** panel.

<figure><img src="https://4109733485-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmoU4gTR9LxlzHeWmQCUZ%2Fuploads%2FGn7K66kB2r64f7mIvfQy%2FAgentInstructions_Skills.png?alt=media&#x26;token=775fb1c4-8d37-46f1-8d77-17e263f42a02" alt=""><figcaption><p>Skills page on the Agent Instructions panel</p></figcaption></figure>

To display the **Skills** page, either:

* In the Data Agent heading, click the agent instructions icon, then click **Skills**.

<figure><img src="https://4109733485-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmoU4gTR9LxlzHeWmQCUZ%2Fuploads%2F7JRAt7v0fMp5zsL1tM5o%2FAgentInstructions_Icon.png?alt=media&#x26;token=47016a78-509d-42bb-a29d-9f005b7e62ac" alt=""><figcaption><p>Agent instructions icon in the Data Agent heading</p></figcaption></figure>

* In the Data Agent chat prompt, click **Skills**, then click **Manage Skills**. The **Skills** dropdown also displays the available skills.

<figure><img src="https://4109733485-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmoU4gTR9LxlzHeWmQCUZ%2Fuploads%2FSGS28mp4Ld3RLpTANWQu%2FDataAgent_SkillsDropdown.png?alt=media&#x26;token=e27d4f63-4add-4fe2-88df-f56a7061e666" alt=""><figcaption><p>Skills dropdown list in the Data Agent chat prompt</p></figcaption></figure>

## Creating a custom skill

To create a custom skill:

1. Either:
   1. In the **Skills** dropdown, click **Add Skill**.
   2. On the **Skills** page, click **New Skill**.

<figure><img src="https://4109733485-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmoU4gTR9LxlzHeWmQCUZ%2Fuploads%2FrMfJvEGZWXUHgTYtuWmx%2FCustomSkill_NewFields.png?alt=media&#x26;token=6b488c93-7eb5-471a-be87-ed3fb13a8b4d" alt=""><figcaption><p>Fields to configure a new custom skill</p></figcaption></figure>

2. In the **Name** field, provide a name for the skill.
3. In the **Description** field, provide a description of the context when the Data Agent should load the skill.
4. In the **Instructions** field, provide the specific instructions for the Data Agent to follow when the skill is loaded.
5. Click **Create Skill**.

## Editing a custom skill

You edit a custom skill from the **Skills** page.

1. On the **Skills** page, click the skill to edit.

<figure><img src="https://4109733485-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FmoU4gTR9LxlzHeWmQCUZ%2Fuploads%2FMkwtJ90YA3MkqT8bQn8R%2FCustomSkill_EditFields.png?alt=media&#x26;token=2bdcb214-2246-4321-b314-28f54372c97b" alt=""><figcaption><p>Fields to edit an existing custom skill</p></figcaption></figure>

2. Update the skill configuration.
3. Click **Save Changes**.

## Loading a custom skill

The Data Agent should automatically detect that the current context applies to a configured custom skill.

To manually load the skill:

1. In the chat prompt, click **Skills**.
2. In the **Skills** dropdown, click the skill to load.

## Deleting a custom skill

You delete a custom skill from the **Skills** page.

1. On the **Skills** page, click the custom skill to delete.
2. On the custom skill details, click **Delete**.
