Skills
How skills reach agents, how to write one, and how triggers and compatibility work.
A skill is a block of instructions. When it is installed for a task's scope, its instructions are added to the prompt of every compatible agent — so skills work with every agent, including those without MCP support.
Manifest
Skill manifest
{
"id": "api-conventions",
"name": "API conventions",
"version": "1.0.0",
"type": "skill",
"description": "How this company designs HTTP APIs.",
"compatibleAgents": [],
"permissions": ["filesystem.project.read", "filesystem.project.write"],
"triggers": { "files": ["src/routes/**"], "dependencies": ["fastify"], "keywords": ["endpoint", "api"] },
"skill": { "instructions": "Validate every input with zod at the route. Return errors as {error:{code,message}}. …" }
}compatibleAgents: empty means every agent; list agent ids to restrict it.triggers: hints that suggest when the skill is relevant (files, dependencies, keywords).recommendedMcp: MCP servers that pair well with it.
Writing good instructions
- Be specific to your stack and conventions; agents already know general best practice.
- Say what to check before finishing (which scripts to run), because verification will run them anyway.
- Keep it short enough to stay in focus — a page, not a book.
- Never put secrets in instructions.
Knowledge or skill?
Organization and project knowledge (dashboard settings) is free text for background. A skill is versioned, installable at any scope, shareable between organizations, and governed by policy.