Claude Codeのソースコードが流出——偽ツール注入・感情検知・未公開エージェントモード「KAIROS」とは

Anthropicが開発するAIコーディングアシスタント「Claude Code」のソースコードが、NPMパッケージへのソースマップ(.mapファイル)の誤同梱によって流出した。パッケージはすぐに取り下げられたが、コードはすでに広くミラーリングされ、Hacker News上でも大きな話題となっている。

Anthropicにとってこれは1週間で2度目の情報漏洩事故だ(直前にはモデル仕様書のリークもあった)。また、ちょうど10日前にはOpenCodeに対して法的措置を取り、サードパーティによるClaude Codeの内部API悪用を問題視していたばかりとあり、今回の流出内容がより注目を集めている。

偽ツール注入による「反蒸留(Anti-distillation)」機構

最も注目を集めた発見が、claude.ts(301〜313行目)に存在するANTI_DISTILLATION_CCフラグだ。これが有効な場合、Claude CodeはAPIリクエストにanti_distillation: ['fake_tools']を含め、サーバー側がシステムプロンプトに「偽のツール定義」を静かに注入する。

目的は明快だ——Claude CodeのAPIトラフィックを傍受して競合モデルの学習に使おうとする行為を妨害するため、意図的に汚染データを混入させる。この機能はGrowthBook社のフィーチャーフラグ(tengu_anti_distill_fake_tool_injection)でゲートされており、ファーストパーティCLIセッションのみに適用される。

もっとも、研究者が指摘するように回避策は単純で、MITMプロキシでanti_distillationフィールドをリクエストボディから除去するか、環境変数CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETASを設定するだけで無効化できる。実質的な保護はむしろ法的手段に依存しているとみられる。

「アンダーカバーモード」——AIがAIであることを隠す

ソースには、AIであることを開示せずに動作するモードの存在も確認された。特定の条件下でClaude CodeがAIアシスタントとしての素性を表に出さずに応答するこの機能は、エンタープライズ向けの特定ユースケースを想定したものとみられる。

正規表現によるユーザーの感情(フラストレーション)検知

驚くべきことに、ユーザーのフラストレーション検知にLLMではなく正規表現が使われていることも判明した。「damn」「wtf」「not working」といったパターンにマッチした場合に、システムが何らかの応答を調整する仕組みだ。シンプルながら軽量で実用的な設計判断と言えるが、AIツールの感情認識がこのような古典的手法で実装されていることには多くの開発者が驚きを示している。

1日25万件の「無駄なAPIコール」

パフォーマンス面でも気になる数字が出てきた。設計上の問題とみられる不要なAPIコールが1日あたり約25万件発生しているという。コスト面やレイテンシへの影響が懸念される。

未公開の自律エージェントモード「KAIROS」

おそらく最も衝撃的な発見が、KAIROSと呼ばれる未リリースの自律エージェントモードだ。詳細は限られているが、現在の対話型モードを超えた、より高度な自律実行能力を持つモードとして開発が進んでいるとみられる。Anthropicが近い将来にエージェント機能を大幅に強化する計画を持っていることを示唆しており、業界関係者の注目を集めている。

まとめ

今回の流出は、Anthropicにとって技術的・法的・広報的な打撃となった。一方で、現代の商用AIツールがどのような工夫と妥協のもとで構築されているかを垣間見る、稀な機会にもなっている。日本国内でもClaude Codeの利用者は増加しており、これらの実装が今後の開発判断や競合製品の設計にどう影響するか、引き続き注目が集まりそうだ。


元記事: The Claude Code Source Leak: fake tools, frustration regexes, undercover mode