Skills overview for agents

Agent skills are portable packages of instructions, scripts, and resources that give agents specialized capabilities and domain expertise. Unlike tools, which connect to external services, skills are self-contained sets of instructions and logic that you can create, share, and reuse across agents. Skills follow an open specification and implement a progressive disclosure pattern so agents load only the context they need, when they need it.

Use skills when you want to:

  • Package domain expertise - Capture specialized knowledge (expense policies, legal workflows, data analysis pipelines) as reusable, portable packages.
  • Extend agent capabilities - Give agents new abilities without changing their core instructions.
  • Ensure consistency - Turn multistep tasks into repeatable, auditable workflows. Unlike tools, which connect to external services, skills are self-contained sets of instructions and logic that you can create, share, and reuse across agents.

Note

Features in this article are used by agents or workflows powered by the GitHub Copilot harness.

Usage-based billing applies to using, building, testing, and evaluating agents. These actions might consume Copilot Credits. Learn more in Manage costs for agents powered by the GitHub Copilot harness.

What are skills?

A skill is a capability defined by a name, a description, and a set of instructions (written in Markdown). Skills can also bundle scripts, reference materials, templates, and other resources. Skills tell the agent how to handle specific types of tasks or scenarios. The orchestration runtime invokes a skill when a user's request matches the skill's purpose. Think of skills as specialized "roles" or "modes" that your agent can activate when needed.

Why use skills?

  • Reusability: Create a skill once and add it to multiple agents.
  • Modularity: Break complex agent behavior into focused, manageable pieces.
  • Shareability: Export skills as Markdown files or as packages and share them with others.
  • Clarity: Each skill has a clear purpose, making it easier to understand and maintain agent behavior.

How skills differ from other agent components

Component Purpose Managed by
Instructions General agent behavior and personality Identity configuration
Knowledge Data the agent can reference Knowledge sources
Tools Actions via external services Connectors, APIs, MCP servers
Skills Reusable task-specific capabilities Skill files or packages (Markdown-based)

How the agent uses skills

The orchestration runtime decides when to activate a skill based on the user's message and the skill's description. When the runtime activates a skill, the skill's instructions guide your agent's behavior for that specific task. Skills can work alongside tools and knowledge. For example, a skill might instruct your agent to use a specific tool in a particular way. Well-written skill descriptions help the orchestrator invoke the right skill at the right time.

Adding a new skill

Add a skill to an agent in Copilot Studio by using one of these three methods:

  • Upload a Skill – Import an existing skill by uploading either a SKILL.md file or a packaged skill bundle (.zip) containing the skill definition and supporting files, such as scripts, templates, and reference documents.

  • Create from Blank – Manually author a new skill by defining its metadata, instructions, triggers, inputs, outputs, and other skill details.

  • Generate with AI – Create a skill from natural language instructions. Copilot uses the description you provide to generate the skill definition and associated files.