In a nutshell
- OpenAI Codex利用中に突如GitHub連携エラーが発生した.
- Codex側の再設定では解決しなかった.
- GitHub側での連携解除→再連携により復旧した.
- 追加ケースとして,巨大ファイルを含むフォルダを一時的に移動することで解決した事例がある.
はじめに
OpenAIのCodexを活用して,150タスクほどのブランチベース開発を行っていたところ,突如「You don't have the ability to clone this repository.」というエラーに直面した.本記事はそのエラーの原因と,どのように復旧させたかを記録する備忘録である.
予想される読み手
- OpenAI Codexを利用してGitHubと連携している人である.
- Codexを使ったマルチファイル・マルチブランチ開発をしている人である.
- 突然Codexが使えなくなった人である.
- 「You don't have the ability to clone this repository.」というエラーに悩んでいる人である.
直面した問題
OpenAIのCodexを利用しており,GitHubと連携しながら150件程度の開発タスクをこなしていた.非常に快適に使えていたが,ある時から以下のようなエラーが頻発するようになった.
You don't have the ability to clone this repository.
このエラーは再現性があり,Codexで新規タスクを作成しても,既存のブランチで操作しても,すべて同様のエラーが出て何もできなくなった.
うまくいった方法
いろいろ試したが効果がなかった.具体的には以下を試した.
- GitHub連携を一度解除して再接続(Codex側)
- 新しいCodexプロジェクトの作成
- 新規ブランチでの再試行
どれも効果なし.
最終的に,GitHub側の設定画面にてChatGPT(Codex)の連携アプリを一度削除し,再度連携し直すことでエラーが解消した.
具体的には,以下の手順で対応した.
- GitHubの「Settings」→「Applications」→「Authorized OAuth Apps」に移動すること.
- ChatGPTまたはOpenAI関連のアプリケーションを探すこと.
- 対象アプリを「Revoke access」すること.
- Codexから再度GitHubに接続し直すこと.
これで「You don't have the ability to clone this repository.」というエラーは出なくなり,通常どおりCodexを利用できるようになった.
追記(再度問題が発生したケース)
前述の方法で復旧したが,その後再び同様のエラーが発生した.
追加調査の結果,巨大なファイルを含むフォルダが原因でclone処理が失敗していたことが判明した.
具体的には以下のようなフォルダである.
- 内部に数kB程度の小さなファイルが大量に存在すること.
- 最大でも30MB程度のファイルを含むこと.
このフォルダを一時的に該当ブランチから移動させたところ,cloneエラーは発生しなくなった.
参考: Unable to clone repository for several days - OpenAI Community
予想される原因
Codex側のエラーではなく,GitHub側のOAuth認証の状態が不整合になっていた可能性が高い.また,リポジトリ内のファイルサイズやファイル数が過大であったことも要因である.
想定されるケースは以下である.
- Codexの利用が長期に渡り,トークンの期限切れや認可の不整合が生じたこと.
- GitHub側でアプリケーション権限が内部的に切れていたが,Codex側では検知できなかったこと.
- 数kBのファイルが大量に存在するフォルダや数十MB規模のファイルを含むフォルダがネックとなり,cloneエラーを引き起こしたこと.
このような場合,Codexからの再接続だけでは解消できず,GitHub側での再認証やリポジトリの軽量化が必要となる.
Summary
- Codexで「You don't have the ability to clone this repository.」エラーが発生したこと.
- Codex側の再接続や新規プロジェクト作成では解決しなかったこと.
- GitHub側の設定からOAuth連携を解除し,再連携することで復旧できたこと.
- 認証状態の不整合が原因である可能性が高いこと.
- 巨大ファイルを含むフォルダが原因となるケースもあり,一時的にそのフォルダを移動させることでcloneエラーが解消すること.