스크립트
00:00:00この動画は、Cloud Codeでの1,000時間以上の試行錯誤を
00:00:04丸ごと置き換えて、初心者、中級者、
00:00:08プロのどの段階にいるかに応じて、何に集中すべきかを解説します。
00:00:12デスクトップアプリからプロンプトのコツ、MCP、CLI、さらにはグラフエンジニアリングや
00:00:18独自のエージェントOSの構築といった高度なトピックまで幅広くカバーします。
00:00:22最後まで見れば、現在最強のAIツールを使いこなすための完全なロードマップが手に入ります。
00:00:27内容が盛りだくさんなので、早速始めましょう。まず初心者セクションで最初に話すべきなのは、
00:00:32Cloud Codeをどこで実行すべきかということです。これは意外と悩ましい問題です。
00:00:37技術的にはクラウド上のWebアプリから実行できますし、Cloud Codeのデスクトップ版もあります。
00:00:43そしてもちろん、ターミナルもあります。特に初心者の場合、この3つのうちどれを使うべきでしょうか?
00:00:48数ヶ月前なら、ターミナルか、VS CodeにCloud Codeの拡張機能を
00:00:51入れたものを勧めていたでしょう。しかし最近では、デスクトップアプリが劇的に進化しています。
00:00:56もしあなたが技術的なバックグラウンドを持たず、これらがすべて初めてだというなら、
00:01:01Cloud Codeのデスクトップアプリを使うことをお勧めします。確かにターミナルは、
00:01:07技術に強い人にとって常に強力な選択肢であり続けます。ですが、そうでなくても、
00:01:11無理して使う必要はありません。慣れていないなら、気後れしなくて大丈夫です。
00:01:16最近では、デスクトップアプリでしか使えない機能もたくさん登場しています。
00:01:21音声モードやブラウザ自動化などがその例です。また、デスクトップアプリでの作業には、
00:01:25インラインアーティファクトなど便利な機能が多く、ターミナルに触ったことがない人にとって圧倒的に使いやすい環境です。
00:01:31それに、デスクトップアプリの中でもターミナルを使用できるため、どちらか一方を選ぶ必要もありません。
00:01:36Cloud Codeのデスクトップアプリのダウンロードとインストールは非常に簡単です。
00:01:40「Cloud desktop app」と検索して最初のリンクを開き、
00:01:44インストーラーをダウンロードして実行するだけです。これでデスクトップアプリのインストールは完了です。
00:01:48では、このアプリの概要と本当に注目すべき点について駆け足で見ていきましょう。
00:01:53まず設定については、左側の「カスタマイズ」をクリックします。次に「一般」タブを開いてください。
00:01:57そして「Cloudへの指示」を確認してください。私のは空になっています。
00:02:01あなたのも空欄であるべきです。これらはグローバルな指示です。グローバルとは、
00:02:06すべてのプロジェクトやすべてのプロンプトなど、全体に適用されることを意味します。
00:02:11もしここに「すべての返答を韻を踏ませてほしい」などと設定したらどうなるでしょうか?
00:02:16なんと、すべての返答が韻を踏むようになります。ばかげた例ですが、要するに、
00:02:21今後Cloudとするすべてのチャットに関連するほど重要な設定が、本当にここにあるべきでしょうか?
00:02:26もしかしたらあるかもしれませんが、ハードルはかなり高いです。追加しようとしている内容が
00:02:31その基準を満たさないなら、空のままにしておくのが無難です。次に「機能」タブに移動します。
00:02:36ツールアクセスモードを「必要なときにツールを読み込む」に設定し、このページの他の項目もすべてオンにします。
00:02:41Cloud Codeタブでは、一般設定はすべてオンにしておくのがおすすめです。個人の好みに合わせた設定もあります。
00:02:47また、ローカルセッションの設定もすべてオンにするとよいでしょう。ただし、例外としてプルリクエストの項目があります。
00:02:52プルリクエストが何かわからない場合は、オフのままで構いません。少し高度な内容です。
00:02:58次に、Cloudをブラウザ内で操作できるようにするGoogle Chrome拡張機能「Cloud in Chrome」ですが、
00:03:03これも私はオンにしています。ただし、利用するにはGoogle拡張機能のダウンロードが必要です。
00:03:08スキル、コネクタ、プラグイン、メモリの詳細については後ほど解説するので、今は気にしなくて大丈夫です。
00:03:14続いて隣にあるアーティファクトですが、Cloud Code内では特に気にする必要はありません。
00:03:18ルーティンは実行する自動化処理に関連するもので、こちらも後ほど詳しく解説します。
00:03:23そしてここは、Cloud Codeで行った過去のチャット履歴が表示される場所です。「新規」をクリックすると、
00:03:29次のような画面が表示されます。何が表示されているのかを確認していきましょう。当然ですが、
00:03:33ここにはチャットウィンドウがあり、上部には4つの項目があります。
00:03:37「Local」、「1000」と表示されているもの、「main」、「work tree」、そして小さなプラスボタンです。
00:03:42「Local」は、Cloudが実際にどこで実行されるかを指定するものです。もしCloud、
00:03:47リモートコントロール、WSL、SSHなどの意味が分からなければ、99.99%の場合は「Local」にしておくべきです。
00:03:53WSL以外の項目はすべて、パソコンから離れているときにCloudを利用するための機能です。
00:03:58そのため、初心者の段階では使用しません。次に、「1000」と書かれている場所ですが、
00:04:03これは単に作業中のフォルダを示しています。ここをクリックすると新しいフォルダを開くことができ、
00:04:08パソコン内にある任意のフォルダをプロジェクト用として選択できます。例えば、
00:04:13デスクトップに「Cloud Code projects」というフォルダを作り、そこをワークスペースに指定できます。
00:04:18Cloud Codeで行うすべての作業はそのフォルダ内に保存されるため、1つ選ぶ必要があります。
00:04:23次に、「main」と「work tree」があります。これらはGitに関連する少し高度なトピックです。
00:04:26初心者向けに極端に簡潔に説明すると、Gitは作業内容を保存するための仕組みです。
00:04:32Gitがわからなくても、今回はGitのレッスンにするつもりはないので、
00:04:36「main」のままにしておき、「work tree」のチェックは外しておいてください。その隣にあるプラスボタンは、
00:04:40追加のフォルダを追加するためのもので、実質的に作業が2箇所にコピーされるようになります。
00:04:44次に権限設定です。「auto」をクリックすると、5つの異なるモードが表示されます。これらのモードとは何でしょうか?
00:04:48これは、Cloud Codeにユーザーの許可なしで実行できる権限をどこまで与えるかを指示するものです。
00:04:55スペクトラムの一方には「manual」があります。これは、何かを実行するたびに
00:04:58「これを行ってもいいですか?あれを行ってもいいですか?ファイルを編集してもいいですか?」と常に確認してくるモードです。
00:05:03もう一方の極端な設定では、権限チェックをバイパスし、ファイルのダウンロード、インストール、削除、編集など、
00:05:07やりたいことを何でも実行できます。少し怖い設定ですね。その中間に位置するのが「auto」です。
00:05:12基本的には権限バイパスと同じですが、Cloud Codeが実行しようとしているコマンドを分類モデルが検証し、
00:05:17危険かそうでないかを判断してくれます。危険であれば処理を中断するため、これがデフォルトになっているのには理由があります。
00:05:22普段はこの設定にしておくべきです。他にいじるのは「plan」モードくらいで、これについては後ほど詳しく説明します。
00:05:26プラスボタンを使うと、スクリーンショットなどのファイルを追加できます。その隣にはマイクボタンがあります。
00:05:30そして右側には、モデル、思考の労力レベル、コンテキストウィンドウが表示されています。
00:05:34どのモデルを使うべきでしょうか?それは加入しているプランによって異なります。
00:05:39月額20ドルのプランの場合、Fableを自由に使うことはできません。利用枠をすぐに使い切ってしまいます。
00:05:42そのため、Opusを使うことになります。もし月額100ドルや200ドルのMaxプラン
00:05:46(5X、20Xなど)を利用しているなら、基本的にはFableで作業することをお勧めします。
00:05:51群を抜いて最高のモデルだからです。ただし、問題は利用枠の制限です。
00:05:58右側の小さなアイコンをクリックするとわかるように、コンテキストウィンドウなどがあります。これについても後で触れますが、
00:06:03利用制限にはいくつかの種類があります。5時間ごとの制限、週間制限、そしてFable専用の制限です。
00:06:071週間の利用枠のうち、Fableに割り当てられるのは半分だけです。そのため、早い段階でFableを使いすぎないようにする必要があります。
00:06:14そこで本当に考えるべきなのが労力レベルです。これは「low」から「ultra code」まで調整できます。
00:06:21深く考えるほどパフォーマンスは向上しますが、それは比例関係ではありません。
00:06:27extra highからultra codeに上げたら、パフォーマンスが10倍になるかというと、そうではありません。
00:06:35向上するのは1%程度なのに、コストは5倍以上になることもあります。実際、
00:06:39特に初心者の段階で解決しようとするほとんどの問題は、
00:06:43mediumを超えるレベルを必要としません。むしろlowでも十分にこなせるでしょう。
00:06:48個人的には、かなり複雑な問題に直面している場合や、利用枠のリセット間近で
00:06:52使い切っても問題ない時を除き、大半はFableのmediumで作業しています。
00:06:57そのため本日は、バランスの取れた「Fable 5 medium」に設定します。労力を抑えれば消費量も少なくなり、
00:07:03最高性能には届かなくても、通常は必要十分な仕事をしてくれます。
00:07:07次にプロンプトについて話しましょう。新しいプロジェクトのプロンプトを書き始める時はいつでも、
00:07:12プランモードを使用することを強く強くお勧めします。なぜでしょうか?
00:07:18プランモードを使うことで、Claudeが何かに手をつける前に、お互いの認識が一致しているか会話で確認できるからです。
00:07:22そしてさらに重要なことに、ただ会話するだけでなく、Claudeの方から質問してくれます。
00:07:27というのも、非技術的なバックグラウンドから来た場合や、自分の専門分野外の
00:07:33プロジェクトに取り組む場合によくあることですが、AIを使う際に問題になるのは、
00:07:38自分自身が知らないことがあまりにも多すぎるという点です。
00:07:43「自分が知らないことすら知らない(未知の未知)」という状態は大きな壁です。
00:07:49それを解決唯一の方法は、Claude Codeに、自分が存在すら知らなかった暗がりに光を当ててもらい、
00:07:54気付かせてあげることです。
00:07:58プランモードはその問題を解決する最も簡単な方法です。なぜなら、質問を強制してくれるからです。
00:08:02ステップAからステップZに行きたいという漠然としたアイデアはあるものの、何をすべきかわからない時は、
00:08:07必ずプランモードを使いましょう。さて、Claude Codeにプロンプトを送る際の方法についてです。
00:08:12ここ1〜2年ほど前までは、これが大きな話題になっていました。
00:08:15ですが、いまだに何か魔法のようなプロンプトがあって
00:08:19特定の形式に従う必要があると考えている人がいます。例えば、目的はこれこれで、
00:08:22コンテキストはこれで、こういう風に振る舞ってほしい、というような形式です。そんなことをする必要はありません。
00:08:25必要なのは、マイクを買って、マイクのスイッチを入れ、
00:08:29Claude Codeに思考の赴くままに話しかけることです。では、これから構築するこのウェブサイトの計画として、
00:08:33架空のAI分析企業のウェブサイトを作ることにしましょう。
00:08:41名前は「Lighthouse」にしましょう。私がすることはこれだけです。あとはとりとめもなく話します。
00:08:46ここには何の計画もありません。こんな風に聞こえるでしょう。架空のAI分析企業
00:08:54「Lighthouse」のためのウェブサイトを作りたいです。ウェブサイトに何を載せたいのか、正直よく分かりませんが、
00:09:02最後のコールトゥアクション(行動喚起)としては、私たちに通話予約を入れてもらえるようにしたいと思っています。それが主なCTAになりますね。
00:09:07ターゲット層に関してですが、小規模なスタートアップ向けにしましょう。
00:09:12ですので、それ以外に何が抜けているのか自分ではよく分かりません。思いつかなかったことで、関連すると思われる質問があれば何でも聞いてください。
00:09:18ここで注目してほしいのは、最後の部分です。「とにかく質問してほしい、自分が思いついていないことも聞いてほしい」と言ったところですね。
00:09:22プランモードに入っていれば、それは自動的にある程度行ってくれます。ですが、Claudeにプロンプトを送るときはいつでも、
00:09:27プロンプトの最後にそれを付け加えることができます。「自分は何を考えていないだろうか?」などと付け加えるのです。
00:09:31「私にどんな質問がありますか?」といった具合です。これにより、再びClaude Codeとの間で
00:09:37やり取りが生まれるようになります。このようなやり取りの中で、Claudeが質問を投げかけてくるような状況を作り出すことができます。
00:09:41では、この架空のサイトの目的は何でしょうか?まあ、デザインや開発の練習用、ということにしておきましょう。
00:09:44Lighthouseは実際に何をするのでしょうか?プロダクト分析とAIインサイト提供、としましょう。
00:09:49どのくらいの規模にすべきでしょうか?ランディングページのような形にしましょう。そして、デザインの雰囲気はどうしますか?
00:09:56クリーンで明るいSaaS風にしましょう。次に、サイトの構築に使用するテックスタック(技術スタック)はどうするかと聞かれています。
00:10:06プレーンなHTML、CSS/JSにしますか? Next.js+Tailwindにしますか? それともAstro+Tailwindにしますか?
00:10:12これらが何のことか分かりますか?正直なところ、これらの見当がつきますか? テックスタックが何かすら知っていますか?
00:10:18もし答えが「いいえ」なら、どうすべきでしょうか? おすすめのものをそのまま選べばいいのでしょうか?
00:10:23はい、しかし違います。多くの人が陥る問題は、「テックスタックが何かなんてどうでもいいや、
00:10:28プレーンなHTMLでいいからおすすめにしてくれ」と言って、それをそのままクリックしてしまうことです。
00:10:33問題なのは、これらのモデルが非常に優れているため、それでもかなり良い出力が得られてしまうという点です。
00:10:38しかし問題は、質問の意味を理解しないまま、おすすめを何度も何度も押し続けるというその行動を繰り返すことにあります。
00:10:41最大の問題は、あなたと、街頭で見つけた適当な通行人をパソコンの前に座らせて
00:10:45全く同じことをさせた場合とで、何の違いもなくなってしまうということです。あなたの行うことの独自性や強みは一体どこにあるのでしょうか?
00:10:50つまり、あなたは非常に替えがきく存在になってしまいます。さらに重要なことに、何も学んでいないのです。
00:10:54これらのモデルがどれほど優れていても、やがて非常にユニークで、Claudeも最適なアプローチを知らないような独自の個人プロジェクトに直面する時が来ます。
00:10:59何も学ばず、ただ「おすすめ、おすすめ、おすすめ」とクリックし続けることでClaude Codeの使い方を覚えてきたとしたら、
00:11:04実際何が起きているのか全く理解できない状態になってしまいます。
00:11:08もうコードを書く勉強をする必要は一切ありませんが、AIソフトウェアエンジニアリングの基礎、つまり全体像や、
00:11:13これらの構成要素がどのように組み合わさっているのかについては、学び始める必要があります。
00:11:17そしてそれを実現する唯一の方法は、このような質問に直面したときに、ただ「おすすめ」を押すのではなく、次のように言うことです。
00:11:23「テックスタックとは実際何なのか説明してくれますか? よく分からないのです。これらの選択肢もよく理解できていません。
00:11:30だから、今何を見ているのか簡単に内訳を説明してくれませんか?」これだけです。質問をもっと詳しく説明するように伝えるのです。
00:11:34そして、それを何週間も、何ヶ月も、何年も、何度も何度も繰り返していけば、やがて実際の土台を築くことができます。
00:11:40単なる「バイブコーダー」の caricatured(カリカチュア)のような存在にはならずに済むのです。これは非常に重要です。
00:11:44そしてこれが、何かを本当に学びたい場合に、Claude Codeとのプロンプティングや対話において持つべきメンタリティです。
00:11:49なぜなら、それがあなたをより良くしてくれるからです。では、価格設定やプロダクトの機能を追加しましょう。いいですね。
00:11:53通話予約のCTAはどのように機能させますか? 偽の予約フォームを作りましょう。
00:11:58これで準備完了です。ここで確認できるように、「テックスタックとは何か」という質問をブレイクダウンし、
00:12:02それぞれの項目についてさらに詳細に説明してくれます。繰り返しになりますが、これらすべての専門家になる必要は全くありません。
00:12:07しかし、これを何度も行い、自分にとって意味のあるタイミングで様々な疑問を深掘りしていくうちに、
00:12:12徐々にパズルのピースが組み合わさっていくようになります。これはそんなに複雑なことではありません。
00:12:21プログラミングは難しいですが、誰もあなたに本当の意味でのソフトウェアエンジニアになることを求めているわけではありません。
00:12:27しかし、テックスタックが何であるかを学ぶことはできますし、これらの異なる言語がどのようなもので、
00:12:31それぞれのユースケースでどうすべきかを学ぶことはできます。さて、プランが提案されると、
00:12:35画面の右側にそれが表示されるのがわかります。デスクトップアプリ内のプランモードの優れている点は、
00:12:39これが表示されたら、いつでも特定の項目を選択できるということです。例えば、ターゲット層ですが、
00:12:47小規模なスタートアップだけにしたいわけではないとしましょう。中規模企業もターゲットに加えたいとします。
00:12:52そのようにしてコメントを入力すると、
00:12:56このようにコメントが追加されていきます。コメントをどんどん追加していき、作成されたプランに対する
00:13:01ちょっとしたメモのようなものを作成することができます。また、任意のプロンプトを追加することもできますし、
00:13:07いつでも「さあ、これを修正しよう」と言うこともできます。これにより、中規模企業もターゲット層に追加されました。
00:13:13プランが気に入ったら、「承認」または「自動モードで承認」を選択します。
00:13:22必ず「自動モードで承認」を選択するようにしてください。そうしないと手動モードで実行が始まってしまい、それは望まないからです。
00:13:27そのため、「自動モードで承認」を選択します。これで、私たちのためにウェブページが構築されました。
00:13:31この段階から、Claude Codeに関する中級者向けのスキル、ヒント、およびテクニックへと移行していきます。
00:13:37しかしその前に、本日のスポンサーである私からの短いお知らせです。ちょうど昨日、
00:13:43Claude Codeマスタークラスの完全にアップデートされたバージョンをリリースしました。
00:13:48本日の動画では表面しか触れなかったすべてのトピックについて、さらに深く掘り下げています。
00:13:52非技術者でありながら、この素晴らしいツールの使い方を本当にマスターしたいと考えている方にとって、完璧な内容となっています。
00:13:57手に入れたい方は、chase AIから見つけることができます。固定コメントにリンクがあります。
00:14:01それでは、ウェブサイトの構築を続けましょう。しかしここで実際に焦点を当てたいのは、この下にある
00:14:06小さな丸いアイコンです。私たちの利用状況を示していたこれですね。実は、ここにはコンテキストウィンドウも表示されるのです。
00:14:12コンテキストウィンドウをクリックすると、何が実際に容量を圧迫しているのかの具体的な内訳が表示されます。
00:14:17コンテキストウィンドウは、いくつかの理由から常に把握しておく必要がある非常に重要な指標です。
00:14:22まず最初の理由はパフォーマンスに関係しています。しかしこれを理解するには、
00:14:27トークンとコンテキストについて理解する必要があります。極端に簡略化して言うと、Claude Codeに送信するすべての単語と、
00:14:31返ってくるすべての単語は「トークン」とみなされます。
00:14:37トークンは大規模言語モデルにおける通貨のようなものであり、コンテキストウィンドウは予算です。
00:14:41つまり、各セッションで実質的に使用できる100万トークンの予算があります。そしてこれまでに15万6千トークンを消費しました。
00:14:47一見すると素晴らしいですね。まだ15%しか使っていません。あと84万4千トークン使えます。
00:14:51まあ、そうとも言えます。問題は、このコンテキストウィンドウが埋まるにつれて、
00:14:57実際にはClaude Codeのパフォーマンスが悪化していくということです。
00:15:03脳の中に詰め込まれすぎてパンク状態になっていると考えてください。もし100万トークンのうち
00:15:0980万トークンが消費されている状態で、その直近の80万トークンの間で何が起きたかについて質問すると、
00:15:16特に真ん中あたりで起きたことについて尋ねる場合などは、モデルは苦戦するようになります。
00:15:25このため、パフォーマンスを低下させないために、常にコンテキストウィンドウに気を配る必要があります。
00:15:31この低下はある程度線形であり、厳密な科学的基準があるわけではありません。したがって経験則として、
00:15:3830%、40%、そして確実に50%(50万トークン)に達したあたりで、
00:15:43このセッションを続ける必要があるかどうかを必ず立ち止まって考えるべきです。私の場合、それは実質30%の時点で始まります。
00:15:49ここで確認できるように、コンテキストウィンドウは私たちのメッセージ以外にも、
00:15:53システムツールやスキルといった要素で埋め尽くされますが、メッセージが大きな割合を占めています。
00:16:00コンテキストウィンドウの30%、あるいは50%に達したとしましょう。その場合の選択肢は何でしょうか?
00:16:06実際には1つの選択肢しかありません。それは新しいチャットを開始することです。そう、新しいチャットを始めるのです。
00:16:11これを行うにはいくつかの方法があります。スラッシュコマンドを使って、
00:16:15例えば `/clear` を実行することができます。
00:16:22` /clear` を実行すると、すべてがクリアされ、完全に新鮮な、まっさらなコンテキストウィンドウで最初からやり直すことができ、
00:16:31最高のパフォーマンスを得ることができます。もう一つの選択肢は、`/compact` を実行することです。
00:16:39`/compact` を実行すると、Claude Codeはこれまでの会話履歴全体を確認し、
00:16:43新しい要約を作成した上で、その要約を引き継いで新しいチャットを開始します。
00:16:48は、slash compactを実行することです。slash compactを実行すると、Claude Codeは
00:16:53これにより、同じフォルダ内でも新しいチャットを開始できます。そして、いつでも古いチャットを参照することができます。
00:16:57ここで怖いと感じるのは、特にウェブアプリを主に使ってきた場合です。ウェブアプリでは、
00:17:02行った会話が文字通りすべてであり、会話を破棄するとすべてを忘れてしまうからです。
00:17:06しかし思い出してください。私たちは何をしているでしょうか? 私たちは特定のフォルダ内で作業しており、
00:17:11ウェブサイトを作成するためにフォルダ1000の中にいるのです。
00:17:16忘れないでください。私たちがここでやっているのは特定のフォルダー内での作業であり、
00:17:201000番のフォルダーの中でウェブサイトを作成しています。そのため、この会話をすべて破棄したとしても、
00:17:26ファイルやこれまでに書いたすべてのコードを確認し、何が起きているのかを把握することができます。
00:17:31したがって、新しいチャットを開始することは、ゼロからのやり直しではありません。そのため、恐れる必要は
00:17:36まったくありません。コンテキストウィンドウがいっぱいになりかけていて、最初からやり直すのが怖い場合でも大丈夫です。
00:17:40やり直せばいいのです。最悪の場合でも、slash compactでその要約を作成させれば問題ありません。ただ現時点では、
00:17:45まだ16%しか消費していません。だから大丈夫です。では、このウェブサイトについて少し話しましょう。このウェブサイトは
00:17:53ダサいです。実際、かなりいまいちで凡庸な作りになっています。ちなみに、これはClaude Codeの
00:18:00デスクトップアプリ内のブラウザペインで確認しています。そのため、ここではさまざまな操作が可能です。たとえば、
00:18:05これを開いて特定の要素を選択し、プランモードのときと同じようにコメントを残すことができます。
00:18:11そうするとそれがプロンプトになり、「おい、ここゴミだろ」といった注釈を実際に追加して、
00:18:17細かい修正をここで行うのが非常に簡単になります。やりたければですが、ただ、私たちが解決すべき大きな
00:18:24問題はこのウェブサイトと同じように、なぜこれほどひどい見た目なのかという点です。さて、これはかなり
00:18:28ひどい見た目をしています。なぜなら、a) どのように見せたいかについての十分なコンテキストを与えなかったこと、そして
00:18:35インスピレーションやスクリーンショットを全く与えなかったからです。私たちが伝えたのは、クリーンなSaaS製品が欲しいということだけでした。
00:18:39中級セクションのテーマの一つは、コンテキストエンジニアリング、つまりClaude Codeにアクセス権を与える能力です。
00:18:44あなたの思考やビジョンだけでなく、外部ツールやスキルにもアクセスさせ、より良い仕事ができるようにするためのものです。
00:18:50この問題を解決するための、いわば2段階のプロセスです。ここから、「スキル」の概念に飛び込んでいきます。
00:18:55スキルは、Claude Codeのパフォーマンスを向上させる上で、最も理解しマスターしなければならない重要な
00:19:00要素です。さて、スキルを最も単純化した状態で見ると(もう少し複雑になりますが)、それは単なるプロンプトです。
00:19:06Claude Codeに特定の方法で特定のことを実行するように指示するものです。例えば、フロントエンドのデザインスキルはたくさんあり、
00:19:11それらはすべてより良いウェブサイトを作るためのものであり、本質的にはClaude Codeに指示を与えるプロンプトに過ぎません。
00:19:17「おい、このウェブサイトを作るときは、特定のグラデーションを避けてくれ、AIっぽく見えるものを避けて、
00:19:22Claude Codeに、おい、このウェブサイトを作る時は特定のグラデーションを避けて、AI特有の
00:19:27それでは、実際にスキルをどのように手に入れればよいのでしょうか?Claudeアプリの中で見つけることができます。
00:19:32では、実際にスキルはどうやって手に入れるのでしょうか?Claudeアプリ内で見つけることができます。「カスタマイズ」へ行き、
00:19:37私が持っているいくつかのスキルがここに表示されます。プラグインもあり、これもスキルの一種となり得るので、少しグレーゾーンです。
00:19:44特にアプリに関してスキルとプラグインについて話すとき、それらは同じものと考えて差し支えありません。プラグインには
00:19:49複数のスキルを含めることができますが、それはある種恣意的なものです。例えば、プラグインに移動して
00:19:54ブラウズすると、まず何が表示されるでしょうか?Anthropic公式のプラグインが表示されます。これには
00:19:59フロントエンドデザインプラグインが含まれており、それは単なるフロントエンドデザインスキルです。これをインストールすると、
00:20:04(私のはすでにインストールされていますが)Claude Codeにフロントエンドデザインスキルが追加されます。これが
00:20:10実際のフロントエンドデザインスキルのプロンプトそのものです。これは公式のスキルであり、実際に確認することができます。
00:20:15公式のClaude Code GitHubに掲載されています。この全体をコピーして、中に戻り、
00:20:19これは公式の Claude Code の GitHub にあります。この全体をコピーしてここに戻り、
00:20:24フロントエンドデザインに関連する何かを行いたいときに、毎回そのようなことはしないでしょう。
00:20:30その代わりに、UIでお見せしたように単にスキルを追加し、「フロントエンドデザイン」と実行するだけです。そう、スラッシュを
00:20:34入力すれば、これで呼び出されます。これは、先ほどの全体をコピー&ペーストしたのと同じことです。
00:20:40スラッシュを入力すれば機能が呼び出されます。これは先ほどの全体をコピーして貼り付けたのと同じです。
00:20:44スラッシュを使わなくても、自然言語でフロントエンドデザインのスキルを使ってと言えばいいのです。
00:20:49フロントエンドデザイン関連のスキルが複数ある場合です。その状態で、
00:20:53単に「ウェブサイトを作っているんだ」と言っただけでは、どれを選べばいいか分からないかもしれません。ですから、すべて同じようなことを行うスキルが複数ある場合は、
00:20:58Claudeを正しい方向に誘導する必要があります。さて、現時点で実際に追加できる最も重要なスキルは、
00:21:02ウェブデザインの枠を超えて、プラグインに戻り、ブラウズから
00:21:05スキルクリエーターに進むことです。これが追加できる最も重要なスキルです。
00:21:10なぜなら、これは他のスキルを作成できるようにするスキルであり、スキルのパフォーマンス測定、
00:21:16テストの実行、評価の実行、ベンチマークなどが含まれているからです。これについては後ほど詳しく説明します。
00:21:21しかし、ここを見ていくと分かるように、選択できるスキルはそれほど多くありません。
00:21:27世の中には10億個ものスキルが出回っているのは誰もが知るところです。では、通常スキルはどこで見つかるかというと、
00:21:31ここに見られるようなGitHubです。例えば、別のフロントエンドデザイン関連のスキルを使いたいとしましょう。
00:21:35そして「impeccable」スキルを探していて、それをGitHubで見つけたとします。さて、これを実際にどうやってインストールすればよいでしょうか?
00:21:40説明の中にステップバイステップで方法が記載されていますが、多くの場合、それは少し面倒です。
00:21:45お気に入りのスキルを見つけたら、GitHubからURLをコピーし、Claude Codeの中に移動して、
00:21:49そのスキルを貼り付け、「このスキルを追加して」といった指示を出します。すると文字通り、
00:21:53あなたのレパートリーにそのスキルが追加されます。そしてそこからは、お見せしたように呼び出すだけです。
00:22:01スキルに関しては、かなり高度なことまで行うことができます。特に「スキルクリエーター」スキルを持っている場合はなおさらです。
00:22:07例えば、この動画を終えて、このウェブページに新しい要素をたくさん追加したとしましょう。
00:22:12プロンプトの実行、ウェブサイトの作成、機能の追加、好きなものの追加といったすべての作業が終わった最後に、
00:22:16次のようなことができます。「スキルクリエーターを使って、このセッションのメッセージ履歴全体を確認し、
00:22:21今日私たちがやったことすべてを見て、それをスキルにしてくれ」と指示するのです。
00:22:26もし何度も何度も繰り返す作業があるなら、それらをスキルに変換することができます。
00:22:30さらに後ほど、それらのスキルを自動化に変換する方法もお見せします。
00:22:35スキルが非常に強力である理由は、AIが行う作業を体系化(コード化)できるからです。
00:22:39AIの課題の一つは、それがやや非決定的であるという点です。同じことを10回頼むと、
00:22:4410通りの異なる方法で行うかもしれません。決定論的ではないのです。しかし、スキルを使用することで、
00:22:48ある程度決定論的にし、Claudeが物事を行う方法をより細かくコントロールできるようになります。
00:22:53それがスキルが非常に重要である理由です。さて、先ほど言及したように、スキルの枠を超えて、
00:22:58ここにはさらにコンテキストを追加する必要があります。そこでこれから行うのは、
00:23:04このウェブサイトをもう少し見栄え良くするために追加できるスクリーンショットをいくつか検索することです。
00:23:08Pinterestに行って「SaaSランディングページ」と入力したところ、この画像が見つかりました。なかなかクールに見えました。
00:23:12ですので、これから行うことは、このスクリーンショットをここにドロップして、次のように伝えることです。
00:23:16「フロントエンドデザインスキルを使ってこのウェブページを再設計してほしい。
00:23:20では、このスクリーンショットをここにドロップしてみましょう。
00:23:25そして、フロントエンドデザインスキルを使ってこのウェブページを再デザインしてほしいと伝えます。
00:23:30実際、3つのバージョンを作成し、ブラウザペインに表示して選べるようにしてほしいのです。
00:23:37どれも似たようなスタイルにしつつ、違いが分かる程度には異ならせてほしいと思います。
00:23:40AIは私たちの要望通りに動いてくれました。これを見ると、3つの異なるバージョンが表示されています。
00:23:45先ほど見ていたものから、いかに大きくかけ離れているかが分かります。
00:23:50これに使ったのは、Anthropicの一般的なフロントエンドデザインスキルと、
00:23:55スクリーンショットに添えたごくシンプルなプロンプトだけです。それでは、1つ目を見てみましょう。
00:24:03V1のフルサイズです。これはなかなかカッコいいですね。次にV2ですが、色はあまり好みではありません。
00:24:11レーダーの見た目は悪くないですが。そして最後にV3ですが、正直に言って、
00:24:17いかにもありふれたAI生成といった感じです。私はV1がとても気に入りました。かなりイケてると思います。
00:24:24そこで、V1で進めようと指示することにします。
00:24:26これは文字通り、1枚のスクリーンショットと1つのスキルでコンテキストを注入するだけで、
00:24:31まったく異なる最終結果を生み出せるという、その強力さを示すものです。それでは次に、
00:24:36外部ツールを取り入れ、外部アプリケーションをClaude Code自体に接続することで、
00:24:42Claudeがそれらを操作できるようにし、Claude Codeをさらに強力にする方法について話しましょう。
00:24:47私たちがアプリから離れる必要はほとんどありません。これを行うには、実質的に3つの方法があります。1つ目は、
00:24:53カスタマイズからコネクタへ移動する方法です。これらの中には非常に簡単に接続できるものもあり、
00:24:57すでに設定したことがあるかもしれません。例えばGmail、Googleカレンダー、Googleドライブなどです。
00:25:02これにより、Claude Codeはこれらのアプリケーションと連携し、通常は何らかのガードレールを挟みつつ、
00:25:06プロンプトを通じてそれらを制御できるようになります。ですから、「Gmailを読んで」とClaude Codeに指示すれば、
00:25:11接続されているため実行してくれます。現在、主要なアプリのほとんどには何らかのコネクタが用意されています。
00:25:16そのため、「追加」からコネクタを閲覧すれば、探しているものが見つかる可能性が高いです。2つ目は、
00:25:22プラグインを使用する方法です。先ほども言ったように、これらすべての境界線は非常に曖昧です。
00:25:28コネクタと同様に、規模が大きく人気のあるサービスであれば、大抵は専用のプラグインが存在します。
00:25:34ブラウズを開くと、最初はAnthropicのプラグインがたくさん表示されますが、これは実質的にスキルです。
00:25:39しかし、「パートナー」タブに移動すると、GitHubやSupabaseといったものが見つかります。
00:25:44それをクリックするだけで、内部で何が行われているかが分かります。今回は、これがGitHub MCPです。
00:25:50コネクタと同様に、何らかのプラグインを追加すると、Claude Codeを通じて外部アプリケーションを操作できるようになります。
00:25:55しかし、MCPやプラグイン、コネクタのいずれでもない3つ目の存在があります。それがCLIのようなものです。
00:26:01そして3つ目が、MCPやプラグイン、コネクタではなく、CLI(コマンドラインインターフェース)のようなものです。
00:26:08何が違うのでしょうか? 実用的なアプリケーションや、実際に私たちが
00:26:13気にするべき点という観点では、少し技術的な違いがあります。多くの場合、大きな違いはありません。
00:26:19一般的に、CLIはMCPよりも多くの機能を提供する傾向があります。また、CLIにはスキルが含まれていることもよくあります。
00:26:26そのため、外部の何らかのアプリケーションを扱う場合、つまりCloud Codeの中で作業していて
00:26:31別の何かと通信する必要がある場合、これら3つの方法のどれで追加できるかを把握する必要があります。
00:26:36コネクタやプラグインをご覧いただいたように、CLIを介してここで行うこともできます。
00:26:42やり方は非常にシンプルで、Cloud CodeにCLIの追加を指示するだけです。例えばGitHubの
00:26:49CLIの場合、ターミナルの中にいれば実際のコマンドを実行できますが、URLをコピーして使うこともできます。
00:26:54Cloud Codeの中に入って、「ねえ、これがGitHubのCLIだから、進めて
00:27:01このCLIを追加して」と指示することができます。まさにその通りに実行してくれます。そこから先は、Cloud Codeに
00:27:08そのCLIを呼び出すスキルをほぼ与えたようなものです。そのCLIが持つ機能を使って、
00:27:14あらゆる作業を行わせることができます。GitHubであれば、リポジトリを作成し、たった今作成したすべてのコードを
00:27:19そのリポジトリにアップロードし、リポジトリを編集することができます。さらに一歩進めて、
00:27:25Vercelのようなものについて考えてみましょう。ご存じない方のために説明すると、Vercelは
00:27:31実際のウェブサイトをホストするためのウェブアプリケーションです。私たちはウェブサイトを作成し、それをウェブ上に公開して
00:27:35実際のURLを持ちたいと考えています。Vercelを使えばそれが可能になります。Vercel内のこのような
00:27:40ダッシュボードにアクセスしてすべて自分で処理する代わりに、VercelのCLIを検索してみてはどうでしょうか? おや、
00:27:46VercelにもCLIがあるようです。これら2つのアプリケーションだけで何ができるかというと、
00:27:52GitHubコネクタがあるか確認できます。あります。GitHubプラグインがあるか確認できます。あります。GitHub
00:27:57CLIがあるか確認できます。あります。そのいずれかを追加し、Vercelも追加します。これで、
00:28:04作成したウェブサイトを取り込み、GitHub内にそのリポジトリを作成し、それをVercelに自動的に接続できる
00:28:09パイプラインが完成します。Cloud Codeから、日常の自然言語で話しかけるだけで、
00:28:14デプロイパイプライン全体を実質的に構築できてしまいました。すべてを自動でやってくれます。
00:28:19ここでの一番のポイントは、Cloud以外のものを扱うときはいつでも、
00:28:24本当にCloudでそれをコントロールできるかどうかを自問する必要があるということです。なぜなら、Cloudのほうが
00:28:28上手にコントロールできる可能性が高いからです。特に、そのアプリケーションの仕組みに詳しくない場合はなおさらです。
00:28:33それがCLIであれ、MCPであれ、コネクタであれ、あまり重要ではありません。どれか1つを選べばよいのです。
00:28:38また、自分でわざわざ探しに行く必要もありません。例えば、Cloud Codeに次のように質問したとします。
00:28:44「ねえ、このウェブサイトをデプロイしようと考えているんだ。GitHubやVercelというものがあるって聞いたんだけど、
00:28:51あまり詳しくないんだよね。CLIや、使えるかもしれないMCPもあるって聞いたんだけど、
00:28:58ウェブサイトのホスティングにそれを使うのが理にかなっているか調べてくれる?もしそうなら、
00:29:03必要なCLIを追加して、追加できたらそのまま
00:29:08デプロイパイプラインを設定して、適切に接続してもらえる?」このように指示を出せばいいのです。
00:29:12「ねえ、いくつかツールがあるらしいから、もしCLIがあれば追加して、実行して」と言うだけです。
00:29:16それだけでいいのです。プログラミングのプロでなくても大丈夫です。
00:29:21迷ったら、何がベストプラクティスか、CLIがあるかをCloud Codeに尋ねてみてください。検索してくれますからね。
00:29:26それを実行すると、ちなみに私はこれらをすでにインストールしているので、おそらく
00:29:29「もうインストールしてあるよ」と返ってくるでしょう。もし使ったことがなければ、
00:29:33アカウントを作成するだけで、セットアップを案内してくれます。Cloud Codeのような
00:29:37エージェント型のコーディング基盤がますます普及するにつれて、ほぼすべての
00:29:42アプリがCLIやコネクター、MCPの何らかのバージョンを提供するようになるでしょう。つまり再び、
00:29:47Cloudがすべてを動かすということです。このプロンプトで、ログイン方法も当然案内してくれます。
00:29:51まだ行っていない場合は、GitHubリポジトリを作成してくれます。ウェブサイトのすべてのコードが
00:29:55実質的にクラウド上に存在し、Vercelとの連携も設定してくれます。これでライブURLが取得でき、
00:30:02ここですぐに確認できます。このように実際のURLを持ち、LighthouseのサイトがVercelアプリになっており、
00:30:07誰にでも共有できます。繰り返しますが、GitHubを開く必要はありましたか?いいえ。行く必要はありましたか?
00:30:11いいえ。すべてCloud Codeから制御できます。そしてGitHubとVercelが連携しているため、
00:30:17ここCloud Code内でウェブサイトに行った変更を、公開中のウェブサイトに
00:30:22反映させたい場合は、指示するだけで実行してくれます。このデプロイパイプラインは、外部ツールを
00:30:28Cloud Codeに取り込む一例に過ぎません。続いて、さらに高度なトピックに移りましょう。
00:30:34自動化のようなトピックについて触れていきます。長期的
00:30:39なタスクにどうアプローチすべきかについても話します。スラッシュゴール、ループエンジニアリング、グラフエンジニアリングなどの
00:30:44話題を取り上げます。また、モデルルーティングについても少し触れ、
00:30:48CodecsやGPTモデルのような他のモデルをワークフローにどう組み込むかについて解説します。
00:30:52そして最後に、Cloud Codeの上に追加できるカスタムタイプのハーネスやUIについていくつか紹介します。
00:30:57このようなものを使うか、あるいはObsidianのコマンドセンターのようなアプローチをとるかです。それではまず、長期的
00:31:02なタスクとループエンジニアリングについて話しましょう。これは自動化のようなトピックにも繋がってきます。長期的
00:31:07なタスクと言った場合、それはループエンジニアリングやグラフエンジニアリングのようなものを指しています。
00:31:11一体どういうことでしょうか。私たちが言いたいのは、何らかのタスクや、達成すべき目標があるということですが、
00:31:16それはCloud Codeに無限の回数実行させる必要があるようなものかもしれません。
00:31:21毎日毎日実行されるような処理かもしれません。そして理想的には、
00:31:25毎日実行されるだけでなく、自己改善していくようなものであることが望ましいのです。
00:31:29こうした長期間のタスクには、実質的に3つの部分があります。トリガーと、
00:31:37タスク、そして何らかの成功基準です。もっとも、すべての長期的タスクがループであるとは限りません。これは
00:31:43単に、Cloud Codeが完了するまでに2時間、4時間、12時間、あるいは
00:31:48何日もかかると予想されるようなタスクかもしれません。そして、コンテキストウィンドウがいっぱいになるたびに
00:31:53停止してほしくないわけです。タスクが完了するまで、ずっと動き続けてほしいのです。
00:31:57Cloud Codeには、これを実行するための組み込みコマンドが存在します。「slash goal」というものです。
00:32:03slash goalは、Cloud Codeに完了させたい複雑なプロジェクトがあり、
00:32:07プロセスの全体を通じてつきっきりで監視したくない場合に最適です。ただし、1つだけ必要な特定のものがあり、
00:32:12それは「成功」に関するものです。成功を定義できなければなりません。なぜなら、渡すのはslash goalだけではないからです。
00:32:20プロンプトも渡す必要があります。そしてそのプロンプトは、成功基準が何であるかを示すものである必要があります。
00:32:28例えばCloud Codeに達成させたい目標があるとして、何をさせたいのか?
00:32:32「あれやこれややってほしい」と説明するだけでは不十分です。最終的な状態はどうあるべきなのでしょうか?なぜなら、
00:32:38スラッシュゴールを実行したときに何が起きるかというと、コードやその他の手段を使ってその目標を達成しようと試みるからです。
00:32:44最初のイテレーションを実行します。そして、そのイテレーション結果を
00:32:49自分で定義した成功基準と比較します。成功基準を満たしていれば、それで完了です。満たしていなければ、
00:32:552回目のセッションを立ち上げ、再度実行します。そして成功基準を
00:33:00チェックします。うまくいったか?いいえ。であれば、もう一度実行します。実行のたびに、
00:33:05過去のイテレーションを振り返って何がうまくいって何がダメだったかを確認しますが、
00:33:10目標に到達するまで、この内部ループのようなものを継続します。これは非常に強力です。これは
00:33:16ラルフ・ループ(Ralph loops)を知っていれば、それに少し似ています。そのため、成功基準が
00:33:22可能な限り客観的であることが重要になります。単に「かっこいいウェブサイトを作るのが目標だ、
00:33:28イケてるやつね」と言ったところで、何がかっこいいのかどうやってわかるでしょうか?何がイケているのかどうやってわかるでしょうか?
00:33:34各実行の終わりに実際にそれを確認して、完了したかどうかをどう判断できるでしょうか?
00:33:39したがって、基準が主観的であればあるほど、結果の質は落ちていきます。必ずしも悪くなるというわけでは
00:33:44ないにしても、自分のニーズを満たしてくれる可能性が低くなります。しかし、そうは言っても
00:33:49goalは間違いなくループエンジニアリングの一種ですが、こちらはほぼ明確な終わりがあるものです。
00:33:57スラッシュゴールを実行して、これが永遠に実行され続けることを期待するわけではありません。しかし、
00:34:03永遠に実行させたいと私たちが思うようなケースもあります。それでもなお、goalと同じように
00:34:07動作してほしいのです。オンデマンド、あるいはスケジュールに従ってトリガーしたい。完了させたいタスクがあり、
00:34:12成功基準があり、さらに自己改善もしてほしい。なぜなら、これもまた
00:34:17常に自分の出力を振り返り、何らかの成功基準と照らし合わせて比較しているという点で、ある種の自己改善だからです。
00:34:23では、いわば永遠にループし続けるようなものを作成したい場合はどうなるでしょうか?
00:34:28おそらくそれは毎日実行される自動化であり、自分自身で継続的に改善していってほしいようなものです。
00:34:33ここでこれら3つのステップを継続しますが、次に何らかのロギングフェーズを追加する必要があります。
00:34:37それでは例として、カスタムループを見てみましょう。ここにClaude Codeがあります。
00:34:45私たちがClaude Codeに毎日やってほしいことは、何らかの
00:34:50朝のレポート、あるいは朝のブリーフィングを作成することです。ウェブにアクセスさせ、
00:34:54AIのニュースを見つけてほしい。Gmailも確認してほしい。そして最後に、何らかのドキュメントを渡してほしい。つまりClaude Codeは
00:35:00YouTubeを確認し、TwitterやReddit、そしてGmailを確認するのです。
00:35:05情報をすべて収集してスクレイピングし、統合・要約して、
00:35:09レポートとして私に届けてくれます。これを毎日行いたいのです。では、どうすればここにループ
00:35:16エンジニアリングの基本を取り入れられるでしょうか?基本的には、これら4つの要素を設定するだけです。では、
00:35:23トリガーはどうなるでしょうか?例えば、毎日午前7時に実行されるように設定するとしましょう。
00:35:29タスクは何でしょうか?タスクは先ほど説明した通りです。Webサイトをスクレイピングし、統合して、
00:35:34レポートを作成する。これで設定は完了です。では、成功基準は何でしょうか?ここが
00:35:39難しいところですよね。なぜなら、何が優れたレポートと言えるのかという部分は、やや主観的だからです。
00:35:45そこはある程度、主観的な条件を加えることもできます。例えば、
00:35:49「すべてのレポートに、YouTubeの動画を最低5本、X(旧Twitter)の投稿を5件、Redditの
00:35:54投稿を5件含めること。また、Gmailに関してA、B、Cに言及すること」といった具合です。そのため、
00:35:59いくつか工夫できることはありますが、Pythonアプリケーションでループ処理を行い、
00:36:03特定の速度に到達させるというような単純な話ではありません。そして最後に、ロギングがあります。そのため、
00:36:09これらすべてのレポートを何らかのデータベースに保存することができますよね。そうすることで、
00:36:14Claude Codeは常に過去の作業を振り返り、これからの作業をすでに完了した内容と比較できるのです。
00:36:19理論的な観点から言うと、これがまさにループエンジニアリングの本質です。では、これを
00:36:24Claude Codeの中で実際に落とし込むと、どうなるでしょうか?
00:36:28ステップの1つ目は、何らかのスキルを作成することです。なぜなら、今何について説明したでしょうか?
00:36:34そう、まさにスキルについて説明しました。コマンドやトリガーによってClaude Codeが実行し、
00:36:39情報をスクレイピングしてレポートにまとめる一連の処理を行うスキルを作成できるのです。
00:36:44そして、そのスキルの中にすべての情報を特定のデータベースへ送信する処理も含めることができます。
00:36:48そのため、本格的なループエンジニアリングを行うためのステップ1は、スキルクリエーター・スキルを呼び出すことです。
00:36:54先ほどその方法をお見せしたのを覚えているでしょうか。あとは、先ほど説明したようなスキルについて記述するだけです。
00:36:59そこから、十分に満足のいく状態になるまで、そのスキルを手動で何度も何度も実行します。
00:37:03そのスキルに満足できたら、次のような内容を盛り込みます。「データベースにログを記録したい。
00:37:09スキルを実行するたびに、過去の実行結果を振り返り、より良く改善できるか確認してほしい」といった記述です。
00:37:15ここに自己改善の側面が表れてきます。理想を言えば、過去のレポートのすべてをスコア化できるのが望ましいです。
00:37:20そうすれば、出力の基準となる何らかの客観的な指標を持つことができますが、まずはシンプルに
00:37:26それをスキルへと落とし込むことになります。一度スキルにしてしまえば、あとはそれを
00:37:31常時実行される自動化処理に変換するだけです。これはClaude Code内では非常に簡単です。
00:37:36なぜなら、ルーティンに変換するだけで済むからです。画面左側の「ルーティン」をクリックし、
00:37:41「新規ルーティン」、そして「ローカル」へと進むと、何をするでしょうか?
00:37:46毎日特定の時間にそのスキルを実行するように指示するだけです。つまり、「ループスキル」のような名前で、
00:37:53ループスキルを実行する形になります。
00:38:02そして指示内容には、文字通り「/loop skillを実行する」と記述します。このように、
00:38:11スキルクリエーターを使ってClaude Code内で作成する際には、次のように伝えることもできます。
00:38:14「自己改善できるようにこれを試している。データベースやループエンジニアリングの基本原理を活用したい」などです。
00:38:18Claude Code内のスキルクリエーターの素晴らしいところは、面倒な作業をすべて代行してくれ、
00:38:22ここでの目指すゴールを理解してくれる点です。そしてそこから、スケジュールを設定するだけです。
00:38:27基本的には毎日実行するような設定になるでしょうが、1時間ごと、平日の特定日、カスタムなど、
00:38:31思い通りに設定できます。これがループエンジニアリングの実践的な応用例です。
00:38:37知っておくべきことはほぼこれだけです。なぜなら、ループエンジニアリングの先には、
00:38:42グラフエンジニアリングという話が出てくるからです。グラフエンジニアリングはもう少し複雑になります。
00:38:48しかし実際に何が起きているかというと、先ほど見たように、ここには様々なループ
00:38:53エンジニアリングの仕組みが存在していました。少しこれまでの内容をリセットしてみましょう。ここにはループエンジニアリングの
00:38:59要素がすべて揃っていますよね。例えば、「あるエージェントがすべてをスクレイピングし、監視し、PDFを作成し、
00:39:04評価を受ける」という仕組みです。では、トリガー、タスク、成功基準、
00:39:12そして評価や情報のロギングといった一連のループ処理を、
00:39:16プロセスのすべてのステップで行ったらどうなるでしょうか?例えば、YouTubeのスクレイピングを行うエージェントを1つ用意します。
00:39:20つまり、トリガーがあり、YouTubeデータを取得してスクレイピングし、過去の
00:39:25実行結果と比較してスクレイピングの精度を自己評価し、改善していく仕組みです。さらにそれをTwitter(X)の取得や、Redditの取得、
00:39:30Gmailの取得、その他の取得でも同様に行うとします。つまり、プロセス全体に対して1つの巨大なループを作るのではなく、
00:39:36巨大なループを1つ用意する代わりに、いくつものマイクロループを1つの実行プロセス内に
00:39:41ネストさせます。それがグラフエンジニアリングです。これについては別の動画で詳しく解説しました。
00:39:46少し複雑に思えるかもしれませんが、本質的にはただループするエージェント同士が互いに通信しているだけです。
00:39:52それだけの仕組みです。ほとんどの人にとっては完全にオーバースペックであり、通常ここまで必要ありません。
00:39:57しかし概念としてはそういう仕組みになっています。それでは話題を動的ワークフローへと切り替えます
00:40:02そしてウルトラコードについてです。ウルトラコードとは一体何でしょうか?マックスエフェクトとはどう違うのでしょうか?
00:40:08ウルトラコードが何をするかというと、解決しようとしている問題に合わせてカスタムハーネスを基本的に構築してくれます。
00:40:14実践的な意味で言うと、抱えているどんな問題に対処するためにも、おそらく多数のサブエージェントを起動することになります。
00:40:19これは極めて効果的である一方、非常に高コストになる可能性もあります。
00:40:25動的ワークフローの一例が、スラッシュディープリサーチです。これは基本的に、あらかじめ構築された動的ワークフローのようなものです。
00:40:34ウェブアプリ上でディープリサーチを実行する場合の動作とも非常に似ています。ディープリサーチを実行すると
00:40:39大量のサブエージェントがスポーンし、それらのサブエージェントがさまざまなタスクを実行するという仕組みになっています。
00:40:44そのため、例えば次のような質問を投げかけたとします。「クラウドコード内での動的ワークフローの最適なユースケースをディープリサーチして」
00:40:59すると通常のウェブ検索のように、例えばGoogle検索を行うために5個ほどのサブエージェントをスポーンさせるのではなく
00:41:03それよりもはるかに多くのエージェントをスポーンさせます。私の経験では、100を超えるサブエージェントが
00:41:08スポーンすることもありました。これらはさまざまなタスクを実行します。実際にウェブへ出向いてデータをスクレイピングし
00:41:12見つかったデータを検証する対立型エージェントを作成してから、見つかった情報が実際に妥当なものか比較対照を行います。
00:41:18その後で情報の統合を行い、最終的なレポートを出力するという流れになります。
00:41:22ここで確認できるように、今回のスコープに対しては、質問を5つの検索アングルに分解すると判断されました。
00:41:28必要なのは5つの並列ウェブ検索エージェントのみとのことです。現在fableを利用している私たちにとっては好都合です。
00:41:33そして上位15件のソースを抽出し、各主張に対して3票の対立検証を行ってから最後に統合処理を実行します。
00:41:45画面の右側でその動作を確認できます。6つのエージェントをスポーンさせ、すべてのエージェントが開始直後からかなりのトークンコストを消費するため
00:41:50すでに31万4,000トークンを消費しています。ですから、先ほどの話は冗談ではありませんでした。
00:41:57さて、ウルトラコードを実行する際、特に指定をしない場合、例えば私がfable 5でウルトラコードを実行しているとすると
00:42:02これらのサブエージェントに対してもfableが使用されることになり、これが問題を引き起こす可能性があります。
00:42:07もし「ウェブ検索エージェントを100個スポーンさせる」などと言い出した場合はどうなるでしょうか。こうした状況を避けるためのプロンプトを指示することで
00:42:13サブエージェントを20個までに制限する、50個までに制限するといった指定が明示的に可能です。
00:42:17あるいは、サブエージェントにはSonnetを使用したい、またはOpusを使用したいといった指定もできます。
00:42:22そのため、その時点で利用しているモデルに必然的に縛られるわけではありません。
00:42:26ここでAnthropicが動的ワークフローについて解説した非常に優れたブログを公開しています。
00:42:31内部で何が行われているかというと、10個から数百個の並列サブエージェントを単一のセッション内で実行する
00:42:36オーケストレーションスクリプトが記述されており、結果が手元に届く前に作業の検証を行っています。
00:42:40以下にさまざまな種類の動的ワークフローの例を示します。覚えておいていただきたいのは、ウルトラコードで動的ワークフローを実行する際
00:42:45クラウドコードが問題に最も適したワークフローを自動的に判断するという点です。それがこれらのいずれかである場合もあれば
00:42:50まったく異なるものである場合もあります。例えば「分類して実行(classify and act)」では、何らかのタスクを与えると
00:42:54分類エージェントが最適なサブエージェントを選択します。「ファンアウトと統合、および対立検証」については
00:42:59これら2つを組み合わせたものが、まさにディープリサーチで行っていることになります。
00:43:02何らかのタスクを与えてこの情報を探させると、ウェブ全体にファンアウトしてすべての情報を収集し
00:43:07さらに情報を私たち向けに統合する前に、何が実際に理にかなっているかを対立検証によって確認します。
00:43:12他にも「生成してフィルタリング」といった手法があり、これは何らかの問題を解決するためにさまざまな試行を行い
00:43:16審査員を含めてトーナメント方式で比較検討する仕組みです。さらに「完了するまでループ」という手法もあり
00:43:21これは先ほどのループエンジニアリングと非常に似ています。先ほどの話に戻ると
00:43:25先ほど開始したディープリサーチの実行では、103個のエージェントが含まれ、600万トークンが消費されたことが分かります。
00:43:32そしてこれらはすべてFable上で実行されました。そのため、これがどれほどコストがかかるものか想像がつくでしょう。
00:43:38実際に提示されたレポートを見ると、ご覧の通り非常に深みがあり、21個もの異なるソースが含まれています。
00:43:43あらゆる例の中で、ディープリサーチが最も頻繁に使用するものになるだろうと私は考えています。
00:43:47もしあなたがかなり複雑なプロジェクトに着手しようとしており、計画モードに入る前の段階でしっかりと準備を整えたいと考えているなら
00:43:52ディープリサーチの使用を強くお勧めします。これにより、Claude Codeは構築を始める前に自ら調査を行い、状況を把握することができます。
00:43:57次にモデルルーティングについて少しお話します。本質的には、外部モデルをどのようにClaude Codeに取り込むかという話です。
00:44:01外部のモデルをどうやってClaude Codeに取り込むかという点です。いくつかの主要な
00:44:07プレーヤーであるChatGPTなどのモデルは素晴らしいですし、Sol 5.6も最高です。LunaやTerraは非常にトークン効率が良いです。
00:44:13そして、心に留めておかなければならないのは、AIシステム全般、つまりこうしたモデル一般についてですが、
00:44:20自分自身の成果物を評価するのがあまり得意ではないということです。もしClaude Codeに自身の作業を評価させたり、
00:44:25Opusに自身の作業を評価させたり、自分で自分の成果物を評価させようとしても、ほぼ間違いなくこう言うでしょう。
00:44:30「素晴らしい仕事ができた」と。では、自分たちでは評価できないような優れた成果物が得られたとき、この問題をどう解決すればよいでしょうか?
00:44:34それは自分たちの専門分野の外にあります。そのコードが本当に優れているかどうか、自分ではよく分かりません。
00:44:38では、別のフロンティアエージェントを連れてきて、私たちの作業をチェックしてもらえばいいのではないでしょうか?その方法として、
00:44:43さまざまなスキルやプラグインを活用します。実は、Claude Code向けの公式なCodexプラグインが提供されています。
00:44:47これはOpenAI自身によるものです。これを使うことで、Claude CodeからCodexを呼び出すことができるようになります。
00:44:53このURLをコピーしてClaude Codeに貼り付け、「インストールしたい」と伝えるだけで簡単に導入できます。
00:44:58ここから、すでに作成したコードに対してCodexに敵対的レビューを行わせたり、
00:45:04Codexを使ってプロダクトの特定の機能の実装に取り組んでもらうことも可能です。特に
00:45:09プランニングの段階に関して言えば、私は「Grill Me Codex」というスキルを作りました。これはMatt Pocockの「Grill Me」スキルと、
00:45:13Codexによる敵対的レビューを組み合わせたものです。どういうことかというと、あなたとFableが対話して、
00:45:20計画を策定し、その計画がCodexにルーティングされます。そしてCodexとFableの間で、
00:45:25最大5ラウンドのやり取りが行われます。CodexがFableの作成した内容を確認し、
00:45:29「ここは間違っている、理由はこうだ」と指摘します。Claudeがそれに対して反応し、「分かった、修正する」あるいは「同意しない」と返します。
00:45:35そして合意に達するまで、このやり取りが続けられます。これにより、
00:45:39各モデルが自身の成果物の評価に苦労するという問題を解決し、第二の視点を得ることができます。その結果、
00:45:46複雑なケースでも自信を持って先に進むことができるようになります。このアプローチはさらに一歩進めることも可能で、
00:45:51もしCodexのようなものを使いたくなく、代わりにさらに安価なモデルや、
00:45:55ローカルモデルに頼りたい場合にも応用できます。要するに、Opus、Haiku、Sonnet、Fableだけに縛られる必要はないということです。
00:46:02スキルとして活用すれば、何でも好きなものを取り込むことができます。繰り返しになりますが、
00:46:07それを行うにはスキルクリエーター・スキルを使えばよいのです。そして最後になりますが、
00:46:11ここやここに見られるような、カスタムのエージェント型OS構造があります。これらはすべて、Claudeの上にカスタムのラッパーを構築し、
00:46:17他の場所では得られないようなビジュアルインターフェースを提供するものです。最終的には完全にカスタムメイドのものです。
00:46:24さて、こうしたものの本当の価値は、こうしたビジュアルのラッパーそのものにあるわけではありません。もっとも、私にとっては
00:46:27役に立っています。これでソーシャルメディアの指標を確認できますし、クリックするだけでさらに詳細な分析を得ることもできます。
00:46:33GitHubやHacker Newsなどで何が起きているのかを示しながら、毎日すべてのリサーチを1箇所で完了させることができます。
00:46:37これらのボタンはすべて、オンデマンドで実行できる特定のスキルや自動化に紐づいています。そしてこちら側には、
00:46:41ほぼ全く同じものがありますが、音声モードも備わっています。しかし先ほども言ったように、真の価値はこうしたクールなビジュアル層にあるわけではありません。
00:46:45本当の価値は、その背後にあるスキルアーキテクチャにあります。
00:46:51こうした仕組みの根本的なアイデアは、Claudeを実質的にあなたの個人的なアシスタント、あるいは組織内の実際の作業員に変えることにあります。
00:46:58あなたが普段行っているあらゆる作業をこなせるようにするのです。ですから私にとって、ここでご覧いただいているのは、
00:47:03日々の業務で使用しているすべてのスキルが、自分にとって重要なさまざまなドメインにわたってマッピングされたものです。
00:47:09つまり、ご覧の通りメモリに関連する項目があり、Gmailやカレンダーといった生産性に関するものもあり、
00:47:13そうしたすべてが含まれています。リサーチ、コンテンツ、コミュニティ、AIエージェンシー、営業などに関するものもあり、
00:47:18これらの要素の1つひとつが、かつては自分で手動で行っていたタスクです。
00:47:22自分で手動で実行する代わりに、現在ではそれらを特定のスキルにマッピングしてあります。
00:47:27そして理にかなっている場合は、それらのスキルを自動化へと昇華させています。全体像という観点から見ると、
00:47:31それこそがまさにエージェント型OSの正体です。日々のタスクにマッピングされた一連のスキルと自動化の仕組みなのです。
00:47:36では、このようなシステムをどのように構築すればよいのでしょうか?まあ、これについてはすでに少しお話ししましたよね?
00:47:41つまり、スキルを構築するということです。スキルクリエーター・スキルを使い、
00:47:44マイクをオンにして日々の業務や週ごとのルーティンについての思考の流れをそのまま言葉にし、
00:47:49それらを理にかなっているものであればスキルに落とし込めるかClaude Codeに尋ねるのです。
00:47:53もし可能であれば、実際にそれを実行します。そしてそのプロセスを何度も繰り返します。
00:47:58そうするうちに、自分の生活の大部分を自動化してくれるスキルの蓄積を作り上げることができます。そのすべての背後にあるのがObsidianです。
00:48:02Obsidianを活用することで、私たちが行うすべてのことをマークダウンのファイルシステムとして簡単に追跡できるようになります。さて、Obsidian
00:48:08それ自体がClaude Codeのできることに対して劇的なアップグレードをもたらすわけではありませんが、すべての履歴を実際に追跡し、
00:48:15メモリを持たせることを可能にしてくれます。これは、以前にも耳にしたことがあるかもしれない
00:48:20「カルパチー式Obsidian RAGシステム」の基礎となるものです。非常に簡単な復習として、
00:48:24私がObsidianのメモリシステムについて言っていることの意味は、単なるファイル構造のことです。つまり、一貫性のある
00:48:28ファイル構造であり、Claude Codeはその中で生活しています。これにより、物事がどこに格納されるべきかが明確になります。
00:48:33これもまた、カルパチー式のやり方としてよく言及されるものです。仕組みは非常にシンプルです。エージェント型OSが常駐するフォルダがあり、
00:48:38私の場合はそれを「vault(ヴォルト)」と呼んでいます。vaultの中には、このようなファイル構造が用意されています。
00:48:42全く同じである必要はありませんが、基本理念として、それらのフォルダの1つに「raw」セクションを設けています。
00:48:48ここは生データやリサーチ結果が保存される場所です。
00:48:52その次に「wiki」セクションがあり、さらに「output」セクションがあります。「wiki」セクションでは、
00:48:56これらすべての生データを取り込み、さまざまなレポートやWiki形式の記事へと変換します。
00:49:01例えば、Claude CodeにAIエージェントに関する大量のリサーチを行わせたとしましょう。その生情報をここに放り込むと、
00:49:06「AI agents」というサブフォルダの下に、AIエージェントに関する記事が作成されます。次に、
00:49:11そのAIエージェントのWikiから何か別のものを作成したいとします。例えば、スライドデッキに変換したい場合、
00:49:17そのスライドデッキは「output」セクションに送られることになります。こうしたシンプルなモデルによって、
00:49:23膨大な数のファイル、場合によっては数十万ものファイルを扱うことが可能になります。
00:49:29そしてこの仕組みは、A:人間である私にとっても非常に分かりやすく、B:Claudeにとっても非常に分かりやすい、
00:49:35明確な方法で整理されています。Claudeがこのファイル構造を簡単にナビゲートできるようになれば、
00:49:41より正確性が増し、最終的には消費するトークンも少なくなります。この全体の鍵となるのは、
00:49:45プロセスのあらゆる段階に存在するインデックスファイルのようなものです。ファイル構造のより深い階層に進むたびに、
00:49:50その内部で何が起きているのかを伝える「index.markdown」ファイルが基本的に存在しています。
00:49:55つまり、これは実質的な目次のようなものです。もしここまでで混乱したとしても、さらに深く掘り下げたコンテンツがたくさんあります。
00:49:58しかし、こうしたエージェント型OSシステムの考え方というのは、ビジュアルラッパーが先ほどお話しした
00:50:05カスタムスキルのアーキテクチャの上に配置され、Obsidianメモリ層によって支えられているということです。
00:50:10これにより、自分がこれまで行ってきたすべてのことを把握しやすくなり、Claude Codeによるナビゲーションも
00:50:15少しだけスムーズになります。こうしたシステムがどのように動作するかというと、「おい、ここでは実際には
00:50:19Claude Codeを使っていないじゃないか」と思われるかもしれませんが、私たちは「Atlas Claude」を使用しており、これは「-p」オプションを使っています。つまり、
00:50:28単に「claude」と実行するのではなく、「claude -p」を使用することで、ターミナルにコマンドが送信されます。これはClaudeが
00:50:34バックグラウンドで実質的に不可視の状態で実行されることを意味します。これに関して一時期ちょっとした騒動があり、
00:50:38Anthropic側がそれに対して異なる料金を請求する予定であり、通常の使用量とは別枠になると言われていましたが、
00:50:41現在ではそれは撤回されています。したがって、こうしたシステムは他のものと全く同じように費用対効果が高いものとなっています。
00:50:47このようなエージェント型OSやClaude OSを作成することは、100%必須というわけではありません。
00:50:53しかし、すべてのバックボーンとなるこうしたスキルアーキテクチャを構築するにはやはり必要不可欠だと思います。
00:50:59もちろん、私の正確なセットアップをそのまま手に入れたいという場合は、それも「Chase AI plus」の中に用意しています。
00:51:03本日の内容はここまでにしておきます。本当に多くのさまざまなトピックについて取り上げました。
00:51:07これらは、初心者からより高度なレベルに至るまで、どこに焦点を当てるべきかという点で最も費用対効果が高いと感じたものです。
00:51:12ですので、いつものように感想を教えてください。私のClaude Codeマスタークラスを
00:51:17実際に手に入れたい方は、ぜひ「Chase AI plus」をチェックしてみてください。
00:51:20ここでは、私たちが今回扱った内容の多くを、さらに詳細な形でカバーしています。
00:51:26それでは、また次回お会いしましょう。