Work log / GitHub / gh CLI / PR merge

CodexがGitHub PR作成からmergeまで自動運用できるようになった

codexguide-codeで、Codexがgh CLIを使い、branch作成、commit、push、PR作成、PR diff確認、merge、branch削除、main同期確認まで進められることを確認した実践ログです。

このページはGitHubやOpenAIの公式情報ではありません。GitHub操作を無条件に自動化してよい、という意味でもありません。main直push禁止、PR確認、高リスク変更の停止、本番deploy分離を前提に、実務ログとして整理します。

この実践ログで分かること

  • CodexがGitHub PR作成・mergeまで自動で行えるようになった流れ
  • gh CLI認証がなぜ必要だったか
  • 人間がブラウザでPR作成・mergeしていた段階から何が変わったか
  • main直push禁止のまま、自動PR運用へ移る方法
  • 安全なdocs小変更でテストした理由
  • Codexが自動化してよい範囲と、人間確認が必要な範囲
  • 今後のCodex並列作業やGitHub運用へのつながり

ブラウザでPR作成・mergeする運用を卒業したかった

codexguide-code は private repo として初回push済みで、README、GitHub運用ドキュメント、PRテンプレートもPR #1で導入済みでした。

ただしPR #1では、gh CLIが未ログインだったため、人間がブラウザでPR作成・mergeを行いました。今後の運用では、人間が毎回ブラウザでPR作成・mergeするのではなく、Codexがgh CLIで完結できる形に寄せたい。そこで、docs小変更だけで安全に自動PR/mergeテストを行いました。

実情報として、repo名は chinanago38/codexguide-code、PRは #2、branchは codex/test-gh-pr-merge-20260605、変更ファイルは docs/github-operation.md、commitは c409a2c、最新main commitは 2b99fc0efac8a723b34381d82386f8c2f5b66db5 です。認証情報、token、2FAコード、recovery codeは掲載しません。

Codexがbranchからmain同期確認まで自動で進めた

段階Codexが行ったこと確認したこと安全上の意味
1. gh CLI認証確認gh auth status 相当の確認GitHub操作できる状態認証情報を本文に出さず操作できる
2. repo view確認対象repoを確認chinanago38/codexguide-code誤repo操作を避ける
3. open PRなし確認未処理PRを確認競合しにくい状態並行作業の衝突を減らす
4. main同期確認mainの状態を確認最新mainから作業古いbranchで作業しない
5. 作業branch作成codex/test-gh-pr-merge-20260605 を作成main直pushしていないPR運用の基本を守る
6. docs小変更docs/github-operation.md を軽く変更HTMLや本番に影響しないGitHub運用だけをテストできる
7. commit変更をcommitc409a2c変更単位を追跡できる
8. branch push作業branchをpushremoteに反映PR作成の準備ができる
9. gh pr createPR #2を作成PR本文と対象branchブラウザ操作を減らせる
10. PR diff確認PR差分を確認docs小変更だけmerge前に内容を確認する
11. gh pr mergePRをmergemerge完了安全な変更はCodexで閉じられる
12. branch削除merged branchを削除不要branchが残らないrepoを整理できる
13. main同期確認mainを同期2b99fc0efac8a723b34381d82386f8c2f5b66db5ローカルと正本のズレを減らす
14. working tree clean確認作業ツリー確認未反映変更なし次の作業へ安全に移れる

最初の自動mergeテストは、docsだけに限定した

いきなりHTML本文、sitemap、news、work-logを触ると影響範囲が広くなります。GitHub自動運用そのものを確認する目的なら、docs小変更で十分です。

docsなら本番表示やSEOタグに影響しにくく、PR作成、diff確認、merge、main同期の動作確認に集中できます。安全な小変更で自動運用を先に確認するのが、次の大きな作業へ進むための土台になります。

人間がやっていたことからCodexができることへ

運用PR作成PR確認mergebranch削除main同期確認人間の役割
以前人間がブラウザで作成人間が確認人間がmerge人間が整理人間が確認操作も判断も人間側に多い
今回成功した運用Codexがgh CLIで作成Codexがdiff確認CodexがmergeCodexが削除Codexが確認安全な小変更のGOを出す
今後の運用Codexが通常作成Codexが差分要約安全な変更はCodexがmergeCodexが整理Codexが確認GO/STOP判断や高リスク確認に集中

gh CLIでCodexができるようになったこと

  • PR作成
  • PR一覧確認
  • PR diff確認
  • PR merge
  • repo状態確認
  • branch削除
  • main同期確認
  • open PR確認

ただし、初回認証は人間が行います。認証情報やtokenは表示しません。権限がないrepoは扱えません。本番deployとは別管理です。

自動mergeできても、人間確認が不要になるわけではない

次のような場面では、Codexが作業を止める、または人間が確認する前提にします。

  • HTML本文を大きく変える
  • sitemap、news、work-logを更新する
  • canonicalやrobots/noindexが絡む
  • AdSenseコードやSearch Consoleタグが絡む
  • DB、cron、DNS、.htaccess が絡む
  • Secrets、APIキー、.env、認証情報が出る
  • 本番deployする
  • 削除や大量変更がある
  • 公式誤認やSEO保証表現が心配な場合

今後のcodexguide-code運用ルール

  • main直push禁止
  • 作業ごとにbranchを切る
  • CodexがPR作成する
  • Codexがdiff確認する
  • 安全な変更はCodexがmergeできる
  • 高リスク変更は停止して人間確認
  • merge後はmain同期確認
  • deployは別管理
  • GitHub Actions deployは現時点では使わない
  • Secretsはrepoに入れない

今回触っていないもの

今回のPR/merge自動運用テストでは、HTML本文、sitemap.xml、news/index.html、work-log/index.html、robots.txt、ads.txt、AdSenseコード、Search Console確認タグ、本番サーバー、FTP/SFTP、deploy設定、GitHub Actions、Secrets、.env、DB、SQL、logには触っていません。

チェックリスト

  • □ gh auth status が成功した
  • □ repo view が成功した
  • □ main が最新だった
  • □ 作業branchを作った
  • □ main直pushしていない
  • □ 変更ファイルはdocsだけだった
  • □ Secrets混入なし
  • □ PRをghで作成した
  • □ PR diffを確認した
  • □ merge前に変更ファイルを確認した
  • □ merge後にbranchを削除した
  • □ main同期確認した
  • □ working tree clean を確認した
  • □ 本番に触っていない