Thank You For Reaching Out To Us
We have received your message and will get back to you within 24-48 hours. Have a great day!

「Vibe Coding」を超えて:CafeKitがAI自動化にもたらす仕様駆動開発(SDD)

15分で​​読む

AIコーディングアシスタントは驚異的なスピードを約束しますが、しばしばプロジェクトの実際のアーキテクチャを無視したスパゲッティコードを提供することがあります。これはモデルが独立したプロンプトに基づいて動作するため、複雑なコードベース全体でコンテキストを維持するための構造化されたワークフローが欠如していることに起因します。

Haposoftが開発したCafeKitはClaude Codeに構造と説明責任をもたらす軽量なランタイムです。長いプロンプトや手動での監視に頼るのではなく、要件、コード、テスト、ドキュメントが最初から最後まで同期された状態を保つ仕様駆動のワークフローを通じてAIをガイドします。その結果、コンテキストの切り替えが少なくなり、要件の漏れが減り、すべてのリリースに対する信頼が高まる、より信頼性の高い開発プロセスが実現します。

CafeKitとは?仕様駆動開発のエンジン

CafeKitはHaposoftが開発した軽量なランタイムであり、Claude Codeに仕様駆動開発(SDD)をもたらします。プロジェクトの .claude ディレクトリに直接インストールすることで、Claudeのコーディング機能の上に構造化されたワークフローを追加し、チームがコンテキストを失うことなく要件から本番環境対応のコードへと移行できるようにします。

CafeKitが重要である理由を理解するには今日のAI支援開発がどのように行われているかを見る価値があります。開発者はしばしばプロンプトから始め、いくつかのコードを生成し、いくつかの調整を行い、次のタスクへと移ります。機能は動作するかもしれませんが、要件はチャット履歴に埋もれ、ドキュメントは古くなり、最終的な実装が元の意図と一致しているかどうかを完全に把握している人は誰もいません。

仕様駆動開発は仕様をすべての機能の起点とすることでこの問題を解決します。コードが書かれる前に、要件、期待される動作、エッジケース、および成功基準が文書化され、承認されます。そして、開発はその仕様に従って一歩ずつ進められ、実装、テスト、ドキュメントがプロセス全体を通じて整合し続けるようにします。

続きを読む:SDDの記事はこちら

CafeKitはこの哲学をAIのための実践的なワークフローに変換するツールレイヤーです。Claudeに数十のプロンプトやプロジェクトルールを記憶させることに頼るのではなく、開発のすべてのステージをガイドする一連のコマンド、エージェント、および自動チェックを提供します。機能リクエストは要件ドキュメントになり、要件は技術設計になり、設計は実装が始まる前に検証可能なタスクに分解されます。

この構造はAIが生成した変更が複数のファイル、サービス、またはチームにまたがる大規模なプロジェクトで特に価値を発揮します。品質ゲートを強制し、仕様をコードベースと同期させ続けることで、CafeKitはAI支援開発でしばしば見られる「見せかけの進捗」を防ぎます。タスクが表面的には完了しているように見えても、リグレッションを引き起こしたり、既存の機能を破壊したり、元の要件から静かに逸脱したりするのを防ぎます。

CafeKitがAI規律を自動化する方法(SDD契約の強制)

AIが生成するコードはもはや難しい部分ではありません。本当の課題は開発が進むにつれて、コードが要件、設計上の決定、およびプロジェクト標準に整合し続けることを保証することです。ここで仕様駆動開発(SDD)が価値を持ち、CafeKitが実際に機能させるために必要な構造を提供します。

なぜAIコーディングワークフローは崩壊するのか?

ほとんどのAIコーディングツールはできるだけ早くアウトプットを生成するように設計されています。これは開発を加速させる可能性がありますが、おなじみの問題も引き起こします。コンテキストが徐々に失われていくのです。

要件はチャット履歴に存在し、設計上の決定は会話中に散らばり、ドキュメントは実装に追いつけなくなることがよくあります。

これが、AIを使用する際に多くのチームが「仕様の乖離(spec drift)」を経験する理由です。機能は明確な目標から始まるかもしれませんが、複数のプロンプト、修正、およびフォローアップリクエストを経て、最終的な結果がまだ元の意図と一致しているかどうかを検証することが困難になります。プロジェクトが大きくなればなるほど、この問題を管理することは難しくなります。

仕様駆動開発は仕様を唯一の真実の情報源(source of truth)とすることで異なるアプローチを取ります。プロンプトの履歴に頼るのではなく、すべての要件、設計上の決定、タスク、および検証ステップは承認された仕様に紐づけられます。

Vibe Coding

仕様駆動開発

プロンプトから始まる

承認された仕様から始まる

コンテキストはチャット履歴に存在する

コンテキストはプロジェクトの成果物に存在する

小規模な実験には高速

複雑なプロジェクトによりスケーラブル

ドキュメントは後で更新されることが多い

ドキュメントは開発と並行して進化していく

決定の監査が困難

すべての変更は要件にまで遡って追跡可能

CafeKitはAIをどのように軌道に保つか?

CafeKitはClaude Code内でこのプロセスを運用化します。プロジェクトの .claude ディレクトリにインストールされると、作業が承認された仕様に整合し続けることを保証するのに役立つ、一連の専門エージェントとワークフロールールを導入します。

開発者がすべてのステップを手動でチェックすることに頼るのではなく、CafeKitはワークフロー全体を通じて特定の責任を目的に応じて構築されたエージェント群に委任します。作業を整合させ続けるために最も重要な3つのエージェントは以下の通りです:

Tester Agent(test-runner)

  • 事前定義されたテストコマンド、受け入れ基準、および期待される動作に対して実装を検証します。

Reviewer Agent(code-auditor)

  • 完了した作業が承認された仕様を満たし、プロジェクト標準に従っているかどうかをチェックします。

Doc-Sync Agent(docs-keeper)

  • 開発の進行に合わせて、ドキュメント、プロジェクトレコード、および仕様を同期し続けます。

これらのチェックはワークフロー自体に組み込まれているため、開発者はコンテキストを繰り返し伝えたり、前提条件を検証したり、古いドキュメントを追跡したりする時間を減らすことができます。CCafeKitのエージェントと自動チェック機能が、開発プロセス全体を強力にサポートします。

コードが先に進む前に何が起こるのか?

AIが生成したコードは実際に出荷(ship)の準備が整うずっと前に、完成しているように見えることがよくあります。機能はクイックレビューでは動作しているように見えるかもしれませんが、エッジケースを見落としたり、統合テストに失敗したり、ドキュメントが古いままであったりする可能性があります。チームがAIにより大きく依存するようになるにつれ、これらの小さなギャップはより大きなメンテナンス問題に蓄積する可能性があります。

CafeKitはコード生成をワークフローのほんの1ステップとして扱うことでこの問題に対処します。タスクが完了とみなされる前に、実装は承認された仕様を満たし、必要な検証チェックに合格しなければなりません。ドキュメントの更新もプロセスの一部として強制することができ、チームは数週間後にプロジェクトの知識を更新するのではなく、コードベースと整合した状態を保つことができます。

目標はプロセスのためにプロセスを追加することではありません。進捗が生成されたアウトプットではなく、検証された成果によって測定されるワークフローを作成することです。これにより、チームはAIが生成するものに対してより大きな信頼を持つことができ、作業が次に進む前に必要な手動での検証量を減らすことができます。

CafeKitワークフロー:Spec to Shipの6つのステップ

ほとんどのAIコーディングセッションはプロンプトから始まります。CafeKitは仕様から始まります。

Claudeに機能全体を即興で推測させるのではなく、CafeKitは構造化されたシーケンスを強制します。

すべてのステージは検証可能な成果物を生成し、コードベースがスケールしてもコンテキストが失われないようにします。ステップ1~5は既に実装済みです。ステップ6(/hapo:deploy)はロードマップ上にあります。現時点ではデプロイメントは /hapo:devops スキルを通じて処理されます。なお、/hapo:develop はすでに各タスクの後に内部品質ゲート(セルフヒーリングを伴うテスト、仕様レビュー、コードレビュー)を実行しているため、ステップ3と4はQAが行われる唯一の場所ではなく、より明示的で広範な検証パスであることに注意してください。

ステージ

コマンド

得られるもの

Spec

/hapo:specs

検証を伴う機能契約

Develop

/hapo:develop

タスクパケットごとの段階的な実装

Test

/hapo:test

実際のビルドシグナルによる検証

Review

/hapo:code-review

リグレッションおよびセキュリティチェック

Git

/hapo:git

安全なコミットおよびプッシュワークフロー

Deploy

/hapo:deploy

お使いのスタックへのデプロイメントハンドオフ(ロードマップ上)

ステップ1:/hapo:specs で機能契約を作成する

ここでは曖昧なプロダクトアイデアが厳密なエンジニアリング契約に変換されます。このコマンドは機能リクエストをキャプチャし、構造化されたスペックワークスペース(要件、リサーチ、設計、検証可能なタスクファイル)を、明示的なスコープ、動作、制約、および成功基準とともに生成します。

次に、/hapo:specs validate を使用してスペックを検証し、要件が完全であり実装の準備ができていることを確認します。タスクレジストリは検証ステータスを追跡し、すべてのチェックに合格するまでAIは先に進むことができません。

ステップ2:/hapo:develop で一度に1つのタスクパケットを実装する

スペックステージ中に、CafeKitはすでに承認されたスペックをアトミックで独立してテスト可能なタスクパケットに分解しています。各パケットには単一の目的、明示的な完了基準、および事前定義された検証コマンドがあります。特定のタスクパケットを指定して /hapo:develop を実行すると、Claudeはその作業の正確な部分だけを実装します。それ以上でもそれ以下でもありません。これにより、コンテキストウィンドウがいっぱいになるにつれてAIが見失うのを防ぎ、スコープクリープを排除し、AIが承認された設計から逸脱するのを防ぎます。

ステップ3:実際のビルドおよびランタイムシグナルで検証 /hapo:test

自動品質ゲートをパスするまで、実装は完了とはみなされません。/hapo:test を実行すると、タスクパケットで定義された正確な検証コマンドが実行され、実際のビルド出力およびランタイム動作に対してチェックが行われます。テストに失敗したらどうなるでしょうか?ワークフローは即座に停止します。AIは自分のミスを修正し、先に進む前にテストを再実行しなければなりません。これにより、タスクチェックリスト上では完了しているように見えても実際にはビルドを壊しているという「見せかけの進捗」を完全に排除します。

ステップ4:/hapo:code-review - リグレッションとセキュリティのレビュー

コードがメインブランチに触れる前に、CafeKitは構造化されたレビュープロセスを強制します。/hapo:code-review --pending コマンドはリグレッション、セキュリティの脆弱性、およびアーキテクチャの不一致をスキャンするスペシャリストエージェントをトリガーします。これらのエージェントは元のスペックに対して実装をクロスチェックし、逸脱を最小限に抑えます。レビューの判定が肯定的である場合にのみ、作業は次のステージに進む資格を得ます。

ステップ5:/hapo:git - 安全なコミットとプッシュ

すべての品質ゲートをパスすると、/hapo:git commit コマンドはクリーンで検証済みのコミットを準備します。ワークフローの早い段階で更新されたドキュメントはコードと一緒にコミットされます。ランタイムはスペックレジストリとタスクの状態が実際の実装と同期していることを保証します。次に、/hapo:git push が作業をリモートリポジトリに安全に転送します。すべてのコミットは承認されたスペックと検証済みのタスクパケットにまで遡って追跡可能です。

ステップ6:/hapo:deploy - デプロイメントハンドオフによる出荷

最終ステージでは検証済みのリリース候補をお使いの既存のデプロイスタックにハンドオフします。Vercel、AWS、またはカスタムCI/CDパイプラインを使用している場合でも、/hapo:deploy はすべてのチェックポイントをパスしたコードのみがデプロイメントプロセスに渡されることを保証します。ドキュメント、スペックレジストリ、および本番コードベースは常に整合した状態に保たれます。

CafeKitの始め方

CafeKitの最大の利点の一つは既存の開発ワークフローに非常に簡単に導入できることです。フレームワークを移行したり、ツールを置き換えたり、技術スタックを刷新したりする必要はありません。

CafeKitはClaude Codeと連携して動作し、チームがすでにソフトウェアを構築している方法を妨げることなく、仕様駆動開発に必要な構造を追加します。

CafeKitのインストール

ランタイムをインストールするにはプロジェクトのルートディレクトリに移動して次のコマンドを実行するだけです:

npx @haposoft/cafekit

これだけです。この1つのコマンドで、必要なスラッシュコマンド、ワークフローテンプレート、および運用ルールを使用して .claude ディレクトリがプロビジョニングされます。高度な設定、カスタムフック、およびエッジケースの処理について詳しくは公式の「From Zero to CafeKit」ガイドに従ってください。前提条件:Node.js 18以上およびClaude Codeプロジェクト(.claude ディレクトリ)。CafeKitは .opencode を介してOpenCodeもサポートしています。

インストール後、すぐにspec-to-shipライフサイクルをトリガーできます:/hapo:specs/hapo:develop/hapo:test/hapo:code-review/hapo:git/hapo:deploy

また、ワークフローにはスペックが存在する前に要件を探索するための初期ステージコマンドである /hapo:question/hapo:brainstorm も含まれています。

サポートの取得

CafeKitは完全にスタックに依存しない(stack-agnostic)ため、Node.jsやPythonからRuby on Rails、最新のフロントエンドフレームワークまで、すべてをサポートします。チームは分離されたレガシーモジュールやグリーンフィールドプロジェクトで、ワークフローを段階的に導入できます。エンジニアリング組織で大規模なSDDを評価しており、実践的な実装ガイダンスを必要としている場合は直接サポートを利用できます。CafeKitの問い合わせフォームから技術的なウォークスルーをリクエストするか、特定のアーキテクチャについて議論するために sale@haposoft.com まで直接ご連絡ください。

結論:確かな開発は、確かなプロセスから

現代のAIコーディングにおける最大の課題は、もはやコード生成の速度ではありません。求められているのは、コンテキストを維持し、アーキテクチャとの整合性を保ちながら開発を進めることです。構造化されていないプロンプトは、ロジックの断片化やハルシネーションによる誤った依存関係を生み、結果として技術的負債の増加につながりがちです。

CafeKitは、AI支援開発に構造をもたらすことで、こうした課題を解決します。AIを単なる高性能なコード補完ツールとして使うのではなく、仕様・実装・テスト・ドキュメントが一貫して連携する開発環境へとClaude Codeを進化させます。

AI支援開発を試している段階でも、チーム全体へ安全かつ着実に展開したい場合でも、CafeKitは実践的なスタート地点となります。

実際のプロジェクトでどのように機能するのか、ぜひ体験してみませんか。Haposoftのデモをご予約いただくか、次回の機能開発でCafeKitを試して、spec-to-shipワークフローをぜひご体感ください。

 

シェア
コピーしました
cta-background

ニュースレター登録

デジタルトランスフォーメーションに​関する​専門的な​知見や​イベント最新情報を、​メールボックスに​直接お届けします。
© Haposoft 2025. All rights reserved
プライバシーポリシー