Токен, однажды скопированный в переменную или скрипт, может перестать работать после истечения срока действия. 21 октября 2026 года GitHub объявила о публичном превью истекающих OAuth-учётных данных с автоматическим обновлением в GitHub CLI. Режим подключается по желанию и рассчитан на рабочие процессы, где авторизацией управляет сама CLI.

Как включить обновляемые учётные данные
Нужна GitHub CLI версии 2.103.0 или новее. Для отдельного входа добавьте флаг --expiring:
gh auth login --expiring
Чтобы включать запрос обновляемых учётных данных при последующих входах, выполните:
gh config set expiring_credentials enabled
CLI хранит истекающий access token вместе с rotating refresh token и обновляет учётные данные, когда они нужны. Состояние авторизации и срок действия текущего токена показывает команда gh auth status. Флаг запрашивает обновляемые учётные данные; их выдача зависит от возможностей хоста и конфигурации OAuth-приложения. Если сервер их не поддерживает, CLI использует обычный токен без срока действия.
Настройте Git как потребителя учётных данных
Для репозиториев с HTTPS настройте GitHub CLI как Git credential helper:
gh auth setup-git
Тогда Git запрашивает учётные данные у gh, который может обновить их перед использованием. GitHub рекомендует Git версии 2.46 или новее: она позволяет CLI пометить истекающие учётные данные, чтобы Git не кэшировал их после окончания срока действия. С более старой версией GitHub CLI работает, но один раз предлагает обновиться.
После настройки проверьте обычную операцию Git по HTTPS, например чтение состояния удалённого репозитория. Убедитесь, что Git получает учётные данные через helper: это проверяет весь путь авторизации, а не только вход в CLI.
Проверьте скрипты и внешние приложения
Уязвимое место — скрипт или расширение, которое однажды запускает gh auth token, сохраняет строку и повторно использует её позднее: такой access token может истечь. Если внешнему процессу нужен токен, запрашивайте его свежим при каждом запуске через gh auth token. Сам потребитель должен уметь использовать актуальное значение и учитывать истечение токена.
Перед включением режима в рабочем окружении проверьте CI-задачи, локальные скрипты, расширения редактора и инструменты, получающие токен из переменной окружения или конфигурационного файла. Выясните, запрашивают ли они актуальное значение при запуске или полагаются на сохранённую копию. Для процессов, которым требуется токен с длительным сроком действия, оставьте прежнюю схему авторизации.
Где доступна функция
GitHub объявила поддержку на github.com и ghe.com. GitHub Enterprise Server выдаёт такие учётные данные начиная с версии 3.23; на более ранних версиях запрос обновляемых данных переключается на обычный токен без срока действия. Режим пока включается добровольно; GitHub планирует со временем сделать его стандартным для новых входов.
Практический порядок: обновить GitHub CLI, включить запрос обновляемых учётных данных, настроить Git через gh auth setup-git и проверить внешние процессы на сохранение токена. Это помогает выявить несовместимые сценарии до переключения.
Подробности GitHub опубликовала в анонсе о превью и в документации команды gh auth login.