
マシン上のAIエージェント、MCPサーバー、プラグイン、拡張機能をインベントリし、その機能と露出を平易な言葉による修復手順とともに報告する読み取り専用CLI。
AIエージェントのためのガイガーカウンター。
マシン上のすべてのAIエージェント、ハーネス、MCPサーバー、プラグイン、AI拡張機能を一覧化し、それぞれが何に触れられるのかを平易な言葉で教えてくれる、読み取り専用のコマンド1つ。
npx geiger-scan
インストール不要。アカウント不要。テレメトリなし。設定とディレクトリを読み取るだけで、何も書き込みません(--json yourfile.json を指定した場合を除く)。
2026年8月、あるオープンソースのエージェントハーネスが3週間でGitHubスター0から20万以上に達しました。そのプラグインエコシステムは同じ期間に13,000リポジトリを超えました。ワンクリックのデスクトップクライアントはローンチ当日に登場しました。今ではInstagramのカルーセルが、オフィスワーカーにそのすべてをインストールする方法を教えています。
そうしたインストールの一つ一つが、コマンドを実行し、ファイルを読み取り、認証情報を保持できるプログラムであり、誰も二度見しないdotfileで設定されています。このツールが答える問いを自分に問いかけてみてください: このマシンで実際に何が動いていて、何に到達できるのか? ほとんどの人は答えられません。今やそれはコマンド1つです。
GEIGER · a Geiger counter for AI agents
machine dev-laptop · 2026-09-06 12:24 UTC · read-only · no telemetry
──────────────────────────────────────────────────────────────
9 findings across 3 ecosystems · 7 can execute code · 1 credential in config files
claude-code (6)
Claude Code agent
[EXECUTES] [BROAD-FILESYSTEM] [NETWORK]
origin: registry · @anthropic-ai/claude-code
magic (Claude Code · global) MCP server
[EXECUTES] [HOLDS-SECRETS] [BROAD-FILESYSTEM]
origin: registry · @21st-dev/magic@latest
credential: "API_KEY" — opaque value under a credential-named key · ~/.claude.json
note: wrapped by a policy agent (domainguard-agent.exe) — enforcement layer in front of the server
hooks: UserPromptSubmit, PreToolUse hook
[EXECUTES]
note: hooks execute without a prompt each time their event fires
...
実際のマシンからの実際の出力(値は伏せられています — 以下を参照)。
すべての検出結果には、それが何であるか、どこから来たのか(レジストリ、ストア、git、ローカルスクリプト、リモートサーバー — またはUNKNOWN-ORIGIN)、何ができるのか(EXECUTES、HOLDS-SECRETS、BROAD-FILESYSTEM、BROAD-WEB、NETWORK)、そして手作業で検証できるように証拠のパスが付きます。
Geigerはポリシーラッパー(MCPサーバーの前に強制レイヤーを置くエージェント)も認識し、実際のサーバーをラッパーの背後に隠すのではなく、両方のレイヤーを報告します。
--jsonファイルです。npx geiger-scan スキャンしてレポートを出力
npx geiger-scan --html report.html 検出結果ごとの「何をすべきか」修復ガイダンスを
含む自己完結型HTMLレポート
npx geiger-scan --json out.json 機械可読な検出結果(schemaVersion 1)
npx geiger-scan --path D:\repo1 --path E:\repo2
これらのプロジェクトディレクトリもスキャンして
プロジェクトレベルのエージェントおよびMCP設定を探す
npx geiger-scan --home C:\Users\other 別のホームルートをスキャン(別のユーザー
プロファイル、マウントされたイメージ)
npx geiger-scan --strict コードを実行できる、またはシークレットを
保持するものがあれば終了コード2
npx geiger-scan --diff baseline.json 以前の--jsonスナップショットと比較:
それ以降に何が現れ、消え、または
エスカレートしたか
ドリフトアラーム: 一度マシンをレビューしたら、ベースラインを保存し(--json baseline.json)、geiger-scan --strict --diff baseline.jsonをcronまたはCIに入れてください。何か新しいものがコードを実行できる、またはシークレットを保持できる場合にのみ終了コード2を返します — 既存の、すでにレビュー済みのインベントリは静かなままです。ロックファイルと同じメンタルモデルです: あるものを受け入れ、変化に対してアラームを出す。
npmがない場合は? npx github:Atomburstofficial/geigerがリポジトリから直接実行します。
何かを実行する前に、何が得られるかを正確に確認できます: サンプルHTMLレポートとサンプルJSON出力がこのリポジトリにあり、テストフィクスチャから生成されています — 合成データ、一般的なパス、認証情報は(いつも通り)形状のみで表示されます。HTMLレポート:

対応が必要なすべての検出結果には、平易な言葉での修復案が付きます — ターミナルではfix:行として、HTMLレポートでは「What to do」ブロックとして。
フリートパターン(MSP、IT): スケジュールに従ってマシンごとに--jsonで実行し(RMMタスクまたはログインスクリプトが%COMPUTERNAME%.jsonを共有に書き込む)、各マシンのベースラインを保持し、--diffにマシンごとのドリフトを報告させます。スキーマはバージョン管理され安定しています。Geigerは決して外部に通信しません — JSONファイルはあなたが置いた場所にだけ移動します。
先に述べておきます。過信するスキャナーはスキャナーがないよりも悪いからです:
これはセキュリティ監査ですか? いいえ。これは正直な露出ラベルを付けたインベントリです — あらゆる監査が意味を持つ前に必要なものです。
なぜセキュリティ企業の無料スキャナーを信頼すべきなのですか? 読んでください。依存関係のない数百行のJavaScriptで、公開されているものが実行されるものです — リリースはnpm provenance付きでGitHub Actionsから公開されているので、npmページには各バージョンがビルドされた正確な公開コミットへの署名済みリンクが付いています。
見つかったものについてどうすればいいですか? 個別には: 見覚えのないものを削除し、設定に置かれているべきでない認証情報をローテーションしてください。企業では: それはポリシー強制であり、別の製品です — DomainGuardは組織がこの表面の前にポリシーレイヤーを置く方法です。いずれにせよGeigerは無料でスタンドアロンのままです。
MIT · Atomburstが開発 · ランタイム依存関係ゼロ、ビルドステップなし — あなたが読むソースが実行されるコードです。
| エコシステム | geigerが読み取るもの |
|---|
| Claude Code | グローバル + プロジェクトごとのMCPサーバー、フック、プラグイン、スキル、サブエージェント、apiKeyHelper |
| MCPホスト | Claude Desktop、Cursor、Windsurf、VS Code(ユーザー + プロジェクト)、Cline、Roo Code、Continue、Zed |
| その他のエージェント | Codex CLI、Gemini CLI、Aider、OpenCode、Qwen Code、DeepSeek Harness、Continue、GitHub Copilot CLI、Goose、Open Interpreter、LM Studio、Ollama |
| エディタ拡張機能 | VS Code / Insiders / Cursor内のAI拡張機能 |
| グローバルCLI | グローバルnpmルート内のエージェントパッケージ(直接読み取り — npmは決して実行されません) |
| ブラウザ拡張機能 | Chrome / Edge / Braveプロファイル内のAI拡張機能、およびそのマニフェスト権限 |