Quick answer
SKILL.md file, YAML frontmatter (a name and a description) plus Markdown instructions and optional scripts, that the agent loads on demand when a task matches the skill's description. Introduced by Anthropic in 2025, they let you encode “how we do X here” once instead of re-explaining it every session.- What a skill is
- A folder with a SKILL.md: name + description + instructions, optional scripts
- How it's invoked
- Model-invoked, loaded on demand when a task matches the description
- Skills vs MCP
- Skills add procedure (how); MCP adds capability (tools/data). Complementary
- In AIDEN
- Inherited from ~/.claude/skills automatically; ships the free AIDEN Method pack
What Agent Skills Are, and the SKILL.md Structure
An agent skill is a reusable package of procedural knowledge that an agent loads only when it is relevant. Concretely, a skill is a folder, and the folder contains a SKILL.md file: a Markdown document that opens with YAML frontmatter declaring a name and a description, followed by the actual instructions. Optionally the folder also carries scripts or reference files the instructions can point to. Anthropic introduced this format in 2025 as a portable way to give agents “how-to” knowledge that survives across sessions.
The mechanism that makes skills different from a static conventions file is that they are model-invoked and loaded on demand. The model reads the short description of each available skill and, when a task matches, pulls the full instructions into context, only then. A skill you never trigger costs you nothing but a one-line description. That is the whole trick: procedural knowledge that shows up exactly when the work calls for it.
Here is a small, realistic skill, a repo's pull-request conventions. Note the frontmatter: the name is the trigger, and the description is written so the model can tell from it alone when the skill applies.
---
name: pr-conventions
description: >
How this repo opens pull requests. Use whenever the task is to
create, format, or describe a PR, write a commit body, or prepare
a change for review.
---
# Pull request conventions
- Title: imperative mood, <70 chars, no trailing period.
- Body: a "## Summary" section (1-3 bullets on the why) and a
"## Test plan" checklist of what you verified.
- One story per PR. Never mix an unrelated refactor into a feature PR.
- Run the test + lint gate before opening; paste the result in the body.
- Link the story/issue id in the description.That is a complete skill. Drop this file at ~/.claude/skills/pr-conventions/SKILL.md and Claude Code picks it up automatically; the next time you ask it to open a PR, it loads these rules without you pasting them. For a deeper look at file placement and a downloadable set, see the AIDEN Method skill pack.
Why They Matter: Procedure That Loads Only When Relevant
The obvious alternative to a skill is to write everything into a durable project context file like CLAUDE.md, or to re-explain your process at the start of every session. Both have a cost. A CLAUDE.md that tries to hold every procedure your repo has ever needed becomes a wall the agent reads on every task, whether the task is a PR, a migration, or a typo fix. Re-explaining by hand is worse: it is tedious, and you inevitably forget a step.
Skills split the difference. Because the model only loads a skill when its description matches the current task, procedural knowledge stops competing for the context window when it is irrelevant. Your release checklist does not sit in the window while the agent fixes a CSS bug. This is straightforward context engineering: relevance beats volume, and skills give you a mechanism to keep the window lean without losing the knowledge.
Agent Skills vs MCP: Procedure vs Capability
Skills and MCP are the two most-confused pieces of the modern agent stack, because both “extend” an agent. They extend it in opposite directions. MCP gives the agent new capabilities, tools it can call and data sources it can read, like a database, a browser, or the GitHub API. Skills give the agent procedural knowledge, the instructions for how to carry out a kind of task the way you want it done. One is what the agent can do; the other is how it should do it.
| Dimension | Agent skills | MCP |
|---|---|---|
| What it is | Reusable instructions / procedural know-how (a SKILL.md folder) | A connection to external tools and data (a server the agent calls) |
| How it's invoked | Model-invoked: the model matches the task to a skill's description and loads it on demand | Tool call: the model explicitly calls an exposed tool when it needs that capability |
| What it adds | Procedure, the how-we-do-X-here knowledge, so output follows your conventions | Capability, actions and information the model otherwise can't reach |
| When to use it | You keep re-explaining a process, or want consistent conventions across sessions | The agent needs live data or an action beyond reading files and running shell |
| Lives in | ~/.claude/skills/<name>/SKILL.md or a repo's .claude/skills/ | ~/.claude.json (claude mcp add) or a project's .mcp.json |
Your AI workspace for shipping software.
Download AIDEN free and point it at your existing Claude Code or Codex setup. No credit card, running in minutes.
Download AIDEN freeFree to start · macOS 12+ · No credit card required
Coding Skills Worth Writing
The best candidates for a skill are the processes you find yourself explaining again and again, the ones where consistency matters and the “right way” is specific to your team. Examples that pay for themselves quickly:
Our PR conventions
Run the test + lint gate
Spec-first story workflow
Release checklist
Each of these is procedure, not capability, which is exactly why they belong in skills rather than MCP servers. The first three of these are shipped, ready to use, in AIDEN's free skill pack.
Skills, MCP, and Subagents in One Setup
Skills are one layer of a real agent setup, and they earn their keep next to the others. Picture a single story, “add a soft-delete column and expose it in the API”, running through a well-equipped agent:
MCP supplies the facts
A subagent does the digging
Skills enforce the how
The layer that carries all of this, launching the agent, wiring in MCP, managing subagents, and keeping skills available, is the agent harness. Skills are the procedural-knowledge slot in that harness, and they are one of the core practices in the broader discipline of agentic engineering.
How AIDEN Uses Skills
AIDEN is a cockpit over your coding-agent CLIs: it orchestrates your local Claude Code and Codex behind a spec-first kanban with a PR per story, and it uses your own inference, your Claude or Codex subscription or API key. Because it runs your existing CLIs rather than replacing them, it inherits your skills automatically. Every skill in ~/.claude/skills or a project's .claude/skills is available to every agent AIDEN launches, exactly as it is when you run Claude Code by hand. Nothing to configure twice.
If you are new to the underlying CLI, the Claude Code tutorial covers the basics that skills build on. Pair skills with the right MCP servers and you have both halves, capability and procedure, of an agent that ships code your way.