Skip to content
Conduit

skill

aghome-blocks

A curated collection of domain blocklists optimized for AdGuard Home. This repository provides regularly updated, clean, and categorized domain lists focused on blocking ads, tracking, malware, teleme

ruhex/aghome-blockscommunitylistedunreviewed

Set up

Skills are installed by placing their folder where your agent loads skills.

The download comes from github.com/ruhex/aghome-blocks itself, not from our server, so what you get is exactly what its author published.

Install instructions come from the README

Skills do not use an MCP config. Follow the steps in the README below.

README

synced Oct 26, 2026

aghome-blocks

Curated AdGuard Home blocklists plus an agent skill that keeps them precise: analyze live DNS query logs, classify domains for privacy and security risk, edit the lists with minimal diff, and roll changes out safely.

Mandate: maximum privacy and security with minimum breakage — a precise blocklist, not a long one.

Repository layout

SKILL.md                    agent skill (Agent Skills format): the full workflow
references/analysis-spec.md analysis methodology v3.0 (evidence model, risks, JSON schema)
scripts/fetch_querylog.py   server-side querylog aggregation over SSH
scripts/classify_domains.py rule-based classifier (v3.0 schema)
scripts/enrich_review.py    DNS/RDAP/URLhaus enrichment for REVIEW domains
lists/blocklist.txt         main curated blocklist (published)
lists/                      legacy lists (live subscriptions until switchover)
analysis/                   local artifacts, gitignored

Lists

FilePurpose
lists/blocklist.txtmerged curated list: ads, counters, telemetry, vendor telemetry (Xiaomi/HiHonor/360), scam suspects, torrent trackers, per-analysis findings
lists/filter_2.txt, lists/telemetry-blocklist.txtlegacy lists, still subscribed by the live AGH instance until switchover

The blocklist deliberately does not touch approved services - they are covered by $important allowlist entries in AGH user rules and must never be blocked. The specific list of approved services is intentionally not public (see SKILL.md, "Whitelist policy").

Using the agent

Open this repository with an Agent Skills compatible assistant and follow SKILL.md. Short version:

# 1. aggregate query logs from the AGH host (secrets via environment)
AGH_SSH=root@dns-host AGH_DATA_DIR=/var/lib/docker/volumes/adguardhome-work/_data/data \
    DAYS=30 scripts/fetch_querylog.py analysis/allowed_domains.json

# 2. classify domains (analysis-spec.md methodology)
scripts/classify_domains.py analysis/allowed_domains.json analysis/dns-analysis.json

# 3. enrich the suspicious REVIEW subset (RDAP, DNS resolution)
scripts/enrich_review.py analysis/dns-analysis.json 15

# 4. curate lists/blocklist.txt from the findings, then commit and push;
#    AdGuard Home pulls the raw URL on its refresh interval

Credentials live only in the environment (AGH_SSH, AGH_URL, AGH_USER, AGH_PASS, optional URLHAUS_API_KEY) and are never committed.

Security notes

  • The repo is public: no hosts, credentials, or operator-specific domains belong in commits. Operator-owned domains go to the gitignored analysis/operator-domains.txt.
  • Some upstream blocklists (e.g. AdGuard DNS filter) contain @@ allowlist entries for certain ad/affiliate domains; user block rules cannot override those — use AGH DNS rewrites for the exceptions (see SKILL.md, "Operational gotchas").

License

See LICENSE.

↑↓ navigate openesc close