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.