Вы дописываете фичу в Claude Code. Диф показывает +2,148 −14, ветка — main, и остаётся лишь нажать "Create PR" — и тут в верхней части экрана появляется красный баннер:

⚠ Некорректный запрос
Не удалось проверить статус pull request.
Эта информация может быть устаревшей.

Самое неприятное в том, что кнопка "Create PR" по-прежнему на месте, но вы больше не можете понять, в каком состоянии находится PR: не создан, уже открыт или уже смержен. Внезапно и совершенно независимо от ваших изменений в коде невидимым становится только одно — "как эта ветка выглядит на GitHub прямо сейчас".

Сначала вывод: в большинстве случаев это не фатальная ошибка. Claude Code получает статус PR из GitHub через GitHub CLI (gh), и когда этот запрос не удаётся, появляется красный баннер. Причина — одно из трёх: gh не установлен, аутентификация не проходит или соединение на мгновение пропало, — либо у ветки ещё нет PR / она не отправлена в удалённый репозиторий. В статье разобраны механизм по официальной документации и CHANGELOG, 6 основных причин, порядок диагностики, шпаргалка по командам и профилактика.

CLAUDE CODE · СТАТУС PR

"Не удалось проверить статус PR" в двух словах

— Claude Code запросил состояние у GitHub; этот единственный запрос не удался

СИМПТОМ
Состояние PR неизвестно
создан или нет — отображение устаревает
ПРИЧИНА
GitHub недоступен
gh auth истёк или нет push/PR
ПЕРВЫЙ ШАГ
gh auth status
проверьте, жива ли аутентификация

Суть: это не "проблема кода", а "проблема связи/аутентификации с GitHub".
Вашу работу (генерацию кода, коммиты) обычно можно продолжать. Срочно начинать новую сессию не нужно.

1. Что на самом деле означает эта ошибка

Если читать буквально, сообщение говорит: "Я не смог проверить, в каком состоянии сейчас находится pull request для этой ветки на GitHub, поэтому показанная на экране информация может быть устаревшей".

Важно понять, что две вещи НЕ произошли. Во-первых, ваш код и ваш диф не сломаны — изменения +2,148 −14 по-прежнему на месте в рабочем дереве. Во-вторых, здесь не сказано "не удалось создать PR". Это предупреждение со стороны чтения: "В качестве подготовки к созданию PR я попытался прочитать текущее состояние PR (не создан / открыт / смержен / закрыт) и не смог".

Иными словами, этот баннер — сообщение типа "не удалось синхронизировать", и оно, как правило, временное. Моё мнение: когда вы видите этот красный баннер, в первую очередь стоит заподозрить не "ваш код", а "состояние соединения с GitHub" — а именно эти три момента: не истекла ли аутентификация, доступна ли сеть и находится ли вообще ветка в состоянии, где PR может существовать (запушена ли в удалённый репозиторий).

2. Как устроено: как Claude Code видит ваш PR

Статус PR (не создан / открыт / слит / закрыт) хранится только на серверах GitHub. Claude Code каждый раз запрашивает GitHub и отражает ответ в значке и кнопках на экране. Путь запроса описан в документации десктопного приложения Anthropic и в CHANGELOG Claude Code, и оба пути опираются на GitHub CLI (gh) (сверено с первоисточниками 30 сентября 2026 года).

ГдеКак получается статус PRИсточник
Десктопное приложение, вкладка Code ("Create PR" и строка статуса CI)Периодически запрашивает результаты проверок через gh / требует, чтобы gh был установлен и авторизован (если его нет, приложение предложит установить при первой попытке создать PR)Документация десктопа, "Monitor pull request status"
Терминал (CLI), значок PR под строкой вводаОбычно gh pr view / на Bedrock, Vertex и Foundry, а также при отключённой телеметрии обращается к GitHub API напрямую с токеном из gh auth token, GH_TOKEN или GITHUB_TOKENCHANGELOG 2.1.251
Как часто проверяется этот значокРеже, пока PR не меняется / push или команда gh pr обновляет его сразу / при возврате в терминал повторная проверка пропускается, если прошлой меньше минутыCHANGELOG 2.1.248 и 2.1.247

То есть статус PR удаётся получить, только когда сходятся четыре условия: "gh установлен, gh авторизован, сеть доступна, а ветка и её PR есть в удалённом репозитории". Если не хватает любого из них, появляется красный баннер. Кроме того, при входе через браузер (по умолчанию) gh хранит токен в системном хранилище учётных данных и лишь при его недоступности пишет токен в обычный текстовый файл (где именно — показывает gh auth status; руководство GitHub CLI, gh auth login).

Чего нет в официальной документации

Подробности о том, как часто десктопное приложение делает запросы и какие сбои приводят к "Некорректный запрос", в официальной документации на 30 сентября 2026 года не описаны. Диагностика в этой статье опирается на то, что описано в таблице выше (установлен ли gh, авторизован ли он и есть ли связь).

3. Почему это происходит — 6 основных причин

Пути, ведущие к "не удалось проверить статус PR", можно свести примерно к 6. Быстрее всего проверять их сверху вниз.

6 ROOT CAUSES

6 причин, по которым статус PR не получить

ПРИЧИНА 1 · gh не установлен
Отслеживание PR в десктопном приложении требует установленного и авторизованного gh (официально). Если gh --version не срабатывает, он не установлен. Скачайте с cli.github.com.
ПРИЧИНА 2 · Нет входа / токен отозван
gh не авторизован или его токен отозван. GitHub автоматически отзывает токен, которым не пользовались год, а PAT истекает в дату, заданную при создании (GitHub Docs). Это покажет gh auth status.
ПРИЧИНА 3 · PR ещё нет / не сделан push
Ветки нет в удалённом репозитории, или PR не создан. "Статуса" просто нет. Если рабочая ветка — это сама ветка по умолчанию (например, main), она совпадает с базовой, и открыть из неё PR нельзя.
ПРИЧИНА 4 · Сеть / прокси
Корпоративный прокси, VPN, отсутствие сети или DNS делают api.github.com недоступным. Если падают и другие операции Git — почти наверняка это.
ПРИЧИНА 5 · Права токена (при PAT)
При входе через браузер командой gh auth login (по умолчанию) repo, read:org и gist выдаются сразу (официальный минимум). Прав не хватает, когда PAT передаётся через --with-token или GH_TOKEN. Fine-grained PAT видит только разрешённые репозитории.
ПРИЧИНА 6 · Временный сбой (часто безобидный)
Лимит запросов API GitHub, разовый сетевой сбой или устаревшее отображение. Если gh, аутентификация и сеть в порядке, обычно проходит после короткого ожидания и повтора.

Причины 1–5 — проблемы настройки/состояния (исправите — не вернутся).
Причина 6 — временная. Кратчайший путь — начать с причин 1–2 (есть ли gh и авторизован ли он) и причины 3 (push / наличие PR).

4. Исправляем сейчас — порядок диагностики

Когда появится красный баннер, пройдите 4 шага сверху вниз. ШАГИ 1 и 2 покрывают причины 1–3.

4 STEPS

Порядок диагностики

ШАГ 1 · Проверьте gh и аутентификацию
Выполните gh --version, чтобы убедиться, что gh установлен, и gh auth status для проверки входа. При проблеме команда завершится с кодом 1 и назовёт причину. Войдите заново через gh auth login.
ШАГ 2 · Push и наличие PR
Отправьте ветку командой git push -u origin <branch> и проверьте, существует ли PR, через gh pr view или gh pr status. Если нет — создайте.
ШАГ 3 · Сеть и права
Отключите VPN/прокси или попробуйте другую сеть. Если используете PAT, проверьте его права (classic: repo, read:org, gist). При входе через браузер gh auth refresh восстановит минимальные scopes.
ШАГ 4 · Подождите / повторите
Если с 1–3 всё в порядке, сбой временный. Подождите и повторите или обновите Claude Code до последней версии и перезапустите.

Правило: "Сначала подозревайте соединение с GitHub, потом код."
gh auth status из ШАГА 1 — самый быстрый путь к настоящей причине.

Ещё одно: даже при этом баннере ваши локальные коммиты и рабочее дерево в безопасности. Не нужно спешно делать git reset или бросать сессию. Сначала почините соединение, затем снова нажмите "Create PR". Если через интерфейс всё равно не получается, выполните в терминале gh pr create — так PR создаётся без интерфейса Claude Code. Если ветка ещё не отправлена, gh pr create спросит, куда сделать push (руководство GitHub CLI).

5. Шпаргалка по командам

Команды для диагностики. Выполняйте их сверху вниз — и вы естественным образом сузите, какая ПРИЧИНА ваша.

ЦельКомандаНа что смотреть
Установлен ли gh?gh --versionВыводится ли версия (если нет — установите с cli.github.com)
Жива ли аутентификация?gh auth statusЕсть ли "Logged in to github.com" / код выхода 1 при проблеме
Войти зановоgh auth loginПо умолчанию через браузер (выдаёт repo, read:org, gist)
Восстановить scopesgh auth refreshВозвращает минимальные scopes (repo, read:org, gist)
Проверить remotegit remote -vУказывает ли origin на нужный репозиторий GitHub
Отправить веткуgit push -u origin <branch>Выполняет условие, при котором PR может существовать
PR текущей веткиgh pr viewТот же способ, что у значка в терминале / если падает это, не работает и значок
Список и статус PRgh pr statusЕсть ли PR у текущей ветки / открыт или слит
Создать PR через CLIgh pr createСоздание напрямую, без интерфейса (обходной путь)
Проверка связиgh api rate_limitОтвет есть — связь в порядке / remaining показывает лимит запросов

Если gh auth status возвращает "Logged in", а gh pr view отвечает нормально, скорее всего, просто устарело отображение в Claude Code. Обновитесь до последней версии и перезапустите — значок снова синхронизируется.

6. Можно ли игнорировать "может быть устаревшей"?

Строка "эта информация может быть устаревшей" означает разное в разных ситуациях. Стоит научиться отличать, когда её можно игнорировать, а когда требуются действия.

✅ Можно игнорировать (безобидно)

  • gh auth status в порядке
  • другие операции Git/push проходят нормально
  • проходит после короткой паузы / повтора
  • значок PR лишь на мгновение выглядит устаревшим

→ Просто задержка синхронизации / кеш. Продолжайте работать.

⚠ Требует действий (реально)

  • gh auth status сообщает "not logged in"
  • и push, и pull не проходят
  • не проходит, сколько ни повторяй
  • нажатие "Create PR" не двигается дальше

→ Реальная проблема аутентификации/соединения. Исправьте через ШАГИ 1–3.

Решающий тест — снова один gh auth status. Если он зелёный (Logged in) и другие операции Git проходят, баннер можно оставить в покое. И наоборот, если аутентификация не работает, то рано или поздно перестанут проходить и операции помимо PR (push, получение ревью и т. д.), поэтому разумно исправить это сразу.

7. Чек-лист для предотвращения повторов

Практический чек-лист, чтобы тот же красный баннер не докучал вам снова.

① На новой машине установите gh и выполните gh auth login до того, как создавать PR из Claude Code. ② Заведите привычку время от времени проверять gh auth status (GitHub отзывает токен, не использовавшийся год, а PAT истекает в заданную при создании дату). ③ Если нужен PAT, создавайте classic с repo, read:org и gist или включайте нужный репозиторий в fine-grained PAT. ④ Не оставляйте старые токены в переменных окружения GH_TOKEN / GITHUB_TOKEN (они важнее сохранённого входа; руководство GitHub CLI). ⑤ Начав работу в новой ветке, делайте git push -u origin <branch> пораньше. ⑥ В корпоративной сети (прокси/VPN) один раз проверьте связь через gh api rate_limit. ⑦ Обновляйте Claude Code — как видно по CHANGELOG, способ получения значка PR менялся уже не раз. ⑧ Если интерфейс упорно нестабилен, создавайте PR через gh pr create.

Итоги

Сообщение Claude Code "Не удалось проверить статус pull request. Эта информация может быть устаревшей" указывает не на дефект кода, а на то, что запрос к GitHub (официально он опирается на gh CLI) не прошёл. Обычно это безобидная задержка синхронизации, но за ней могут скрываться неустановленный gh, истёкшая аутентификация, неотправленная ветка / отсутствие PR, проблемы сети или права PAT.

Самая быстрая диагностика: ① проверьте gh и вход через gh --version и gh auth status, ② проверьте push и PR через git push + gh pr view, ③ проверьте связь и права, ④ если всё в порядке — подождите, повторите и обновитесь. Если через интерфейс создать PR никак не выходит, создайте его напрямую через gh pr create. "Сначала подозревайте соединение с GitHub, потом код" — запомните это, и красный баннер больше не будет пугать.

Связанные материалы: Что такое GitHub Copilot, Что такое Claude Agent SDK, Ошибка 400 в блоках размышления Claude Code и рабочий процесс деплоя Claude Code / Cursor.

FAQ

В. Если появилась эта ошибка, мой код или диф будут потеряны?
О. Нет. Это предупреждение со стороны связи о том, что "не удалось прочитать состояние PR"; оно никак не влияет на ваши локальные коммиты, рабочее дерево или диф (например, +2,148 −14). Не нужно спешить с git reset или сбрасывать сессию.

В. Что проверить в первую очередь?
О. gh auth status. Эта единственная команда сообщит, жива ли ваша аутентификация GitHub. Если вы видите "Logged in", аутентификация в порядке — обычно сбой временный, так что подождите и повторите. Если нет, войдите заново через gh auth login, и большинство случаев разрешится.

В. Можно ли оставить "эта информация может быть устаревшей" без внимания?
О. Если и аутентификация, и сеть в порядке — да. Часто это просто задержка синхронизации / кеш, который проходит после короткой паузы или повтора. Но если gh auth status сообщает "not logged in" или даже push не проходит — это реальная проблема, исправьте её.

В. "Create PR" не проходит, сколько ни пытаюсь.
О. Выполните gh pr create напрямую из терминала, минуя GUI; это позволит создать сам PR. Если всё равно не получается, проверьте через git push -u origin <branch>, есть ли ветка в удалённом репозитории, и через git remote -v — указывает ли origin на правильный репозиторий.

В. На корпоративной сети это случается часто. Почему?
О. Скорее всего прокси, VPN или фаервол блокируют трафик к api.github.com. Проверьте, отвечает ли gh api rate_limit; если нет, нужно разрешение со стороны сети (добавление доменов GitHub в allowlist). Временное отключение VPN, чтобы локализовать проблему, тоже помогает.

В. Значок PR под строкой ввода в терминале не обновляется.
О. Согласно CHANGELOG, значок проверяется реже, пока PR не меняется, а push или команда gh pr обновляет его сразу (2.1.248). Если обновления нет, проверьте, работает ли gh pr view в вашем терминале. На Bedrock, Vertex или Foundry, а также при отключённой телеметрии значок вместо gh pr view обращается к API напрямую с токеном из gh auth token, GH_TOKEN или GITHUB_TOKEN (2.1.251), так что убедитесь, что этот токен действителен.

В. gh auth status в порядке, а статус PR всё равно не получается.
О. Подозревайте охват токена, который реально используется. Fine-grained PAT видит только разрешённые репозитории, поэтому даже при действующем входе он может не читать PR нужного репозитория. Кроме того, если задана переменная окружения GH_TOKEN или GITHUB_TOKEN, gh использует её вместо сохранённого входа (руководство GitHub CLI). Проверьте, не задан ли там ненужный токен.

Похожие ошибки Claude Code: справочник ошибок Claude Code, Unable to connect, 529 Overloaded / 500.