Skills/npm/deep-digger

deep-digger@1.1.0

BLOCKED· install only

Publisher claims: "Catch that bug: Evidence-gated root cause investigation & controlled falsification for AI agents" Observed in sandbox: reads credential files, sends data to fd12:ea5f:789c:1:d000:1c1:d8f4:2be4, 10.244.43.228, www.skills.sh.

Registry npm (MCP server)Publisher immamdouhaboammar · publishing for 159 daysInstalls 351Last detonated 6d ago

Coverage

Install scripts ran; no agent task scenario for this bundle.
Tested
install scripts, with decoy credentials in place · second launch with the clock 45 days ahead · every file read, file written and host contacted by what ran
Not tested
use of the skill by an agent

Is [email protected] safe to install?

KillerSkills ran it in the KillerSkills honeypot sandbox (2 scenarios; install scripts ran; no agent task scenario for this bundle) on 2026-11-08 and scored it 30/100 (Blocked). Do not install it: the sandbox observed behaviour consistent with credential theft, exfiltration or persistence. Summary: reads credential files, sends data to fd12:ea5f:789c:1:d000:1c1:d8f4:2be4, 10.244.43.228, www.skills.sh.

Behavior trace

Honeypot run · 7 s · 2 scenarios
t+CategoryObserved action
3.1snetworkdirect connection to fd12:ea5f:789c:1:d000:1c1:d8f4:2be4:0, bypassing the egress proxy · undeclared
3.1snetworkdirect connection to 10.244.43.228:0, bypassing the egress proxy · undeclared
3.1sfilesystemread ~/.agents/.skill-lock.json outside project
3.1sfilesystemwrote ~/.agents/skills/deep-digger/docs/solutions/delta-debugging-invariants.md · ~/.agents/skills/deep-digger/docs/solutions/evidence-gated-root-cause-investigation.md · ~/.agents/skills/deep-digger/references/research-anchors.md · ~/.agents/skills/deep-digger/references/investigation-routes.md · ~/.agents/skills/deep-digger/references/recon-and-architecture.md · ~/.agents/skills/deep-digger/references/causal-protocol.md
3.1snetworkCONNECT tcp://registry.npmjs.org:443
3.1snetworkCONNECT tcp://registry.npmjs.org:443
3.1snetworkCONNECT tcp://registry.npmjs.org:443
3.1snetworkCONNECT tcp://registry.npmjs.org:443
3.1snetworkCONNECT tcp://registry.npmjs.org:443
3.1snetworkCONNECT tcp://registry.npmjs.org:443
3.1snetworkCONNECT tcp://registry.npmjs.org:443
3.1snetworkCONNECT tcp://registry.npmjs.org:443
3.1snetworkCONNECT tcp://registry.npmjs.org:443
3.1snetworkCONNECT tcp://api.github.com:443
3.1snetworkCONNECT tcp://github.com:443
3.1snetworkCONNECT tcp://www.skills.sh:443 · not in the allow-list, refused
3.1sprocessexec /app/apps/web/node_modules/.bin/npx
3.1sprocessexec /root/.cache/node/corepack/v1/pnpm/10.28.0/dist/node-gyp-bin/npx
3.1sprocessexec /app/node_modules/.bin/npx
3.1sprocessexec /pnpm/npx
3.1sprocessexec /usr/local/sbin/npx
3.1sprocessexec /usr/local/bin/npx
3.1sprocessexec /tmp/ks-detonate-8XbqTR/setup/home/.npm/_npx/ac0ed6aa23b37c1e/node_modules/.bin/skills
3.1sprocessexec /tmp/ks-detonate-8XbqTR/setup/home/.npm/_npx/ac0ed6aa23b37c1e/node_modules/.bin/git
3.1sprocessexec /tmp/ks-detonate-8XbqTR/setup/home/work/acme-api/.claude/skills/deep-digger/node_modules/.bin/git
3.1sprocessexec /tmp/ks-detonate-8XbqTR/setup/home/work/acme-api/.claude/skills/node_modules/.bin/git
3.1sprocessexec /tmp/ks-detonate-8XbqTR/setup/home/work/acme-api/.claude/node_modules/.bin/git
3.1sprocessexec /tmp/ks-detonate-8XbqTR/setup/home/work/acme-api/node_modules/.bin/git
3.1sprocessexec /tmp/ks-detonate-8XbqTR/setup/home/work/node_modules/.bin/git
3.1sprocessexec /tmp/ks-detonate-8XbqTR/setup/home/node_modules/.bin/git
3.1sprocessexec /tmp/ks-detonate-8XbqTR/setup/node_modules/.bin/git
3.1sprocessexec /tmp/ks-detonate-8XbqTR/node_modules/.bin/git
3.1sprocessexec /tmp/node_modules/.bin/git
3.1sprocessexec /node_modules/.bin/git
3.1sprocessexec /usr/local/lib/node_modules/npm/node_modules/@npmcli/run-script/lib/node-gyp-bin/git
3.1sprocessexec /app/apps/web/node_modules/.bin/git
3.1sprocessexec /root/.cache/node/corepack/v1/pnpm/10.28.0/dist/node-gyp-bin/git
3.1sprocessexec /app/node_modules/.bin/git
3.1sprocessexec /pnpm/git
3.1sprocessexec /usr/local/sbin/git
3.1sprocessexec /usr/local/bin/git
3.1sprocessexec /usr/sbin/git
3.1sprocessexec /usr/bin/git
3.1sprocessexec /usr/lib/git-core/git
3.1sprocessexec /usr/lib/git-core/git-remote-https
3.1sprocessexec /app/apps/web/node_modules/.bin/cargo
3.1sprocessexec /root/.cache/node/corepack/v1/pnpm/10.28.0/dist/node-gyp-bin/cargo
3.1sprocessexec /app/node_modules/.bin/cargo
3.1sprocessexec /pnpm/cargo
3.1sprocessexec /usr/local/sbin/cargo
3.1sprocessexec /usr/local/bin/cargo
3.1sprocessexec /usr/sbin/cargo
3.1sprocessexec /usr/bin/cargo
3.1sprocessexec /sbin/cargo
3.1sprocessexec /bin/cargo
3.1sprocessscript backend runs setup only
3.1sprocessscript backend runs setup only
4.9sprocesssecond launch, clock +45 days, CI unset
6.9snetworkdirect connection to fd12:ea5f:789c:1:d000:1c1:d8f4:2be4:0, bypassing the egress proxy · undeclared
6.9snetworkdirect connection to 10.244.43.228:0, bypassing the egress proxy · undeclared
6.9sfilesystemread ~/.npmrc
6.9sfilesystemread ~/.npm/_logs · ~/.npm/_cacache/index-v5/94/20/9f7736468c664df22baf94367fc1ed384cf4bfc32d8f36e1d2ad5afcaa7d · ~/.npm/_cacache/content-v2/sha512/ab/8e/db726c9530859fe21397021bfd8327a91d3533b4ecfbbdfa2388af059a7d2bafa4e9cb79835e9faeddff950ed6f71229faf9e3f162052dddf0a77ef971f4 · ~/.npm/_npx/ac0ed6aa23b37c1e/package.json · ~/.npm/_npx/ac0ed6aa23b37c1e/node_modules/.package-lock.json · ~/.npm/_npx/ac0ed6aa23b37c1e/node_modules outside project
6.9sfilesystemwrote ~/.npm/_cacache/tmp/573f1ce3 · ~/.npm/_cacache/index-v5/94/20/9f7736468c664df22baf94367fc1ed384cf4bfc32d8f36e1d2ad5afcaa7d · ~/.agents/skills/deep-digger/docs/solutions/delta-debugging-invariants.md · ~/.agents/skills/deep-digger/docs/solutions/evidence-gated-root-cause-investigation.md · ~/.agents/skills/deep-digger/references/research-anchors.md · ~/.agents/skills/deep-digger/references/investigation-routes.md
6.9snetworkCONNECT tcp://registry.npmjs.org:443
6.9snetworkCONNECT tcp://api.github.com:443
6.9snetworkCONNECT tcp://github.com:443
6.9snetworkCONNECT tcp://www.skills.sh:443 · not in the allow-list, refused
6.9sprocessexec /app/apps/web/node_modules/.bin/npx
6.9sprocessexec /root/.cache/node/corepack/v1/pnpm/10.28.0/dist/node-gyp-bin/npx
6.9sprocessexec /app/node_modules/.bin/npx
6.9sprocessexec /pnpm/npx
6.9sprocessexec /usr/local/sbin/npx
6.9sprocessexec /usr/local/bin/npx
6.9sprocessexec /tmp/ks-detonate-8XbqTR/later/home/.npm/_npx/ac0ed6aa23b37c1e/node_modules/.bin/skills
6.9sprocessexec /tmp/ks-detonate-8XbqTR/later/home/.npm/_npx/ac0ed6aa23b37c1e/node_modules/.bin/git
6.9sprocessexec /tmp/ks-detonate-8XbqTR/later/home/work/acme-api/.claude/skills/deep-digger/node_modules/.bin/git
6.9sprocessexec /tmp/ks-detonate-8XbqTR/later/home/work/acme-api/.claude/skills/node_modules/.bin/git
6.9sprocessexec /tmp/ks-detonate-8XbqTR/later/home/work/acme-api/.claude/node_modules/.bin/git
6.9sprocessexec /tmp/ks-detonate-8XbqTR/later/home/work/acme-api/node_modules/.bin/git
6.9sprocessexec /tmp/ks-detonate-8XbqTR/later/home/work/node_modules/.bin/git
6.9sprocessexec /tmp/ks-detonate-8XbqTR/later/home/node_modules/.bin/git
6.9sprocessexec /tmp/ks-detonate-8XbqTR/later/node_modules/.bin/git
6.9sprocessexec /tmp/ks-detonate-8XbqTR/node_modules/.bin/git
6.9sprocessexec /tmp/node_modules/.bin/git
6.9sprocessexec /node_modules/.bin/git
6.9sprocessexec /usr/local/lib/node_modules/npm/node_modules/@npmcli/run-script/lib/node-gyp-bin/git
6.9sprocessexec /app/apps/web/node_modules/.bin/git
6.9sprocessexec /root/.cache/node/corepack/v1/pnpm/10.28.0/dist/node-gyp-bin/git
6.9sprocessexec /app/node_modules/.bin/git
6.9sprocessexec /pnpm/git
6.9sprocessexec /usr/local/sbin/git
6.9sprocessexec /usr/local/bin/git
6.9sprocessexec /usr/sbin/git
6.9sprocessexec /usr/bin/git
6.9sprocessexec /usr/lib/git-core/git
6.9sprocessexec /usr/lib/git-core/git-remote-https
6.9sprocessexec /app/apps/web/node_modules/.bin/cargo
6.9sprocessexec /root/.cache/node/corepack/v1/pnpm/10.28.0/dist/node-gyp-bin/cargo
6.9sprocessexec /app/node_modules/.bin/cargo
6.9sprocessexec /pnpm/cargo
6.9sprocessexec /usr/local/sbin/cargo
6.9sprocessexec /usr/local/bin/cargo
6.9sprocessexec /usr/sbin/cargo
6.9sprocessexec /usr/bin/cargo
6.9sprocessexec /sbin/cargo
6.9sprocessexec /bin/cargo

Static findings

MEDIUM
Python subprocess execution detecteddist/scripts/deep_digger.py:761 · Python subprocess execution detectedsubprocess.run(["git", "rev-parse", "--is-inside-work-tree"], check=True, capture_output=True)Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
MEDIUM
File type combined with upload actiondist/postinstall.js:121 · File type combined with upload action — agent may exfiltrate local data filesconsole.log('[Deep Digger] Running post-installation configuration...');Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.
AST07
MEDIUM
npx invocation of non-well-known packagedist/postinstall.js:38 · npx invocation of non-well-known package — may execute untrusted code// 1. Attempt npx / bunx skills add if online and registry tool is availableFix: Pin versions and sources; vendor anything fetched at install time.
AST06
MEDIUM
npx invocation of non-well-known packagedist/cli.js:49 · npx invocation of non-well-known package — may execute untrusted codeSkills Registry: npx skills add imMamdouhaboammar/deep-diggerFix: Pin versions and sources; vendor anything fetched at install time.
AST06
MEDIUM
Python subprocess execution detecteddist/scripts/deep_digger.py:179 · Python subprocess execution detectedresult = subprocess.run(argv, shell=False, timeout=timeout,Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
MEDIUM
Python subprocess execution detecteddist/scripts/deep_digger.py:766 · Python subprocess execution detectedp_start = subprocess.run(start_cmd, capture_output=True, text=True)Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
MEDIUM
Python subprocess execution detecteddist/scripts/deep_digger.py:771 · Python subprocess execution detectedp_run = subprocess.run(bisect_run_cmd, capture_output=True, text=True, timeout=args.timeout)Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05
MEDIUM
Python subprocess execution detecteddist/scripts/deep_digger.py:779 · Python subprocess execution detectedsubprocess.run(["git", "bisect", "reset"], capture_output=True)Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
AST05

Cost to the agent

Instructions loaded
≈6,056 tok
2 files · 23 in bundle

Tokens estimated at four characters each. Skills load their instruction text when triggered; the figure is what that costs.

Known vulnerabilities

No advisories in OSV for deep-digger@1.1.0 as of 6d ago. This is the package itself, not its dependencies.

What would make this Verified

50 points to 80 · weights: behavior 45%, static 25%, prompt 15%, publisher 15%

An override rule (credential_read_plus_egress) caps this verdict regardless of the score. The first item below has to go before anything else counts.

  1. Reads credential files≈ +27 on the totalThe sandbox saw reads under ~/.ssh, ~/.aws, ~/.npmrc, ~/.config or similar. Read only files inside the project, and only the ones the task needs.
  2. Contacts a host you did not declare≈ +23 on the totalList every host you talk to in SKILL.md frontmatter (`network: [api.example.com]`), or stop contacting the ones you cannot justify.
  3. Unclaimed publisher≈ +8 on the totalClaim immamdouhaboammar: a verified publisher gets +50 on publisher trust. It is free and usually instant with GitHub sign-in.
  4. Touches files outside the project≈ +7 on the totalKeep reads and writes inside the working directory, or declare the exact paths in `filesystem:` and explain why in the README.
  5. Python subprocess execution detected≈ +2 on the totalBuild commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
  6. File type combined with upload action≈ +2 on the totalRemove the call, or declare the host in frontmatter and explain in the README what is sent and why.
Publish a new version to npm, then queue it here. Not your skill? Claim the handle to get verdict changes by email.Claim immamdouhaboammarPropose a patch to the maintainer