GoogleのConductorをClaude Codeに移植 ― スペック駆動開発でAIの暴走を防ぐ

GoogleのConductorをClaude Codeに移植 ― スペック駆動開発でAIの暴走を防ぐ Claude Code
Photo by Bluestonex on Unsplash

GoogleのConductorをClaude Codeに移植 ― スペック駆動開発でAIの暴走を防ぐ

AIコーディングアシスタントの大きな課題の一つは、計画なしにいきなり実装を始めてしまうことです。GoogleがGemini CLI向けにリリースした「Conductor」は、この問題を解決するスペック駆動開発フレームワークです。今回、このConductorがClaude Code向けに移植され、オープンソースで公開されました。この記事では、Conductorの概念と使い方を詳しく解説します。

この記事のポイント

  • AIに「まず計画、次に実装」のワークフローを強制するフレームワーク
  • プロジェクトのコンテキストファイル(product.md、tech-stack.md、workflow.md)を自動生成
  • トラック(作業単位)ごとにスペックと実装計画を作成してから実行
  • git対応のロールバック機能で安全に実験可能

スペック駆動開発とは

スペック駆動開発(Spec-Driven Development)は、実装の前に仕様を明確化するアプローチです。AIコーディングアシスタントを使う場合、この考え方は特に重要になります。なぜなら、AIは指示に対して即座にコードを生成しますが、その方向性が正しいかどうかの確認が後回しになりがちだからです。

Conductorは、AIに「まず計画を立て、承認を得てから実装する」というワークフローを強制します。これにより、間違った方向に大量のコードを生成してしまう事態を防ぎ、開発者とAIのコラボレーションをより効果的にします。

GoogleはこのフレームワークをGemini CLI向けに開発しましたが、その概念はどのAIコーディングアシスタントにも適用可能です。今回の移植により、Claude Codeユーザーもこのアプローチを活用できるようになりました。

Conductorの主要コマンド

Conductorは、直感的なスラッシュコマンドで操作できます。主要なコマンドは以下の通りです。

/conductor:setupは、プロジェクトについてインタビューを行い、コンテキストファイルを作成します。product.mdにはプロダクトの概要と目的、tech-stack.mdには使用技術スタック、workflow.mdには開発ワークフローが記録されます。これらのファイルは、後続のすべての作業でAIが参照するコンテキストとなります。

/conductor:new "機能名"は、新しい「トラック」を作成します。トラックとは、一つの機能やタスクに対応する作業単位です。このコマンドを実行すると、仕様(スペック)と実装計画が自動生成されます。

/conductor:implementは、作成された計画に従って、ステップバイステップで実装を進めます。各ステップの完了後に確認が入るため、開発者は常に進行状況を把握できます。

/conductor:statusは、すべてのトラックの進捗状況を表示します。複数の機能を並行して開発している場合に、全体の状況を俯瞰するのに便利です。

/conductor:revertは、git対応のロールバック機能です。実装がうまくいかなかった場合、このコマンドで安全に以前の状態に戻すことができます。

なぜスペックを先に書くのか

スペックを先に書くことには、いくつかの重要なメリットがあります。第一に、実装の方向性を明確にすることで、手戻りを減らせます。AIが生成するコードは、スペックに基づいて一貫性のあるものになります。

第二に、開発者とAIの間で共通理解を形成できます。スペックを確認することで、開発者はAIの理解が正しいかどうかを事前にチェックできます。誤解がある場合は、コードを書く前に修正できます。

第三に、レビューとドキュメンテーションが自然と生成されます。スペックと実装計画は、後から見返すことで、なぜその実装になったのかを理解する助けになります。

トラックの概念

Conductorの中心的な概念は「トラック」です。トラックは、一つの機能やタスクに対応する作業単位で、以下の要素を含みます。仕様(スペック)は、何を実装するかを明確に記述します。実装計画は、どのような順序で実装を進めるかを定義します。進捗状況は、どのステップまで完了したかを追跡します。

複数のトラックを同時に管理できるため、複数の機能を並行して開発する場合にも対応できます。/conductor:statusで全体の進捗を確認し、必要に応じてトラック間を行き来できます。

知っておくと便利なTips

  • setupの重要性: 最初の/conductor:setupを丁寧に行うことで、後続のすべての作業の質が向上します。プロジェクトの目的、技術スタック、コーディング規約をしっかり伝えましょう。
  • 小さなトラック: 一つのトラックで扱う機能は小さく保ちましょう。大きな機能は複数のトラックに分割することで、管理しやすくなります。
  • スペックの確認: /conductor:newで生成されたスペックは必ず確認し、必要に応じて修正を依頼してから実装に進みましょう。
  • 定期的なコミット: 各ステップの完了後にコミットすることで、/conductor:revertでのロールバックがより細かい粒度で可能になります。

まとめ

ConductorのClaude Code移植は、AIコーディングアシスタントの使い方を一歩進化させる可能性を秘めています。「まず計画、次に実装」というワークフローを強制することで、AIの暴走を防ぎ、より効果的な開発が可能になります。

プロジェクトはまだ初期段階であり、フィードバックやコントリビューションを求めています。スペック駆動開発に興味がある方は、ぜひ試してみてください。AIとのコラボレーションの質を高める新しいアプローチとして、今後の発展が期待されます。


📎 元記事: https://www.reddit.com/r/ClaudeAI/comments/1qdp4yq/ported_googles_conductor_to_claude_code_looking/

コメント

タイトルとURLをコピーしました