Skip to main content

Использование облачного агента Copilot через API

Вы можете запускать и управлять Copilot облачный агент задачами программно с помощью REST API.

Кто может использовать эту функцию?

Организации с планом Copilot Business или Копилот Энтерпрайз.

Примечание.

API задач агента включен public preview и подвержен изменениям.

Вы можете использовать API задач агента для интеграции Облачный агент в свои инструменты и рабочие процессы. Например, вы можете начать новую задачу, перечислить существующие задачи или проверить статус задачи.

Полный справочник по API см. Конечные точки REST API для задач агентов.

Authentication

API задач агента поддерживает только токены между пользователями. Вы можете аутентифицироваться с помощью personal access tokenтокена или OAuth appGitHub App токена пользователя-сервера.

Токены сервер-сервер, такие как GitHub App токены доступа установки, не поддерживаются.

Запуск задачи через API

Чтобы начать новую Облачный агент задачу, отправьте POST запрос на /agents/repos/{owner}/{repo}/tasks. Единственный требуемый параметр — prompt, который является запросом для агента.

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"
  }'

Замените следующие значения заполнятелей:

  • YOUR-TOKEN: A или personal access tokenGitHub App токен пользователя-сервер.
  • OWNER: Владелец аккаунта репозитория.
  • REPO: Название репозитория.

Вы также можете включить следующие опциональные параметры в тело запроса:

  • base_ref: Базовая ветка для новой ветки и pull request.
  • model: Модель ИИ для выполнения задачи. Если опущено, выбор автоматической модели используется. Для получения дополнительной информации о поддерживаемых моделях см. AUTOTITLE.
  • create_pull_request: Булева величина, которая определяет, создавать ли pull request для задачи.

Задачи по списку

Вы можете перечислять задачи для конкретного репозитория или во всех доступных репозиториях.

Чтобы перечислить задачи для конкретного репозитория:

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

Чтобы перечислить ваши задачи во всех репозиториях:

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

Проверка статуса задачи

Чтобы проверить статус конкретной задачи, отправьте GET запрос с идентификатором задачи:

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

Замените TASK-ID на ID задачи, которую хотите проверить. Этот идентификатор можно получить из ответа, когда создаёте задачу или перечисляете задачи. Ответ включает текущий stateпоказатель задачи , который может быть одним из : queued, in_progress, idle``failed``waiting_for_user``completed``timed_outили .cancelled

Дополнительные материалы