What Are Agent Skills?
Author: Domeny.ForSale editorial team Published
In brief: Agent Skills are packages of instructions, supporting materials and optional scripts that an AI agent can use for specific tasks. Instead of explaining a company procedure to it every time, you can save that procedure as a skill: a reusable capability. Such a package does not train the model or grant it new permissions by itself—it guides the model on how to carry out the work using the tools available.
What does an Agent Skill contain?
An AI agent is a system based on a language model that can plan its next steps and use tools, such as reading files or running code. A skill provides it with structured knowledge about a particular task: when to undertake it, how to proceed and how to recognise a correct result.
In the Agent Skills format, the central element of the package is the SKILL.md file. It contains metadata, including the skill’s name and description, along with the actual instructions written in Markdown. Alongside it, there may be scripts, reference documentation, templates and other resources needed during the work.
An example structure looks like this:
campaign-report/
├── SKILL.md
├── scripts/
│ └── check_data.py
├── references/
│ └── metric-definitions.md
└── assets/
└── report-template.md
In this example, SKILL.md describes how to prepare the report, the metrics document explains the company’s definitions, and the script checks the input data. Not every skill needs all these elements. For a simple editorial procedure, the instructions file alone is enough.
How does an agent select and run a skill?
An environment that supports Agent Skills may initially provide the model with only the names and short descriptions of the available skills. When a task matches a particular description, the agent reads the full instructions and then—if necessary—additional materials. This approach is called progressive disclosure: details enter the model’s context only when they are needed.
This means the agent does not need to receive the company’s entire documentation with every question. However, the skill’s description should clearly indicate when to use it. “Helps with marketing” is less useful than “Prepares a monthly campaign report from a CSV file using the company’s definitions of metrics”.
The details depend on the application: a skill may be selected automatically or specified by the user. Simply saving a directory on disk does not mean that any chatbot will find and support it. Check the tool’s current documentation for the installation location, activation method and supported elements of the format.
How does a skill differ from a prompt, a tool and MCP?
A prompt is an instruction given to a model. A skill also contains instructions, but packages them as a reusable resource, with a description of its use and, where needed, supporting files. It is therefore neither a new model nor the result of additional model training.
| Element | Main role | Example |
|---|---|---|
| Prompt | Specifies the current task | “Prepare the report for August” |
| Skill | Describes how to carry out the task | A reporting procedure with metric definitions |
| Tool | Performs a specific operation | Reading a CSV file or sending a message |
| MCP | Standardises how tools and resources are made available to AI applications | Access to data from a company system |
MCP, or Model Context Protocol, can provide a connection to an external system, while a skill can explain how to use the available data in a particular process. These solutions can complement each other. However, the instruction “retrieve the results from the CRM” will not provide access to the CRM if the agent does not have the appropriate connection and permissions.
When do Agent Skills make practical sense?
The best candidate is a repeatable task with a recognisable starting point, defined rules and a verifiable outcome. This might be reviewing code according to team guidelines, preparing a document from a template or checking data quality. A one-off question usually does not justify creating a separate package.
Suppose a team analyses an export of campaign results every month. A skill can instruct the agent to check the columns, identify the currency, calculate metrics according to agreed definitions and prepare a report in a consistent format. It should also specify what to do when data is missing—for example, ask for the file to be completed rather than guess values.
To prepare your first skill:
- Choose one procedure that you currently explain to the agent regularly.
- Describe the input data, the sequence of steps and the expected result.
- Add conditions for stopping work, such as a missing required column.
- Include only the necessary templates or reference materials.
- Test the package on a valid example and on incomplete or incorrect data.
Assess not only how the response looks, but also the accuracy of calculations, compliance with constraints and the reaction to missing information. Using a skill does not, in itself, guarantee a correct result.
How can you safely use skills created by others?
Treat a package downloaded from an external source as unfamiliar code and unfamiliar operating instructions. Read SKILL.md, and check the scripts and required dependencies. Pay particular attention to commands that send data over the network, delete files or read secrets.
A skill does not grant permissions, but it may prompt the agent to misuse those it already has. Run unfamiliar packages in an isolated environment, with minimal access to files and services. Operations such as publishing, sending messages or changing production data should require appropriate controls, not merely a statement written in the instructions.
Start with a procedure performed on a copy of the data, without the ability to publish or delete files. Only after checking the results should you decide whether the skill should have access to the actual process.
See also: What is MCP?
