00:00:00AIコーディングフレームワークは増え続けており、どれもが
00:00:04エージェント開発に最適だと主張しています。
00:00:05しかし、最適な開発手法は、選ぶフレームワークだけで決まるわけではありません。
00:00:09他にも評価すべき要素があるのに、それを見落としてフレームワークが
00:00:14プロジェクトに合わないと不満を抱く人が後を絶ちません。
00:00:15ですが、それはフレームワークの問題ではなく、選択の問題なのです。
00:00:18各フレームワークは設計された用途において真価を発揮するものであり、
00:00:22万能な解決策など存在しません。
00:00:23これまでも当チャンネルでは様々なフレームワークを紹介してきましたが、先日、
00:00:28最近非常に注目を集めているものを見つけました。
00:00:31今回動画にするのは、それが単に「他を捨てるべき最高のツール」だから
00:00:35というわけではありません。
00:00:37実際にテストしたところ、既存のフレームワークでは対応できない
00:00:41ユースケースに適合する、極めてユニークなものだったからです。
00:00:43以前の動画では、BMADやSuperpowersといった複数のフレームワークを扱いました。
00:00:48選択を誤ると、オーバーエンジニアリングか準備不足に陥ることになります。
00:00:51今日ご紹介するのは「GSD(Get Shit Done)」というフレームワークです。
00:00:56その名前の理由はすぐにお分かりいただけるでしょう。
00:00:57この動画の最後には、どのフレームワークをどこで使うべきかが理解できているはずです。
00:01:00まずは最初のGSDから見ていきましょう。
00:01:02GSDは、何を構築すべきか確信が持てず、将来的に要件が変わる可能性があるため、
00:01:06すべての事前計画を立てたくない場合に最適です。
00:01:09これは何も作図が全く決まっていないという意味ではありません。
00:01:11各ステップで多くの試行錯誤が必要な製品を作りたい、という意味です。
00:01:15実験的なプロジェクトのMVPを、可能な限り迅速に
00:01:19構築したい場合に非常に有効です。
00:01:20GSDは広範なスコープを問いかけますが、BMADメソッドとは異なり、
00:01:25開発者をガチガチに縛ることはありません。
00:01:26初期スコープを基に、各実装ステップを段階的に計画します。
00:01:30後半のフェーズはシステムによって詳細に事前計画されていないため、
00:01:34後の段階で柔軟に変更が可能です。
00:01:35前例のないカスタムソリューションを構築するのであれば、
00:01:39GSDを採用するのが賢明でしょう。
00:01:41例えば、Cluelyのような「画面上の面接アシスタント」を作るとしましょう。
00:01:45ユーザー体験をどう設計するか、あるいは画面共有プラットフォームに
00:01:50検知されないようにするにはどうするかなど、考えるべきことが山ほどあります。
00:01:54計画段階では確定できず、実験が必要な要素が非常に多いのです。
00:01:59対照的に、BMADは真逆のアプローチを取ります。
00:02:02これは実装前に各フェーズの徹底的なドキュメントを作成する、
00:02:06段階的なフレームワークです。
00:02:07最初に何を作るかを明確にする必要がありますが、決して
00:02:11いい加減なものではありません。
00:02:12BMADの作成者が、ビジネスアナリストやデザインシンカーといった
00:02:17様々な役割のコンテキストを注ぎ込んだ「リサーチ部門」モジュールがあり、
00:02:21あらゆる角度から製品を検討することができます。
00:02:25これらはすべてプリロードされており、それに基づいてPRDやアーキテクチャ設計図を作成し、
00:02:30実装チームは分割されたタスクに従って
00:02:34作業を進めるだけになります。
00:02:35以前BMADを紹介した際、その「堅牢さ」を高く評価しました。
00:02:39プロンプト内のシステムが非常によく構築されているため、
00:02:43エージェントがタスクから逸脱することはありません。
00:02:44しかし、長期間使用した結果、要件の変更が必要になった際に
00:02:48システムが不安定になることが分かりました。最高性能のモデルでさえ、
00:02:52要件変更時の細かなディテールを見落としてしまうからです。
00:02:56また、実装が始まるまでの計画に時間がかかりすぎるという不満も聞かれますが、
00:03:00それは単に、そのような迅速なプロジェクトに
00:03:04使うべきではないからです。
00:03:05要件が完全に確定しており、すべての仕様が密接にリンクした、
00:03:09抜け目のないシステムを構築したい場合に使用すべきです。
00:03:14あるいは、クライアント向けのカスタムCRMや、独自のコミュニティプラットフォームのような
00:03:19コンベンショナルなシステムを構築する場合です。
00:03:21次にSuperpowersですが、これはTDD(テスト駆動開発)に基づいており、
00:03:25何を作るかが明確であることが前提です。
00:03:26エッジケースを見逃した時の代償が大きい場合に、TDDは重要になります。
00:03:30単なるNext.jsアプリへのStripe連携ではなく、例えば
00:03:34エージェントがユーザーに代わってアクションを実行するプラットフォームなどで、
00:03:39取り消しのつかないミスが許されないケースです。
00:03:41使い勝手としてはGSDに似ており、プロジェクトの概要から
00:03:46機能ごとに計画が進められます。
00:03:49しかし、最初にテストが生成されるため、試行錯誤の余地は少なく、
00:03:53事前にすべての計画を固めておくプロジェクトには不向きです。
00:03:57ただ、もしプロジェクトが両方の特性を持っている場合は、
00:04:02まずGSDで主要な機能を完成させてから、
00:04:06Superpowersを導入して開発を継続するという手法も可能です。
00:04:10SuperpowersとBMADについては、それぞれ詳細な動画がありますので、
00:04:15興味のある方は概要欄のリンクをチェックしてみてください。
00:04:19GSDは、サブエージェントを使用したり、タスクごとに独立したプロセスを
00:04:23立ち上げたりすることで、コンテキストの劣化を防ぐように設計されています。
00:04:28メインエージェントをクリーンに保ち、重要な課題に集中させることができます。
00:04:31現在、主要なAIコーディングエージェントの多くがサブエージェントに対応しているため、
00:04:35Claude Codeを使うかどうかは大きな問題ではありません。
00:04:37しかし、Claudeも最近アップデートされ、100万トークンのコンテキスト窓を持つ
00:04:42新しいOpus 4.6が登場しました。
00:04:43そのため、以前このチャンネルで紹介したコンテキスト管理のテクニックの多くは、
00:04:46もはやそれほど重要ではなくなっています。
00:04:49さて、インストールするには、コマンドをコピーして
00:04:53作業中のプロジェクトフォルダに貼り付けます。
00:04:54次に、どのエージェント向けにインストールするかを選択します。
00:04:57私の場合はClaudeだったので、それを選択しました。
00:04:59続いて、インストールのスコープを選択する必要があります。
00:05:02プロジェクトごとに異なるフレームワークを使う可能性があるため、
00:05:06設定をそのプロジェクト内に限定できる「プロジェクトレベル」がおすすめです。
00:05:10今回はNext.jsを使用するため、初期化したばかりのプロジェクトにインストールしました。
00:05:15インストールが完了すると、.claudeフォルダ内に「agents」「commands」「hooks」として
00:05:19GSDフレームワークが表示されます。
00:05:21Claude以外を使用している場合は、ルートの.agentフォルダに保存されます。
00:05:26特定のタスクに応じた複数のエージェントがありますが、通常のMarkdown形式ではなく、
00:05:30すべてXML形式で構造化されています。これには理由があります。
00:05:34ClaudeモデルはXML形式の指示をより正確に解析できることで知られており、
00:05:39使用するエージェントのパフォーマンスを最大限に引き出すための
00:05:43最適化なのです。
00:05:44先に進む前に、本日のスポンサーであるGensparkをご紹介します。
00:05:48多くの人が、ChatGPT、Claude、その他メディアツールなど、
00:05:52複数のAIサブスクリプションの支払いに追われています。
00:05:55Gensparkは、これらを1つに統合したAIワークスペースで、わずか11ヶ月で
00:06:02ARR 2億ドルを達成しました。
00:06:03スーパーエージェントシステムが、タスクに最適なモデルを自動で選択します。
00:06:07AIスライドの作成からAIシートの自動化、メディア生成、さらには
00:06:12現実の電話を代行する「call for me」機能まで、ワークフロー全体をカバーします。
00:06:16リサーチ結果をAIポッドに変換して、移動中に聴くことも可能です。
00:06:20さらにSpeaklyを使えば、15分の録音を瞬時に3,000文字の完璧なテキストに変換できます。
00:06:26そして驚くべきことに、
00:06:27Gensparkは2026年を通じて無制限のAIチャットと画像生成機能を提供しています。
00:06:31Nano Banana 2、GPT-Image、Flux、Seedream、Gemini 3.1 Pro、GPT 5.2、Claude Opus 4.6など、
00:06:40主要なトップモデルすべてに無制限でアクセスできます。
00:06:43固定コメントのリンクから、Gensparkでの開発を始めましょう。
00:06:46GSDの使用を開始するには、まずこの「new project」コマンドを使います。
00:06:50これを実行すると、エージェントは初期化プロンプトに従って動作を開始し、
00:06:54まずコードベースの調査を行います。
00:06:56今回は既にNext.jsを初期化していたため、既存のコードを検出して
00:07:01まずマッピングを行うかどうかを尋ねてきました。
00:07:04時間の無駄を避けるため、今回はスキップを指示しました。
00:07:06既存のプロジェクトで作業する場合はマッピングさせるべきですが、
00:07:11今回は空のテンプレートだったので不要です。
00:07:14その後、開発したいアプリのアイデアを伝えるよう求められます。
00:07:18すると、ターゲット層、機能、プロジェクトのスコープなど、
00:07:22多くの質問を投げかけてきます。
00:07:24しかし、GSDのQ&AセッションはSuperpowersのものとは明らかに異なります。
00:07:29Superpowersはこの段階でエッジケースを洗い出そうとします。
00:07:32一方、GSDは「何を作るか」の理解に重点を置き、
00:07:38「どう壊れるか」というストレステストには執着しません。
00:07:39十分な情報を収集すると、.planningフォルダ内にproject.mdを作成します。
00:07:43ここには説明、スコープ外の項目、コンテキストの制約、主要な決定事項など、
00:07:48質疑応答から導き出された内容が記載されます。
00:07:50ここでコンテキスト劣化防止の実践的な側面が見て取れます。
00:07:54project.mdをあえて短く焦点の絞った内容に保つことで、エージェントが
00:07:59大量のドキュメントに埋もれて本来の目的から逸れるのを防いでいます。
00:08:01作業はすべてGitで追跡されますが、単純なgit commitではありません。
00:08:05バックグラウンドでスクリプトが走り、コミット前にチェックを行い、
00:08:10すべてが基準を満たしていることを確認してからGitを実行します。
00:08:12計画が終わると、GSDはリサーチフェーズに移行します。
00:08:16複数のエージェントを生成し、アプリの様々な側面を並列で調査させ、
00:08:20これらをすべてバックグラウンドで実行します。
00:08:21リサーチが終わると、リサーチ統合(synthesizer)エージェントが起動します。
00:08:24各エージェントはタスクに適したモデルを使うよう調整されており、統合エージェントは
00:08:29重いOpusではなく、Sonnetモデルを使用します。
00:08:32GSDにはサブエージェントと適切なモデルの対応マップがあり、
00:08:36作業負荷に応じてリソースを無駄にしないよう最適化されています。
00:08:39リサーチ結果を要約するだけでなく、長期的な開発を妨げる可能性のある
00:08:44潜在的な問題や注意点もフラグ立てしてくれます。
00:08:46リサーチの統合が終わると、要件定義ステージが始まります。
00:08:49MVPに関する的を絞った質問を通じて、バージョン1に
00:08:55本当に不可欠な機能は何かを特定します。
00:08:56GSDは迅速な提供を重視しているため、V1が必要最小限になるよう徹底します。
00:09:01MVPを確認した後、ロードマップの構造を生成します。ユーザーがこれを承認すれば、
00:09:05プロジェクトの初期化は完了となります。
00:09:09内容を楽しんでいただけているなら、ぜひ「hypeボタン」を押してください。
00:09:14より多くの人にこのようなコンテンツを届ける励みになります。
00:09:17初期化フェーズが終われば、次はいよいよプランの実装です。
00:09:22前のフェーズで、プロジェクトは要件に基づいて4つのフェーズに分割されています。
00:09:26「議論をスキップ」するか「議論を進める」か、2つの作業方法を提示されます。
00:09:31このフレームワークにおける「議論」とは、プランを正しく理解しているか
00:09:35エージェントが確認するためのセッションのことです。
00:09:37要件を可能な限り明確にするため「議論」を選びましたが、
00:09:41事前の質疑応答で十分だと判断すれば、
00:09:45スキップしてすぐに構築を開始することもできます。
00:09:47セッションが終わると、.planning内のphasesフォルダに
00:09:52context.mdファイルが作成されます。
00:09:54このファイルには議論の全詳細が含まれ、エージェントと合意した
00:09:58フェーズの内容がマッピングされています。
00:09:59しかしGSDの理念通り、このファイルも簡潔にまとめられており、
00:10:04Claudeが本質に集中できるように配慮されています。
00:10:06次に、フェーズ1の計画を開始します。
00:10:08作成されたcontext.mdに基づき、専用のリサーチエージェントが
00:10:13Sonnetモデルを使って様々な側面を調査します。
00:10:17当初、ドキュメントを適切に参照する「Context 7」などが使われると思っていましたが、
00:10:21実際には「2025年」というキーワードを含むウェブ検索を使っていました。
00:10:27これは本来やるべきではない挙動です。
00:10:28Context 7 MCPを接続して、リサーチの根拠をより強固にすれば、
00:10:32より制御された結果が得られたはずです。
00:10:33皆さんが使う際は、ぜひそのようなMCPを接続して精度を高めてください。
00:10:37エージェントはresearch.mdを作成し、調査結果とともに、
00:10:42情報の信頼性を示す「信頼レベル」も記録していました。
00:10:46リサーチの後、プランを作成します。
00:10:48このプランには各フェーズの依存関係や要件がID付きで
00:10:52詳細にリストアップされます。
00:10:53しかしここからがGSDの本領発揮です。単に一方的にプランを書くのではなく、
00:10:57多角的な視点からプランをクロス検証し、
00:11:02実際に実装可能で目標に沿っているかをチェックするのです。
00:11:06専用の「計画エージェント」と「検証エージェント」を使用し、前者がプランを作成し、
00:11:11後者がそれをチェックして警告をフィードバックします。
00:11:14つまり、人間が手動で管理することなく、システム内で
00:11:19「敵対的プランニング」を自動実行してくれるのです。
00:11:20プランが確定しすべてのステップを通過すると、コミットが行われ、
00:11:24プランは「ウェーブ」と呼ばれる単位に分解されます。
00:11:25必要な数のウェーブに分割し、独立したタスクは並列化することで、
00:11:30サブエージェントが同時に処理できるようにします。
00:11:33専用のエージェントが作成されたプランを実行し、
00:11:37プロジェクトのウェーブを実装し始めました。
00:11:38完了すると、内部でPlaywrightによるテストを実行し、チェックポイントを検証します。
00:11:43スクリプトを作成し、実行後に削除してフォルダをクリーンに保つなど、
00:11:47多くの自動化タスクを裏側でこなしてくれます。
00:11:49その後、構築内容のサマリーと、自分で検証するための
00:11:53手順を提示してくれました。
00:11:54最初のイテレーションでは、アプリの見た目を確認するための
00:11:58プレースホルダーが配置されたスケルトンが構築されます。
00:12:01それ以降のイテレーションで機能を1つずつ実装していき、
00:12:05サイクルが終わる頃には完全なアプリが完成します。
00:12:06今回のイテレーション全体で13万8,000トークンを使用しましたが、
00:12:12100万トークンの窓があれば大した量ではありません。
00:12:13もし20万トークンの窓しかないエージェントなら、要約(compact)の合図が出るでしょう。
00:12:18しかし、各フェーズのドキュメントに依存しているため、コンテキストをクリアしても
00:12:23エージェントはどこから再開すべきかを把握できます。
00:12:25作業を承認すると、複数のテストが実行され、ウェーブ2も完了としてマークされました。
00:12:29その後、GSD検証エージェントが再度立ち上がり、実装が
00:12:34当初の目標と一致しているかをクロスチェックしました。
00:12:36検証が終わると、フェーズ1全体が完了としてマークされ、
00:12:41次のフェーズへ進むよう促されました。
00:12:43すべてのフェーズを経てアプリを実行したところ、以前はプレースホルダーだった
00:12:47機能がすべて、意図通りに動作するようになっていました。
00:12:49GSDは多機能な大規模アプリを構築する際には非常に強力ですが、
00:12:54シンプルなアプリを作る場合には、少し大げさ(オーバーキル)かもしれません。
00:12:59単純なものなら、Claudeなどのエージェント単体で十分であり、
00:13:03これほど徹底した計画は必要ないからです。
00:13:04しかし、計画フェーズに時間をかけすぎることなく、適切に計画された
00:13:08制御された実行を望むなら、間違いなくGSDを選ぶべきです。
00:13:11さて、これは一つのフレームワークに過ぎませんが、既存のものでは
00:13:16対応できず、独自のものを構築しなければならない場合もあります。
00:13:18その場合、実際に構築を始める前に知っておくべき原則があります。
00:13:22以前の動画で、より良いワークフローを構築するための原則を解説しました。
00:13:26終了画面にその動画が表示されているはずですので、
00:13:30検索する手間なくクリックしてご覧いただけます。
00:13:31今回の動画は以上です。
00:13:33チャンネルを支援し、動画制作を継続するために、
00:13:37ぜひAI Labs Proへの参加をご検討ください。
00:13:38ご視聴ありがとうございました。それではまた次の動画でお会いしましょう。