仕様駆動型開発 vs バイブコーディング:ウォーターフォール?
仕様を唯一の正解とするのか、それとも遅い儀式とするのか
仕様駆動型開発(SDD)は、2026年において「バイブコーディング(Vibe Coding)の逸脱」に対する真面目な開発者の回答として登場しました。
Vibe coding は、開発者が自然言語で望ましい機能を説明し、AI ツールがコードを自動的に生成する AI 駆動型のプログラミングアプローチです。直接のコーディングは最小限に抑えられます。

この用語は、2025 年 2 月に OpenAI の共同創業者であるアンドレイ・カルパチ(Andrej Karpathy)によって考案されました。彼はこれを「実際のコーディングではない」とし、観察、記述、そして反復によるプロセスであると説明しました。これは、プログラマーがコードを一行ずつ書くのではなく、AI の出力をガイドすることに焦点を当てるワークフローです。2026 年までに、vibe coding はソーシャルメディアの概念から、多くの開発者、創業者、そしてエンジニアではない人々が実際にソフトウェアを構築する方法を示す標準的な用語へと移行しました。
ツールごとの詳細については、AI コーディングアシスタント比較 をご覧ください。
Vibe coding は、AI 支援開発のスペクトラムの最も遠い端に位置します。従来の AI 支援開発では、自動補完やインライン提案などのツールを使用しますが、開発者がロジックの大部分をまだ記述しています。Vibe coding はこの比率を逆転させます。開発者は直接的にほとんど何も書かず、代わりに意図を AI にプロンプトし、その出力を反復して改善します。
カルパチの最初の枠組みはあえてカジュアルなものでした。彼は AI の提案を丸ごと受け入れ、音声入力を使用し、差分(diff)を細かく読まないというスタイルを説明しました。これは軽率さを意味するのではなく、ボトルネックがタイピングから思考へと移行したことを示し、新しいワークフローに新しい名前が必要だったことを意味します。
2026 年初頭までに、vibe coding は広範な実践を指しています。
共通の糸は、自然言語を主要なインターフェースとし、AI をコードの主要な生産者とする点です。
ワークフローはプロンプトから始まります。ユーザーは平たい英語で何を望むかを説明し、AI コーディングアシスタントが機能的なコードを生成します。開発者は直接編集するのではなく、フォローアップのプロンプトでレビュー、テスト、そして洗練させます。
典型的な vibe coding ループは以下の通りです。
反復速度が真の変化です。手動コーディングで数時間かかる作業が、強力な AI エージェントを使えば数分で完了します。
すべての vibe coding ツールが同じように機能するわけではありません。補完型ツールとエージェント型ツールの間に重要な違いがあります。
補完型ツール(GitHub Copilot, Continue.dev)は、入力しながらコードを提案します。開発者はまだ運転席に座り、構造の大部分を記述します。
エージェント型ツール(Cursor Agent, Claude Code, OpenCode, [OpenHands](https://www.glukhov.org/ja/ai-devtools/openhands/ “OpenHands QuickStart for developers. Install the CLI, configure your LLM API key, learn core command-line flags and safety modes, and run practical examples."))は、多段階タスクを計画し、複数のファイルを編集し、コマンドを実行し、失敗に対して反復できます。開発者は最終状態を説明し、エージェントがそれに向かって作業します。
厳密なカルパチの定義における vibe coding は、主にエージェント型のワークフローです。補完型ツールはコーディングを加速させますが、エージェント型ツールはその大部分を置き換えます。
| ツール | タイプ | 最適用途 |
|---|---|---|
| Cursor | IDE フォーク(VS Code) | プロジェクト全体のエージェント型編集、大規模コードベース |
| Claude Code | ターミナルファーストのエージェント | 多ファイルタスク、ローカルまたはクラウド LLM バックエンド |
| GitHub Copilot | IDE 拡張機能 | インライン提案、PR レビュー、広範な言語サポート |
| OpenCode | オープンソースターミナルエージェント | CLI ワークフロー、自動化、セルフホストモデル |
| Replit | クラウド IDE | ブラウザベースのプロトタイピング、即座のデプロイ |
| Lovable | クラウドアプリジェネレータ | 自然言語からのフルスタックアプリ生成 |
| Windsurf | IDE フォーク | 多ファイルコンテキスト、セッションメモリ、エージェントフロー |
より深い比較については、完全な AI 開発者ツールガイド をご覧ください。
Vibe coding のリスクは、構築されるものの重要性に応じて増大します。
AI 生成コードには、適切なエラーハンドリング、防御的バリデーション、ログ出力、エッジケースの網羅性が欠けていることがよくあります。コードはハッピーパスでは動作しますが、負荷がかかったり、本番環境で何か問題が起きたりするまで見えない負債が蓄積されます。レビューなしに AI の出力を受け入れる開発者は、後に支払わなければならないメンテナンスの負担を創出します。それも往々にして最悪のタイミングでです。
AI モデルは、トレーニングデータのパターンからコードを生成します。そのパターンには、SQL インジェクションのリスク、不適切な認証フロー、入力サニタイズの欠如、ハードコードされた認証情報などのセキュリティ上の問題が含まれています。コミット前に差分を読まない開発者は、気づかないうちに脆弱性をデプロイしてしまう可能性があります。
エージェント型ツールは、大規模な多ファイル変更を行うことができます。これらの変更がアーキテクチャレビューなしに受け入れられる場合、結果として得られるコードは今日テストは通りますが、6 ヶ月後に拡張したり理解したりするのが困難になります。AI は、生成物の長期的な保守性をモデル化しません。
AI 生成コードで何か問題が起きた場合、それを注意深く読まなかった開発者は、なぜそのように書かれたのかという心的モデルを持っていません。デバッグには、自分が書かず、レビューもしなかったコードを理解する必要があります。これは、最初から正しく書くよりも時間がかかることがあります。
vibe coding のみを専門とするジュニア開発者は、AI の助けなしにデバッグ、最適化、システムを設計するために必要な基礎的な理解を構築できない可能性があります。これは、個人にとってのキャリアリスクであり、深いエンジニアリング判断を必要とする役割に vibe coder を昇進させる組織にとってのチームリスクです。
Vibe coding は、エンジニアリングの規律と組み合わせることで最も効果を発揮します。
コミット前にすべての差分をレビューする。 速度の向上は生成にあるのではなく、レビューにあります。AI の出力を読むことは省略不可能です。セキュリティ上の穴、悪いパターン、技術的には動くが意図した通りに動作しないコードを見つけるために必要な作業だからです。
構造化されたプロジェクトコンテキストを使用する。 Claude Code のようなツールは、CLAUDE.md や Skills を使用して、エージェントに一貫したプロジェクト固有の知識を提供します。適切に管理された CLAUDE.md は、AI があなたの規約、好まれるライブラリ、アーキテクチャの制約を理解することを意味し、すべてのプロンプトでそれらを再説明する必要がありません。
反復可能なワークフローを Skills にパッケージ化する。 同じチェックリストやデプロイプレイブックを繰り返しプロンプトしている場合、それを再利用可能な Claude Skill に抽出してください。再利用可能でテスト可能な Skills は、コピー&ペーストされたプロンプトの構造化された代替案です。
適切なスコープに留める。 Vibe coding は、プロトタイプ、内部ツール、個人自動化、および出荷前にレビューされる機能において最も強力です。コアインフラストラクチャ、セキュリティに重要なロジック、厳格なパフォーマンス要件を持つシステムには、より慎重なエンジニアリングが必要です。
AI 出力に対して自動テストを実行する。 AI 生成コードを外部からの貢献と同様に扱ってください。テストスイートを実行し、AI が見落としたエッジケースのテストを追加し、マージ前にリグレッションでビルドを失敗させます。
アーキテクチャの決定にはシニアエンジニアを関与させる。 データモデル、認証フロー、API 契約、またはサービス間の境界に関わる変更は、コードが AI から来たものか、ジュニア開発者によるものかに関わらず、シニアエンジニアがレビューする必要があります。
トレードオフは、コンテキストによって異なります。
個人プロジェクトと MVP: Vibe coding はほぼ最適です。開発者は完全なコンテキストを持ち、自分の出力をレビューし、調整オーバーヘッドなしに高速で進めることができます。技術的負債のリスクは現実のものですが、管理可能です。それを返済するのはあなた自身だからです。
小規模チーム: AI 生成コードがいつ、誰によってレビューされるかについての明確な合意があれば、生産的です。共有された CLAUDE.md や AGENTS.md ファイル、標準化されたプロンプトを使用するチームは、より一貫した出力を得られ、驚きも少なくなります。
エンタープライズシステム: ガバナンスが必要です。AI 生成コードは、他の貢献と同様のレビューゲートを経る必要があります。生産性の向上は現実のものですが、品質管理が利用規模に応じてスケールしない限り、その効果は持続しません。コードレビュー、セキュリティスキャン、アーキテクチャ承認をバイパスさせる組織は、累積的なリスクを生み出します。
Vibe coding ツールは、異なるトレードオフを持つ 4 つの主要な形態があります。
適切な選択は、ボトルネックがセットアップの摩擦、コードベースの統合、または自動化機能のいずれかによって異なります。
仕様を唯一の正解とするのか、それとも遅い儀式とするのか
仕様駆動型開発(SDD)は、2026年において「バイブコーディング(Vibe Coding)の逸脱」に対する真面目な開発者の回答として登場しました。
システム、インフラ、AIエンジニアリングの新記事をお届けします。