【インストール不要】CopilotとRunbookでお手軽に仕様書駆動開発を始めよう
AIを使ったバイブコーディングの流れで、仕様書駆動開発(Spec-driven development)が注目されています。
Why 仕様書駆動開発
Claude CodeやCodexなど、コーディングに特化したAIがあっという間に普及しました。AIを使うと確かに爆速でコードを書いてもらえるのですが、意図した仕様どおりのコードが生成されなかったり、仕様に漏れがあったりといった問題が生じることがあります。そこで、コードを書く前にAIといっしょにきちんと仕様を検討してから、仕様書に基づいてコードを書いてもらいましょうという手法が取られるようになりました。
必要なのはVisual Studio Codeだけ
仕様書駆動開発のツールとしてはKiroやSpec kitなどが有名ですが、アプリのインストールが必要なので、開発チーム全体で導入するには敷居が高いかもしれません。今回はGithub CopilotとRunbookを使って、インストールが不要でお手軽な仕様書駆動開発のやり方を紹介します。
仕様書もGitに保存したほうがいいのでは
一般的な仕様書駆動開発では、マークダウンで書かれた仕様書をGitで管理するやり方が一般的です。ただそのやり方だと、
- 開発者以外も仕様書をレビューして修正できるようにしたい
- 画像やファイルなども仕様書に添付したい
- ソースコード以外のファイルがリポジトリに入るのは避けたい
- 仕様書はタスクベースであるので、プロダクトが成長すると必ずしも実際のソースコードの挙動と一致しない。
といった要望に応えることができません。Runbookならこれらに対応でき、すべての変更履歴が残っているので、AIが変な更新をしてしまっても、いつでも元のバージョンに戻せます。AIからはマークダウンでやりとりできますが、人間が編集する際はリッチエディタが使えるので、マークダウンの記法を覚えなくてもいい利点もあります。
Let's SDD
さっそく準備を始めましょう。まずRunbookのOAuthの設定をします。「システム設定」>「OAuth」から、OAuthクライアントを追加します。クライアントの種類を「MCPクライアント」、MCPクライアントを「Visual Studio Code」に設定します。MCPサーバーのURLが表示されるので、コピーしておいてください。

Visual Studio Codeで、F1またはCtrl + Shift + Pを押して、コマンドパレットを表示します。「mcp」と入力して、「MCP: サーバーの追加」を選択します。

「HTTP(HTTPまたはサーバー送信イベント)」を選択します。
MCPサーバーのURLの入力を求められますので、先程コピーしておいたURLを貼り付けます。

認証を許可するダイアログが表示されます。

「許可」をクリックすると、Runbookの認可画面が表示されます。

これでVS CodeからRunbookにアクセスできるようになりました。
AIと仕様を検討してみる
では何か新しい機能をAIと考えてみましょう。ここでは、記事にコメントを追加できる機能を検討することにします。
ざっくり次のような概要を考えてみました。
記事にコメントを追加できる機能を実装する
# 目的
記事に対して、誤りや補足情報などをログインユーザーがコメントできることで、より記事の品質を向上できる。
# データベース仕様
# 影響範囲
Runbookのワークスペースに「開発仕様」というブックを追加します。

新しい記事に概要を書きました。

それではこの仕様書をブラッシュアップしていきましょう。
その前に、「⋯」をクリックして記事IDをコピーしておきます。

記事IDを指定してCopilotに指示すると、内容をRunbookから取得してくれます。

検討すべき仕様内容を分析して提案してくれます。

どんどん検討を進めていきましょう。意図した仕様と異なる部分については、こちらから指摘します。

ある程度仕様がまとまったら、仕様書を更新してもらいましょう。

仕様書が更新されていますね。文書内に画像やファイルなどを添付することもできます。

実装する
これを繰り返して、満足のいく仕様書ができあがったら、あとは実装をお願いするだけです。
この仕様書の内容で実装して
まとめ
なんとなく仕様書駆動開発の雰囲気がつかめたのではないかと思います。はじめに仕様書を書くことで、よりコードの品質を高めることができます。仕様書を書くのが苦手だという方も、AIが提案してくれるのでずっと楽に書けるはずです。CopilotとRunbookでお手軽に仕様書駆動開発、ぜひやってみてくださいね。