Codex コーディング Tips
Codex コーディング Tips
ChatGPT の Web UI の Codex からタスクを依頼する
- ChatGPT の Web UI の Codex からタスクを依頼する
- Codex が環境を作成して、タスクを処理
- Codex が PR を作成
- GitHub 上で PR が生成される
- ローカルでブランチを切り替える
- ローカルで実行
- 人間が操作感を確認
- PR にレビューを残す(Approve or コメント)
- Squash マージ(コミット履歴をキレイに)
4. GitHub 上で PR が生成される https://github.com/etak64n/decklet/pull/2
5. ローカルでブランチを切り替える
gh checkout <PR Number>
6. ローカルで実行
(๑>ᴗ<) < gh pr checkout 2 (git)-[main]
remote: Enumerating objects: 11, done.
remote: Counting objects: 100% (11/11), done.
remote: Compressing objects: 100% (5/5), done.
Unpacking objects: 100% (6/6), 569 bytes | 56.00 KiB/s, done.
remote: Total 6 (delta 4), reused 1 (delta 0), pack-reused 0 (from 0)
From github.com:etak64n/decklet
* [new branch] codex/align-home-screen-panels-symmetrically -> origin/codex/align-home-screen-panels-symmetrically
branch 'codex/align-home-screen-panels-symmetrically' set up to track 'origin/codex/align-home-screen-panels-symmetrically'.
Switched to a new branch 'codex/align-home-screen-panels-symmetrically'
(๑>ᴗ<) < npm run dev (git)-[codex/align-home-screen-panels-symmetrically]
...
⎔ Starting local server...
[wrangler:info] Ready on http://localhost:8787
8. PR にレビューを残す(Approve or コメント)
※ GitHub では自分で Approve できないので gh pr review --approve が実施できません
(๑>ᴗ<) < gh pr review 2 --comment -b "ローカルで動作確認済み"
- Reviewed pull request etak64n/decklet#2
9. Squash マージ(コミット履歴をキレイに)
(๑>ᴗ<) < gh pr merge 2 --squash --delete-branch
✓ Squashed and merged pull request etak64n/decklet#2 (Adjust home panel grid layout)
remote: Enumerating objects: 11, done.
remote: Counting objects: 100% (11/11), done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 6 (delta 4), reused 1 (delta 0), pack-reused 0 (from 0)
Unpacking objects: 100% (6/6), 1.20 KiB | 617.00 KiB/s, done.
From github.com:etak64n/decklet
* branch main -> FETCH_HEAD
eb5ae02..898319a main -> origin/main
Updating eb5ae02..898319a
Fast-forward
frontend/src/layout.css | 10 ++++++++++
frontend/src/vite-env.d.ts | 1 -
2 files changed, 10 insertions(+), 1 deletion(-)
✓ Deleted local branch codex/align-home-screen-panels-symmetrically and switched to branch main
✓ Deleted remote branch codex/align-home-screen-panels-symmetrically
issue から Codex に依頼する
- GitHub で issue を作成する
- ChatGPT の Web UI の Codex からタスクを依頼する
- Codex が環境を作成して、タスクを処理
- Codex が PR を作成
- GitHub 上で PR が生成される
- ローカルでブランチを切り替える
2. ChatGPT の Web UI の Codex からタスクを依頼する
https://github.com/etak64n/decklet/issues/3
この issue を解決してください。
※ Codex はプライベートリポジトリの issue を参照することができません。
-
Issue本文をそのまま貼る いちばん簡単。Issueの「タイトル/本文/受入基準/コードポインタ」だけをコピペして Codex に渡す。 機密を含む部分は伏せる or 要約して渡す。
-
GitHub APIでIssueを取得→Codexに渡す(推奨) あなたのマシン or CI で 認証つきでIssueを読み、本文だけをCodexに投入。 例(ローカル・ワンライナー) export GITHUB_TOKEN=<fine-grained-PAT(repo:read)> gh api repos/
/ /issues/ --jq '{title:.title, body:.body}' > /tmp/issue.json cat /tmp/issue.json # ← 中身を確認してからプロンプトに貼る Node.js で自動化するなら(PAT or GitHub Appで認証)Issue本文→OpenAIに投げる小スクリプトを作るのがベスト。 -
GitHub App / Action で“社内サイド”から呼ぶ PR/Issueに label: codex-ready が付いたら、GitHub Actions が gh api で本文を取ってきて、**自分のサーバ(または社内OpenAIプロキシ)**へ送る。 LLMには本文のみを渡し、URLやトークンは出さない。 これなら人為的なコピペが不要で再現性も◎。
NG: Codex のシークレットで GitHub の鍵を持たせる
ブランチを切ってから Codex に依頼する
こんなときに特に有効
- 既存大規模リポの 一部分だけ直すとき
- 実験的変更を隔離したいとき
- 並行タスクを複数回すとき(ブランチごとにCodex依頼)
手順
- Issue を作成する
- 人間がブランチを作成する
- Codex でローカルでブランチを指定して依頼
- PR にレビューを残す(Approve or コメント)
- Squash マージ(コミット履歴をキレイに)
2. 人間がブランチを作成する
git checkout -b 'feat/play-layout-#6'
git push -u origin 'feat/play-layout-#6'
4. PR にレビューを残す(Approve or コメント)
※ GitHub では自分で Approve できないので gh pr review --approve が実施できません
(๑>ᴗ<) < gh pr review 2 --comment -b "ローカルで動作確認済み"
- Reviewed pull request etak64n/decklet#2
5. Squash マージ(コミット履歴をキレイに)
(๑>ᴗ<) < gh pr merge 2 --squash --delete-branch
✓ Squashed and merged pull request etak64n/decklet#2 (Adjust home panel grid layout)
remote: Enumerating objects: 11, done.
remote: Counting objects: 100% (11/11), done.
remote: Compressing objects: 100% (5/5), done.
remote: Total 6 (delta 4), reused 1 (delta 0), pack-reused 0 (from 0)
Unpacking objects: 100% (6/6), 1.20 KiB | 617.00 KiB/s, done.
From github.com:etak64n/decklet
* branch main -> FETCH_HEAD
eb5ae02..898319a main -> origin/main
Updating eb5ae02..898319a
Fast-forward
frontend/src/layout.css | 10 ++++++++++
frontend/src/vite-env.d.ts | 1 -
2 files changed, 10 insertions(+), 1 deletion(-)
✓ Deleted local branch codex/align-home-screen-panels-symmetrically and switched to branch main
✓ Deleted remote branch codex/align-home-screen-panels-symmetrically
git checkout main git branch git branch -D 'feat/play-layout-#6'