Grok BotからGitHubのリポジトリを読み込ませれば、プロジェクトのコードやMarkdownファイルを参考にして、分析・記事作成・改善提案などをさせることができます。

公開リポジトリであれば比較的簡単ですが、少しハマったのがGitHubのプライベートリポジトリです。
僕の場合、GitHubアカウント自体には接続できているのに、特定のprivateリポジトリだけ何度アクセスしても「404」になりました。
原因を調べてみると、
CursorにGitHubリポジトリへのアクセスを許可すること
と
Grok BotからGitHubリポジトリへアクセスすること
は別の認証だったことが分かりました。
今回は、Grok BotからGitHubのprivateリポジトリを読み込めるようにするまでの手順を紹介します。
GitHubには接続できているのにprivateリポジトリが404になる
最初の状態はこのようなものでした。
Grok BotからGitHubアカウントにはアクセスできており、公開リポジトリは確認できます。
しかし、
hoda1234/review-waction
というprivateリポジトリを読み込ませようとすると404になります。
そこで最初に確認したのがGitHubの Installed GitHub Appsです。
GitHubの以下のページを開きます。
Settings
→ Applications
→ Installed GitHub Apps

私の場合はCursorをインストールしており、
Repository access
Only select repositories
hoda1234/review-waction
という設定になっていました。
一見すると問題なさそうです。
しかし、ここが今回のハマりポイントでした。
CursorのGitHub AppとGrok BotのGitHub認証は別物
GitHubのInstalled GitHub Appsで設定しているCursorは、その名前の通りCursorからGitHubへアクセスするための権限です。
つまり、
GitHub
↓
Cursor GitHub App
↓
Cursor
という接続です。
一方、Grok BotがGitHub MCPやGitHubコネクタを経由してリポジトリを読む場合は、別の認証情報が使われます。
イメージとしては、
GitHub
↓
Personal Access Token
↓
GitHub MCP / Connector
↓
Grok Bot
という形です。
そのためCursor側で、
Only select repositories
→ review-waction
を設定していても、その権限がそのままGrok Botに引き継がれるわけではありません。
公開リポジトリは読めるのにprivateリポジトリだけ404になる場合は、この認証の違いを確認してみるとよいでしょう。
Personal Access Tokenを作成する
privateリポジトリへアクセスさせるために、GitHubの**Personal Access Token(PAT)**を作成します。
現在は、できれば Fine-grained personal access token を使うのがおすすめです。
Fine-grained tokenなら、
「GitHubアカウント全体」
ではなく、
「このリポジトリだけ」
というようにアクセス範囲を限定できます。
GitHubにログインして、以下へ進みます。
Settings
→ Developer settings
→ Personal access tokens https://github.com/settings/personal-access-tokens
→ Fine-grained tokens

その後、
Generate new token
を選択します。
Token nameを設定する
Token nameは自分で分かれば何でも構いません。
例えば、
Grok Bot review-waction
のようにしておくと、後から何に使っているトークンなのか分かりやすくなります。
Expirationを設定する
Personal Access Tokenには有効期限を設定できます。
例えば、
90 days
などにしておけば、万が一トークンを削除し忘れても永久に利用され続けることを防げます。
長期間利用する場合でも、定期的にトークンを更新する運用のほうが安全です。
Resource ownerを選択する
Resource ownerには、アクセスしたいリポジトリを所有しているGitHubアカウントを指定します。
私の場合は、
hoda1234
です。
Repository accessを限定する
ここが重要です。
Repository accessでは、
Only select repositories
を選択します。
そして、Grok Botから利用したいリポジトリだけを追加します。
例えば、
review-waction
です。
これなら、トークンが何らかの理由で流出した場合でも、GitHub内のすべてのprivateリポジトリへアクセスされるリスクを減らせます。
Permissionsを設定する
次にRepository permissionsを設定します。
単純にGrok Botからファイルを読み込ませるだけなら、基本的にはContentsの読み取り権限があれば十分です。
例えば、
Contents
→ Read-only
です。
一方、将来的にGrok Botやエージェントから、
- ファイルを変更する
- コードを書き込む
- Pull Requestを作成する
といった操作までさせたい場合は、必要に応じて権限を追加します。
例えば、
Contents
→ Read and write
や、
Pull requests
→ Read and write
などです。
最初から必要以上に強い権限を与えるのではなく、必要になった権限だけ後から追加するのがおすすめです。
Metadataについては通常、必要なRead権限が自動的に付与されます。
Tokenを発行する
設定が終わったら、
Generate token
をクリックします。
すると、
github_pat_xxxxxxxxxxxxxxxxx
のようなPersonal Access Tokenが表示されます。
このトークンは非常に重要です。
ブログ、チャット、GitHub Issueなどには絶対に貼らないようにしてください。
GitHub MCPやコネクタなどが用意しているSecret・Token入力欄から登録します。
パスワードと同じ扱いだと考えておくとよいでしょう。
これを Grok Bot に登録する
最後に、 これをGrok Bot に登録します。
プラグイン
→ Github
→ セットアップ値
→ ここに追加


「Homepage URL」が表示された場合
Personal Access Tokenを作ろうとしている途中で、
Homepage URL
という入力欄が表示された場合は、ページを間違えている可能性があります。
Homepage URLはGitHub AppやOAuth Appを作成するときに使われる項目です。
Personal Access Tokenの作成画面ではありません。
その場合は、
Settings
→ Developer settings
→ Personal access tokens
→ Fine-grained tokens
へ戻りましょう。
GitHubには、
- GitHub Apps
- OAuth Apps
- Personal access tokens
- Fine-grained tokens
など似たような認証設定が複数あるので、最初は少し分かりにくいです。
Tokenを登録したのに404になる場合
Personal Access Tokenを発行しても、privateリポジトリが404になることがあります。
その場合はいくつか確認ポイントがあります。
まず、リポジトリ名が正しいか確認します。
例えば、
hoda1234/review-waction
のように、
ユーザー名 / リポジトリ名
を正確に指定します。
次に、Fine-grained tokenの、
Repository access
に対象リポジトリが含まれているか確認します。
また、
Contents
のRead権限が付与されているかも確認します。
それでも公開リポジトリしか表示されない場合は、古いGitHub認証情報がMCPやコネクタ側に残っている可能性もあります。
この場合は、GitHubコネクタ側の認証を更新・再接続してから改めて確認します。
Cursor Cloud Agentの認証とも別
さらにややこしいのですが、Cursor Cloud Agentを利用する場合も、また別の認証状態になることがあります。
そのため、
CursorからGitHubが見える
からといって、
Cursor Cloud Agentからも見える
あるいは、
Grok Botからも見える
とは限りません。
AIエージェントをGitHubと連携するときは、
「どのサービスが、どの認証情報を使ってGitHubにアクセスしているのか」
を分けて考えるのがポイントです。
まとめ
Grok BotからGitHubのprivateリポジトリへアクセスできない場合、GitHub AppのRepository accessだけを確認しているとハマることがあります。
今回特に重要だったのは、
Cursor GitHub App
≠
Grok Botが利用するGitHub認証
という点でした。
privateリポジトリをGrok Botから読み込ませる場合は、Personal Access Tokenを利用し、Fine-grained tokenで必要なリポジトリだけを許可しておくと安全です。
読み込みだけなら、
Repository access
→ Only select repositories
Contents
→ Read-only
くらいの最小限の権限から始めるのがおすすめです。
GitHub、Cursor、MCP、AIエージェントを組み合わせ始めると、それぞれが別々の認証を持っていることがあります。
「GitHubには接続できているのにprivateだけ404になる」という場合は、まず今動かしているAIが実際にどのGitHub認証を使っているのかを確認してみてください。






