---
schema_version: "1"
id: 334715cc75f4e93d5e02ae2b89292030538b3628fc639ee80bccac48220e23ea
title: Skills in Agentforce Vibes
collection: developer
version: current
locale: en-us
portal_url: https://docs.salesforce.com/developer/current/en-us/salesforcedx/einsteinfordevs/guides/files/skills.md
canonical_url: https://developer.salesforce.com/docs/platform/einstein-for-devs/guide/skills.html
source_site: developer.salesforce.com
content_type: documentation
content_hash: ff571c962d1650cd4a74ac89ffc9738ebf07d9ca6a80b8f50da337f2b04b9bd7
products:
  - Agentforce Vibes Developer Guide (Deprecated)
  - salesforcedx
---
# Skills in Agentforce Vibes

## Overview

Skills are modular instruction sets that extend Agentforce Vibes' capabilities for specific tasks. Each skill packages detailed guidance, workflows, and optional resources that Agentforce Vibes loads only when relevant to your request. Salesforce Skills are a set of Salesforce-specific skills that come out of the box with Agentforce Vibes. Unlike rules, which are always active, skills load on-demand so they don't consume context when you work on unrelated tasks.

**note:** We use Salesforce skills to automatically add relevant context to your prompts. Our teams continuously expand these skills to improve your development experience. You can explore them in this [repo](https://github.com/forcedotcom/afv-library).

## Enable Skills

To enable or disable the Skills feature from Settings:

1. Select **File** \> **Preferences** \> **Settings** (Windows or Linux) or **Code** \> **Settings** \> **Settings** (macOS).
2. Under **Agentforce Vibes**, select **Enable Skills**.

Skills are enabled by default.

## Key Features

- **Progressive loading** — Skills use a tiered loading model to maximize efficiency: metadata loads at startup, full instructions load when triggered, and bundled resources load only when needed.
- **On-demand activation** — Agentforce Vibes matches your request to skill descriptions and activates only the skills that apply.
- **Modular structure** — Each skill is a directory containing a `SKILL.md` file plus optional supporting files live in `references/`, `assets/`, or `scripts/` subdirectories in the skills folder.

## How Skills Work

Skills use progressive loading to control token usage:

| Level        | When Loaded             | Token Cost             | Content                                                    |
| :----------- | :---------------------- | :--------------------- | :--------------------------------------------------------- |
| Metadata     | Always (at startup)     | \~100 tokens per skill | Name and description from YAML frontmatter                 |
| Instructions | When skill is triggered | Under 5k tokens        | `SKILL.md` body with instructions and guidance             |
| Resources    | As needed               | Effectively unlimited  | Bundled files accessed via `read_file` or executed scripts |

When you send a message, Agentforce Vibes sees a list of available skills with their descriptions. If your request matches a skill's description, Agentforce Vibes activates it, which loads the full instructions from `SKILL.md`.

## Get Started with Skills

1. **Open the Skills menu** — Click the `⚖️`icon ( at the bottom of the Agentforce Vibes panel, to the left of the model selector. Switch to the Skills tab.
2. **Create a new skill** — Click "New skill…" and enter a name (for example, `apex-create-class`). Agentforce Vibes creates a skill directory with a template `SKILL.md` file. The name of the skill and the skill file name must match.
3. **Write your skill instructions** — Edit the `SKILL.md` file: update the description field to specify when the skill should trigger, add detailed instructions in the body, and optionally add supporting files in `references/`, `templates/`, or `scripts/` subdirectories.

You can also create skills manually by creating the directory structure in your file system. Place skill directories in `.a4drules/skills/` (workspace) or `~/.a4drules/skills/` (global), and then Agentforce Vibes detects them automatically.

## Implementation

### Skill Structure

Every skill is a directory containing a `SKILL.md` file with YAML frontmatter:

```
my-skill/
├── SKILL.md          # Required: main instructions
├── references/             # Optional: additional documentation
│   └── advanced.md
└── scripts/          # Optional: utility scripts
    └── helper.sh
```

The `SKILL.md` file has two parts: metadata and instructions.

```
---
name: my-skill
description: Brief description of what this skill does and when to use it.
---

# My Skill

Detailed instructions for Agentforce Vibes to follow when this skill is activated.

## Steps
1. First, do this
2. Then do that
3. For advanced usage, see [advanced.md](docs/advanced.md)
```

Required fields:

- `name` must exactly match the directory name.
- `description` tells Agentforce Vibes when to use the skill (max 1024 characters).

### Naming Conventions

Use lowercase with hyphens (kebab-case) and be descriptive about what the skill does.

**Good names:** `apex-class-generator`, `lwc-component-creator`, `sfdx-deploy-metadata`, `soql-query-runner`

**Avoid:** `sf` (too vague), `my_skill` (uses underscores and isn't descriptive), `DeployToOrg`(uses PascalCase rather than kebab-case), `misc-helpers` (too generic)

### Write Effective Descriptions

The description determines when Agentforce Vibes activates the skill. A vague description means the skill may not trigger when you expect it to.

**Good descriptions** are specific and actionable:

```
description: Deploy metadata to a Salesforce org using Salesforce DX. Use when deploying, updating, or synchronizing Salesforce applications and components.

description: Analyze Salesforce data exports (CSV or Excel). Use when exploring datasets, generating statistics, or creating visualizations from Salesforce reports and objects.
```

**Weak descriptions** leave too much ambiguity:

```
description: Helps with Deploy stuff.

description: Data analysis helper.

description: Useful for releases.
```

When writing descriptions, start with what the skill does (action verbs), include trigger phrases users might say, and mention specific file types, tools, or domains. Test your descriptions by trying different phrasings of requests to see if the skill triggers.

### Bundle Supporting Files

Skills can include additional files that Agentforce Vibes accesses only when needed:

```
complex-skill/
├── SKILL.md
├── references/
│   ├── setup.md
│   └── troubleshooting.md
├── assets/
│   └── config.yaml
└── scripts/
    └── validate.py
```

- **references/** — Use for information that's too detailed for `SKILL.md` or only relevant in specific situations, such as advanced configuration, troubleshooting, reference material, or platform-specific instructions.
- **assets/** — Use when your skill creates configuration files, boilerplate code, or structured documents.
- **scripts/** — Use for deterministic operations where you want consistent behavior: validation, data processing, complex calculations, API interactions. Scripts are token-efficient because only their output enters context, not the code itself.

These examples show how to reference bundled files in your `SKILL.md` instructions:

```
For initial setup, follow [setup.md](docs/setup.md).
Use the config template at `templates/config.yaml` as a starting point.
Run the validation script to check your configuration:

python scripts/validate.py
```

Agentforce Vibes reads documentation files using `read_file` when the instructions reference them. Scripts can be executed directly, and only the script output enters the context window.

### Where Skills Live

By default, skills are saved here:

| Location                                                    | Scope                 |
| :---------------------------------------------------------- | :-------------------- |
| `.a4drules/skills/`                                         | Project (recommended) |
| `$HOME/Library/Application Support/Code/User/globalStorage` | Global (macOS)        |
| `$HOME/.config/Code/User/globalStorage`                     | Global (Linux)        |
| `%APPDATA%\Code\User\globalStorage`                         | Global (Windows)      |

When a global skill and project skill have the same name, the global skill takes precedence. Version control your project skills by committing `.a4drules/skills/` to your source repository. Then your team can share, review, and improve them together.

### Toggle Skills

Every skill has a toggle to enable or disable it. Skills are enabled by default.

## Salesforce Skills in Agentforce Vibes

Agentforce Vibes includes a set of built-in Salesforce skills that provide context about your org's metadata. These skills work alongside tools like the Metadata Experts MCP server to help generate accurate, org-aware responses.

To keep these skills current, enable the **Auto Update Skills** setting. You can also run `Agentforce: Refresh Salesforce Skills` at any time to manually update them in your project.

To view active skills, open the Skills panel.

**note:** Salesforce Skills take priority over other skills in your project.

## Considerations and Limitations

- **Token budget** — Contain the size of `SKILL.md`. If your skill needs more content, split it into separate files in a `references/` directory and reference them from the main instructions.
- **Put important information first** — Agentforce Vibes reads the file sequentially, so front-load common cases. Use clear section headers such as "\#\# Error Handling" or "\#\# Configuration" so Agentforce Vibes can scan for relevant sections.
- **Use scripts for deterministic operations** — Prefer scripts for validation, formatting, and complex computations. Use instructions for flexible guidance that adapts to context.

## See Also

- [Rules](https://developer.salesforce.com/docs/platform/einstein-for-devs/guide/devagent-rules.md) — Always-active guidance that applies across your workspace.
- [Agent Skills](https://agentskills.io/specification)
