Скилл GitHub подключает AI-агента Aizor к вашим репозиториям через GraphQL API v4 и GitHub CLI. Агент создаёт issues и pull requests, мониторит CI/CD, управляет релизами и синхронизирует задачи с Google Sheets — всё из чата, без браузера. В 2026 году добавился Copilot API и расширенные fine-grained токены для безопасной автоматизации. Бесплатно в пределах 5 000 запросов в час.
🐙 Что даёт скилл GitHub в Aizor
GitHub — крупнейшая платформа для разработки с более чем 150 миллионами разработчиков. Его GraphQL API v4 и REST API покрывают практически все операции: от создания issues до управления Actions и релизами. С 2026 года появился Copilot API для AI-ассистированной разработки и улучшенные fine-grained токены с контролем на уровне отдельных разрешений.
Скилл GitHub в Aizor даёт агенту доступ ко всем этим возможностям. Агент может: читать код и документацию, создавать issues и pull requests, управлять ветками, запускать Actions, мониторить CI/CD-статусы и генерировать changelog из закрытых задач. В связке с Telegram-ботом — уведомления о проваленных билдах приходят в чат быстрее чем email.
// GraphQL: получить последние 5 открытых issues с лейблами
POST https://api.github.com/graphql
Authorization: Bearer ghp_xxxxxxxxxxxx
{
"query": "query {
repository(owner: \"myorg\", name: \"myrepo\") {
issues(first: 5, states: OPEN, orderBy: {field: CREATED_AT, direction: DESC}) {
nodes {
number
title
state
labels(first: 3) { nodes { name } }
}
}
}
}"
}
🔑 Подключение: fine-grained токены и права
Подключение GitHub к Aizor — 5 минут, два шага.
Шаг 1 — создаём fine-grained токен
Перейдите в GitHub → Settings → Developer settings → Personal access tokens → Fine-grained tokens. Создайте токен и настройте:
- Repository access — выберите Only select repositories и отметьте репозитории с которыми будет работать агент. Не давайте доступ ко всем.
- Permissions — только то что нужно: Contents (Read), Issues (Read and write), Pull requests (Read and write), Actions (Read), Metadata (Read — обязательно).
- Expiration — 90 дней с уведомлением. GitHub пришлёт email за неделю до истечения.
Fine-grained токены появились в 2023 году и к 2026 стали стандартом безопасности: они ограничивают доступ на уровне отдельных репозиториев и операций, в отличие от classic-токенов которые дают широкий доступ.
Шаг 2 — вставляем токен в Aizor
Скопируйте токен (показывается один раз) и вставьте в настройки скилла GitHub. Укажите список репозиториев или «все доступные». Агент протестирует соединение тестовым запросом к списку issues.
📊 GitHub vs GitLab vs Bitbucket
| Параметр | GitHub | GitLab | Bitbucket |
|---|---|---|---|
| API | REST + GraphQL v4 | REST + GraphQL | REST API v2 |
| Токены | Fine-grained (репо+права) | Project + Group токены | Workspace + Project токены |
| CI/CD | GitHub Actions | GitLab CI/CD | Bitbucket Pipelines |
| Лимиты API | 5 000/час (аутентиф.) | 2 000/мин (зависит от тарифа) | 1 000/час (стандарт) |
| Бесплатный CI | 2 000 мин/мес | 400 мин/мес | 50 мин/мес |
| AI-ассистент | ✅ Copilot API (2026) | ✅ GitLab Duo | ❌ |
| Доступ из РФ | ⚠️ замедления | ✅ (self-hosted) | ✅ |
| Бесплатные приватные репо | ✅ | ✅ | ✅ |
GitHub лидирует по экосистеме и AI-интеграциям. GitLab хорош для self-hosted в России. Bitbucket — нишевое решение для команд Atlassian.
🔄 5 сценариев автоматизации разработки
1. Автоissues из логов и мониторинга
Агент мониторит логи приложения через Google Sheets или другой скилл. При нахождении ошибки с заданным паттерном → создаёт issue с описанием, стектрейсом и назначает дежурного разработчика. Баги не теряются в чатах.
2. Мониторинг CI/CD с уведомлениями
Агент отслеживает статус GitHub Actions по всем веткам. Если билд упал → уведомление в Telegram: «❌ main: билд #1247 провалился. Последний коммит: fix/navbar-refactor». Разработчик узнаёт о проблеме до того как откроет пул-реквест.
3. Автоуправление релизами
Мёрж в main → агент создаёт тег → генерирует changelog из закрытых issues → публикует GitHub Release. Релизный процесс из 30 минут ручной работы превращается в автоматический. Changelog формируется по лейблам: feature, bugfix, breaking.
4. Синхронизация GitHub ↔ Google Sheets
Агент связывает две системы: новые issues → строки в Google Sheets-таблице. Статусы синхронизируются в обе стороны. Менеджер видит прогресс в привычной таблице, разработчики работают в GitHub. Идеально для кросс-функциональных команд.
5. Авторевью типовых изменений
Для простых PR (обновление зависимостей, правки документации) агент проверяет diff → оставляет комментарий или аппрувит. Сложные изменения всё равно идут человеку. Скорость ревью типовых задач вырастает в 5-10 раз.
// GitHub Actions API: запустить workflow и проверить статус
POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches
{
"ref": "main",
"inputs": { "environment": "staging" }
}
// → 204 No Content
GET /repos/{owner}/{repo}/actions/runs/{run_id}
// → { "status": "completed", "conclusion": "success" }
⚠️ Типовые ошибки и как исправить
Ошибка 1: «403 Resource not accessible by integration»
Причина: fine-grained токен не имеет доступа к конкретному репозиторию. Решение: в настройках токена → Repository access → добавьте нужный репозиторий.
Ошибка 2: «422 Unprocessable Entity» при создании issue
Причина: пустое поле или заголовок длиннее 256 символов. Решение: проверьте что все обязательные поля заполнены. Заголовок issue — до 256 символов, тело — Markdown.
Ошибка 3: агент мёржит PR с красным CI
Причина: не настроена проверка статуса перед мёржем. Решение: добавьте в промпт правило: «Перед approve/merge проверь статус CI. Если failure — не мёржи, сообщи причину линком на лог».
Ошибка 4: rate limit exceeded — 5 000/час исчерпаны
Причина: агент делает слишком много запросов (например, парсит всю историю коммитов). Решение: используйте GraphQL вместо REST для сложных запросов (один GraphQL-запрос заменяет 5-10 REST). Кешируйте редко меняющиеся данные.
Ошибка 5: токен закоммитили в репозиторий
Причина: случайный git add конфига с токеном. Решение: немедленно отзовите токен в GitHub Settings. Настройте .gitignore. GitHub автоматически сканирует коммиты на токены и присылает предупреждение.
✅ Чек-лист: 7 шагов к безопасной автоматизации
- ✅ Создать fine-grained токен (не classic) с expiration 90 дней
- ✅ Ограничить Repository access: только нужные репозитории
- ✅ Выдать минимальные Permissions (Contents: Read, Issues: R/W, PR: R/W)
- ✅ Вставить токен в Aizor и проверить тестовым запросом
- ✅ Настроить .gitignore — исключить конфиги с токенами
- ✅ Добавить правило «не мёржить без зелёного CI» в промпт агента
- ✅ Настроить уведомления в Telegram через связку скиллов
🙋 FAQ
Скилл GitHub бесплатный?
Да. GitHub API бесплатен для всех репозиториев в пределах 5 000 запросов в час. Fine-grained токены доступны на всех тарифах, включая Free.
Fine-grained или classic токен — что выбрать?
Всегда fine-grained. Он позволяет ограничить доступ конкретными репозиториями и разрешениями. Classic даёт широкий доступ — небезопасно для AI-агента.
Можно ли подключить агента к GitHub Enterprise?
Да, GitHub Enterprise Server поддерживает те же API. Укажите URL корпоративного сервера в настройках скилла — агент будет работать с on-premise инсталляцией.
Агент может случайно удалить репозиторий?
Нет, если токену не выдано разрешение delete_repo. Fine-grained токены по умолчанию не имеют деструктивных прав. Принцип: давайте только те permissions, которые нужны агенту.
Можно ли запускать GitHub Actions через агента?
Да. Агент может триггерить workflow_dispatch, проверять статус CI/CD и сообщать результат в чат. Редактирование самих YAML-файлов Actions требует права на запись в код.
🎯 Key Takeaways
- Fine-grained токены — единственный правильный выбор для AI-агента. Ограничивайте доступ конкретными репозиториями и правами.
- GraphQL API эффективнее REST для сложных сценариев: один запрос заменяет 5-10 REST-вызовов и экономит лимиты.
- Связка GitHub + Telegram через Aizor превращает пассивный репозиторий в активного участника команды: уведомления о CI, issues без захода в интерфейс, авторелизы.
Источники: GitHub REST API, GitHub GraphQL API v4, GitHub — Управление токенами, GitHub Copilot API Preview, GitLab API, Bitbucket REST API.
