# Skills

Skills are modular instruction packages that extend what Agentforce Vibes can do. They teach the agent domain knowledge that it doesn't have out of the box: your team's patterns, your project's conventions, your org's specific requirements. Unlike Rules (which are always active), Skills activate on-demand only when relevant to your request.

## Types of Skills

The Skills panel groups skills by scope:

- **Project**—skills scoped to your current workspace, stored in `.vibes/skills/`. Commit them to version control so the whole team benefits.
- **Salesforce**—built-in skills that ship with Agentforce Vibes for common development tasks.

:::note
Skills change frequently. Skill names, file paths, and internal structure can change or be removed. Skills don't carry the same backward-compatibility guarantees as Salesforce platform APIs or GA features. For the current state, see the [sf-skills](https://github.com/forcedotcom/sf-skills) repository.
:::

### Built-in Salesforce Skills

Examples of included Salesforce Skills:

| Skill                              | Description                                                        |
| :--------------------------------- | :----------------------------------------------------------------- |
| `platform-apex-generate`           | Apex class and test generation with governor limit awareness       |
| `experience-lwc-generate`          | Lightning Web Component scaffolding and standard patterns          |
| `automation-flow-generate`         | Flow Builder automation design and optimization                    |
| `platform-metadata-deploy`         | Safe metadata deployment strategies across org types               |
| `platform-permission-set-generate` | Permission set creation and assignment workflows                   |
| `agentforce-test`                  | Agentforce agent testing strategies and validation                 |
| `agentforce-observe`               | Agent session tracing and debug log analysis (disabled by default) |

The full list of Salesforce Skills appears in the Toolkit panel and updates automatically.

## View and Manage Skills

1. Open the Agentforce Vibes panel and click the **Toolkit** tab.
2. Click **Skills**.

The panel shows all available skills with a toggle to enable or disable each one.

## Create a Skill

1. Click **+ Add Skill** in the Skills panel.
2. Enter a **Name** in kebab-case (for example, `my-skill`).
3. Select a **Scope**: Project or global.
4. Enter a description—a brief summary of what the skill does.
5. Write the content—the domain knowledge that the agent should apply when the skill is relevant.
6. Click **Add Skill**.

This step creates a `SKILL.md` file at `.vibes/skills/custom-trigger-patterns/SKILL.md`. The description tells the agent when to activate the skill. The content contains the instructions that the agent follows. Now, whenever you ask the agent to create a trigger, it applies your team's handler pattern automatically.

## How Skills Load

Skills use progressive loading to conserve context:

1. **Metadata** (at startup)—the agent sees the skill's name and description.
2. **Instructions** (when triggered)—the full `SKILL.md` body loads.
3. **Resources** (as needed)—bundled files in `references/`, `assets/`, or `scripts/` subdirectories.

The agent matches your request against skill descriptions. If a match exists, it loads the full instructions.

## Considerations

- Salesforce skills take priority over project skills when both match.
- Keep the instructions concise. Move large reference material into a `references/` subdirectory.
- Write descriptions with action verbs and the phrases your team actually uses so the agent activates the skill reliably.
