最近、個人開発のやり方が一段階レベルアップしたと感じています。
それは「AIにコードを書かせる」ではなく、
AIそれぞれに役割を与え、人間が判断する開発フロー
が形になってきたからです。
この記事では、私が制作している 5×5詰将棋 を題材に、
ChatGPT / Codex / Claude Code / 人間 の役割分担と、
実際にうまく回っている作業の流れをまとめます。
なぜ「役割分担」が重要なのか?
AIを使った開発で、最初にハマりがちなのがこの状態です。
- 設計も実装もレビューも 全部ひとつのAIに任せる
- 結果として
- 設計がブレる
- 意図しない実装になる
- 修正ループが増える
これを避けるために、人間の開発チームと同じ発想で
AIにも役割を持たせることにしました。
全体像:今の役割分担
まず、全体像はこんな感じです。
- ChatGPT:相談役・設計整理・プロンプト生成
- Codex:実装担当(コードを書く)
- Claude Code:レビュー担当(設計・実装チェック)
- 人間(私):判断・決定・最終責任者
ポイントは、
👉 AI同士を直接会話させない
👉 必ず人間が間に立つ
ことです。
CLAUDE.md と AGENTS.md の役割
CLAUDE.md:プロジェクトの「前提条件」
CLAUDE.md には、プロジェクト全体の前提を書きます。
例:
- アプリの目的
- 基本ルール(5×5盤、成りルールなど)
- コーディング規約
- ディレクトリ構成
Claude Code は、このファイルを自然に参照してレビューします。
👉 「毎回説明しなくていい」状態を作るのが目的です。
AGENTS.md:AIたちの「役割定義書」
AGENTS.md には、
- Codexは何をするか
- Claude Codeは何をするか
- ChatGPTは何をしないか
といった AI向けの役割分担ルールを書きます。
これは、人間のチームでいう
「この人は実装担当」「この人はレビュー担当」
を明文化したものです。
docs/spec.md に設計をまとめる
設計は 必ず docs/spec.md に集約します。
ここに書くのは:
- ルール(例:成りゾーンは上3段のみ)
- 用語の定義
- 例外ケース
- 実装時の判断基準
重要なのは、
コードより先に spec.md が正になる
というルールを徹底すること。
Codexに実装を依頼するときも、
Claude Codeにレビューを頼むときも、
**「spec.md を前提にしてください」**で済むようになります。
docs/TODO.md にタスクを洗い出す
次にやることは、すべて docs/TODO.md に書き出します。
コツは:
- 粒度を小さくする
- 判断が必要なタスクと、作業タスクを分ける
- 「何をしないか」も書く
これにより、
- ChatGPT → 実装プロンプト化
- Codex → TODO単位で実装
- Claude Code → TODO観点でレビュー
がスムーズに回ります。
ChatGPT:相談役とプロンプト生成
ChatGPTの役割は 「書かせる」ではなく「考えを整理する」 こと。
具体的には:
- 設計の壁打ち
- A案 / B案の整理
- Codex向けの 実装プロンプト作成
- Claude Code向けの レビュー観点整理
ChatGPTは
👉 人間の思考を言語化する補助輪
という位置づけがしっくり来ています。
Codex:実装担当
Codexには、実装だけをお願いします。
- 対象ブランチを指定
- 変更ファイルを明確に
- 「spec.md を参照すること」を明記
- 勝手な設計変更は禁止
人間でいうと、
「仕様が固まったあとにコードを書く職人」
というイメージです。
Claude Code:レビュー担当
Claude Codeは、第三者レビューに最適です。
見てもらうポイントは:
- spec.md と実装の乖離
- 境界条件の抜け
- 将来破綻しそうな設計
- 命名・責務の違和感
自分では見落としがちな点を、
かなり冷静に指摘してくれます。
人間(私):判断と決定
ここが一番大事です。
- どの指摘を採用するか
- 設計を変えるか、実装を直すか
- そもそも仕様を見直すか
最終決定は必ず人間が行う。
AIは優秀ですが、
「このアプリをどうしたいか」は人間にしか決められません。
プルリクエストの進め方のコツ
うまく回るようになったコツをまとめます。
- 1 PR = 1 意図
- レビュー前に spec.md / TODO.md を最新化
- 指摘対応は「同一ブランチで修正」が基本
- PRコメントに「判断理由」を残す
これだけで、
AI相手でも履歴が“資産”になります。
まとめ
AI時代の個人開発は、
速さより、役割と判断
だと感じています。
AIを「便利な道具」ではなく、
チームメンバーとして扱うことで、
開発体験そのものが変わりました。
このフローは、
Unityでも、Webでも、個人開発でも応用できます。

コメント