[object Object]

← back to Domain Sniper

step 9: README marks deny rules shipped

df203a684861a5bf82fe6a0f7750e094aa50605a · 2026-05-12 14:45:55 -0700 · Steve Abrams

16 deny rules added to ~/.claude/settings.json (Steve's home, not this repo)
to block the leak vectors at the Claude Code permission layer. MCP
domain-suite check_availability + get_whois_contact tools confirmed
disconnected by the runtime. Raw whois -h <registry> and curl against
RDAP/availability APIs also denied.

Belt-and-suspenders against future Claude sessions accidentally invoking
the same leak that probably grabbed callr.app/callr.co/butlr.app.

domain-sniper scripts (check.js, honeypot.js) are intentionally unaffected
— they use Node directly, not Claude's Bash tool, so the experiment
continues without interference.

Files touched

Diff

commit df203a684861a5bf82fe6a0f7750e094aa50605a
Author: Steve Abrams <steve@designerwallcoverings.com>
Date:   Tue May 12 14:45:55 2026 -0700

    step 9: README marks deny rules shipped
    
    16 deny rules added to ~/.claude/settings.json (Steve's home, not this repo)
    to block the leak vectors at the Claude Code permission layer. MCP
    domain-suite check_availability + get_whois_contact tools confirmed
    disconnected by the runtime. Raw whois -h <registry> and curl against
    RDAP/availability APIs also denied.
    
    Belt-and-suspenders against future Claude sessions accidentally invoking
    the same leak that probably grabbed callr.app/callr.co/butlr.app.
    
    domain-sniper scripts (check.js, honeypot.js) are intentionally unaffected
    — they use Node directly, not Claude's Bash tool, so the experiment
    continues without interference.
---
 README.md | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/README.md b/README.md
index b6b616e..18f0206 100644
--- a/README.md
+++ b/README.md
@@ -36,7 +36,12 @@ We can't get the WHOIS query stream (it's gated to aggregator partners), but we
 - [ ] **Step 6** — `watch-drops.js` — daily pull of pending-delete CSVs from public auction houses. Surfaces names dropping in the next 5 days. Free sources: pool.com, dropcatch.com, snapnames.com, ICANN CZDS zone-diff.
 - [ ] **Step 7** — `brand-typo-watcher.js` — promote the brand-keyword logic out of `watch-ct.js` into its own job. Alerts immediately on hit.
 - [ ] **Step 8** — `registrar-fingerprints.json` — known aggregator signatures (OVH ns112.ovh.net, etc.) so the honeypot check phase can name-and-shame quickly.
-- [ ] **Step 9** — kill `mcp__domain-suite__check_availability` from `~/.claude.json` so it can never be invoked accidentally.
+- [x] **Step 9** — added 16 deny rules to `~/.claude/settings.json` covering:
+  - MCP tools: `mcp__domain-suite__check_availability`, `mcp__domain-suite__get_whois_contact`, `mcp__godaddy__check_availability`, `mcp__namecheap__check_availability`
+  - Raw `whois -h <registry>` against verisign-grs.com / nic.google / nic.co / iana.org
+  - Direct `curl` against rdap.verisign.com / rdap.nic.google / api.godaddy.com `/v1/domains/available` / Namecheap `domains.check`
+  - Backup: `~/.claude/settings.json.bak-2026-05-12-yolo-tick2`
+  - Does NOT affect domain-sniper scripts (honeypot.js, check.js) — those use Node's child_process / https directly and aren't routed through Claude's Bash permission layer.
 - [ ] **Step 10** — extend dashboard with sort, click-to-register, sound alerts on brand hits.
 
 ## YOLO loop notes

← 7b38b4a step 8: registrar-fingerprints.json + cross-ref in honeypot  ·  back to Domain Sniper  ·  step 7: brand-typo-watcher.js — Levenshtein + Punycode brand dc2abc5 →