Designing and Implementing Skills for Agentforce Vibes
Designing and Implementing Skills for Agentforce Vibes
Skills are a foundational capability in Agentforce Vibes, enabling developers to encode development knowledge into reusable, structured guidance that Vibes can apply during software development tasks.
While large language models are powerful general problem solvers, they do not automatically understand Salesforce conventions, architectural patterns, and operational standards. Skills bridge that gap by capturing expert workflows and making them available to Vibes in a consistent, repeatable form.
In the context of Salesforce development, Skills allow teams to embed best practices such as trigger frameworks, testing standards, security requirements, and deployment patterns directly into the development environment. When a Skill is activated, Vibes uses its instructions to guide reasoning and execution, helping ensure that generated code and development actions follow the expected patterns.
This guide explains how to design, structure, and maintain effective Skills for use in Agentforce Vibes. It covers naming conventions, discovery metadata, instruction design, directory structure, and progressive disclosure patterns, along with a practical checklist to help developers author high-quality Skills that Vibes can reliably apply during development workflows.
What a Skill Is
A Skill is a reusable capability that teaches Vibes how to execute a specific development task or workflow.
Skills allow Vibes to move beyond general reasoning and perform tasks using structured guidance encoded by developers.
A Skill typically defines:
- the goal of the task
- the workflow Vibes should follow
- important validation checks
- optional templates, examples, or documentation
When a Skill is activated, Vibes uses its instructions to guide reasoning and execution. Skills therefore function as codified development expertise.
For example, without a Skill, Vibes might generate Salesforce Apex tests that:
- miss bulk test cases
- omit negative testing
- include
SeeAllData=true - lack meaningful assertions
A Skill can encode best practices such as:
- bulk-safe testing
- use of
Test.startTest()andTest.stopTest() - proper test data generation
- meaningful assertions
In practice, Skills allow Vibes to consistently follow Salesforce development standards.
Skill Architecture in Agentforce Vibes
Skills in Agentforce Vibes follow a progressive loading model so that Vibes only loads the information required for the current task. This enables developers to maintain large skill libraries without increasing prompt size.
Every skill lives in a folder with a required SKILL.md at the root. The folder name matches the name of the skill, e.g., generating-apex-test-classes.
Skill Discovery
When Vibes starts, it loads only metadata from each available Skill. This metadata should be roughly ~100 words and include:
- name
- description
Example:
name: generating-apex-test-classes
description: Generate bulk-safe Apex test classes with proper test data setup and meaningful assertions.
Vibes uses this metadata to determine whether a Skill should be activated during reasoning. At this stage:
- full instructions are not loaded
- supporting assets are not loaded
This keeps the working context small and efficient.
Skill Activation
When Vibes determines that a Skill is relevant to a task, the Skill is activated and the full Skill content (ideally under 500 lines) becomes available. This may include:
- workflow instructions
- validation rules
- examples
- templates
- documentation
Only active Skills are included in the prompt context. This approach allows Vibes to support dozens or hundreds of Skills without degrading performance.
Skill Naming Conventions
Skills represent actions Vibes performs, so the name should clearly express that action. Skill names should use gerund form (verbs ending in “-ing”). Gerund-based names create a clear and readable skill library. Each entry reads as a capability Vibes can execute.
Examples
- generating-apex-test-classes
- refactoring-triggers-to-handler-pattern
- reviewing-permission-sets
- optimizing-soql-queries
- deploying-salesforce-metadata
- creating-lwc-components
Each entry reads as a capability Vibes can execute.
Skill Descriptions for Discovery
Descriptions determine whether Vibes selects the Skill during reasoning. Descriptions function as searchable capability metadata.
This is arguably the most critical piece. The description determines whether Vibes actually invokes your skill.
When Vibes analyzes a user request, it compares the request against Skill descriptions to determine which Skills are relevant. Poor descriptions reduce the likelihood that a Skill will be used. Descriptions should be concise but information-rich.
Instead of “Generates Apex trigger framework code,” something like “Generates Apex trigger handler classes using the trigger-actions-framework pattern. Use this skill whenever the user mentions triggers, trigger handlers, TriggerAction interface, trigger-actions-framework, or asks about automating DML events on any Salesforce object.”
Effective Skill Description Characteristics
The guidance is to make descriptions slightly “pushy”: include not just what the skill does, but specific contexts and trigger phrases. A good description explains:
- the problem the Skill solves
- the development context
- the expected outcome
Good Example
Generates Apex trigger handler classes using the trigger-actions-framework pattern. Use this skill whenever the user mentions triggers, trigger handlers, TriggerAction interface, trigger-actions-framework, or asks about automating DML events on any Salesforce object.
Why this works:
- includes domain keywords
- defines the output
- specifies quality expectations
Weak Example
Helps with Apex tests.
Description Writing Tips
Include relevant development keywords such as:
- Apex
- Lightning Web Components
- SOQL
- Permission Sets
- Salesforce Metadata
- Unit Tests
Mention expected artifacts:
- test classes
- metadata deployments
- security reviews
- performance analysis
Describe results, not intentions.
Bad:
Assists with debugging.
Better:
Analyze Salesforce debug logs to identify exceptions, governor limit violations, and inefficient SOQL queries.
Designing Skills Around Real Developer Workflows
The most effective Skills reflect real development workflows. Skills should capture the instructions that developers repeatedly give Vibes.
Recommended process:
- Use Vibes to perform a development task
- Observe where corrections are needed
- Identify repeated guidance
- Encode those instructions into a Skill
Over time this converts developer expertise into reusable automation capabilities.
Example: Apex Test Generation Skill
During repeated interactions developers might instruct Vibes:
- ensure coverage above 90%
- include negative test cases
- avoid
SeeAllData=true - test bulk operations
If these instructions appear repeatedly, they should be encoded into a Skill. This ensures that every future test generation task automatically follows the same standards.
Core Skill Components
Skills in Agentforce Vibes generally contain three major components.
Metadata
Metadata enables Skill discovery.
Example:
name: generating-apex-test-classes
description: Generate production-ready Apex test classes with bulk-safe coverage and proper test data setup.
Metadata should be concise and should not contain operational instructions.
Instructions
Instructions define the operational logic of the Skill. Typical sections include:
- Goal
- Workflow
- Validation
- Output
Goal
Defines the purpose of the Skill.
Example:
Generate an Apex test class that validates business logic and ensures robust test coverage.
Workflow
Defines the process Vibes should follow.
Example:
- Identify the Apex class being tested
- Determine required test data
- Generate test records
- Execute the methods under test
- Assert expected outcomes
Validation
Validation ensures generated outputs follow best practices.
Examples:
- Ensure no SeeAllData usage
- Ensure bulk-safe execution
- Ensure meaningful assertions
- Ensure test coverage targets are met
Output
Defines the final artifact.
Example:
Return a complete Apex test class including setup methods, test cases, and assertions.
Reference Assets (Optional)
Some Skills include supporting materials such as:
- templates/
- examples/
- docs/
Example assets:
- templates/apex-test-template.cls
- examples/sample-test-class.cls
- docs/testing-guidelines.md
These materials help Vibes follow consistent patterns.
Progressive Disclosure in Skill Design
Skills follow progressive disclosure, where information is revealed only when needed. This prevents the model from being overloaded with unnecessary information.
Layer 1 --- Metadata
Initially Vibes sees only:
- name
- description
This allows Vibes to determine whether the Skill should activate.
Layer 2 --- Core Instructions
When activated, Vibes loads the primary instructions:
- goal
- workflow
- validation rules
Layer 3 --- Supporting Assets
If needed, Vibes may reference:
- docs/
- examples/
- templates/
This layered structure keeps prompts efficient while still allowing deep guidance when necessary.
Directory Structure in Agentforce Vibes
Skills should use a simple, predictable directory structure. Skill directories should remain one level deep.
Example:
skills/
generating-apex-test-classes/
SKILL.md
templates/
examples/
docs/
Expanded example:
generating-apex-test-classes/
SKILL.md
templates/
apex-test-template.cls
examples/
sample-test.cls
docs/
testing-guidelines.md
Why This Matters
This structure ensures:
- predictable skill discovery
- consistent asset loading
- easier maintenance
Avoid deeply nested directory structures.
Bad:
skills/
testing/
apex/
generation/
templates/
Good:
skills/
generating-apex-test-classes/
Each Skill should represent a self-contained capability.
Iterating and Improving Skills
Skills should evolve through real-world usage.
Recommended iteration loop:
- Use the Skill in development workflows
- Observe failures or inconsistencies
- Identify missing guidance
- Update the Skill
- Repeat
Questions to ask:
- What confused Vibes?
- What validation rule was missing?
- What workflow step should be clarified?
Over time, the Skill becomes a stable encoded development practice.
A well-designed Skill acts as an encoded expert workflow that allows Vibes to consistently execute complex Salesforce development tasks with minimal prompting.