Skip to main content

Creating agent skills for GitHub Copilot

Você pode modificar o comportamento e as habilidades do Copilot quando ele trabalha em tarefas específicas.

Observação

As habilidades de agente funcionam com Agente de codificação do Copilot, CLI do GitHub Copilot e o modo de agente no Visual Studio Code interno. O suporte na versão estável do VS Code estará disponível em breve.

As habilidades do agente são pastas de instruções, scripts e recursos que o Copilot pode carregar quando relevante para melhorar seu desempenho em tarefas especializadas. Para saber mais, confira Sobre as habilidades do agente.

Criando e adicionando uma habilidade

Para criar uma habilidade de agente, você escreve um SKILL.md arquivo e, opcionalmente, outros recursos, como arquivos markdown suplementares ou scripts, que você faz referência nas SKILL.md instruções.

Para adicionar uma habilidade, você salva o arquivo SKILL.md e todos os recursos subsidiários em um local onde Copilot sabe procurar habilidades. Isso pode estar dentro de um repositório ou em seu diretório base.

  1. Crie um skills diretório para armazenar sua habilidade e quaisquer outras que você queira criar no futuro.

    Para habilidades de projeto, específicas para um único repositório, armazene sua habilidade em .github/skills ou .claude/skills.

    Para habilidades pessoais, compartilhadas entre projetos, armazene sua habilidade em ~/.copilot/skills ou ~/.claude/skills.

  2. Crie um subdiretório para sua nova habilidade. Cada habilidade deve ter seu próprio diretório (por exemplo, .github/skills/webapp-testing).

    Os nomes de subdiretórios para habilidades devem ser minúsculos e substituir espaços por hifens.

  3. Em seu subdiretório de habilidades, crie um SKILL.md arquivo que contenha as instruções de sua habilidade.

    Importante

    Os arquivos de skill devem ser nomeados SKILL.md.

           `SKILL.md` arquivos são arquivos Markdown com página inicial YAML. Em sua forma mais simples, eles incluem:
    
    • Front matter YAML * nome (obrigatório): um identificador exclusivo para a habilidade. O texto deve estar em minúsculas, usando hifens para espaços. Normalmente, isso corresponde ao nome do diretório da habilidade. * Descrição (obrigatório): uma descrição do que a função faz e quando Copilot deve usá-la. * licença (opcional): uma descrição da licença que se aplica a essa habilidade.
    • Um corpo em Markdown, com as instruções, exemplos e diretrizes para Copilot a seguir.
  4. Opcionalmente, adicione scripts, exemplos ou outros recursos ao diretório da sua habilidade.

    Por exemplo, se você estiver escrevendo uma habilidade para converter imagens entre formatos diferentes, poderá incluir um script para converter imagens SVG em PNG. As instruções sobre habilidades devem informar Copilot quando e como usar esses recursos.

Arquivo de exemplo SKILL.md

Para uma habilidade de projeto, esse arquivo estaria localizado em um .github/skills/github-actions-failure-debugging diretório do repositório.

Para uma experiência pessoal, esse arquivo estaria localizado em um ~/.copilot/skills/github-actions-failure-debugging diretório.

Markdown
---
name: github-actions-failure-debugging
description: Guide for debugging failing GitHub Actions workflows. Use this when asked to debug failing GitHub Actions workflows.
---

To debug failing GitHub Actions workflows in a pull request, follow this process, using tools provided from the GitHub MCP Server:

1. Use the `list_workflow_runs` tool to look up recent workflow runs for the pull request and their status
2. Use the `summarize_job_log_failures` tool to get an AI summary of the logs for failed jobs, to understand what went wrong without filling your context windows with thousands of lines of logs
3. If you still need more information, use the `get_job_logs` or `get_workflow_run_logs` tool to get the full, detailed failure logs
4. Try to reproduce the failure yourself in your own environment.
5. Fix the failing build. If you were able to reproduce the failure yourself, make sure it is fixed before committing your changes.

Como Copilot utiliza as habilidades do agente

Ao executar tarefas, Copilot decidirá quando usar suas habilidades com base na sua solicitação e na descrição da habilidade.

Quando Copilot opta por usar uma habilidade, o arquivo SKILL.md será injetado no contexto do agente, dando ao agente acesso às suas instruções. Em seguida, ele pode seguir essas instruções e usar scripts ou exemplos que você possa ter incluído no diretório da habilidade.

Habilidades versus instruções personalizadas

Você pode usar habilidades e instruções personalizadas para ensinar Copilot como trabalhar em seu repositório e como executar tarefas específicas.

É recomendável usar instruções personalizadas para instruções simples relevantes para quase todas as tarefas (por exemplo, informações sobre os padrões de codificação do repositório) e habilidades para instruções mais detalhadas que Copilot só devem ser acessadas quando forem relevantes.

Para saber mais sobre instruções personalizadas do repositório, consulte Como adicionar instruções personalizadas de repositório no GitHub Copilot.