最近はAIを使ってコードを書くことが増えてきましたが、ただ「コードを書いて」と頼むだけでは迷走しやすいです。最近実践しているのは、仕様書→実装計画→小さな単位でのTDD→PR自動化という流れをAIに組み込むことです。これにより実装単位を小さくできて、より安全にAIにコードを書かせることができます。
1. 仕様書(spec.md)を書いてもらう
やりたいことをAIに口頭で説明しても、すぐに詳細実装を提案されることが多いです。
ですが最初に必要なのは「仕様の整理」。
プロンプト例
あなたはソフトウェアアーキテクトです。
私が説明する内容を基に、仕様書 spec.md を作成してください。
見出しごとに機能要件、非機能要件、前提条件をまとめてください。
生成されるイメージ
# spec.md
## 機能要件
- ユーザーはWebからタスクを追加できる
- タスクは完了状態を持つ
- 完了状態は切り替え可能
## 非機能要件
- Firebase Hostingを利用
- フロントエンドはReact
## 前提条件
- GitHubリポジトリが作成済み
仕様をドキュメント化することで、ブレずに開発を進められます。
2. 実装計画(plan.md)を作る
仕様に基づいて、AIに「実装計画」を立ててもらいます。
あとから必要な機能を追加したい場合も、このファイルに追記するだけで忘れません。
プロンプト例
spec.md に基づいて、実装計画 plan.md を作ってください。
作業を小さなステップに分割し、優先順位を明記してください。
生成されるイメージ
# plan.md
## Step 1: プロジェクト環境構築
- React + Vite で初期化
- Firebase Hosting設定
## Step 2: 基本機能
- タスク入力フォーム作成
- タスク一覧表示
## Step 3: 状態管理
- Zustandを導入
- 完了状態の切り替え実装
## Step 4: テスト
- Jest + React Testing Library でユニットテスト
3. 小さな単位でテスト駆動開発
AIには必ず「小さい単位でTDDしてください」と伝えるのがコツです。
いきなり大きなコードを書かせると、バグが多くなります。
プロンプト例
plan.md の Step 2 を対象に、小さな単位でテスト駆動開発をしてください。
まずテストコードを書き、その後実装を行ってください。
こうすると、__tests__/
ディレクトリにテストコードを出力した後に、本体コードを提案してくれることが多いです。
4. GitHub CLIでプルリクまで自動化
AIにコードを作らせたら、そのままコピーするのではなくブランチを切ってプルリクエスト(PR)を作ると安全です。
gh
コマンドを入れておくと便利です。
# 新しいブランチを作成
git checkout -b feature/add-task
# 変更をコミット
git add .
git commit -m "Add task input form"
# PR作成
gh pr create --fill
ここまでをAIに指示すると、PR作成までサポートしてくれるケースもあります。
5. 複数LLMにレビューしてもらう
ひとつのLLMだけに頼ると、思考の偏りが残ります。ChatGPT・Claude・Geminiなど種類の違うLLMに「コードレビューをお願いします」と依頼すると、別の観点から問題を指摘してくれるので効果的です。Cursorだとすぐに切り替えができるので、便利ですね。
6. ルールを明文化(rule.md)
最後に、やっていいこと・やってはいけないことを rule.md
としてまとめておくのもおすすめです。
例:
# rule.md
## Do
- 必ずplan.mdに沿って実装する
- 新しい機能を追加するときはplan.mdに追記する
## Don’t
- いきなりmainブランチにpushしない
- テストコードを省略しない
これがあるだけで、AIとのやり取りが「チーム開発」っぽくなり、開発体験が安定します。
まとめ
AIと協働する開発をスムーズに進めるには、
- 仕様書(spec.md)
- 実装計画(plan.md)
- 小さな単位でのTDD
- GitHub CLIでのPR運用
- 複数LLMによる監査
- ルールの明文化(rule.md)
この6つを意識することが大切です。
「ただAIにコードを書かせる」から一歩進んで、AIをチームメンバーとして活かす開発をぜひ試してみてください。