Skip to content

Guide · Agent skill

How to use the AdGuard Home CLI agent skill

Updated · written with AI from the project's own documentation and checked against our catalogue data

The cli-anything-adguardhome skill teaches an AI agent to control a running AdGuard Home server through a command-line tool instead of its web interface. It is for home and small-office network administrators, power users and developers who want an agent to check status, manage blocklists, DNS rewrites, clients, query logs and DHCP leases. By the end of this guide you will know what the skill does, how to install it, how to phrase requests so the agent uses it, and what safety checks to keep in place.

AdGuard Home CLIHKUDS/CLI-Anything · Apache-2.0

Quick start

  1. 1Download and unzip the skill. Download the ZIP from this page and unzip it into ~/.claude/skills/ or a project's .claude/skills/ folder. Or upload it under Settings → Capabilities → Skills in the Claude apps.
  2. 2Install AdGuard Home. Make sure AdGuard Home is installed and running and reachable over its REST API.
  3. 3Install the CLI. Run pip install cli-anything-adguardhome with Python 3.10 or newer.
  4. 4Configure and test the connection. Set the admin host and credentials, then run the config test command to confirm the CLI reaches your server.
  5. 5Ask for a read-only check. Request server status or a filter list so the agent reports the current state without changing anything.
  6. 6Make a reviewed change. Ask for one specific change, such as adding a DNS rewrite, and review what the agent plans to run before approving it.

What is an agent skill and what does this one let the agent do?

An agent skill is a folder containing a SKILL.md file that tells an AI agent when and how to use a tool. This skill is built around the cli-anything-adguardhome command-line interface, which talks to the AdGuard Home REST API.

Once installed, the agent can run the CLI to check server protection status and version, list, add, enable, disable and remove filter lists, and force-refresh them. It can also manage DNS rewrites, client devices, query logs and statistics, parental control, safe browsing and safe search, blocked services, and DHCP status, leases and static leases.

Install the skill with a ZIP file or the Claude apps

Download the skill ZIP from this page and unzip it into one of two locations. For a personal skill available in all your projects, unzip it into ~/.claude/skills/. For a skill limited to one project, unzip it into that project's .claude/skills/ folder.

If you use the Claude apps, you can instead upload the skill under Settings → Capabilities → Skills.

The skill's SKILL.md file is the entry point the agent reads, so it should sit directly inside the skill folder after unzipping.

Install the CLI and AdGuard Home

The skill needs the command-line tool itself. The source installs it as a pip package, and it requires Python 3.10 or newer. AdGuard Home must already be installed and running, because the tool only controls an existing server and does not replace it.

If you still need AdGuard Home, the source gives an install script command. Review the script before running it on your machine.

  • Python 3.10 or newer
  • A running AdGuard Home instance reachable over its REST API
  • The cli-anything-adguardhome pip package
  • Admin connection settings (host and credentials) configured in the CLI
pip install cli-anything-adguardhome

Connect the CLI and test the connection

Before anything else, the skill tells the agent to test the connection. The config group shows the current connection settings, can save them to a config file, and tests the connection to AdGuard Home. Run the test first so you know the host and credentials work.

You can also run the tool yourself to confirm it works. Asking for help or checking server status are safe, read-only starting points.

  • config show displays the current connection configuration
  • config save stores connection settings in a config file
  • config test checks the connection
cli-anything-adguardhome server status

Trigger the skill with natural requests

You do not need to type commands. Ask in plain language about AdGuard Home, DNS filtering, blocklists, DHCP or query logs, and the agent should pick up the skill from its description. Be specific about the device, domain or list you mean, and say when you only want to look rather than change things.

The skill asks the agent to use JSON output and to check return codes, so the agent can read results reliably.

  • "Check whether AdGuard Home protection is on and which version is running."
  • "Add the list at this URL as a filter and refresh the filters."
  • "Create a local DNS name myserver.local pointing to 192.168.1.50."
  • "Show the top query stats from the last session, read-only."
  • "Add my PC at 192.168.1.100 as a client named My PC."

Examples of common commands

The source shows these examples. Each one maps to a request you could make in natural language. Use --json when an agent is reading the output, and omit it when you want a readable table.

Output modes: the default is human-readable with tables and colors, and the --json flag returns structured JSON.

  • Filters: filter list, filter add with a URL and name, filter refresh
  • DNS rewrites: rewrite add with a domain and answer, rewrite list
  • Clients: clients add with name and IP, clients list
  • Statistics: stats show, or --json stats show for agents
cli-anything-adguardhome --json stats show

Safety: scripts, network access and changes

This skill runs scripts and uses the network. It talks to your AdGuard Home server over its REST API, so it needs your admin host and credentials. Store those carefully and only point the tool at a server you control.

Changes can affect everyone on the network. Changing DNS, DHCP or blocking rules without review can break connectivity for every device. Ask the agent to show current state first, and review any add, remove, restart, clear or reset action before it runs. The source's own guidance is to test the connection first and to use absolute paths for file operations.

This skill is not a per-device ad blocker. It manages the network-wide server.

  • Check return codes: 0 means success, non-zero means an error
  • Parse stderr for error messages when a command fails
  • Use absolute paths for all file operations
  • Keep a backup of your AdGuard Home configuration before large changes

Tips for reliable results

Start with read-only commands such as server status, filter list and rewrite list so you see the current setup before changing it. Ask the agent to report the output before it makes a change.

Use the REPL mode if you prefer an interactive session with tab-completion and history. For more detail, the source points to README.md and TEST.md in the package.

  • Run the connection test before any other command
  • Prefer --json when the agent reads results
  • Check the README.md in the package for full documentation
cli-anything-adguardhome

What people use it for

  • Check whether network-wide protection is on and which AdGuard Home version is running
  • Add a blocklist by URL and refresh all filters
  • Create local DNS names for home servers with DNS rewrites
  • Add named client devices and review query statistics or the query log
  • Review DHCP status and leases, and add static leases for fixed devices

Frequently asked questions

How do I install the cli-anything-adguardhome skill?

Download the skill ZIP from this page and unzip it into ~/.claude/skills/ for personal use, or into a project's .claude/skills/ folder for one project. In the Claude apps you can upload it under Settings → Capabilities → Skills instead. The CLI itself is installed with pip install cli-anything-adguardhome.

What do I need to use this AdGuard Home skill?

You need Python 3.10 or newer, a running AdGuard Home instance reachable over its REST API, admin connection settings (host and credentials) configured in the CLI, and the cli-anything-adguardhome pip package. The tool only controls an existing server.

Is the cli-anything-adguardhome skill free?

The source lists the licence as Apache-2.0. Check the repository's licence file for the full terms. The source does not state pricing for the skill or for AdGuard Home.

Can the agent block ads on just one device?

No. This skill manages the network-wide AdGuard Home server. If you only want ad blocking on one device, you would need a different tool or setup.

Why does the agent need to test the connection first?

The skill tells the agent to run config test before other commands, so it confirms the host and credentials work. This avoids a string of failed commands against a server the CLI cannot reach.

Is this safe to use on a shared network?

Use caution. The skill runs scripts and uses the network, and changes to DNS, DHCP or blocking rules can break connectivity for everyone on the network. Review any change before the agent runs it, and start with read-only commands.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

Choose this skill if you already run AdGuard Home and want an AI agent or scripted terminal workflow to handle routine filter, rewrite, client and DHCP changes. Skip it if you do not have a running AdGuard Home server, want per-device blocking, or manage a shared network where unreviewed changes could cause outages.

Download the skill