Skills are modular capabilities that extend what a Vellum Assistant can do. Each skill bundles instructions, tools, and configuration into a self-contained unit that the assistant can load on demand. Skills let you teach an assistant new behaviors without modifying its core configuration.
A skill is a directory containing at minimum a SKILL.md file, and optionally a TOOLS.json manifest and supporting tool implementations.
my-skill/
├── SKILL.md # Skill definition and instructions
├── TOOLS.json # Tool manifest (optional)
└── tools/ # Tool implementations (optional)
└── my-tool.tsThe SKILL.md file defines the skill's identity and provides instructions to the assistant. It uses YAML frontmatter for metadata followed by Markdown content:
---
name: "Browser"
description: "Navigate and interact with web pages"
user-invocable: true
disable-model-invocation: false
metadata: {"vellum": {"emoji": "🌐"}}
---
Use this skill to browse the web. After loading
this skill, the following tools become available:
- `browser_navigate` — Navigate to a URL
- `browser_screenshot` — Take a screenshot
...false, the skill is only loaded automatically by the model.true, prevents the model from automatically loading this skill. It can only be loaded through an explicit user request.The Markdown body after the frontmatter contains instructions that are injected into the assistant's context when the skill is loaded. Write these as direct instructions to the assistant.
The optional TOOLS.json file declares the tools that the skill provides. Each tool definition includes its name, description, input schema, and execution configuration:
[
{
"name": "browser_navigate",
"description": "Navigate to a URL",
"category": "browser",
"risk": "low",
"input_schema": {
"type": "object",
"properties": {
"url": { "type": "string" }
},
"required": ["url"]
}
}
]Skills can come from several sources, each with different management and update characteristics:
First-party skills that ship with the Vellum Assistant runtime. These are maintained by Vellum and include core capabilities like browser automation, computer use, phone calls, scheduling, reminders, and more. Bundled skills are always available and updated with each assistant release.
Custom skills that live in your assistant's workspace directory. These are skills you create and maintain yourself. Place them in the skills/ directory of your workspace and they will be automatically discovered. Workspace skills are version-controlled alongside your assistant's configuration.
Skills installed from the Vellum skill catalog. These are community or first-party skills that can be added to your assistant through the skill management system. Managed skills are installed into your workspace and can be customized after installation.
Each tool declared in a skill's TOOLS.json includes the following properties:
Skills can be invoked in two ways:
user-invocable: true appear as available actions.disable-model-invocation: true are excluded from automatic loading.When a skill is loaded, its instructions from SKILL.md are injected into the assistant's context and its tools become available for use.