00:00:00コーディング・エージェントにルールを強制すると、実際には何が起きるのでしょうか?
00:00:03Claudeなどのコーディング・エージェントを使う際、私たちは皆共通の悩みを抱えています。
00:00:07指示に従わず、Claude.mdファイルを完全に無視してしまう傾向があるのです。
00:00:11TDDを強制しようとしても、テストファイル自体を書き換えようとしてしまいます。
00:00:15そんな中、わずか24時間で5万8000スターを獲得し、注目を集めているプラグインを見つけました。
00:00:21しかし、それはAIツールのハイプサイクルがいかに激しいかを示しているに過ぎません。
00:00:25このプラグインは、ソフトウェア開発手法をワークフローに厳格に適用することを約束しています。
00:00:30しかし、問題はそれが本当に約束を果たしているかどうかでした。
00:00:33私たちのチームはこれまでも似たようなワークフローを見てきましたが、そのほとんどがただの誇大広告でした。
00:00:37そこで、このプラグインを実際のワークフローに導入し、実プロジェクトに役立つのか、それとも単なる流行りなのかを検証しました。
00:00:43「Superpowers」は、使用しているAI IDEに、伝統的なソフトウェア開発手法を強制するプラグインです。
00:00:50BMADやOpenSpecといった既存のアジャイルフレームワークと同じだと思う人もいるかもしれません。
00:00:56しかし、これは単にプロジェクトの仕様を書くためのエージェントシステムではありません。
00:01:01アジャイル手法をワークフローに直接強制し、現在のステップをクリアするまで次へ進ませない厳格なゲートを設けています。
00:01:10これらのゲートは、Claudeが指示から逸脱するのを防ぐための明示的なチェックポイントとなります。
00:01:15このプラグインの核となる哲学は、推測ではなく、TDDと体系的なプロセスを重視することです。
00:01:20プロジェクトの成功を宣言する前に検証を行い、AIが失敗しやすい箇所を特定して修正するための専用の指示を備えています。
00:01:28ユーザーからゴーサインが出るまで、次のステップへは進みません。
00:01:32つまり、私たちが過去の動画で語ってきたベストプラクティスが最初から組み込まれており、手動設定の手間が省けます。
00:01:40このプラグインは、真のテスト駆動開発(TDD)や、DRY、YAGNIといった開発の基本原則を重視しています。
00:01:50あらゆるAIプラットフォームで利用可能です。
00:01:52私たちのチームはClaude Codeを使っていたので、まずマーケットプレイスの登録コマンドをコピーしてプロジェクトに追加し、プラグインをインストールしました。
00:02:02インストール後にClaude Codeを再起動すると、プロジェクトでSuperpowersプラグインが使えるようになりました。
00:02:08再起動したClaude Codeに、「Trelloのようなプロジェクト管理ソフトを作りたい」とプロンプトを入力しました。
00:02:15すると自動的に「ブレインストーミング」スキルが起動し、憶測で作り始めるのではなく、スキルの機能を使ってまずプロジェクトの内容を特定しました。
00:02:24アプリの詳細、ターゲット、希望する技術スタック、そして各選択肢に伴う懸念事項など、多くの質問を投げかけてきました。
00:02:33例えば、選択したデータベースがブラウザで動作しサーバー側からアクセスできないため、セキュリティ上の問題があると指摘され、変更することにしました。
00:02:44私たちが納得するまで、細部にわたって明確化を繰り返しました。
00:02:48すべてを確認した後、次は3つのアプローチを提示され、その中から実装するものを選ぶように言われました。
00:02:55気に入ったオプションを選び、同時にいくつかの変更も提案しました。
00:02:58それが終わると、アーキテクチャ設計を提示してくれました。
00:03:02次にUXデザインが示され、ボードの取り扱い方法などが説明されました。
00:03:06プロジェクト全体の構造についても確認が行われました。
00:03:09すべての設計が承認されると、データがdocsフォルダにドキュメント化されました。
00:03:13ここが他のプラグインより優れている点で、Gitの指示が組み込まれており、手動で指示しなくても変更ごとにコミットが行われます。
00:03:22ブレインストーミング・スキルで計画が作成されると、実装計画スキルが呼び出され、計画書を作成してコミットしました。
00:03:29その計画では、大規模なアプリケーションを実装しやすい小さなタスクに分解してくれました。
00:03:33Claudeに標準搭載されている「プランモード」で十分だと思うかもしれません。
00:03:37しかし、最大の違いは、Claude Codeのプランニングが単なるエージェントのガイドであるのに対し、
00:03:44技術スタックについても必要最低限しか質問せず、UIライブラリなどの細かな決定を勝手に行ってしまう点です。
00:03:52対してSuperpowersは「強制」であり、現在のステップをパスしない限り次へ進めず、計画が確実に実行されるようにします。
00:04:01計画フェーズが終わると実装方法を尋ねられ、2つの選択肢から「サブエージェント駆動の実装」を選択しました。
00:04:09Claudeも自律的にサブエージェントを生成しますが、ここでは各サブエージェントにGitのworktreeを自動設定し、互いの作業が干渉しないようにしていました。
00:04:20同じディレクトリで作業すると上書きし合ってしまうため、エージェントをworktreeで隔離することは、作業効率を高める上で重要です。
00:04:28これを標準で処理してくれるのが、このプラグインの大きな特徴です。
00:04:31計画が確定すると、Claudeは実装フェーズへと移りました。
00:04:34タスクを開始し、完了すると、仕様に沿っているか検証するための独立したレビュー・サブタスクを立ち上げました。
00:04:41Gitへのコミットが終わると、別のスキルである「コードレビュアー」を使用しました。
00:04:46前のエージェントによってコードの品質が承認された後、初めて次のタスクが開始され、品質が満たされるまで反復されました。
00:04:54各タスクが完了・レビュー・コミットされ、前の工程が完了したことを確認した後、mainへマージするかPRを作成するか尋ねられました。
00:05:04今回は、すぐにmainブランチへマージするよう指示しました。
00:05:06するとすべてのworktreeを削除し、プロジェクト全体をmainブランチにコミットしました。
00:05:11ただし、サブエージェントや複数のスキルを使うため、コンテキストウィンドウの消費が激しく、一度の反復で約50%を使い切ることもありました。
00:05:24作成されたプロジェクトはシンプルで、基本的な機能を備えたものでした。
00:05:27次に、リストを現在の状態(未完了、進行中、完了)でソートできるようにしたいと考えました。
00:05:32また、個別のカードだけでなく、リスト自体も移動可能にする必要がありました。
00:05:36Claude Codeに戻ってこれを依頼しましたが、最初はプラグインのスキルを使わず、通常のClaudeのように動き始めました。
00:05:42これはコンテキストを消費しすぎたためと思われますが、Superpowersプラグインを使うようリマインドする必要がありました。
00:05:48リマインド後は、以前と同じようにタスクをこなし始めました。
00:05:52Claudeは別々のworktreeで動くエージェントを生成しましたが、彼らが優れているのは、TDDのアプローチをネイティブに採用している点です。
00:06:02これらのエージェントは、まず実装する各パーツのテストを記述します。
00:06:05テストが書かれると、テストケースを一切変更せずにコードを書き、そのテストに合格するように徹底します。
00:06:13強力なプロンプトキューにより、Claudeがステップを飛ばそうとした時の言い訳を封じ、テスト自体の改ざんを防ぎます。
00:06:23これらのキューは「スキルを使う可能性が1%でもあるなら、それを使え」といった明示的な指示になっています。
00:06:29これにより、各タスクが適切に構造化された方法で遂行されます。
00:06:32注意点として、タスクを順次実行するため、Claudeが単独で行うよりも完了までに時間がかかります。
00:06:41しかし、厳格なガイドラインを強制することで、アプリケーションが意図通りに動作することを保証します。
00:06:45先ほども言った通りコンテキストの消費が速く、わずか数個のタスクで残りが5%になってしまいました。
00:06:53そこで、次のタスクのブレインストーミング中にコンテキストを失わないよう、続行する前に「compact」コマンドを実行しました。
00:07:01会話を圧縮した後、次の機能実装を指示すると、同じように作業が開始されました。
00:07:07今回のセッションで最高だったのは、勝手な推測で実装せず、多角的な質問を繰り返して私たちの望み通りに構築してくれたことです。
00:07:17このプラグインは、カラムが空の時の表示といった、Claude単体なら推測で済ませてしまうような細かなエッジケースまで徹底的に明確化させました。
00:07:29このプラグインを使いこなすためのガイドラインは、AI Labs Proで公開しています。
00:07:33AI Labs Proは最近立ち上げたコミュニティで、今回の動画や過去の動画で紹介したテンプレートをすぐに利用できます。
00:07:42私たちの活動を支援したいと思ってくださる方は、ぜひチェックしてみてください。リンクは概要欄にあります。
00:07:48このツールのもう一つの強みは、「体系的なデバッグ」機能です。
00:07:52更新時にデータが保存されないバグが発生した際、あえて場所を指定せずに「体系的デバッグを使って修正して」と曖昧に依頼しました。
00:08:01すると体系的デバッグ・スキルが読み込まれ、作業は4つのフェーズに分割されました。
00:08:06第1フェーズでは、私たちへの質問を通じて根本原因の特定が行われました。
00:08:10回答に基づき調査と追跡が行われ、問題がある可能性が高いファイルが特定されました。
00:08:16根本原因が分かると、第2フェーズでバグの分離、第3フェーズで修正のためにバグ発生の具体的理由を絞り込みました。
00:08:25第4フェーズで修正を適用します。闇雲にコードを探るのではなく、構造的なプロセスを経て最後にテストで締めくくりました。
00:08:35ただ、UIの変更など、フルワークフローを必要としないタスクもあります。ちょっとした変更に15分も待つ必要はありません。
00:08:47フルプロセスが必要ないタスクについては、もっとシンプルな方法で実装できます。
00:08:51具体的なデザイン案がなかったので、実装はせず、ブレインストーミングとプランニングだけを行うよう指示してUI改善を依頼しました。
00:09:01するとデザインの各側面について質問され、私たちが望む視覚的な方向性を明確にしていきました。
00:09:08指示通り計画段階で停止したので、その後、通常のプロセスを使わずにその計画を実行するよう依頼しました。
00:09:15結果、フルプロセスよりも大幅に短い時間でUIが刷新され、それでいてコミット形式などはルール通りに守られていました。
00:09:25アプリは最小限のスタイルから、洗練された配色、ホバー状態、より機能的なレイアウトへと進化しました。
00:09:32得意なことはClaudeに任せ、失敗しやすい場面でだけフルプロセスを導入できるのが、このフレームワークの実用的なポイントです。
00:09:43今回の動画は以上です。チャンネルをサポートし、活動を継続させていただける方は、下の「スーパーサンクス」をお願いします。
00:09:51ご視聴ありがとうございました。それではまた次回の動画でお会いしましょう。