π Skills & SKILL.md
Descriptionβ
< What are Agent Skills? >β
Agent Skills are reusable folders that give an AI agent task-specific knowledge and workflows. Each skill has a required SKILL.md file with name, description, and instructions; it may also include scripts, references, templates, and other assets.
< Why use them? >β
- Domain expertise: package organization- or task-specific knowledge.
- Repeatable workflows: make multi-step work more consistent and easier to verify.
- Progressive disclosure: an agent first sees a skillβs name and description, then reads its full instructions only when the skill is relevant.
< How do they work? >β
- Discovery: the agent sees a skillβs name and description.
- Activation: the agent loads the full
SKILL.mdwhen the task matches. - Execution: the agent follows the instructions and may use bundled resources.
< Prompt vs. skill >β
A prompt describes the request at hand. A skill describes a reusable way to perform a class of requests.
| Aspect | Prompt | SKILL.md |
|---|---|---|
| Purpose | Describe what to do now | Describe how to perform a reusable workflow |
| Lifetime | Usually one request or conversation | Persists as a reusable capability |
| Activation | Sent directly in the request | Selected explicitly or when its description matches the task |
| Content | Task, context, constraints, and desired output | Metadata, procedures, rules, references, and tool guidance |
| Supporting files | Usually none | May include scripts, templates, examples, and assets |
| Example | βCreate a sales report from this CSVβ | A sales-report skill that explains how to analyze, format, and verify reports |
A SKILL.md still contains natural-language instructions. The userβs prompt supplies the concrete objective, inputs, and task-specific requirements.
Prompt: what the user wants
β
Skill: reusable knowledge about how to do it
β
Task-specific result
Key pointsβ
< When should I use a skill? >β
- Use a normal prompt for one-off work.
- Create a skill for a recurring workflow, especially one that needs consistent steps, scripts, templates, or verification rules.
< A minimal skill structure >β
sales-report/
βββ SKILL.md
βββ scripts/
β βββ build_report.py
βββ references/
β βββ metric_definitions.md
βββ assets/
βββ report_template.xlsx
SKILL.md must include name and description in its frontmatter:
---
name: sales-report
description: Create a formatted sales report from CSV or Excel data.
---
# Instructions
1. Validate the source data.
2. Calculate the required metrics.
3. Use the report template.
4. Verify formulas before delivery.
A user can then write: Use the sales-report skill to create the August report from sales.csv.
< Where should SKILL.md go? >β
- Project-specific:
.agents/skills/<skill-name>/SKILL.mdβ commit it to the repository for the team. - Personal:
$HOME/.agents/skills/<skill-name>/SKILL.mdβ available across your projects. - Machine-wide:
/etc/codex/skillsβ for shared administrative skills. - Distribute broadly: package the skill as a plugin.
Codex scans .agents/skills from the current working directory up to the repository root. The filename must be exactly uppercase: SKILL.md.
Referenceβ
- Build skills (official OpenAI documentation)
- Agent Skills specification