GitHub Projects как память для AI-агента
Вернулся к проекту через три недели. Открыл Claude Code, написал “продолжи работу над API”. Агент честно ответил, что понятия не имеет, о чём речь.
Контекст сессии испарился. Я потратил 20 минут, объясняя заново что уже сделано, какие проблемы остались, куда двигаться. Раздражало.
Тогда понял: агенту нужна долговременная память. И она у меня уже была — GitHub Issues. Только я использовал их для багов, а не для контекста.
Issues как внешняя память
Раньше issues = баги. Что-то сломалось → открыл → пофиксил → закрыл.
Но issue может хранить что угодно: состояние проекта, план действий, технические детали в комментариях, ссылки на конкретные строки кода. И главное — это всё сохраняется навсегда.
Теперь когда начинаю задачу, прошу агента создать issue. Он записывает контекст. Через три недели возвращаюсь и говорю: “открой issue #42”. Агент читает всё что там написано и продолжает с того места, где остановился.
Под капотом Claude Code использует gh CLI — официальный инструмент GitHub для командной строки. Агент не кликает в браузере, он выполняет команды и получает структурированные данные.
Проблема: десять репозиториев
Появилась другая проблема. У меня много проектов:
tg-course-maks— телеграм-ботai-whisper— обработка видеоsereja.tech— блогdotfiles— конфиги- и ещё несколько
Issues живут внутри каждого репозитория. Чтобы увидеть все активные задачи — нужно открывать каждый проект отдельно. Агент тоже не видит полной картины.
Мне нужна была единая точка входа.
GitHub Projects
GitHub Projects — агрегатор issues из разных репозиториев. Одна доска, все задачи.
┌─────────────────┐
│ Новая задача │
└────────┬────────┘
│
▼
┌─────────────────────────────────────┐
│ Агент создаёт issue в нужном репо │
└────────┬────────────────────────────┘
│
▼
┌─────────────────────────────────────┐
│ Issue добавляется в общий Project │
└────────┬────────────────────────────┘
│
▼
┌──────────────────────────────────────┐
│ Project Board │
│ ┌──────────┬──────────┬──────────┐ │
│ │ Backlog │ Todo │ Done │ │
│ ├──────────┼──────────┼──────────┤ │
│ │ blog #7 │ bot #42 │ api #15 │ │
│ │ whisper │ dotfiles │ │ │
│ └──────────┴──────────┴──────────┘ │
└──────────────────────────────────────┘
Issues остаются в своих репозиториях, но все видны в одном месте. Не дублирую, не копирую — просто добавляю ссылки.
На практике
Утром открываю Project:
- 3 задачи в Todo
- 2 в In Progress
- 5 в Backlog
Выбираю задачу, открываю Claude Code: “Продолжи работу над issue #42 в tg-course-maks”.
Агент читает issue, видит контекст, продолжает. Когда готово: “Закрой issue и переведи в Done”. Он закрывает и обновляет статус. Автоматически.
Кастомные поля
В Projects можно добавить метаданные:
- Priority — High / Medium / Low
- Effort — Small / Medium / Large
- Type — Feature / Bug / Research
И создавать views: “Quick wins” (High priority + Small effort), “Current sprint”, “Research backlog”.
Агент тоже умеет фильтровать. Говорю “покажи high-priority из бэклога” — он вытаскивает список.
Почему работает
Структура. Агент не держит контекст в голове — читает из issue. Чем лучше описана задача, тем точнее он работает.
История. Каждый комментарий — точка восстановления. Через месяц открываю issue, читаю комментарии, вспоминаю почему выбрал этот подход. Агент делает то же самое.
CLI-интерфейс. Всё через команды: создать issue, обновить статус, добавить комментарий. Программируемо и повторяемо.
Какие агенты работают с GitHub
GitHub становится стандартным интерфейсом для AI-агентов. В 2026 году почти каждый серьёзный coding agent умеет брать задачи прямо из issues.
GitHub Copilot Coding Agent — открываешь issue, в assignees выбираешь Copilot. Он читает описание, пишет код, создаёт PR. Issue буквально становится промптом.
Claude Code — работает через CLI или веб-версию. Подключаешь репозиторий, даёшь ссылку на issue — агент читает контекст и работает. Плюс интеграция с GitHub Actions для автоматического запуска.
Google Jules — асинхронный агент на Gemini 2.5 Pro. Подключаешь репозиторий через Jules GitHub App, указываешь issue — агент работает в фоне и возвращает PR когда готово. Можно запускать через jules-action в GitHub Actions.
Amazon Q Developer — добавляешь лейбл “Amazon Q development agent” на issue или пишешь /q dev в комментарии. Агент берёт задачу и создаёт PR.
OpenAI Codex — облачный агент, подключается к репозиторию и работает с issues через веб-интерфейс.
Devin — интегрируется с GitHub, Linear, Jira. Назначаешь issue на Devin или пишешь в Slack — он берёт в работу.
Паттерн один: issue как промпт. Описываешь задачу человеческим языком, назначаешь на агента, получаешь PR. GitHub Projects в этой схеме — единая доска, где видно все задачи и кто над ними работает: человек или агент.
Что нужно
- GitHub CLI —
brew install ghна маке - Авторизация —
gh auth login - Права на Projects —
gh auth refresh -s project
Дальше можно создать Project на GitHub.com или попросить агента: “Создай GitHub Project под названием Tasks”.
По-моему, это один из самых недооценённых способов работы с AI-агентами. Не потому что сложно — наоборот, слишком просто. Кажется что “ну это же просто issues”. Но когда агент начинает сам читать и обновлять задачи между сессиями — это меняет подход.
Попробуйте.
Источники
- GitHub CLI — официальная документация
- GitHub Projects API — автоматизация через API
- GitHub Copilot Coding Agent — назначение issues на Copilot
- Claude Code GitHub Actions — интеграция с CI/CD
- Google Jules — асинхронный coding agent
- jules-action — GitHub Action для Jules
- Amazon Q Developer for GitHub — интеграция с GitHub
- Devin GitHub Integration — настройка Devin
Подписаться на обновления — @sereja_tech