何が起きたか
2026年3月31日、セキュリティ研究者の Chaofan Shou 氏(@shoucccc)が、Anthropicの公式AIコーディングツール「Claude Code」のソースコードが、npmレジストリ上で完全に露出していることを発見した。
原因は、npmパッケージにバンドルされた約60MBの cli.js.map(ソースマップファイル)だ。このファイルからTypeScriptの完全なソースコードを復元できる状態になっていた。
何が明らかになったか
流出したソースコードからは、以下のような内部実装の詳細が判明している:
- 「frustration regexes」: ユーザーの不満表現(「使えない」「壊れている」等)を正規表現で検出し、応答を調整する仕組み
- フェイクツール: 実際には機能しないが、ユーザーに提示されるツールの存在
- セッション障害データ: 1日あたり約25万回のAPI呼び出しが、50回以上の連続失敗を含むセッションで浪費されていた記録
- 「undercover mode」: 未公開の動作モード
これは2度目の流出であり、Anthropicのリリースパイプラインにおけるセキュリティ管理の甘さが浮き彫りになった。
一次ソース
- The Register: Anthropic accidentally exposes Claude Code source code
- VentureBeat: Claude Code's source code appears to have leaked
- DEV Community: 詳細分析
個人開発者への示唆
この事例から得られる教訓は2つある。
1. 自分のプロジェクトでsource-mapをバンドルしていないか確認する
.npmignore や package.json の files フィールドで .map ファイルを除外しているか、今すぐチェックしよう。本番ビルドのCI/CDパイプラインに source-map 除外のバリデーションを入れるのも有効だ。
2. ツールの信頼は「コードの透明性」ではなく「運用の堅牢さ」で判断する
ソースコードが見えること自体は問題ではない(OSSなら当然)。問題は、意図せず流出する管理体制にある。依存するツールのセキュリティ体制を定期的に確認する習慣をつけよう。
💡 エキスパートコメント
AI Solo Craft 編集部のエキスパートが、今日のニュースを専門視点で読み解きます。
「frustration regexes」は興味深い設計ですね。ユーザーの感情に応じてUIの応答を変えるアプローチ自体は有効ですが、それが隠れた実装であることが問題。ユーザーが「操作されている」と感じるリスクがあります。
Anthropicの企業価値評価への影響は限定的でしょうが、開発者コミュニティの信頼は確実に傷つきました。競合ツールへの乗り換えを検討するユーザーも出るはずで、このタイミングでのaxios攻撃との重なりは痛手です。
📋 デスクコメント
今日やるべきこと: (1) 自分のnpmパッケージで npm pack --dry-run を実行し、.mapファイルが含まれていないか確認 (2) npmの2FA/publish権限設定を再点検。Claude Codeを使い続ける判断自体は各自ですが、依存ツールの管理体制を「信じる」のではなく「検証する」姿勢が大切です。
source-mapの除外漏れ自体はよくあるミスですが、Anthropicほどの企業が2度繰り返したのは深刻です。CI/CDで
.mapファイルの混入を自動検出するステップは、個人開発でも必須の対策として取り入れるべきでしょう。