Справочник по GitHub Projects V2 как инструменту управления задачами AI-агентов: канбан-доска, custom fields, встроенная автоматизация, интеграция с GitHub Actions, Agentic Workflows, Copilot cloud agent и внешними coding-агентами.

Что это

GitHub Projects V2 — встроенная в GitHub система управления задачами. Это не отдельный продукт, а часть экосистемы: issues, pull requests и Projects живут в одном месте. Классические канбан-доски (Projects Classic) устарели — V2 поддерживает таблицы с кастомными полями, несколько представлений и встроенную автоматизацию. Все рекомендации в этом материале относятся к V2.

Ключевое отличие от Linear, Jira и Notion-баз: GitHub Projects нативно связан с кодовой базой. Issue → branch → PR → merge — весь цикл виден в одном интерфейсе. Для агентов, которые работают с кодом, эта связность критически важна.

Зачем нужно

Агент без трекера — как разработчик без тасклиста: делает что-то, но непонятно что, в каком порядке и с каким результатом.

Проблема без трекераРешение через GitHub Projects
Агент забывает контекст между сессиямиIssue хранит описание, acceptance criteria и историю
Непонятно, что агент уже сделалКанбан-доска показывает статус каждой задачи
Нет приоритизации — агент хватается за всё подрядCustom fields: приоритет, сложность, спринт
Человек не видит прогрессАвтоматические переходы статусов при PR и merge
Нет связи между задачей и кодомIssue → branch → PR → merge — полная трассируемость

Как устроено

Views (представления)

  • Table — табличный вид с кастомными колонками, фильтрами и сортировкой.
  • Board — канбан-доска с drag-and-drop по статусам.
  • Roadmap — таймлайн с датами начала и окончания.
  • Hierarchy (public preview с января 2026) — вложенность sub-issues до 8 уровней прямо в таблице. Группировка, фильтрация и сортировка сохраняют иерархию.

Можно создать несколько views для разных целей: «Все задачи агента», «Текущий спринт», «Блокеры».

Custom fields (пользовательские поля)

ПолеТипЗачем нужно
PrioritySingle selectP0 / P1 / P2 — агент берёт задачи по приоритету
Assignee typeSingle selectHuman / Agent / Copilot — кто выполняет
ComplexitySingle selectSmall / Medium / Large — оценка объёма для агента
SprintIterationГруппировка задач по итерациям
StatusSingle selectBacklog → Todo → In Progress → In Review → Done

Issue Fields (public preview, март 2026) — структурированные поля прямо на уровне issue, а не только на уровне проекта. Позволяют задавать типизированные данные без привязки к конкретному Project board.

Встроенная автоматизация

GitHub Projects умеет автоматически:

  • Добавлять новые issues в проект.
  • Менять статус при открытии/закрытии PR.
  • Перемещать задачу в «Done» при merge.
  • Архивировать завершённые задачи.

Когда использовать

СитуацияПодходитПочему
Агент работает с кодом в GitHub-репозиторииДаПолный цикл issue → branch → PR → merge в одном интерфейсе
Внешний агент (Claude Code, Codex CLI, OpenClaw) берёт задачи из трекераДаREST/GraphQL API + gh CLI дают единый источник правды
Нужны кастомные поля, иерархия sub-issues, несколько viewsДаV2 даёт кастомные поля, hierarchy view, board/table/roadmap
Команда сидит в Jira/Linear и не хочет GitHub ProjectsНетСвязь с кодом теряется, придётся синхронизировать вручную
Хочется простой kanban без кастомных полейСкорее нетProjects Classic устарел, V2 избыточен для простых случаев

Пример

Типичный контур работы человека и агента через Projects — человек создаёт задачу, Projects хранит статус, агент берёт issue в работу и превращает в PR, а merge автоматически двигает задачу в Done.

Схема GitHub Projects из Notion

Роли в этой схеме:

  • Человек — создаёт задачи, ставит приоритеты, ревьюит PR, принимает результат.
  • GitHub Projects — единый источник правды о статусах и приоритетах.
  • AI-агент — берёт задачи, создаёт ветки, пишет код, открывает PR.
  • GitHub Actions — автоматизирует переходы статусов и триггерит агентов.

Настройка проекта под агентов

Шаг 1. Создайте проект. Перейдите в профиль организации или пользователя на GitHub → вкладка Projects → New project → выберите шаблон Board (канбан) или Table. Назовите проект, например: Agent Tasks — [Название репозитория].

Шаг 2. Настройте статусы. Рекомендуемый набор для работы с агентами:

  • Backlog — задачи на будущее.
  • Todo — готовы к выполнению.
  • Assigned to Agent — назначены агенту, ждут выполнения.
  • In Progress — агент работает.
  • In Review — PR открыт, ждёт ревью человека.
  • Done — задача завершена и merged.

Шаг 3. Добавьте custom fields. Минимально необходимые: Priority и Assignee type.

Шаг 4. Создайте views:

  • Agent Board — Board view, фильтр: Assignee type = Agent, группировка по Status.
  • Human Review — Table view, фильтр: Status = In Review.
  • All Tasks — Table view без фильтров, сортировка по Priority.
  • Hierarchy — Table view с включённым Show hierarchy для отслеживания декомпозиции.

Шаг 5. Подключите репозитории. В настройках проекта добавьте репозитории, из которых issues автоматически попадают в проект.

Встроенные workflows

WorkflowТриггерДействие
Item added to projectНовый issue/PR добавленУстановить Status → Backlog
Item reopenedIssue/PR переоткрытУстановить Status → Todo
Pull request mergedPR замердженУстановить Status → Done
Item closedIssue/PR закрытУстановить Status → Done
Auto-archive itemsStatus = Done (после N дней)Архивировать элемент

Совет: включите все пять встроенных workflows — это покрывает базовый цикл жизни задачи без единой строчки кода.

Автоматизация через GitHub Actions

Для продвинутых сценариев используйте GitHub Actions с GitHub Projects API (GraphQL).

Пример: автоназначение issue агенту. Когда issue получает лейбл agent-task, Actions автоматически назначает его Copilot:

name: Assign to Agent
on:
  issues:
    types: [labeled]

jobs:
  assign-agent:
    if: github.event.label.name == 'agent-task'
    runs-on: ubuntu-latest
    steps:
      - name: Assign issue to Copilot
        uses: actions/github-script@v7
        with:
          script: |
            await github.rest.issues.addAssignees({
              owner: context.repo.owner,
              repo: context.repo.repo,
              issue_number: context.issue.number,
              assignees: ['copilot']
            });

Пример: уведомление в Slack при открытии PR агентом:

name: Notify Agent PR
on:
  pull_request:
    types: [opened]

jobs:
  notify:
    if: github.event.pull_request.user.login == 'copilot[bot]'
    runs-on: ubuntu-latest
    steps:
      - name: Send Slack notification
        uses: slackapi/slack-github-action@v2
        with:
          webhook: ${{ secrets.SLACK_WEBHOOK }}
          payload: |
            {
              "text": "Copilot открыл PR: ${{ github.event.pull_request.title }}"
            }

Важно: для работы с Projects API через Actions нужен токен с правами project scope. Стандартный GITHUB_TOKEN не имеет доступа к Projects — используйте Personal Access Token (classic) или GitHub App.

GitHub Agentic Workflows

В феврале 2026 GitHub запустил Agentic Workflows (technical preview) — возможность запускать AI-агентов прямо из GitHub Actions. Разработано GitHub Next и Microsoft Research. Блог-анонс.

Суть: вы описываете задачу на естественном языке в Markdown-файле, а GitHub Actions запускает агента в sandboxed-среде. Поддерживаются Copilot CLI, Claude Code, OpenAI Codex и Gemini от Google как AI-движки.

Ключевые принципы:

  • Markdown вместо YAML — автоматизация описывается на естественном языке, не в коде.
  • Read-only по умолчанию — запись требует явного разрешения через safe outputs.
  • Sandboxed execution — изолированная среда, allowlisting инструментов, сетевая изоляция.
  • Continuous AI — дополнение к CI/CD, а не замена. Agentic Workflows берут на себя субъективные, повторяющиеся задачи, которые сложно выразить в YAML.

Пример: ежедневный отчёт по issues. CLI-утилита gh aw генерирует lock-файл (.lock.yml), который запускает AI-агента в контейнеризированной среде по расписанию или вручную.

---
on:
  schedule: daily
permissions:
  contents: read
  issues: read
  pull-requests: read
safe-outputs:
  create-issue:
    title-prefix: "[team-status] "
    labels: [report, daily-status]
    close-older-issues: true
---

## Daily Issues Report

Create an upbeat daily status report for the team as a GitHub issue.

## What to include

- Recent repository activity (issues, PRs, discussions, releases)
- Progress tracking and highlights
- Actionable next steps for maintainers

Что можно автоматизировать:

  • Триаж issues — классификация, лейблы, назначение приоритетов.
  • Continuous Documentation — поддержание документации в актуальном состоянии.
  • Quality & Testing — диагностика CI-падений, улучшение тестов.
  • Метрики и аналитика — ежедневные отчёты, анализ трендов.
  • Code improvement — рефакторинг, упрощение, стилевые правки.
  • Multi-repo — синхронизация фич и кросс-репозиторный трекинг.

Нюанс: Agentic Workflows находятся в public preview (по состоянию на 2026-06). По данным блога GitHub, каждый запуск с Copilot списывает 2 premium request (один за работу агента, один за guardrail-проверку через safe outputs). Для продакшн-процессов пока используйте стандартные GitHub Actions + Copilot cloud agent.

Copilot cloud agent и Projects

GitHub Copilot cloud agent (ранее «Copilot coding agent», официальная документация) — встроенный агент, который выполняет задачи прямо из issues.

Как работает:

  • Создайте issue с чётким описанием задачи и acceptance criteria.
  • Назначьте issue на Copilot (через assignees).
  • Copilot создаёт branch, пишет код, запускает тесты.
  • Copilot открывает PR со ссылкой на issue.
  • Вы ревьюите и мерджите.

Актуальное состояние (по данным docs.github.com):

Что умеет агентЗачем это нужно команде
Research, plan, iterate перед созданием PRПлановая работа без написания кода сразу
Создаёт branch и пишет код в sandboxed-среде GitHub ActionsИзолированная работа, повторяемые среды
Использует MCP-серверы для доступа к внешним даннымГибкое расширение контекста
Custom agents и hooks — свой контур под задачиСпециализация агента под команду
Один PR = одна ветка = одна задачаАтомарность и предсказуемость
Лимит сессии — 59 минут на задачуТяжёлые задачи дробятся заранее
Автоматизация через Copilot automationsЗапуск по расписанию или по событию

Требования: по тарифной сетке GitHub Copilot Plans функции Assign work to Copilot and it creates a pull request присутствуют на Free, Pro ($10/мес), Pro+ ($39/мес) и Max ($100/мес). Реальная работа с cloud agent требует платного плана и включённого Copilot cloud agent в настройках репозитория. Для организаций Business/Enterprise администратор включает соответствующую политику.

Правило для issue: чем точнее описана задача, тем лучше результат. Агент — не телепат.

Хорошее issue для агента:

Title: Add rate limiting middleware to /api/users endpoint

## Context
The /api/users endpoint currently has no rate limiting.
We're getting occasional abuse from automated scrapers.

## Requirements
- Add rate limiting: 100 requests per minute per IP
- Use express-rate-limit package
- Return 429 status with JSON error body
- Add tests for rate limiting behavior

## Files to modify
- src/middleware/rateLimiter.ts (create)
- src/routes/users.ts (add middleware)
- tests/middleware/rateLimiter.test.ts (create)

Плохое issue:

Title: Fix the API

It's slow and broken sometimes. Please fix.

Интеграция с внешними агентами

Если вы используете агентов за пределами GitHub (Claude Code, Codex CLI, OpenClaw), GitHub Projects служит единым источником правды о задачах.

Схема интеграции с внешними агентами из Notion

ИнструментЧто делаетПример
GitHub CLI (gh)Работа с issues, PR, projects из терминалаgh issue list —label agent-task
GitHub REST APICRUD для issues и PRPOST /repos/{owner}/{repo}/issues
GitHub GraphQL APIРабота с Projects V2 (статусы, поля)Mutation updateProjectV2ItemFieldValue
gh aw CLIСоздание и запуск Agentic Workflowsgh aw run my-workflow
Taskmaster AIAI-менеджер задач для Cursor, Claude CodeПарсит PRD → создаёт задачи → контролирует выполнение

Пример: скрипт для агента — взять следующую задачу.

#!/bin/bash
# Получить первый issue с лейблом agent-task и статусом open
ISSUE=$(gh issue list --label "agent-task" --state open --limit 1 --json number,title -q '.[0]')
ISSUE_NUM=$(echo $ISSUE | jq -r '.number')
ISSUE_TITLE=$(echo $ISSUE | jq -r '.title')

# Создать ветку
BRANCH="agent/issue-${ISSUE_NUM}"
git checkout -b $BRANCH

# Добавить комментарий — агент взял задачу
gh issue comment $ISSUE_NUM --body "Агент начал работу над задачей."

echo "Working on: #${ISSUE_NUM} — ${ISSUE_TITLE}"

Copilot в IDE: агентные возможности

По данным блога GitHub и changelog от 2026-01-15, Copilot в IDE развивает агентные функции: custom agents, sub-agents, plan agent, agent hooks, auto-approve для MCP и agent instruction files (.github/copilot-instructions.md) — это дополняет цикл, где задачи управляются через Projects, а выполняются через Copilot в IDE.

Ограничения

Ограничения

Что учитывать при работе с GitHub Projects в контуре AI-агентов.

Classic vs V2

Projects Classic не поддерживает custom fields, иерархию и GraphQL API; новые проекты создавайте только на V2.

Связь с кодом — за пределами GitHub Projects даёт меньше пользы: без привязки к репозиторию теряется трассировка issue

branch → PR → merge.

Лимиты Copilot cloud agent — одна сессия = максимум 59 минут, один репозиторий за раз, один PR за раз (по docs.github.com).

Тяжёлые задачи дробите заранее.

Стоимость Agentic Workflows — по данным блога GitHub, каждый запуск с Copilot списывает 2 premium request.

Без контроля через max-ai-credits и gh aw audit бюджеты быстро уезжают.

Стандартный GITHUB_TOKEN — не имеет project scope.

Для Projects API используйте Personal Access Token (classic) с правами project или GitHub App.

Hierarchy view — пока в public preview (по данным changelog от 2026-01-15), не GA.

В production-процессах опирайтесь на проверенные Table/Board views.

Антипаттерны

Антипаттерны

Чего не делать при выстраивании трекера задач для AI-агентов.

Issue без acceptance criteria

агент не знает, когда задача «готова», и либо делает слишком мало, либо уходит в бесконечный цикл доработок.

Нет human-in-the-loop — агент мерджит свои PR автоматически без ревью.

Даже Copilot cloud agent требует approve от человека.

Слишком крупные задачи — issue на «переписать весь бэкенд» не работает. Разбивайте на атомарные задачи:

1 issue = 1 PR = 1 изменение.

Нет связи issue

PR — если PR не ссылается на issue (Closes #123), автоматизация статусов не работает.

Секреты в issue — не пишите API-ключи и пароли в описании задач.

Агент может процитировать их в комментарии или коммите.

Projects Classic вместо V2

Classic-проекты не поддерживают custom fields, автоматизацию и GraphQL API.

Agentic Workflows для CI/CD — они дополняют, а не заменяют детерминированные YAML-пайплайны.

Используйте для субъективных задач (триаж, документация, отчёты).

Чеклист

Чеклист

Проверка перед запуском трекера задач для AI-агентов.

Open-source проекты

Taskmaster AI — AI-менеджер задач для Cursor и Claude Code: парсит PRD, создаёт задачи, контролирует выполнение.

Проект на V2

Projects Classic не подходит, пересоздайте проект при необходимости.

Статусы настроены — минимум:

Backlog, Todo, Assigned to Agent, In Progress, In Review, Done.

Custom fields

Priority и Assignee type обязательны; Sprint и Complexity — по желанию.

Views

Agent Board, Human Review, All Tasks, опционально Hierarchy (preview).

Репозитории подключены

issues автоматически попадают в проект.

Встроенные workflows включены

все пять, без кода.

PR ссылаются на issue

Closes #123 в описании PR.

Human review на месте

ни один PR агента не мерджится автоматически.

Acceptance criteria в issue

что именно считается «готово».

Секреты вне описания задач

.env, ключи, пароли в GitHub Secrets или локально.

Мониторинг бюджета

max-ai-credits и gh aw audit для Agentic Workflows.

Ссылки

Ссылки