StackMap
Subscribe
Explore / geiger
Atomburstofficial

geiger

Read-only inventory of every AI agent, MCP server, hook, plugin and AI extension on a machine: npx geiger-scan labels what can execute code, hold secrets or reach the filesystem, with evidence.

99 2 JavaScript MITupdated yesterday
View on GitHubDispute this mapping →
Curator's take

Run it once on any laptop that has had Claude Code, Cursor, Codex, Goose or a dozen MCP servers installed and you will find things you forgot about. Zero deps, no telemetry, never prints secret values (shape only), `--strict` exits non-zero for CI or fleet checks, `--home` scans another profile or a mounted image. It is a static inventory — it tells you what is *configured* and what it could reach, not what it *did*; pair it with a runtime layer (adrian) for that. Not a policy enforcer and not a skill scanner (asm does that). Tiny project (~100 stars) but the detector table is broad and the promises are the right ones.

Mapped by ShipWithAI editors · links verified

Continue your stack

What teams reach for next — and why each earns a place beside geiger. Ranked by curator confidence.

pairs wellpairs wellpairs wellAdrianclaude-secretsasmgeiger
pairs wellalternativebuilt withpick a node for the why · open it from the panel
Weekly digest
README.md2 min read

geiger

CI npm license: MIT node ≥18 dependencies: 0

A Geiger counter for AI agents.

One read-only command that inventories every AI agent, harness, MCP server, plugin, and AI extension on a machine — and tells you, in plain language, what each one can touch.

npx geiger-scan

No install. No account. No telemetry. Reads configs and directories, writes nothing (unless you ask for --json yourfile.json).

A geiger scan: findings grouped by ecosystem with exposure labels, a redacted credential, and plain-language fixes

Why this exists

In August 2026, an open-source agent harness went from zero to 200,000+ GitHub stars in three weeks. Its plugin ecosystem passed 13,000 repositories in the same window. One-click desktop clients appeared the same day it launched. Instagram carousels now teach office workers to install all of it.

Every one of those installs is a program that can execute commands, read files, and hold credentials — configured in dotfiles nobody looks at twice. Ask yourself the question this tool answers: what is actually running on this machine, and what can it reach? Most people cannot answer it. Now it's one command.

What a scan looks like

  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
  ...

Real output from a real machine (values redacted — see below).

What it detects

Ecosystem What geiger reads
Claude Code global + per-project MCP servers, hooks, plugins, skills, subagents, apiKeyHelper
MCP hosts Claude Desktop, Cursor, Windsurf, VS Code (user + project), Cline, Roo Code, Continue, Zed
Other agents Codex CLI, Gemini CLI, Kilo CLI, Grok Build, Aider, OpenCode, Qwen Code, DeepSeek Harness, Continue, GitHub Copilot CLI, Goose, JetBrains Junie, Open Interpreter, LM Studio, Ollama
Editor extensions AI extensions in VS Code / Insiders / Cursor
JetBrains IDEs AI Assistant / MCP settings presence per product (the settings live inside the IDE — geiger points you at the right screen)
Global CLIs agent packages in global npm roots (read directly — npm is never executed)
Browser extensions AI extensions in Chrome / Edge / Brave / Firefox profiles, with their granted permissions

Every finding gets: what it is, where it came from (registry, store, git, local script, remote server — or UNKNOWN-ORIGIN), what it can do (EXECUTES, HOLDS-SECRETS, BROAD-FILESYSTEM, BROAD-WEB, NETWORK), and the evidence path so you can verify by hand.

Geiger also recognizes policy wrappers (agents that put an enforcement layer in front of MCP servers) and reports both layers instead of hiding the real server behind the w