Anthropic社が提供する強力なコーディングエージェント「Claude Code」のソースコードが誤って流出し、オープンソースコミュニティに大きな波紋を呼んでいる。この流出により、Claudeモデルと見事に連携する独自のシステム構造や並列処理、パーミッション設定、コンテキストの圧縮方法など、これまで非公開だった多くの技術的秘密が明らかになった。動画では、この流出がもたらす開発者へのメリットや、競合他社に与える影響、そしてClaude Codeを使いこなすための実践的なテクニックについて詳しく解説している。

Claude Codeのソースコードが流出
Claude Codeが誤って流出してしまいました。TwitterユーザーのFried Riceがここで公開しています。これがClaude Codeの全ソースコードが入ったzipファイルです。これで私たちは地球上で最高のエージェント型コーディングハーネスの一つを覗き見ることができるようになりました。そしてそこから本当に多くのことを学びました。Claude Codeのソースコードはnpmレジストリのmapファイルを介して流出したんです。
ですから皆さんも今すぐClaude Codeをダウンロードすることができます。AnthropicはおそらくDMCAのテイクダウン要求にかなり積極的になるでしょうが面白いことがあります。誰かがすでにClaude Codeのコードベース全体をPythonに変換しておりこれにより所持することが完全に合法になったんです。ただ書き直されたというだけで著作権の行使が不可能になります。そしてすでに人々はClaude Codeをローカルで実行しています。
なぜこれが大事件なのか
なぜこれがそんなに大事件なのかご説明しましょう。まず第一に24時間経たないうちにソースコードの流出はXだけで2200万回の閲覧を記録しています。そしてこれがなぜそれほど特別なのかというとClaude Codeが信じられないほど素晴らしいからです。本当に驚くべきハーネスなんです。このハーネスを周囲に配置することで大規模言語モデルの動作が格段に良くなります。
そしてソースコードがオープンソースになったことで人々は自分のハーネスをより良くするための小さな秘密をたくさん学びました。イーロン・マスクでさえこのお祭りに参加せずにはいられなかったくらいです。Anthropicは今や公式にOpenAIよりもオープンになりました。そうClaude Codeは現在基本的にオープンソースになっており少なくとも現在のバージョンは誰もがソースコードを手に入れ狂ったように検証しているからです。
オープンソースコミュニティへの影響
TwitterユーザーのAlfred VersaがこれがAnthropicやオープンソースコミュニティそして私やあなたのような改造好きにとって実際に何を意味するのかについて本当に素晴らしい解説をまとめてくれました。彼が何と言ったかお見せしましょう。まず知っておくべきことはツールのコードには2300のオリジナルファイルがありそれらはすべて公開されているということです。
ほぼ50万行のコードです。でもそれはClaude Codeを特別なものにしているすべての秘密を手に入れたということでしょうか。ある意味ではそうです。Claude Codeを特別なものにしているのはClaude Codeのハーネス自体の組み合わせとClaudeファミリーのモデルとの組み合わせなんです。
もしオープンソースのモデルやOpenAIのモデルあるいはGeminiをClaude Codeに組み込もうとしてもおそらくそれほどうまく機能しないでしょう。Claude CodeはClaudeのために作られているからです。しかしClaude Codeのハーネスがなぜうまく機能するのかについて多くの洞察を得ることができます。そしてもちろん私たちはすぐにそれがOpen Codeのような世の中にあるすべてのオープンソースのハーネスに波及していくのを見ることになるでしょう。
次にローカルで実行できるのでしょうか。もちろんです。皆さんはもうソースコードを持っています。実際に合法的にダウンロードして実行できるPythonバージョンをダウンロードしに行ってください。そしてClaudeやあなたの好きな他のモデルを組み込むことができます。もちろんClaudeの方がうまく機能しますがその気になれば完全にローカルで実行することも絶対に可能です。
競合他社やAnthropicにとっての意味
そして本当に重要な部分は彼が競合他社にとってこれは何を意味するのかと言っているところだと思います。より良くてより安価なコーディングエージェントを構築するための正確なプロンプトやエージェントのセットアップを研究することができるんです。私が言ったようにこれはClaudeファミリーのモデルに特に当てはまります。あなたは今Claudeと信じられないほどうまく機能するハーネスの構築方法を知っています。
さらに権限の処理方法や複数のAIサブエージェントの連携など賢いアイデアをコピーすることもできます。オープンソースの代替品を立ち上げることもできますしすでに持っている場合はこれらの発見や洞察のいくつかを自分のオープンソースプロジェクトに直接統合することができます。
そしてそれはAnthropicのClaude Code製品の弱点を見つけることも可能にします。ですからもしあなたに悪意があるならそれを攻撃する方法を探すことができるわけです。しかしそれがオープンソースの美しさでもあります。誰もがそれに目を向けていれば人々は実際にセキュリティが不足している部分を指摘しこの時点に至る前に修正することができるためシステムははるかに強固になります。
それではAnthropicにとってはどういう意味があるのでしょうか。まあそれほど大したことではありません。Claude Codeのハーネスがなぜうまく機能するのかということ以外に企業の重大な内部の秘密が明らかになったわけではありません。顧客データが公開されたわけでもなくAPIキーが公開されたわけでもありません。ですから情報漏洩の度合いで言えば彼らにとってそれほど悪いことではありません。ただ少しずさんに見えてしまうのは確かですが。
Zapierのスポンサーメッセージ
ところで流出したバージョンをローカルで使うにしてもClaude Codeを直接使うにしてもZapierは素晴らしい組み合わせになります。彼らについて少しお話しさせてください。彼らは今日の動画のスポンサーです。Zapierは自己改善型エージェントに提供できる何千ものツールを備えたMCPサーバーをリリースしたばかりでこれによりエージェントにさらに多くのパワーを与えることができます。
私は複数のビジネスで10年以上にわたってZapierを使用していますが彼らは素晴らしいパートナーです。使うのが大好きなんです。そして今やどんなエージェントにもZapierに接続するだけで即座に何千ものツールを与えることができます。とてもシンプルです。ZapierのMCPサーバーで利用可能にしたいアプリを設定するだけでURLが発行されます。
それをあなたのエージェントに組み込むだけで文字通りそれでおしまいです。無料で始められるプランがあり必要に応じてそこからスケールアップしていくことができます。ぜひZapierをチェックしてMCPサーバーを設定し試してみてどう思ったか教えてください。繰り返しになりますが私は長い間Zapierの大ファンですが皆さんからの意見も聞きたいんです。下の説明欄にリンクを貼っておきますのでぜひチェックしてみてください。改めてZapierに感謝します。では動画に戻りましょう。
Claude Codeを特別にする秘密:claude.mdと並列処理
さて次にTwitterユーザーのMal Shakeが私が一番気にしていることの素晴らしい内訳をまとめてくれました。実際にClaude Codeを特別にしているものは何でしょうか。彼らが見つけ出しハーネスに組み込んだ秘密何がそれを特にClaudeファミリーのモデルとの連携において本当に優れたものにしているのでしょうか。読んでいきましょう。
まず第一にClaude.mdがすべてのターンに読み込まれます。一つ残らずです。これはどういう意味でしょうか。Claude.mdはClaudeにより良い働き方を発見させるためのあなたの手段です。本当に注意を払うべきファイルはどこにあるのかあなたやあなたのチームが実装する上で従うべきコーディング基準は何かあなたが従おうとしているコードベースのアーキテクチャは何か他のベストプラクティスは何かこれらすべてがClaude.mdに入ります。
正直に言うと私はこれまでそれにほとんど触れてきませんでした。そして今本当にそうすべきだったと気づいています。claude.mdに伝えるために4万文字を使うことができそれがClaude Codeにあなたがどのように働きたいかを正確に伝えてくれるんです。ですから私は今日間違いなくそのファイルを更新するつもりです。ですからあなたのベストプラクティスやパターンチームの好みをそのファイルに書き込んでください。すべてのプロンプトに読み込まれるためClaudeはそれに従ってくれます。
第二にClaude Codeは並列処理のために作られています。複数のエージェントを同時に実行できるように構築されており特にサブエージェントがプロンプトキャッシュを共有するためです。ですから同時に5つや10のサブエージェントを立ち上げたとしてもそれらはすべて同じプロンプトキャッシュを共有しているため基本的に無料で並列処理ができるということになります。
サブエージェントだけでなく複数のエージェントを同時に実行することもできます。これが正しいやり方です。Claude Codeの発明者であるBoris Churnneyも基本的に同じことを言っていました。彼は常にたくさんのエージェントを同時に実行していると言っています。ちなみに作業ブランチでこれらのエージェントが互いに競合することなくそれを行うための方法がgit worktreeです。
より具体的にはソースコードには文字通りサブエージェント用の3つの実行モデルがあります。親コンテキストを継承してキャッシュを最適化するForkTmuxやiTermの別ペインでファイルベースのメールボックスを介して通信するteammateそしてエージェントごとに独自のgit worktreeの隔離されたブランチを取得するwork treeです。ですから単一のエージェントですべてを行うのは間違ったやり方です。控えめに言っても最適化されていません。
権限設定とコンパクションの仕組み
さてClaude Codeが2秒ごとにこれを行う権限はありますか常に私にこれを許可しますかと尋ねてくるのをご存知ですよね。とてもイライラしますがそれには理由があることがわかりました。MALが言っていることそしてClaude Codeのコードベースが示していることは権限について設定されるように意図されているということです。何かを許可するかどうか尋ねられるたびにそれはその設定の失敗を意味しています。
すべてを事前に設定しておくべきなので基本的にはそのようなメッセージは決して見ないはずなんです。はいこの一連のタスクやコマンドは許可しますが他のものは許可しませんというように。ですから必ずそれを設定してください。そしてまさにそれを可能にするsettings.jsonがあります。実際みんなが常に許可をクリックしてしまうためAnthropicはよりスマートな権限システムを展開しました。
彼らは実際にあなたがイエスと言うであろうものを予測しようとし基本的には自動的にイエスと言いそしてあなたがしたくないであろうことや危険すぎると思われるものにはノーと言います。ですから人々が以前は常にオンにしていたdangerously skip permissionsという小さなフラグはこの時点では多かれ少なかれ非推奨になっています。
つまり3つの権限モードがあるんです。Bypassは権限チェックを全く行わないため危険ですが高速です。allow editsは作業ディレクトリ内のファイル編集を自動的に許可します。そしてautoは私が先ほどお話ししたものです。これを有効にするには初めてClaudeを呼び出すときに各アクションに対してLLM分類器を実行するようにします。これが最適な選択肢です。はい。ですからautoを選ぶのが正解です。私もそれを使っています。
次はコンパクションです。これはおそらく他のハーネスが学ぶべき最も重要なことの一つでしょう。AIの世界にはモデルが何を覚えているかよりも実は何を忘れるかの方が重要だという有名な言葉があります。何を忘れるべきかを知ることで覚えておくべき重要なことをはるかに正確に覚えることができるんです。彼らはClaudeのコードベースにおいてコンパクションが行われる5つの方法を発見しました。
一つ目はmicro compactです。これは古いツールの結果を時間ベースでクリアするものです。次にcontext collapseは会話の期間を要約します。ここからいくらかの忠実度が失われ始める可能性があります。圧縮を行うときはいつでも不可逆なものになります。ですからその点には気をつけてください。次はsession memoryで主要なコンテキストをファイルに抽出します。全体の履歴を要約するfull compactや私が聞いたことのなかったptl truncationというものもありこれは単に最も古いメッセージグループを削除します。
さてではこの情報を実際にどうすればいいのでしょうか。まず/compactを積極的に使ってください。システムが自動でコンパクションを行い気にかけているコンテキストを失うのを待ってはいけません。もし何を覚えておきたいか特に何を忘れたいかがすでにわかっているなら/compactを使うのがベストです。デフォルトのウィンドウは20万トークンです。100万トークンを選択することもできます。100万トークンはかなりうまく機能します。20万トークンを超えると品質は落ち始めますがそれでも世の中の競合他社よりは優れています。
長いセッションではタスク仕様ファイルリストワークフローの状態エラー学習内容などの構造化された要約であるセッションメモリが蓄積されます。これが新しく始めるよりもセッションを再開する方が良い理由です。はい私はコーディングするものを変えたりコードベースの新しい部分に取り組んだりしている場合でも常に同じセッションで継続するようにしています。もし以前に取り組んでいたことと何か繋がりがあるなら同じセッションを使おうとするんです。
大きなツールの結果はディスクに保存されモデルには8キロバイトのプレビューだけが送信されます。巨大なファイルを貼り付けてもモデルはその一部しか見ないかもしれません。入力は的を絞ったものにしてください。ですから/compactをビデオゲームのセーブのように考えてください。これが彼がここでお勧めしていることです。
フックの活用とセッションの継続
次はフックです。これは私がまったく使っていなかったパワーユーザー向けの機能のようです。ですからこれについてもっと知ることができてワクワクしました。ここではプラグインできるさまざまなフックをご紹介します。ツール使用前ツール使用後ユーザープロンプト送信セッション開始セッション終了など他にもたくさんあります。また5つのタイプのフックもあります。コマンドプロンプトエージェントHTTPそして関数です。
さてAnthropicが行っていると聞いたことの一つはドキュメントを自動的に更新することです。新しいコードが送信されたときにコードのドキュメントを更新するんです。私がやっているのはドキュメントが更新されていることを確認してと指示することですがこれを毎回やらなければならずとてもイライラしていました。そして単に自動化できることに気づいたんです。新しいコミットをしたときに私が触ったコードベースの部分に応じてドキュメントが確実に更新されるように進めてと言えばいいんです。
次はセッションが永続的で再開可能であるということです。新しく始めるのはやめましょう。すべての会話はcloud projectsでJSONL形式で保存されます。ハッシュがありセッションIDがありJSONLファイル形式になっています。ですからd- continueと入力して最後のセッションを再開することができます。d-res sessionも使えます。セッションをフォークすることもできますし基本的に新しく始めるのはやめましょう。
新しいセッションとはコンテキストがないことを意味します。またゼロから学ばなければならなくなります。もちろんゼロから学ぶ以上のことはありますがその継続性や既存のセッションの勢いが欲しいならこれがその方法です。
ツールとストリーミングアーキテクチャ
Claude Codeには使用する66の組み込みツールがあります。明らかなものの中にはおそらくご存知のものもあるでしょう。ウェブの閲覧ファイルの保存コードの実行などです。そしてそれらは2つのタイプのツールに分類されています。読み取り専用の操作であるConcurrent toolsと一度に一つずつ実行される編集書き込みbashコマンドなどの変更操作であるserialized toolsです。ですからClaudeが10の異なるサブエージェントに委任してコードベースの10の異なる部分を読む必要がある場合でも問題なく並列で行うことができます。
次のヒントはストリーミングアーキテクチャが意味するのは中断のコストが安いということです。これは実際にどういう意味でしょうか。コーディングをしていてClaude Codeが間違った方向に進んでいることに気づいたときおそらく何かを間違ってコーディングしているかプロンプトを誤解している場合すぐに止めてください。それは何も悪いことではありません。トークンを失うこともありません。その時点であなたはサンクコストの誤謬に対処しているようなものです。ただ切り上げて損失を断ち切り元の場所から続けるようにしてください。それは十分に可能です。
オープンソースの美しさと未来
さておわかりのようにClaude Codeはとても特別なものです。しかし今や誰もがその秘密を見ることができるようになりました。そしてもう一つ共有したいことがあります。昨日の動画のメタハーネスを覚えていますか。これは基本的にその内部のハーネスを自己改善できるハーネスです。今私たちは実際にClaude Codeをメタハーネスに接続し再帰的に自己改善させることができるんです。想像してみてください。
それがオープンソースの美しさです。だからこそ私はこの流出を見て少し興奮したんです。Anthropicがそれを望んでいないことは知っています。Anthropicが世の中のクローズドソースのフロンティアラボの中で最もクローズドなソースであることは知っていますが私はこれを見ることができてかなり嬉しかったです。それが理由です。これがオープンソースの美しさなんです。物事がオープンになると他の人々がそのアイデアを基にして構築することができそれがさらなるイノベーションを生み出します。
もしこの動画を楽しんでいただけたら高評価とチャンネル登録を検討してくださいね。


コメント