Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Query DNS records and domain registration data with zero API keys — DNS-over-HTTPS via dns.google and domain registration via RDAP, through plain curl. Use when asked what does this domain resolve to, check the MX or TXT records, who registered this domain, when does it expire, or has DNS propagated. Produces the records decoded (SPF/DKIM/DMARC read, not just dumped), the registration facts from RDAP, and the rerunnable commands.
.claude/skills/mohitagw15856-dns-lookup/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-02 | ✗→✓ | ▲ Improved | 35% | 0% |
| case-03 | ✗→✓ | ▲ Improved | -6% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 136% | 0% |
| case-09 | ✗→✓ | ▲ Improved | 27% | 0% |
| case-11 | ✗→✓ | ▲ Improved | 466% | 0% |
DNS questions ("did the record propagate," "where's mail for this domain going," "who owns this") come with two keyless answers: Google's DNS-over-HTTPS for records, and RDAP — WHOIS's structured successor — for registration. This skill queries both, and does the part dig doesn't: decoding what the records mean — an SPF string into its policy, MX priorities into the actual mail provider, an expiry date into "renews in 6 weeks."
Ask for these if not provided:
curl -s "https://dns.google/resolve?name=github.com&type=MX" — types by name (A, AAAA, MX, TXT, CNAME, NS, SOA, CAA). Cloudflare as fallback/second opinion: curl -s -H "accept: application/dns-json" "https://cloudflare-dns.com/dns-query?name=github.com&type=A". Two resolvers agreeing is also the honest propagation check.curl -s "https://rdap.org/domain/github.com" — rdap.org bootstraps to the right registry. Read: events (registration/expiration dates), status (clientTransferProhibited etc. — decode the meaningful ones), registrar entity. Expect redacted contacts — post-privacy-era WHOIS data is minimal, and pretending otherwise misleads.v=spf1 → which services may send mail and the -all/~all strictness; _dmarc TXT → the policy (none/quarantine/reject) in words; CNAME chains followed to their end.The decoded answer first: "Mail goes to Google Workspace; SPF allows Google + Mailchimp, DMARC is quarantine."]
| Record | Value | TTL | Decoded | |---|---|---|---|
Registration section when asked: registrar · created · expires ("renews in N weeks") · status decoded · contacts: redacted, as is normal]
Source: dns.google / Cloudflare DoH / RDAP] · rerun: [exact curls] Propagation mode: the two-resolver comparison and the TTL framing]
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-02 | fail→pass | 14,360 | 13,212 | -8% | 1 | 1 | 0% | 2,942 | 3,975 | +35% | 0 | 0 | — |
case-01 | fail→fail | 11,182 | 11,558 | +3% | 1 | 1 | 0% | 2,245 | 3,258 | +45% | 0 | 0 | — |
case-03 | fail→pass | 14,251 | 9,442 | -34% | 1 | 1 | 0% | 3,143 | 2,953 | -6% | 0 | 0 | — |
case-04 | pass→pass | 14,853 | 12,982 | -13% | 1 | 1 | 0% | 2,643 | 3,476 | +32% | 0 | 0 | — |
case-05 | pass→pass | 3,726 | 2,836 | -24% | 1 | 1 | 0% | 588 | 1,535 | +161% | 0 | 0 | — |
case-06 | pass→pass | 1,342 | 3,498 | +161% | 1 | 1 | 0% | 224 | 1,584 | +607% | 0 | 0 | — |
case-07 | pass→pass | 9,481 | 6,227 | -34% | 1 | 1 | 0% | 2,076 | 2,292 | +10% | 0 | 0 | — |
case-08 | fail→pass | 5,914 | 7,227 | +22% | 1 | 1 | 0% | 1,075 | 2,532 | +136% | 0 | 0 | — |
case-09 | fail→pass | 10,288 | 8,364 | -19% | 1 | 1 | 0% | 1,953 | 2,483 | +27% | 0 | 0 | — |
case-10 | fail→fail | 6,892 | 6,550 | -5% | 1 | 1 | 0% | 1,376 | 2,299 | +67% | 0 | 0 | — |
case-11 | fail→pass | 2,214 | 6,093 | +175% | 1 | 1 | 0% | 412 | 2,330 | +466% | 0 | 0 | — |
case-12 | fail→pass | 10,052 | 5,637 | -44% | 1 | 1 | 0% | 2,185 | 2,121 | -3% | 0 | 0 | — |
case-13 | fail→pass | 11,405 | 21,450 | +88% | 1 | 1 | 0% | 1,435 | 3,199 | +123% | 0 | 0 | — |
case-14 | fail→pass | 7,729 | 8,407 | +9% | 1 | 1 | 0% | 1,463 | 2,626 | +79% | 0 | 0 | — |
case-15 | pass→pass | 9,912 | 4,322 | -56% | 1 | 1 | 0% | 2,128 | 1,827 | -14% | 0 | 0 | — |
case-16 | fail→pass | 11,347 | 9,528 | -16% | 1 | 1 | 0% | 2,178 | 2,954 | +36% | 0 | 0 | — |
case-17 | fail→fail | 7,386 | 7,806 | +6% | 1 | 1 | 0% | 1,358 | 2,526 | +86% | 0 | 0 | — |
case-18 | fail→fail | 10,091 | 7,315 | -28% | 1 | 1 | 0% | 2,065 | 2,458 | +19% | 0 | 0 | — |
case-19 | pass→pass | 11,133 | 5,155 | -54% | 1 | 1 | 0% | 2,247 | 2,102 | -6% | 0 | 0 | — |
case-20 | fail→pass | 9,823 | 9,054 | -8% | 1 | 1 | 0% | 1,921 | 2,882 | +50% | 0 | 0 | — |
case-21 | fail→pass | 11,081 | 10,179 | -8% | 1 | 1 | 0% | 2,396 | 3,031 | +27% | 0 | 0 | — |
case-22 | fail→pass | 14,936 | 7,919 | -47% | 1 | 1 | 0% | 2,678 | 2,611 | -3% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +55 percentage points is the difference between those two pass rates over the 22 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.