序章:Vibe Codingとは何か──なぜ「設計対話」が武器になる時代なのか

「AIでコードレビュー?Copilotで十分便利。でも、それ“設計”の本質を残してますか?」

開発現場は今、人が“書く”から“指示する”時代へ本格的に突入しています。

従来のAIコード生成は「便利な補助」レベルにとどまりましたが、
2024〜2025年にVibe Codingが急速に広まり、「設計→実装→レビュー→テスト」を“設計対話”の流れでAIと進める現場が増えています。


このガイドの狙い

  • 設計・レビュー・現場育成・組織導入まで、Vibe Codingを「本気で使いこなしたい人」に向けて解説
  • 他サイトを超える、「設計意図の深堀り」「演習主軸」「レビューアー育成の現実解」を網羅
  • 単なる概念紹介で終わらせず、あなたの“現場を変える”ためのリアルな実践知を徹底共有

目次

  1. Vibe Codingが生まれた背景──開発現場の“限界”とAIの進化
  2. Vibe Codingの思想とアーキテクチャ──AI時代の設計者スキルとは
  3. 実践フローで掴む:Vibe Coding×現場ユースケース大全
  4. AIレビュー時代の“読む力”──レビューアー育成・Why/What訓練法
  5. プロンプト設計術:仕様・設計・非機能要件をAIに伝える技法
  6. 組織導入・育成ロードマップ──成功・失敗を分けるリアル現場論
  7. ケーススタディ&反面教師──「Vibe Coding」失敗から学ぶ
  8. 終章:AIと共進化するレビューアー像とは
  9. 付録:プロンプト&レビュー演習パック(30問・50例)

第1章:Vibe Codingが生まれた背景──開発現場の“限界”とAIの進化

1.1 開発生産性の天井──人力の限界と品質低下リスク

多くの現場で「実装スピードの限界」「設計品質の維持困難」が表面化してきました。
とくに以下の課題が顕著です。

  • コード量・PullRequest数が急増し、レビューリソースが枯渇
  • 機能追加サイクル短縮による設計意図の“薄まり”
  • 組織の拡大とともに属人化・暗黙知伝承の断絶

1.2 Copilot Workspace・Claude 3・Cursor──AIの本格参入

2024年以降、AIは「補助」から「メインストリーム」へと進化しました。

  • Copilot Workspace:PR単位で要約・自動修正・レビュー・ドキュメント生成まで一括自動化
  • Claude 3、Cursor:大規模コード解析+設計補助+設計対話の強化
  • AIレビュー+設計案自動生成:実装だけでなく設計案・テスト・設計理由までAIがカバー

1.3 プロンプトエンジニアリングから設計対話エンジニアリングへ

Vibe Codingの思想

Vibe Codingとは「プロンプト(自然言語)」を通じて設計意図をAIに伝え、
AIと設計対話しながら設計・実装・レビュー・テストを一気通貫で自動化する“設計協働技術”です。


1.4 なぜVibe Codingは現場で求められるのか?

  • 「コードを書く」負荷ではなく、「設計を伝える」「意図をレビューする」負荷へシフト
  • AIが網羅的に抜け漏れ指摘→人間は“なぜそう設計するのか”を読み解き・説明する役割へ
  • 現場のボトルネックが「設計意図の伝達・レビュー」に完全移行

第2章:Vibe Codingの思想とアーキテクチャ──AI時代の設計者スキルとは

2.1 Vibe Codingの基本モデル

Vibe Codingは、下記のようなプロセスで進行します。

  1. 要件・仕様の自然言語化(プロンプト)
  2. AIによる設計案・実装案の生成
  3. 設計意図・依存関係・責務分離のAI対話的設計
  4. リファクタ・命名改善・テスト生成もAIに依頼
  5. AIレビュー+人間レビューで「Why」補足+修正方針合意
  6. 設計意図・プロンプトをドキュメント化して組織知化

2.2 どこまでAIが担い、どこから人が補完すべきか

項目 AIが得意 人が不可欠
コード生成 △(微修正のみ)
テスト生成 ○(観点補足)
構文・静的解析
設計意図・ドメイン知識
責務分離・副作用抑止
命名・API整合性
設計意図・理由の説明

2.3 「設計対話」を可視化する例

UML Diagram

2.4 Vibe Codingが変えるエンジニアの役割

  • 実装担当から「設計意図・レビュー・対話の専門家」へ
  • Why/Whatを言語化・体系化できる設計者の価値が飛躍的に上がる
  • AIレビュー結果を鵜呑みにせず、文脈・業務背景を補足できる人材がコアに

第3章:実践フローで掴む──Vibe Coding×現場ユースケース大全

3.1 小規模APIサービスを丸ごとVibe Codingで実装

【エピソード】

ある新規サービス立ち上げで「API+ストレージ+テスト」まで最速で組みたい──
従来はAPI設計・ドメインモデリング・DB設計・テスト・レビューまで複数人で2週間。
Vibe Codingなら「プロンプト設計 → AI対話 → コード+設計+テスト+ドキュメント」まで1人+AIで2日。


【演習例:Goによる会員管理API】

1. 要件・仕様プロンプト(例)

プロンプト
会員登録・取得・削除APIをGoで。ストレージはメモリ常駐、テスト可能、入力バリデーションとエラー設計も。REST/JSON形式で。

2. 設計案プロンプト

プロンプト
会員ID・名前・メール・作成日。設計意図・API設計・リポジトリ責務分離・テストコードも自動生成して。

3. AI出力コード例

go
type Member struct {
    ID   string
    Name string
    Email string
    CreatedAt time.Time
}

type MemberRepository interface {
    Create(*Member) error
    GetByID(id string) (*Member, error)
    Delete(id string) error
}

// 以下にAPIハンドラ、インメモリ実装、テストが続く...

4. 人間レビューコメント例

go
type MemberRepository interface {
    Create(*Member) error
    GetByID(id string) (*Member, error)
    Delete(id string) error
}
@Reviewer
インタフェース設計は良いですが、テスト時にエラー注入できる仕組み(例:エラー返却用のMock実装)も準備しましょう。保守性・障害テスト容易性の観点から重要です。

AI出力に「テスト容易性」「障害テスト対応」「責務分離」など、Whyコメントを追記する訓練がVibe Coding現場で必須になっています。


3.2 ドメインモデル構築型:業務ルールをAI設計対話に落とし込む

【エピソード】

既存SIer現場で「請求ドメインの集約ルート設計」「トランザクション管理」「例外伝播」が属人化。
Vibe Coding導入後は、「ドメイン用語・業務要件・例外仕様」までプロンプトでAIに指示→設計意図をレビューで体系化。


【演習例:TypeScriptによる決済ドメイン設計】

1. 要件プロンプト

プロンプト
クレジットカード決済ドメイン。決済処理はTransactionService。外部APIは抽象化。エラー・例外・テスト戦略も指示。DDD原則・責務分離を守って。

2. AI設計案・コード例(抜粋)

typescript
class TransactionService {
    process(request: PaymentRequest): PaymentResult {
        // 入力チェック
        // 外部API呼び出し
        // エラー時ロールバック
    }
}

interface PaymentGateway {
    pay(req: PaymentRequest): PaymentResponse;
}

3. 人間レビューコメント例

typescript
class TransactionService {
    process(request: PaymentRequest): PaymentResult {
        // 省略
    }
}
@Reviewer
TransactionServiceの責務が肥大化しています。外部APIのエラー・リトライ・ロールバック等は、専用のアダプタ層に委譲し、ドメイン層の関心事を明確に切り分けましょう。

AI提案を「なぜこの責務分離か?」「どこがドメイン固有か?」で必ず反証・分解するクセを付けることが現場で必須です。


3.3 レガシーリファクタ型:現行コード改修のAIプロンプト術

【エピソード】

10年以上手付かずのレガシーコードを「テスト容易な設計+リファクタ+API整理」で蘇らせる。
Vibe Codingでは「リファクタ観点」「依存注入」「モジュール分割」までAIが案を出し、人間が設計意図の裏付け・現場適用判断を担う。


【演習例:Goによるレガシーサービスリファクタ】

1. リファクタ用プロンプト

プロンプト
既存UserServiceのグローバル変数依存・副作用・密結合を排除。DI設計+モック可能化+テスト戦略もAIで出して。

2. AI出力設計案(抜粋)

go
type UserService struct {
    repo UserRepository
    logger Logger
}
func (s *UserService) RegisterUser(name string, email string) error {
    // 省略
}

3. 人間レビューコメント例

go
func (s *UserService) RegisterUser(name string, email string) error {
    // 省略
}
@Reviewer
RegisterUser内でバリデーション・エラーハンドリング・ログ出力まで一手に処理しているため、今後の保守負荷増が懸念されます。責務を小分けに分離し、メソッドごとのテスト容易性を向上させましょう。

3.4 AIレビュー代行型:Copilot Workspace現場演習

【エピソード】

PRレビューをAI(Copilot Workspace)が自動生成→人がWhyをレビューコメントで補足し、“設計意図+AIレビュー”のハイブリッド体制に。


【演習例:PullRequestレビューの自動化】

1. プロンプト例

プロンプト
このPRの修正意図・設計意図を要約。設計・依存関係・テスト観点の抜け漏れもAIでチェック。

2. AI自動レビュー例(抜粋)

  • 依存パッケージのバージョン更新が正しいか
  • テストケース網羅に不足がないか
  • パフォーマンスへの影響はないか

3. 人間が補足すべきレビューコメント例

go
// PR内でDI設計が抜けている箇所に対して
@Reviewer
今回の変更により依存関係の逆転が弱くなっています。インタフェース経由の注入設計を継続適用し、テスト容易性と拡張性のバランスを保ちましょう。

第4章:AIレビュー時代の“読む力”──レビューアー育成・Why/What訓練法

4.1 AIレビューの普及がもたらす“読解力の空洞化”

AIレビュー(Copilot Workspace/Claude/ChatGPT等)は、

  • 「修正案」を即座に提示
  • コーディング規約や一般的バグを瞬時に指摘
  • パターン化された観点を網羅

しかし、現場で次の課題が深刻化している。

  • 「なぜこの設計?」に答えられる人材が減った
  • レビューコメントが表面的な形式指摘のみになりやすい
  • プロジェクト固有の背景・仕様・歴史をAIが補完できない

4.2 Why/Whatコメント訓練:設計意図を伝えるレビューアー技術

◇ Why/Whatコメントの基本構造

  • Why(理由)→ What(具体的な行動) を必ずセットで書く
  • 「なぜ修正が必要か」「なぜこの設計なのか」を説明できることが“レビューアーの本質”

良い例

go
func Process(input string) error {
    var err error
@Reviewer
この変数はifブロック内でのみ使用されています。変数のスコープを必要最小限に抑えることで、将来的な副作用や保守コストを削減できます。ifブロック内で宣言しましょう。
if input == "" { err = errors.New("empty input") return err } return nil }

悪い例

Comment
// コメントが「短くしましょう」「ifの中に寄せましょう」だけではWhyがない

◇ Why/Whatコメント訓練プロンプト例

プロンプト
次のコードをレビューしてください。なぜその指摘をするか理由(Why)+どう直すか(What)を必ずセットで明記。

◇ 代表的なレビュー観点(Why/Whatテンプレ)

観点 Why(理由) What(行動)
スコープ管理 変数の生存期間が長いと誤用や副作用を生む 変数宣言を使用箇所に近づける
責務分離 1つの関数・構造体が複数責務を持つと保守困難 責務ごとに関数・型・層を分割
命名 意図不明・曖昧な命名はバグ温床 ドメイン・役割を反映した命名に修正
テスト容易性 テスト困難な設計は将来的なバグ混入リスク DI、インタフェース、モック設計を導入
副作用 関数外部への状態変更は読解・バグ発生源 副作用箇所を明示or排除

4.3 レビューアー育成・現場OJT演習法

◇ AIレビュー+人コメントのペアレビュー訓練

  1. AIレビュー結果を受け取り、Why/Whatコメントで補足説明を必ず追加
  2. ドメイン知識・業務仕様・設計方針が反映されているかを再確認
  3. コード内に“設計理由”まで言語化してコメントを残す

コード演習例

go
type Cart struct {
    Items []CartItem
    UserID string
}
func (c *Cart) AddItem(item CartItem) {
    c.Items = append(c.Items, item)
}
@Reviewer
AddItemでバリデーションや重複チェックが未実装のため、同一商品が何度も追加されるリスクがあります。商品ID単位での重複排除ロジックを追加してください。

◇ 組織でのレビューアー育成ロードマップ例

  1. Why/Whatコメント訓練(AI出力+自分の言葉で補足)
  2. 設計意図をUML図などで必ず明文化
  3. レビュー観点チェックリスト運用を徹底
  4. 現場仕様・業務用語・背景の言語化をレビューコメントに必ず含める
  5. OJT・ペアレビューでWhy/What理由を口頭説明+記述

◇ 設計意図を可視化する訓練

UML Diagram

4.4 Why/Whatレビュー観点チェックリスト


第5章:プロンプト設計術──仕様・設計・非機能要件をAIに伝える技法

5.1 プロンプト設計の重要性──AIは“曖昧”を苦手とする

Vibe Codingの成否を分ける最大のポイントは「プロンプトの質」です。
AIは自然言語に強くなりましたが、「何をどこまでどう考慮するか」を明確に伝えなければ、

  • 汎用的で浅い実装
  • 現場仕様を無視したコード
  • バリデーションや拡張性の抜け

…といった「惜しい」アウトプットになりやすいです。


5.2 良いプロンプト・悪いプロンプトの比較

悪いプロンプト例 問題点
「ユーザー登録API作って」 要件・制約が何もない
「Goで商品管理サービス」 データ構造もAPI詳細も未指定
「バリデーションもお願いします」 何のバリデーションか曖昧

良いプロンプト例 強み
「Goで会員登録API。会員IDはUUID、メールはRFC準拠チェック、登録失敗時は400返却。ストレージはメモリ常駐でOK。登録・取得・削除API、テストコードも含めて」 具体性・バリデーション要件・失敗時動作・テスト要件が明示

5.3 プロンプト設計4つの型

【1】機能要件型

  • 何を実現したいか(CRUD/API/画面など)

【2】非機能要件型

  • パフォーマンス、スケーラビリティ、セキュリティ、テスト容易性

【3】設計・責務型

  • 層構造(API層/ドメイン層/データアクセス層)
  • 責務分離、依存逆転、例外設計

【4】テスト・拡張性型

  • ユニットテスト生成、モック化設計
  • 拡張・将来対応性

5.4 現場で使えるプロンプトテンプレート集

◇ 新規API設計テンプレ

プロンプト
Goで商品登録API。商品IDはUUID、価格は0以上、小数点以下2桁まで。登録・取得・削除API、入力バリデーション、エラー時400返却。インメモリストレージ、テストコード付き。

◇ 業務ドメイン駆動テンプレ

プロンプト
TypeScriptで売上集計ドメイン。売上エンティティ・集約ルート設計、期間指定集計API、エラー設計。テスト容易性・将来拡張も考慮。

◇ レガシーリファクタ用テンプレ

プロンプト
現行UserServiceのグローバル変数依存・副作用・密結合を排除。依存注入設計、テスト可能化、リファクタ後のAPIドキュメントも自動生成して。

◇ AIレビュー用テンプレ

プロンプト
このPullRequestの修正意図・設計意図を要約。設計・依存関係・テスト観点の抜け漏れもAIでチェック。

5.5 エッジケース網羅指示のコツ

  • 例外ケース/バリデーション失敗時の動作も指示
  • 業務用語・現場固有仕様を明示
  • 「~も考慮して」だけでなく、“どう”考慮すべきかまで踏み込む

悪い例

プロンプト
バリデーションも考慮して

良い例

プロンプト
メールはRFC5322形式。パスワードは8文字以上、英数混在。重複ID登録はエラーに

5.6 プロンプト設計演習──設計対話を意識する

◇ プロンプト→AI出力→設計意図レビューの例

プロンプト

“Goでタスク管理API。タスクID/タイトル/期限/完了フラグ。登録・取得・削除API、期限切れタスク取得APIも。バリデーション・テストコード付き。”

AI出力例(抜粋)

go
type Task struct {
    ID string
    Title string
    DueDate time.Time
    Done bool
}

レビューコメント例

go
type Task struct {
    ID string
    Title string
    DueDate time.Time
    Done bool
}
@Reviewer
Titleは255文字以内、DueDateは過去日時不可などの制約が抜けています。要件を満たすバリデーションをモデル内に追加してください。

5.7 AIプロンプト設計の失敗例・反面教師

◇ プロンプトが曖昧・短い→設計意図が伝わらない

  • 何度も“意図を明確に”再質問することになる
  • 最初から具体・詳細・例示をセットで出す

◇ ビジネス用語・現場ルールを曖昧にしてしまう

  • 「いい感じで作って」では絶対に通じない
  • 「売上」と「利益」「営業日」と「カレンダー日」等は明示

5.8 AIプロンプトの現場レビュー観点


第6章:組織導入・育成ロードマップ──成功・失敗を分けるリアル現場論

6.1 なぜVibe Codingは“個人技”ではなく“組織スキル”なのか

AIコード生成は、単なる便利ツールの導入で終わりません。
現場の開発プロセス、設計レビュー文化、人材育成――すべてが連動して初めて「Vibe Codingの本当の価値」が発揮されます。


6.2 組織導入のよくある失敗パターン

◇ 「AI=魔法の自動化」幻想による教育投資不足

  • ツール導入だけで教育・設計レビューが省略される
  • プロンプト設計や設計意図の明文化が“個人任せ”になりブラックボックス化

◇ 評価指標・レビュー観点が旧来のまま

  • 実装速度やバグ件数ばかりを指標にし、設計意図やWhy/Whatレビューを育成できない
  • 「AIが指摘するからOK」で本質的な設計レビューが抜け落ちる

◇ ドメイン知識・業務仕様がAI任せになり属人化が進行

  • 組織全体の業務ノウハウが“プロンプトの書き方”の差で分断される
  • プロンプト設計テンプレの組織標準化ができず、場当たり的なVibe Coding導入に

6.3 組織で成果を出すVibe Coding育成ロードマップ

1. プロンプト設計・設計意図レビューのOJT化

  • PullRequestごとに「プロンプト→AI設計案→設計意図レビュー→Why/Whatコメント」をOJT教材に
  • 週次や月次で「設計意図レビュー会」開催。プロンプト例・設計方針をナレッジ化

2. レビュー観点・設計観点の標準化

  • Why/Whatコメント例・レビュー観点チェックリストをWiki/Confluenceに全社公開
  • PlantUML/構造図で設計意図を必ず可視化する運用へ

3. AIレビュー×人間レビューのハイブリッド教育

  • Copilot WorkspaceやClaudeのAIレビュー案を“反証する訓練”をペアレビューに組み込む
  • 「なぜAIはそう指摘したのか」「現場固有の意図と合っているか」を人が必ず補足

4. 設計対話型フィードバック文化の醸成

  • コードレビューで「なぜ?」「なぜそうする?」と問う文化を徹底
  • チーム単位で設計意図をレビューし合い、現場の“暗黙知”を見える化

6.4 導入現場インタビュー・成功ストーリー

◇ SaaSスタートアップA社の事例

  • 週30本以上のPRをすべてVibe Coding+AIレビューでカバー
  • 1on1の設計意図レビュー会を毎週実施。「なぜこの設計?」を全員で問うことで設計力底上げ
  • PullRequestごとにプロンプト・設計方針・設計理由まで全記録しナレッジ化

◇ 伝統的SIer現場B社の導入苦戦例

  • ツール導入のみで教育・プロンプト標準化に消極的
  • 一部エースエンジニアだけが“AIレビューの反証”をできる状態が続き、属人化が加速
  • 「設計意図の言語化・OJTの構造化」が後回しとなり、現場の設計品質は伸び悩み

6.5 Vibe Coding導入におけるチェックリスト


第7章:ケーススタディ&反面教師──「Vibe Coding」失敗から学ぶ

7.1 スタートアップ導入事例:設計対話が現場文化を変えた

◇ 導入前の課題

  • 新規事業開発でリードエンジニア1名+若手のみ、レビューリソースに限界
  • PR数が週30本、設計レビューやナレッジ共有に時間を割けない

◇ Vibe Coding導入後

  • プロンプト→AI設計案→Why/Whatレビュー→全記録をNotionで共有
  • 「設計理由のないコードはマージ不可」ルールを徹底
  • PullRequestごとにAI案+設計理由を全員でレビュー、設計知見が急速に蓄積

◇ 効果

  • レビュー品質・設計力が短期間で全員に水平展開
  • 若手でも「設計理由」「ドメイン意図」を自然言語で言語化する文化に
  • 「設計意図を説明できる人」がリードエンジニアへ成長

7.2 既存SI現場:属人化と暗黙知の壁

◇ 導入失敗のパターン

  • ツール導入だけで教育・設計レビューの標準化なし
  • 一部の“プロンプト巧者”のみがAIを使いこなし、現場は属人化
  • Why/Whatコメントや設計意図レビューが「時間の無駄」と誤解され、設計品質が伸び悩む

◇ 見えてきた要因

  • PullRequestやドキュメントに「設計理由」の明文化が一切ない
  • レビュー観点・プロンプト例が共有されず、ナレッジがバラバラ
  • AIの“お墨付き”だけでコードがApproveされ、重大な設計ミスが後から噴出

7.3 Vibe Coding失敗事例の本質的要因

  • プロンプト(指示)の質に格差
    • 曖昧なままAIに任せると設計意図が反映されず、「それっぽいだけ」の実装が量産
  • Why/Whatレビュー省略・無効化
    • 形式的なレビュー、テンプレコメントで本質議論が回避される
  • 設計意図・業務仕様の組織知化失敗
    • プロンプト例・設計方針・失敗知見が現場に残らない

7.4 成功と失敗を分ける組織設計の教訓

◇ 成功現場に共通するポイント

  • 設計理由を「全員が言語化」し、全記録する文化
  • 設計レビューを“Why/What観点”で統一し、属人化を防ぐ
  • AI案+人間レビューのハイブリッド訓練をOJTに導入
  • 設計意図・プロンプト例・失敗知見をナレッジとして組織標準化

◇ 失敗現場の傾向

  • 設計意図・WhyコメントがコードにもPRにもない
  • プロンプト設計・レビュー観点が個人技術になっている
  • 設計品質の評価・フィードバックが属人的

7.5 ケーススタディから導くチェックリスト


終章:AIと共進化するレビューアー像とは

8.1 コードレビュー“新時代”の本質

Vibe Codingは、単なるAI自動化ではなく、「設計意図の対話とドキュメント化」という新しい現場スキルの時代をもたらしました。

  • AIは実装担当、人は設計と意図・責任の保証者
  • Why/Whatコメントによる設計レビューこそが“現場の知”になる
  • 組織として設計知識・失敗知見・設計哲学を言語化・共有する仕組みが不可欠

8.2 これからのレビューアー・設計者に求められるスキル

  • プロンプト設計力
    「何を」「どう作りたいか」「どう評価するか」をAIに正確に伝える力

  • Why/Whatレビュー力
    単なる指摘でなく、「なぜそれが必要か」「どうすべきか」を具体的に言語化できる力

  • 設計意図のドキュメント化能力
    PullRequest、設計ドキュメント、テストケースに「設計理由」「判断根拠」を残せる力

  • AI+人間ハイブリッド開発の運用設計力
    AIレビュー+人間レビューの役割分担を現場最適化できる力


8.3 読解力・設計力・対話力──三位一体の育成が未来を拓く

「AIが“書いてくれる”からこそ、“なぜ?”を考え抜く人が現場を動かす」
Vibe Coding時代は「読める人」「説明できる人」「設計意図を伝えられる人」が、
最も市場価値を持つ時代です。


8.4 これから挑戦したい人へ

  • PullRequestには必ず「設計意図」「Why/Whatコメント」「プロンプト例」を残す
  • 図やレビュー観点も組織ナレッジ化し、“現場全体で考える設計文化”を醸成
  • 「AIを使う=設計意図を言語化する訓練」と捉え、自分自身の設計・レビュー技術を磨き続けてください