← Назад в блог

Как отслеживать релизы GitHub в RSS-ридере

У каждого репозитория есть лента релизов

GitHub публикует ленту релизов для каждого публичного репозитория. Добавьте /releases.atom в конец адреса репозитория:

https://github.com/OWNER/REPO/releases.atom

Для GitHub CLI, репозиторий которого называется cli/cli, это выглядит так:

https://github.com/cli/cli/releases.atom

Лента использует формат Atom — RSS-ридеры работают с ним так же, как с RSS. Каждая запись соответствует одному релизу: заголовок релиза, ссылка на страницу релиза, время публикации и примечания к релизу в том виде, в каком их написали мейнтейнеры на GitHub. Лента содержит 10 последних релизов. Для её использования не нужны аккаунт GitHub, токен или сторонние сервисы.

Добавление ленты релизов в SereneReader

  1. Откройте репозиторий на GitHub и скопируйте часть адреса вида OWNER/REPO, например cli/cli.
  2. Составьте URL ленты: https://github.com/cli/cli/releases.atom.
  3. В SereneReader нажмите Добавить ленту в нижней части боковой панели и вставьте URL в поле URL ленты.
  4. Заполните поле Собственное название. GitHub именует ленту только по названию репозитория, поэтому лента GitHub CLI отображается как «Release notes from cli». Название вроде «GitHub CLI releases» будет проще найти в боковой панели.
  5. Выберите Папку, если у вас есть папка для релизов, затем нажмите Добавить ленту.

Новые релизы будут появляться вместе с другими статьями, а примечания к ним открываются в ридере как обычные публикации.

Храните ленты релизов в одной папке

Если вы следите за несколькими проектами, создайте для них отдельную папку. Нажмите Новая папка в боковой панели, назовите её, например, «Релизы» и выбирайте её при добавлении каждой ленты. Открывайте папку, когда хотите узнать об изменениях в используемых инструментах, и держите её закрытой в остальное время.

Другие ленты, которые публикует GitHub

Тот же принцип работает и для нескольких других страниц. Мы проверили каждую из них на реальных репозиториях 3 ноября 2026 года.

Что отслеживать URL ленты Что содержит каждая запись
Релизы https://github.com/OWNER/REPO/releases.atom Заголовок и полные примечания к релизу (10 последних)
Теги https://github.com/OWNER/REPO/tags.atom Название тега или релиза с сообщением коммита вместо примечаний к релизу (10 последних)
Коммиты в ветке https://github.com/OWNER/REPO/commits/BRANCH.atom Сообщение коммита (20 последних)
Коммиты в файл или папку https://github.com/OWNER/REPO/commits/BRANCH/PATH.atom Сообщения коммитов, затронувших этот путь (20 последних)
Обсуждения https://github.com/OWNER/REPO/discussions.atom Новые обсуждения для репозиториев с включёнными Discussions
Публичная активность пользователя https://github.com/USER.atom Пуши, удалённые ветки и другие публичные события (30 последних)

Несколько примеров для копирования:

https://github.com/cli/cli/tags.atom
https://github.com/cli/cli/commits/trunk.atom
https://github.com/cli/cli/commits.atom
https://github.com/cli/cli/discussions.atom
https://github.com/vitejs/vite/commits/main/packages/vite/CHANGELOG.md.atom
https://github.com/torvalds.atom

Несколько полезных деталей:

  • /commits.atom без указания ветки отслеживает ветку репозитория по умолчанию. Для cli/cli возвращаются те же записи, что и для /commits/trunk.atom.
  • Несуществующая ветка возвращает ошибку 404, поэтому проверьте название ветки, если ридер сообщает, что не может найти ленту.
  • Лента файла удобна для отслеживания журналов изменений. Некоторые проекты ведут заметки в файле CHANGELOG.md, а не в разделе релизов GitHub. Отслеживание коммитов в этот файл сообщает об изменениях в журнале — как в примере с Vite выше.
  • Проекты, которые создают теги версий без публикации релизов GitHub, всё равно имеют рабочую ленту релизов. Linux и Go не публикуют релизы на GitHub, и их ленты releases.atom перечисляют теги. Текст записи — это сообщение коммита, поэтому он короткий.

Что насчёт целой организации?

GitHub не публикует сводную ленту релизов по организации. https://github.com/ORG.atom возвращает валидную ленту, но она содержит события организации, например добавление людей в репозитории. Для организаций cli и github она была пустой. https://github.com/orgs/ORG.atom возвращает веб-страницу, а не ленту.

Чтобы следить за всеми репозиториями организации, подпишитесь на ленту релизов каждого из них. Делать это вручную необязательно: скрипт ниже запрашивает у API GitHub список публичных репозиториев организации и создаёт OPML-файл — формат, который ридеры используют для импорта списка лент. Для работы нужны curl и jq; скрипт читает до 100 репозиториев и пропускает архивные.

ORG=cli

curl -s "https://api.github.com/orgs/$ORG/repos?per_page=100&type=public" \
  | jq -r --arg org "$ORG" '
      "<?xml version=\"1.0\" encoding=\"UTF-8\"?>",
      "<opml version=\"2.0\">",
      "  <head><title>\($org) releases</title></head>",
      "  <body>",
      "    <outline text=\"\($org) releases\">",
      (.[] | select(.archived | not) | "      <outline type=\"rss\" text=\"\(.full_name)\" xmlUrl=\"https://github.com/\(.full_name)/releases.atom\"/>"),
      "    </outline>",
      "  </body>",
      "</opml>"' > "$ORG-releases.opml"

Измените ORG на нужную организацию, запустите скрипт и импортируйте файл: в SereneReader нажмите Добавить ленту, затем Импортировать OPML. Ленты попадут в одну папку — в данном примере она называется «cli releases». У крупных организаций могут быть сотни репозиториев, поэтому проверьте файл перед импортом. На плане Free импорт останавливается при достижении лимита в 150 лент.

Можно ли исключить предварительные релизы?

Средствами самой ленты — нет. Лента релизов включает предварительные релизы, и ничто в записи не отмечает их как таковые. Мы проверили это на TypeScript: GitHub помечает «TypeScript 7.1 Beta» как предварительный релиз, однако его запись в ленте выглядит так же, как и запись стабильного релиза. Добавление ?prerelease=false к URL ленты не влияет на то, что возвращает GitHub.

Фильтровать можно по заголовку релиза. Многие проекты включают слова «beta», «rc» или «alpha» в названия предварительных релизов. В SereneReader добавьте фразу в разделе Настройки > Данные > Скрытые фразы либо откройте релиз, нажмите Скрыть статью и выберите Скрыть по фразе. Статьи, заголовок или аннотация которых содержат эту фразу, будут скрыты — в том числе те, что появятся позже. Например, фраза -rc скрывает релиз-кандидаты Linux вроде v7.4-rc1.

Выбирайте фразу внимательно. Скрытые фразы применяются ко всем отслеживаемым лентам и сопоставляются как с заголовком, так и с аннотацией. Фраза вроде beta также скроет стабильный релиз, в примечаниях к которому упоминается бета-версия, а также публикации из других лент, содержащие это слово.

Ещё один момент, на который стоит обратить внимание: репозиторий, содержащий несколько пакетов, нередко публикует релизы для всех них в одной ленте. Лента TypeScript, например, также содержит релизы расширения VS Code с заголовками вида vscode-typescript/v1.0.1. Скрытая фраза vscode-typescript/ позволяет от них избавиться.

Чтение релизов с помощью AI-агента

Если вы следите за многими проектами, вам может быть удобнее получать сводку вместо каждого набора примечаний. API SereneReader возвращает ваши статьи в формате JSON — в том числе из лент релизов, — поэтому агент или небольшой скрипт могут прочитать релизы за прошедшую неделю и сообщить, какие из них касаются вас. Подробная инструкция по настройке приведена в статье Как подключить RSS-ленты к AI-агентам. API доступен в рамках планов Pro и Team.

Когда ленты недостаточно

Лента релизов — ненавязчивый способ следить за используемым программным обеспечением. Однако у неё есть ограничения:

  • Качество примечаний зависит от качества релиза. Лента содержит только текст релиза и ничего более. Записи релизов Linux содержат лишь строку вроде «Linux 7.4-rc1», а запись бета-версии TypeScript — ссылку на запись в блоге. Файлы, прикреплённые к релизу, также не перечисляются. Для таких проектов стоит дополнительно подписаться на ленту блога проекта или его файл журнала изменений.
  • Приватные репозитории не работают. Лента приватного репозитория возвращает ошибку 404, если вы не авторизованы на GitHub, а RSS-ридер запрашивает ленты без вашей сессии GitHub. Для таких репозиториев используйте встроенные уведомления GitHub (см. ниже).
  • Новые релизы появляются по расписанию ридера. Ридер периодически проверяет каждую ленту, поэтому релиз отобразится при следующей проверке, а не в момент публикации. Для чтения это вполне приемлемо. Но если что-то должно произойти немедленно, этот инструмент не подходит.
  • В активных лентах могут теряться записи. Лента всегда содержит только 10 последних релизов. Если репозиторий опубликует более 10 релизов между двумя проверками — например, большой монорепозиторий в день выпуска, — часть из них исчезнет из ленты прежде, чем ридер их увидит.

Когда эти ограничения важны, воспользуйтесь одним из следующих вариантов:

  • Меню Watch на GitHub. На странице репозитория нажмите Watch, выберите Custom и отметьте Releases. GitHub будет отправлять уведомление (и письмо на электронную почту, если она включена) о каждом новом релизе. Работает и для приватных репозиториев, к которым у вас есть доступ.
  • Вебхук. Если релиз должен автоматически запускать какое-либо действие — например, сборку или деплой, — вебхук репозитория с событием release будет вызывать ваш сервер в момент публикации релиза. Добавлять вебхуки можно только в репозитории, которыми вы управляете.
  • Инструменты обновления зависимостей. Если цель — поддерживать актуальность зависимостей проекта, такой инструмент, как Dependabot или Renovate, будет открывать pull request'ы при выходе новых версий.

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

URL лент и их содержимое проверены на GitHub 3 ноября 2026 года. Если лента перестала обновляться, откройте её URL в браузере и убедитесь, что GitHub по-прежнему её отдаёт.