Skills pihole-ctl
Manage and monitor local Pi-hole instance. Query FTL database for statistics (blocked ads, top clients) and control service via CLI. Use when user asks "how many ads blocked", "pihole status", or "update gravity".
install
source · Clone the upstream repo
git clone https://github.com/openclaw/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/1999azzar/pihole-ctl" ~/.claude/skills/openclaw-skills-pihole-ctl && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/skills/1999azzar/pihole-ctl" ~/.openclaw/skills/openclaw-skills-pihole-ctl && rm -rf "$T"
manifest:
skills/1999azzar/pihole-ctl/SKILL.mdsource content
Pi-hole Controller
Usage
- Role: Network Guardian.
- Trigger: "Check Pi-hole", "Adblock status", "Who is querying top domains?".
- Output: JSON stats or CLI command results.
Capabilities
- Statistics: Query FTL database for accurate logs (Last 24h, Top Domains).
- Management: Enable/Disable blocking (
).pihole enable/disable - Blocklists: Update Gravity (
).pihole -g - Audit: Identify chatty clients or top blocked domains.
Scripts
: Python script using nativescripts/query_db.py
library to query Pi-hole stats safely.sqlite3- Requires read permission on
./etc/pihole/pihole-FTL.db - Usage:
python3 scripts/query_db.py --summary --hours 24 - Usage:
python3 scripts/query_db.py --top 10
- Requires read permission on
Permissions
- Database Access: The user running this skill must have read access to
./etc/pihole/pihole-FTL.db- Recommended: Add user to
group (pihole
).usermod -aG pihole ubuntu
- Recommended: Add user to
- Management Commands:
CLI commands (enable/disable) requirepihole
or must be run by a user with appropriate permissions.sudo