Add and manage an uploaded skill (GitHub Copilot)

In addition to creating skills from scratch, you can add existing skills to your agent by uploading a skill file, then download, replace, or troubleshoot the uploaded skill.

Note

The harness used to build this agent uses usage-based billing. Using, building, testing, and evaluating agents might consume Copilot Credits. Learn more in Overview of usage-based billing.

Prerequisites

  • An agent created with the GitHub Copilot harness. See Create an agent (preview).
  • A Markdown file containing the skill name and description in YAML front matter, plus instructions.

Upload a skill file

You can add a skill to your agent by uploading a skill file.

  1. Open your agent in Copilot Studio.

  2. Select the Build tab.

  3. In the components panel, select Skills.

  4. In Add skill, select Upload a skill.

  5. Drag and drop the file onto the upload box. Alternatively, select the box and browse to the file you want to upload.

  6. The system validates the file and adds the skill to your agent.

Tip

Start with a simple skill and refine it based on testing. You can edit the instructions for a skill you upload in your preferred text editor and then replace the uploaded skill.

Accepted formats for skill files and packages

  • A Markdown file containing the skill name and description in YAML front matter, plus instructions.
  • A ZIP file that must include a SKILL.md file, with the skill name and description formatted in YAML front matter and instructions in Markdown. The package can optionally include supporting files, such as scripts, templates, and reference documents.

Download a skill

You can download a skill to share it with others or back it up.

  1. Select the skill you want to download to open its configuration panel.

  2. Select the Download icon, or, if it's not shown, select the three dots (…) and then select Download.

The skill is downloaded as a Markdown file containing the skill name and description in YAML front matter, plus instructions. The filename matches the skill's name.

Replace an uploaded skill

After editing the instructions for an existing skill in your preferred text editor, upload your changes by replacing the current version of the skill in your agent. You can also replace a skill with another skill.

  1. Select the skill you want to replace to open the skill configuration panel.

  2. Select the three dots (…) and then select Replace.

  3. Browse to the skill file you want and select it.

Troubleshoot skills that don't load

If a skill you added doesn't appear in the components panel after you save, or the agent behaves as though the skill isn't installed, the skill probably failed a load-time check. Copilot Studio still loads the rest of your agent when this happens, but the affected skill is skipped.

The most common reasons a skill is skipped and the fix for each:

Reason What it means How to fix it
Invalid YAML frontmatter The --- block at the top of SKILL.md isn't valid YAML. Quote string values that contain a colon or other YAML metacharacter (for example, description: "My: skill"). Verify the frontmatter is a mapping of key: value pairs.
Missing name The frontmatter doesn't have a non-empty name: value. Add name: <skill-name> to the frontmatter.
Missing description The frontmatter doesn't have a non-empty description: value. Add description: <one-line summary> to the frontmatter.
Description too long The effective description is longer than the model-facing catalog can accept. Shorten the description to a single line that summarizes the skill's purpose.
Duplicate skill name Two skills in the same agent use the same folder name. Rename one of the skills so each has a unique name.
Unreadable SKILL.md The SKILL.md file couldn't be read, usually because of a non-UTF-8 file encoding. Save SKILL.md as UTF-8 without a byte-order mark, then upload the skill again.
Resource file wasn't written One or more supporting files in the skill package couldn't be written. Re-export the skill package, verify each file is present and readable, then upload again.
Skill package rejected The skill package failed a structural validation check while it was being installed. Re-export the package from a working editor and try again. If the problem repeats with a package that used to work, contact your administrator.

Skills whose supporting files were partially written still load, but the agent might behave differently at runtime because some of the referenced content is missing. Re-upload the package to restore the full set of files.