AIDive

Claude CodeのECCから盗む5つ、入れてはいけない

AIDive · 公開

コーディングエージェントAI セキュリティ

誰も確かめない数字

Everything Claude Code、通称 ECC は、Affaan Mustafa が Anthropic のハッカソンで優勝し、agent だけで作り上げたプロダクトを世に出したあとに公開した Claude Code の設定リポジトリです。現在 GitHub でおよそ 25 万スターを集めています。

ECC について語られる数字は互いに食い違っていて、その食い違い自体が示唆に富んでいます。ECC を広い層に届けた動画は、この計測の 4 日前に公開され、64 個の agent と 262 個の skill と数えていました。リポジトリ自身の README は、私たちが clone した日には 68 個の agent と 286 個の skill と書いていました。

出典 agent skill
広く共有された動画 64 262
今日のリポジトリの README 68 286

これらは対立する数字ではなく、単に古い数字です。リポジトリは、それについて作られる動画よりも速く動きます。これは、ひとつの数字にどれだけの価値があるかを測るまっとうな物差しになります。その下にある問いは、Reddit ではっきり投げかけられながら、まともに答えられたことのない問いです。ECC が印象的かどうかではなく、インストールする価値があるかどうかです。

ECCの実際の中身

ECC は自らを、skill、instinct、メモリ、セキュリティ、そしてリサーチ優先の開発をカバーする agent ハーネスのパフォーマンス最適化システムだと説明しています。README は、ECC が導入するループを 7 つの語に圧縮しています。計画し、テストし、実装し、レビューし、検証し、記憶し、改善する。一度インストールすれば、それがあなたの agent の働き方になります。

新規に clone した状態で数えると、リポジトリには次のものが含まれています。

コンポーネント 個数
agent 68
skill 286
スラッシュコマンド 94
ルールファイル 122
hook(すべて1ファイル内) 23

そのすべてを説明する README は 2,200 行あります。ドキュメントのフォルダだけで 15 MB、22 言語に翻訳されています。リポジトリ全体を clone すると 88 MB を引き落とすことになります。しかも Claude Code 専用というわけでもありません。ECC は Codex や Cursor から Zed、Kimi まで、19 種類の agent とエディタ向けの設定を同梱しています。

これは本物の仕事量であり、ライセンスは MIT です。つまり、どの部分もあなたがコピーして構いません。問題が始まるのは、その全部をインストールしたときだけです。

コンテキストの請求書

skill の本体が読み込まれるのは、その skill が発動したときだけです。しかし名前と説明のほうは、毎セッションの最初の token からあなたのコンテキストに居座ります。subagent についても同じことが言えます。このメタデータが入場料であり、リポジトリ紹介動画が飛ばしてしまう部分です。

新規 clone で計測した結果は次のとおりです。

毎セッション読み込まれるもの サイズ 概算token
286個のskill名+説明 85,000文字 21,000
68個のsubagentの説明 20,000文字 5,000
リポジトリ自身の指示ファイル 1,000
常駐コンテキスト合計 約27,000

20 万 token のコンテキストウィンドウに対して、フルインストールは一文字も打つ前に約 14 パーセントを占有します。14 パーセントというのは、そのウィンドウを何と共有しているかを思い出すまでは耐えられそうに聞こえます。あなたのファイル、diff、ツールの実行結果、そして会話そのものです。決して呼び出さない skill のひとつひとつが、いま実際に触っているコードと席を奪い合っています。

リポジトリはそれを分かっています。README 自身に「コンテキストウィンドウを最適化し、それ以外はすべて永続化せよ」という一文がありながら、286 個の skill を同梱しています。まさにこの問いを立てた Reddit のスレッドでは、トップの返信が「説明文の token 使用量はごくわずかだ」と言っています。2 万 1 千 token はごくわずかではありません。

正直に付けておくべき但し書きが 2 つあります。ここでの token は 4 文字あたり 1 token として概算しているので、実際の数字はトークナイザ次第で動きます。そして、これらは skill が悪いという話ではまったくありません。skill は無料ではないこと、そしてそのほとんどはあなたのものではないこと、それだけを言っています。

取る1と2: スキャナーとsettings

最初に取る価値のある 2 つは、そもそもリポジトリをインストールする必要すらありません。

AgentShield は agent 設定のためのセキュリティ監査ツールです。ECC に同梱されているほか、npm 上で独立したパッケージとしても配布されていて、1 週間で 5,500 ダウンロードを記録しました。コマンド 1 つでディレクトリを指定すれば、agent ファイル、hook、サーバー、パーミッション、シークレットを監査します。出力形式、深刻度の下限、安全な自動修正のためのフラグも受け付けます。README は、その存在理由を 1 月時点の数字で説明しています。ある agent skill マーケットプレイスの 12 パーセントが悪意あるものと判明したこと、これは 2,800 個中 341 個の skill にあたること、そしてひとつの侵害で 150 万個の API token が漏洩したこと。これらはこのパッケージの主張であって、私たちの計測ではありません。

その限界は日付です。AgentShield が最後に公開されたのは 3 月で、一方リポジトリ本体は私たちが計測する前日に更新されていました。その README はいまだにエコシステムを 4 万 2 千スターと記述していますが、今日は 25 万スターです。スキャナーは、それが同梱されている当のものから 6 か月遅れています。

settings ブロックは、試すのにコストがかかりません。README は 4 つの変更を公開しています。

設定 変更内容
デフォルトモデル Sonnet に設定
thinkingの予算 32,000 から 10,000 へ
compactionのしきい値 95パーセントから50パーセントへ
subagent 最も安いモデルへ寄せる

README はモデルコストを約 60 パーセント、隠れた thinking のコストを 70 パーセント削減できると主張しています。これらは README の数字であって私たちのものではありませんし、内容としてはトレードオフの説明です。デフォルトモデルを小さくし、subagent を安いモデルにすれば、難しいレビューでその代償を払うことになります。

取る3: instinct

instinct は、このリポジトリの中で他所では見たことのない唯一のアイデアです。instinct とは、信頼度スコアを持つ小さな学習済みの振る舞いです。あなたが書いたルールではなく、あなたが繰り返しているとシステムが気づき、代わりに書き留めたパターンです。

最初のバージョンはセッションの終わりにしか観察していませんでした。現在のバージョンはすべてのツール呼び出しの前後で観察しており、だからこそ何かを捕まえられています。各 instinct は 0.3 から 0.9 の重みを持ち、分析は安いモデルのバックグラウンド agent で走るため、その仕事のためにあなたのメインのコンテキストを食いつぶすことはありません。

バージョン 2.1 で instinct はプロジェクト単位になり、React のパターンは React のプロジェクトに留まるようになりました。それが何を直したのかを、リポジトリ自身は汚染(contamination)と呼んでいます。同じ instinct が 2 つの異なるプロジェクトに現れたとき、それはグローバルへ昇格します。何が普遍的かを、システムはあなたに尋ねるのではなく観察して決めるわけです。

これは形だけの機能ではありません。背後にあるツールは 6 つのコマンドを持つ 2,200 行のコードで、そこで描かれる道筋は instinct からクラスタへ、そして本物の skill へと続きます。instinct は持ち運びもできます。自分のライブラリをエクスポートしてチームの誰かに渡せば、相手はそれをインポートできます。agent のセットアップに人を迎え入れるオンボーディングについて、私たちが見た中で初めてまともな答えです。

条件が 1 つ付いています。hook ランタイムです。これらすべてが hook ランタイムの上に乗っており、しかも hook ランタイムはこのリポジトリの中で、意図的にオプトインさせられるまさにその部分です。hook を拒めば instinct は手に入りません。それに信頼度スコアはヒューリスティックであって、計測値ではありません。

取る4と5: 必要な分だけ取る

4 番目に取るものは、コンテキストを使うのではなく勘定する 3 つの skill です。コンテキスト予算、compaction のアドバイザー、そして token 予算のアドバイザー。14 パーセントを取っていくリポジトリは、それを可視化する道具も同梱しているわけです。compaction のルールだけでも取る価値があります。リサーチのあと実装の前に compaction する。マイルストーンのあとに。デバッグのあとに。あるアプローチが失敗したあとに。そして実装の途中では決してしない。そこで compaction すると、ファイルパスと作りかけの状態を失うからです。

5 番目に取るものはインストーラーで、これが他の 4 つを手の届くところに置いてくれます。7 つのプロファイルが同梱されていて、最小のプロファイルは、hook ランタイムを完全に除外すると自身の説明に書いています。プロファイルを使わずに、欲しい skill を 1 つずつ名指しすることもできます。さらにアドバイザーが、自分の仕事についての平易な一文を受け取って、それに合うコンポーネントを返してくれます。ディスクに何かが書かれる前にプレビューも出ます。インストーラーは hook について推測することも拒みます。hook ランタイムをあなたのマシンに置くことになるインストールは必ず停止し、その hook に何ができるのかを表示して、はいかいいえを待ちます。

そのやり方でインストールすれば、請求額は 14 パーセントではなく、そのごく一部になります。その一部が何パーセントなのかについて、私たちは数字を出しません。すべての組み合わせを計測したわけではないからです。ただし下限については正直に言えます。最小のプロファイルでも agent とルールは付いてくるので、使う分だけをきっちり払う唯一の方法は、skill を手で名指しすることです。

リポジトリに残すもの

68 個の agent をセットとして。 これらは常駐コンテキストを約 5,000 token 使いますが、その大半は C++、C#、Django、Kotlin 向けの言語レビューアやビルド修正役で、あなたが書かないスタックのためのものです。自分の仕事に合う 2 つだけを取りましょう。このセットは抱き合わせ販売ではありません。

94 個のスラッシュコマンド。 README 自身がすでにそれらを一時的なものとして扱っていて、リポジトリが skill 優先の表面へ移行する間の便利な入口だと呼んでいますし、引退したコマンドを収めたフォルダもあります。コマンドは、このエコシステムの中で自分で書くのが最も簡単なものでもあります。

hook のファイル。 このセットアップの hook はすべて 1 つのファイルに入っています。291 行、40 KB、23 個の hook。そのうち 8 個はすべてのツール呼び出しの前に走り、7 個は agent が停止するたびに走ります。コードは、開いて読めるスクリプトの形では存在していません。すべての hook が 1 行に押し込まれていて、その総量は 3 万 3 千文字、最も長い 1 行は 2,000 文字に達します。

公平に言っておきます。その隣に置かれた説明は読めるもので、いくつかは良い出来です。ひとつは agent が linter の設定を編集するのをブロックし、その理由も書いてあります。ルールを緩めるのではなくコードを直すよう agent を誘導するわけです。それは持っていて損のない hook です。問題は意図ではありません。コードは公開されていて MIT です。問題は、読める部分が意図だけだということ、そしてそれをリポジトリ自身が先に言っていることです。hook はシェルコマンドを実行するので、実行可能な設定として扱うべきだ、と。

バラスト。 19 種類のハーネス向けの設定と、22 言語で 15 MB のドキュメント。あなたが 1 つの言語で、1 か所で動かすツールのために。

結論

インストールするな、奪い取れ。監査を生き延びた 5 つは、スキャナー、settings ブロック、instinct の仕組み、コンテキストを数える 3 つの skill、そして残りを抱え込まずに最初の 4 つを手に入れさせてくれるインストーラーです。

判断を決める数字は、20 万のウィンドウに対してフルインストールが置いていく 2 万 7 千 token の常駐コンテキストです。ライセンスがこの略奪を正当なものにしています。MIT である以上、このリポジトリから 5 つのディレクトリをコピーして持ち出すことは、回避策ではなく意図された使い方です。

Reddit では、Superpowers と ECC のどちらを選ぶべきかという質問が繰り返されています。この 2 つは同じ種類のものではありません。一方は agent の働き方についての規律であり、もう一方は部品箱です。そして部品箱に対する答えは、部品を取ることです。

これらすべてに 2 つの限界があります。ここでの計測はすべてバージョン 2.2.1 で行いました。リポジトリはその前日に更新されており、110 件のプルリクエストが開いたまま待っています。つまり、動きます。そしてこれはどれも、skill が答えを良くするかどうかを測ってはいません。測っているのは、それを持つことにいくらかかるかです。この 2 つは別の問いであり、動画に収まるのはそのうち片方だけです。

出典

よくある質問

Everything Claude Code(ECC)とは何ですか。
ECCはAffaan Mustafaによる Claude Code の設定リポジトリで、GitHubでおよそ25万スターを集めています。68個のagent、286個のskill、94個のスラッシュコマンド、122個のルールファイル、23個のhookに加えて、19種類のagentとエディタ向けの設定を、MITライセンスで同梱しています。
Everything Claude Codeはインストールする価値がありますか。
フルインストールとしては価値がありません。全部入れると毎セッション約2万7千tokenの常駐コンテキストがウィンドウに置かれます。20万tokenのコンテキストのおよそ14パーセントで、その大半は決して呼び出さないskillのためのものです。価値のある5つだけをコピーするほうが割に合います。
ECCはどれだけコンテキストを使いますか。
何も打たないうちに約2万7千tokenです。skillの名前と説明が8万5千文字(約2万1千token)、subagentの説明が2万文字(約5千token)、そしてリポジトリ自身の指示ファイルがおよそ1千token。tokenは4文字あたり1tokenとして概算しているので、正確な数字はトークナイザ次第で動きます。
ECCから取る価値があるのは何ですか。
5つです。AgentShield(agent設定のセキュリティ監査ツールで、npmでも配布されています)、公開されているsettingsブロック、instinctの仕組み、コンテキストを勘定する3つのskill、そしてコンポーネントを1つずつ名指しでき、hookランタイムを黙って追加することを拒むインストーラー。
ECCのinstinctとは何ですか。
instinctとは0.3から0.9の信頼度の重みを持つ学習済みの振る舞いで、あなたが書いたルールではなく、あなたが繰り返していることを観察して記録されたものです。バージョン2.1以降はプロジェクト単位になり、同じものが2つのプロジェクトに現れるとグローバルへ昇格し、チームメイトへエクスポートできます。動かすにはhookランタイムが必要です。
ECCのhookは安全ですか。
コードは公開されていてMITライセンスですが、実際には監査できません。23個のhookはすべて291行・40KBの1ファイルに入っていて、各hookは1行に押し込まれ、合計3万3千文字あります。リポジトリ自身が、hookはシェルコマンドを実行するので実行可能な設定として扱うべきだと述べており、インストーラーも追加の前に必ず停止して確認します。
SuperpowersとEverything Claude Codeのどちらを選ぶべきですか。
この2つは別の種類のものです。Superpowersはagentの働き方についての規律であり、ECCは部品箱です。部品箱に対する答えは、丸ごとインストールすることではなく、部品を取ることです。

関連動画