Skip to main content

Usando Copilot agente de nuvem por meio da API

Você pode iniciar e gerenciar agente de nuvem Copilot tarefas programaticamente usando a API REST.

Quem pode usar esse recurso?

Organizações e empresas com um plano do Copilot Business ou Copilot Enterprise.

Observação

A API de tarefas do agente está dentro versão prévia pública e sujeita a alterações.

Você pode usar a API de tarefas do agente para integrar agente de nuvem às suas próprias ferramentas e fluxos de trabalho. Por exemplo, você pode iniciar uma nova tarefa, listar tarefas existentes ou verificar o status de uma tarefa.

Para obter a referência completa da API, consulte Endpoints da API REST para tarefas de agente.

Autenticação

A API de tarefas do agente dá suporte apenas a tokens de usuário para servidor. Você pode autenticar usando um personal access tokentoken, um OAuth app token ou um GitHub App token de usuário para servidor.

Não há suporte para tokens entre servidores, como GitHub App tokens de acesso à instalação.

Iniciando uma tarefa por meio da API

Para iniciar uma nova agente de nuvem tarefa, envie uma solicitação POST para /agents/repos/{owner}/{repo}/tasks. O único parâmetro necessário é prompt, que é o prompt para o agente.

Shell
curl -X POST \
  -H "Accept: application/vnd.github+json" \
  -H "X-GitHub-Api-Version: 2022-11-28" \
  -H "Authorization: Bearer YOUR-TOKEN" \
  https://api.github.com/agents/repos/OWNER/REPO/tasks \
  -d '{
    "prompt": "Fix the login button on the homepage",
    "base_ref": "main"
  }'

Substitua os seguintes valores dos espaços reservados:

  • YOUR-TOKEN: um personal access token token de usuário para GitHub App servidor.
  • OWNER: o proprietário da conta associada ao repositório.
  • REPO: o nome do repositório.

Você também pode incluir os seguintes parâmetros opcionais no corpo da solicitação:

  • base_ref: o branch base da nova ramificação e solicitação de pull.
  • model: o modelo de IA a ser usado para a tarefa. Se omitido, Seleção de modelo automática será usado. Para obter mais informações sobre modelos com suporte, consulte Endpoints da API REST para tarefas de agente.
  • create_pull_request: um booliano que determina se uma solicitação de pull deve ser criada para a tarefa.

Listar tarefas

Você pode listar tarefas para um repositório específico ou em todos os repositórios aos quais você tem acesso.

Para listar tarefas para um repositório específico:

Shell
curl -H "Accept: application/vnd.github+json" \
  -H "X-GitHub-Api-Version: 2022-11-28" \
  -H "Authorization: Bearer YOUR-TOKEN" \
  https://api.github.com/agents/repos/OWNER/REPO/tasks

Para listar suas tarefas em todos os repositórios:

Shell
curl -H "Accept: application/vnd.github+json" \
  -H "X-GitHub-Api-Version: 2022-11-28" \
  -H "Authorization: Bearer YOUR-TOKEN" \
  https://api.github.com/agents/tasks

Verificando o status de uma tarefa

Para verificar o status de uma tarefa específica, envie uma GET solicitação com a ID da tarefa:

Shell
curl -H "Accept: application/vnd.github+json" \
  -H "X-GitHub-Api-Version: 2022-11-28" \
  -H "Authorization: Bearer YOUR-TOKEN" \
  https://api.github.com/agents/repos/OWNER/REPO/tasks/TASK-ID

Substitua TASK-ID pela ID da tarefa que você deseja verificar. Você pode obter essa ID da resposta ao criar uma tarefa ou listar tarefas. A resposta inclui a atual stateda tarefa, que pode ser uma das seguintes: queued, , in_progress, completed, failed, idle, , waiting_for_user, timed_outou cancelled.

Leitura adicional