Credentials that have no format
A password after PGPASSWORD= looks like any other word, so scanners built around key prefixes pass over it. This one reads agent rules the way a shell would: environment prefixes, -p and --password flags, sshpass, curl -u, Authorization and API-key headers, and user:password@host URLs. It also knows 30 provider key formats.
Every file agents write to
.claude/settings.local.json and settings.json, .mcp.json and the Cursor, VS Code, Windsurf, Gemini, Codex and Kiro equivalents, login files such as .claude/.credentials.json and .codex/auth.json, and the notes agents keep: CLAUDE.md, AGENTS.md, memory files, saved transcripts.
The paths those files leak through
A .gitignore that relies on one machine’s git excludes. A Dockerfile with COPY . . and no .dockerignore, which ships files git ignores. An npm package with no files list. Settings that switch off prompts or approve every MCP server in a repo.
wfx-loot indicators
Probe pull requests titled “docs: dependency audit notes”, the wfx-docs branch, payload file names, stealer markers in workflows and install hooks, and the two package versions named in the advisories. The command-line version also checks local git for the campaign’s commit messages and branch names.