# Criando e usando agentes personalizados para GitHub Copilot CLI

Crie agentes especializados com experiência personalizada para tarefas de desenvolvimento específicas.

## Introdução

Custom agents permite que você ajuste a especialização de Copilot para tarefas específicas.

Quando você solicita Copilot a realização de uma tarefa, ele pode optar por usar uma de suas custom agents, se Copilot determinar que a experiência do agente é uma boa opção para a tarefa.

O trabalho executado por um custom agent é realizado usando um subagente, que é um agente temporário criado para concluir a tarefa. O subagente tem sua própria janela de contexto, que pode ser preenchida por informações que não são relevantes para o agente principal. Dessa forma, especialmente para tarefas maiores, partes do trabalho podem ser descarregadas para custom agents sem sobrecarregar a janela de contexto do agente principal. Em seguida, o agente principal pode se concentrar no planejamento e coordenação de nível superior.

Para saber mais, confira [Sobre agentes personalizados](/pt/copilot/concepts/agents/copilot-cli/about-custom-agents).

## Criar um custom agent

Cada custom agent é definido por um arquivo Markdown com extensão `.agent.md`. Você pode criar esses arquivos por conta própria ou adicioná-los de dentro da CLI, conforme descrito nas etapas a seguir.

1. No modo interativo, digite `/agent`.

2. Selecione **Criar novo agente** na lista de opções.

3. Escolha entre as opções para criar o custom agent no repositório ou no diretório inicial.

   * **Projeto** (`.github/agents/`)

   * **Usuário** (`~/.copilot/agents/`)

   > \[!NOTE]
   > Se você tiver um custom agents com o mesmo nome em ambos os locais, o do seu diretório inicial será usado, em vez daquele no repositório.

4. Escolha se deseja obter Copilot para criar o arquivo custom agent, ou criá-lo por conta própria.

**Opção 1: Usar Copilot**

Insira detalhes do agente que você deseja criar. Descreva a experiência do agente e quando o agente deve ser usado.
Copilot usará a descrição que você inserir e a usará para escrever um perfil de agente para você.

Por exemplo, você pode inserir:

```text
I am a security expert. I check code files thoroughly for potential security issues. Use me whenever a security review/check/audit is requested for one or more code files, or when the word "seccheck" is used in a prompt in reference to code files.

I will identify potential problems, such as code that:

- Exposes secrets or credentials
- Allows cross-site scripting
- Allows SQL injection
- Contains vulnerable dependencies
- Allows authentication to be bypassed

If any problems are identified, create a single GitHub issue in this repository on GitHub.com with details of problems, giving full details of each issue, including, but not limited to, risk level and recommended fix.
```

Após Copilot concluir a geração do perfil inicial do agente, ele exibirá as seguintes opções:

* Continuar
* Rever conteúdo
* Tente novamente
* Encerrar

Se você optar por examinar o conteúdo, o arquivo do agente será aberto no editor padrão. Você pode examinar e fazer alterações, se necessário, antes de continuar o processo de criação do agente na CLI.

Para concluir o processo de criação, escolha **Continuar**.

**Opção 2: criar o perfil do agente manualmente**

Ao optar por criar o arquivo do agente por conta própria, você será guiado por uma série de prompts para preencher as informações necessárias para criar o perfil do agente.

1. Introduza um nome para o agente. O nome inserido é o nome exibido quando você lista os agentes disponíveis. Uma versão disso será usada como o nome do arquivo do agente, por exemplo, se você inserir "Especialista em segurança", o arquivo do agente será nomeado `security-expert.agent.md`.

   > \[!TIP]
   > Para facilitar o uso ao usar programaticamente custom agent , é recomendável que você escolha um nome que consista apenas em letras minúsculas e hifens.

2. Insira uma descrição que indica qual experiência esse agente tem e quando ele deve ser usado.

3. Insira instruções sobre como o agente deve se comportar, incluindo quaisquer diretrizes específicas, ações que ele deve tomar ou restrições que deve seguir.

4. Escolha a quais ferramentas você custom agent deve ter acesso.

   Por padrão, custom agents tenha acesso a todas as ferramentas. Se você restringir o acesso de um agente, uma `tools` especificação será adicionada ao arquivo do agente.

5. Reinicie a CLI para carregar seu novo custom agent.

## Usando um custom agent

Custom agents pode ser usado das seguintes maneiras:

* **Comando barra**

  Insira `/agent` no modo interativo e escolha na lista de opções disponíveis custom agents. Em seguida, insira um prompt que será passado para o agente selecionado.

  > \[!NOTE]
  > Os agentes padrão da CLI não estão incluídos nesta lista. Para obter mais informações sobre os agentes padrão, consulte [Sobre agentes personalizados](/pt/copilot/concepts/agents/copilot-cli/about-custom-agents#built-in-agents).

* **Instrução explícita**

  Diga Copilot para usar um agente específico. Por exemplo:

  ```copilot
  Use the security-auditor agent on all files in the /src/app directory
  ```

* **Por inferência**

  Use um prompt que disparará o uso de um agente específico com base na descrição no arquivo do agente. Por exemplo:

  ```copilot
  Check all TypeScript files in or under the src directory for potential security problems
  ```

  ou (em que "seccheck" é definido como uma palavra de gatilho no perfil do agente):

  ```copilot
  seccheck /src/app/validator.go
  ```

Copilot inferirá automaticamente o agente que você deseja usar.

* **Programaticamente**

  Especifique a opção custom agent que você deseja usar com a opção de linha de comando. Por exemplo:

  ```shell
  copilot --agent security-auditor --prompt "Check /src/app/validator.go"
  ```

  Onde `security-auditor` é o nome do arquivo do perfil custom agent, sem a extensão `.agent.md`. Normalmente, mas não necessariamente, isso é o mesmo valor que o `name` no perfil do agente.

## Leitura adicional

* [Comparando os recursos de personalização do GitHub Copilot na CLI](/pt/copilot/concepts/agents/copilot-cli/comparing-cli-features)
* [Configuração de agentes personalizados](/pt/copilot/reference/custom-agents-configuration)
* [referência de comando da CLI GitHub Copilot](/pt/copilot/reference/copilot-cli-reference/cli-command-reference#custom-agents-reference)
* [Agentes personalizados](/pt/copilot/tutorials/customization-library/custom-agents) — uma coleção de exemplos curada