Something like instructions in Projects? Or how? Could you please describe the pros and cons of each and when to use each?
That'd be truly helpful!
The goal is more or less the same, to give the agent the ability to do things it doesn’t know by default. The difference when explaining this new thing to the agent using a skill is that it will only learn how to do it when it needs to, not all the time in all conversations (as the AGENTS.md file is read at the start of every new conversation). Furthermore, giving a model a new capability might require more than just a couple of Markdown files, and that’s where skills come in since they’re only read when needed, rather than at the start of every conversation, so they don’t waste tokens unnecessarily on something that could be very resource-intensive. Plus, decoupling them from an AGENTS.md file makes them easier to deploy.
An example of a skill I use a lot is draw-io skill (https://github.com/Agents365-ai/drawio-skill), it enables the agent to generate Draw.io diagrams. As you can see, there are a lot of Markdown files, but also Python scripts that the model must run to gather what it needs. If this was defined in an AGENTS.md file for a single project it wouldn’t be so bad, but if you have to maintain five skills of this size in your agent (or simply want to share them), you can’t include them in the AGENTS.md file, because they’ll consume all the context, even in a conversation where the agent won’t use any of them. It's like writing reusable and callable functions instead of writing all code in the main() method.