A skill is a packaged, named procedure an agent can invoke by name. Skills encode repeatable workflows so the model doesn't have to re-derive them every loop.
Three properties that distinguish a skill from a plain prompt:
- Named. A skill has an identifier the agent can refer to.
- Versioned. A skill has a version that can change independently
of the agent that uses it.
- Discoverable. A skill registry or index makes the skill
available to agents that need it without changing the agent itself.
A skill is one step up the abstraction ladder from a raw tool call. Tools are what the agent can do; skills are patterns for doing things well.
See also: Three rules for picking the first plugin you actually keep for how to choose between skills you keep and skills you discard.