Command
Claude Skills: Building Agentic Workflows
modular, reusable workflows.
Think of a Skill as a packaged specialist you train once.
Instead of re-explaining your brand guidelines or coding preferences every time you open a chat, you just trigger the Skill.
Introduction
A Skill is simply a folder containing instructions, optional scripts, and resources.
It relies on a concept called Progressive Disclosure, which uses a three-tier loading model to save your context window:
-
Level 1 (Metadata): Claude reads a tiny YAML header (name and description) at the start of the chat. This costs barely any tokens.
-
Level 2 (Instructions): When your prompt matches the Skill’s description, Claude loads the full instruction file into its context.
-
Level 3 (Resources): If your instructions tell Claude to reference a specific template or run a Python script in the folder, it uses its code execution environment to open those files only when needed.
Project
Create a new folder named skill.
Skills are loaded from these locations:
Project-local:
- .opencode/skills/
/SKILL.md - .claude/skills/
/SKILL.md - .agents/skills/
/SKILL.md
Global (home directory):
- ~/.config/opencode/skills/
/SKILL.md - ~/.claude/skills/
/SKILL.md - ~/.agents/skills/
/SKILL.md
Each skill requires its own folder named after the skill, with a SKILL.md file inside it.
For example:
.opencode/skills/git-release/SKILL.mdThe SKILL.md file must start with YAML frontmatter containing at minimum name and description fields, and the name must match the directory name.
Set Up the Folder Structure
To start, create a new folder on your computer.
Name it something clear, using lowercase letters and hyphens. Inside that folder, you need one required file: SKILL.md.
Here is how your folder should look:
)
)Write the SKILL.md Frontmatter
Open your SKILL.md file. The very top of this file must be a YAML frontmatter block. This is what Claude scans to know your Skill exists and when to use it.
Your frontmatter must include a name and a description:
---
name: weekly-report-formatter
description: Use this skill when the user asks to format or generate a weekly progress report.
---Make the description as clear as possible. Include the specific trigger phrases you might use.
Add Your Core Instructions
Directly below the YAML frontmatter, write out the step-by-step instructions you want Claude to follow. Use standard Markdown.
# Weekly Report Formatter
When this skill is activated, follow these exact steps:
1. Read the raw notes provided by the user.
2. Open the `report-template.md` file in this directory to understand the required structure.
3. Categorize the user's notes into "Completed", "In Progress", and "Blockers".
4. If any metrics are provided, ensure they are formatted as a bulleted list.
5. Output the final report using the exact headings from the template.You're reading a preview.
Sign in with Google to read the full page. Follow the learning path — each page opens once you've read the ones it builds on. Students and teachers read their course pages without limit.
Sign in