Claude Media
No GitHub account is connectedでultrareviewが止まる原因と対処

No GitHub account is connectedでultrareviewが止まる原因と対処

ultrareviewでNo GitHub account is connectedやcan't seeが出る原因と、/web-setupやClaude GitHub Appで直す手順を、症状別に解説します。

/code-review ultra 1234やclaude ultrareview 1234のようにPR番号を付けて実行すると、クラウドのレビューが始まる前に「Ultrareview clones <owner>/<repo> in the cloud with the GitHub account connected to your Claude account, and none is connected」で止まることがあります。もう1つの顔は「Your connected GitHub account can't see <owner>/<repo>」です。どちらもクラウドでgithub.comのPRをcloneする前のサーバー側確認で、起動が拒否されています。

拒否された起動では無料枠も使用量クレジットも消費されません。前者はGitHubアカウントがClaudeアカウントに未接続か接続切れ、後者は接続済みでもそのアカウントがリポジトリを読めない、という違いです。

2つのメッセージの違い

くらべる

どこで止まったかが分かれ目

接続そのものがない

No GitHub account is connected

ClaudeアカウントにGitHubアカウントが紐付いていないか、紐付けの有効期限が切れています。直し方は接続を作ること。

接続はあるが見えない

Your connected GitHub account can't see

接続済みのGitHubアカウントが、そのPRのリポジトリを読めません。直し方は、見えるアカウントに替えるか、Claude GitHub Appの導入範囲を広げること。

メッセージの文面は、どちらも末尾に再実行用のコマンドを添えます。/web-setupが使えるセッションなら「/web-setupでGitHub CLIのログインを流用する」案内が入り、使えないセッションでは前者がclaude.aiの接続ページ、後者がClaude GitHub Appの導入ページだけを名指しします。

なぜクローンの前に止まるのか

PRを対象にしたレビューでは、手元の作業ツリーはアップロードされません。クラウドのサンドボックスが、Claudeアカウントに接続されたGitHubアカウントの権限でgithub.comからPRをcloneします。つまりそのアカウントに読み取り権限がなければ、起動してから失敗するだけです。

Claude Codeは起動の前にサーバーへ「このアカウントでこのリポジトリに届くか」を問い合わせ、届かなければその場で拒否します。この事前確認が入ったのはv2.1.248からです。それより前の版は確認せずに起動する作りでした。

拒否されたとき、無料枠は減りません。無料枠はクラウドセッションが始まった時点で数えられる仕組みで、途中で止めた実行や失敗した実行は消費済みとして扱われます。起動前の拒否はこの手前で起きるので、起動前に拒否された分は、何度止まっても枠を減らしません。

「No GitHub account is connected」の直し方

最短は、手元のghのログインをClaudeアカウントに流用する方法です。先にghが認証済みか確かめます。

gh auth status

未ログインならgh auth loginで認証してから、Claude Codeを起動して次を実行します。/web-setupはシェルではなくClaude Codeのプロンプトで打つコマンドです。

/web-setup

/web-setupはgh auth tokenが出力するトークンを読み取り、確認を挟んだうえでAnthropicへ送ります。成功するとConnected as <GitHubのユーザー名>と表示されます。トークンは暗号化されてClaudeアカウントに保存され、クラウドセッションのGitHub操作に使われます。接続後、メッセージにある「接続後1分ほど置く」案内に従って待ってからレビューを再実行してください。

ghを使っていない場合は、claude.aiのGitHub接続ページ(claude.ai/connect-github)でブラウザーから接続しても同じ状態になります。

/web-setupがそもそも出てこないとき

コマンド候補に/web-setupがない、またはUnknown commandになる場合は、次のどれかです。

  • APIキーやサードパーティープロバイダーで認証している。/loginでclaude.aiのアカウントにサインインし直す
  • Team・EnterpriseプランでQuick setupがオフ。Ownerがオンにするまでコマンドが隠れるため、ブラウザー側で接続する
  • 組織がクラウドセッションを無効にしている、またはZero Data RetentionやHIPAA構成を適用している。これらの組織では/web-setupも他のクラウド機能も使えない

「Not signed in to Claude. Run /login first.」と返ってきたときは、CLIのclaude.aiサインインが切れています。/loginのあとにやり直します。

「Your connected GitHub account can't see」の直し方

メッセージ自身が挙げる原因は、おおむね次の3つです。

  1. Claude GitHub Appが、リポジトリの持ち主(個人または組織)に導入されていない
  2. Appは導入済みだが、そのリポジトリがインストール時のアクセス範囲に含まれていない
  3. 別のGitHubアカウントが接続されている

1と2は、ブラウザーでGitHubを接続した場合に効きます。ブラウザー経由の接続では、公開リポジトリは読めてもプライベートリポジトリはAppを導入した場所に限られるためです。GitHubの組織では、導入にオーナーの承認が要ることもあります。Appの導入ページ(github.com/apps/claude/installations/new)から、対象のアカウントや組織を選び、必要なリポジトリをアクセス範囲に入れます。

3はghで切り分けられます。まず、手元のログインでそのリポジトリが読めるか確かめます。

gh repo view OWNER/REPO

これが通るなら、/web-setupでそのghのログインを接続し直すのが近道です。/web-setupで接続した場合、クラウドセッションはghトークンが届くリポジトリすべてに届き、Appの導入は要りません。逆にgh repo viewも失敗するなら、手元のアカウント自体にリポジトリの権限がありません。gh auth loginでアカウントを替えるか、リポジトリ側で権限を付けてもらう必要があります。

切り分けの順番

切り分け

PR番号付きのultrareviewが止まったとき

  1. Qメッセージに「can't see」が含まれていますか?
    答えが含まれない(none is connected)

    GitHubが未接続です。/web-setupを実行するか、claude.aiで接続します。

    答えがはい
  2. Q`gh repo view OWNER/REPO`は成功しますか?
    答えが失敗する

    手元のGitHubアカウントに読み取り権限がありません。アカウントを替えるか、リポジトリの権限を付けてもらいます。

    答えがはい
  3. Q今の接続は`/web-setup`(`gh`)経由ですか?
    答えがブラウザー経由

    プライベートリポジトリはAppが必要です。持ち主にClaude GitHub Appを導入し、対象リポジトリをアクセス範囲に含めます。

    答えがはい

接続の種類を替えたら再実行

/web-setupでghの接続に切り替えるか、Appの導入後に/code-review ultra 1234を再実行します。

接続を替えるときに起きること

すでにブラウザーでGitHubを接続している人が/web-setupを実行すると、続行すれば既存の接続がクラウドセッション用に置き換わる、という警告が出ます。

置き換えたあとも残る前提があります。Auto-fix(PRのCI失敗やレビューコメントへの自動対応)は、Claude GitHub Appが導入されたリポジトリが前提です。プロジェクトのスレッドも、どちらの接続方式でもAppの導入が必要です。ultrareviewを通すために/web-setupへ寄せても、これらの機能のためのApp導入は引き続き必要です。2方式の使い分けはClaude Code WebのGitHub認証で比較しています。

再実行しても止まるとき

接続を直したのに同じメッセージが出る場合は、次を順に疑います。

  • 接続直後の反映待ち。未接続のメッセージには、接続後に1分ほど置くよう書かれています
  • /web-setupの警告を無視して実行した結果、別アカウントのトークンに置き換わっていないか。gh auth statusで今のログインを確認する
  • ghトークンにworkflowスコープがない。/web-setupが警告を出し、続行は可能だが、GitHub Actionsのワークフローファイルを変えるpushなどがGitHubに拒否されることがある。gh auth refresh -s workflowで足せる
  • GitHubの組織側のポリシー。IPアドレス許可リストやシングルサインオンで拒否される場合は、別のエラーメッセージが出ます。シングルサインオンなら、claude.aiのコネクター画面でGitHubをいったん切断してつなぎ直し、組織の横のAuthorizeを押します

GitHub Enterprise Serverのリポジトリには、そもそもPR番号付きの形式が使えません。この場合は番号なしの/code-review ultraでローカルブランチをレビューします。番号を付けない形式は、PRをcloneするのではなく作業ツリーをバンドルしてアップロードする方式です。

PR番号付きで別の理由により止まることもあります。差分が大きすぎるときの拒否は、上限がファイル数と行数で決まる別のエラーなのでDiff is too large for ultrareviewの対処にまとめています。ultrareview自体の流れと料金はultrareviewの使い方から確認できます。

補足: 似たメッセージとの見分け方

クラウドセッションを起動するほかのコマンドにも、GitHub未接続を示す別文面のエラーがあります。

場面メッセージの書き出し直し方
/code-review ultra <PR#>メッセージの書き出しUltrareview clones ... none is connected直し方/web-setupか接続ページ
/code-review ultra <PR#>メッセージの書き出しYour connected GitHub account can't see ...直し方/web-setupかApp導入
/autofix-prなどの起動メッセージの書き出しGitHub isn't connected to your Claude account直し方/web-setupか接続ページ

3行目はv2.1.268より前だと、GitHub Appの確認が一時的に失敗したという文面で報告され、再試行やApp導入を案内していました。その案内に従ってもGitHubアカウントは接続されません。古い版で再試行しても直らないときは、先にClaude Codeを更新してください。

この記事を共有:XはてブLinkedIn