Communitygithub.com

cli-anything-adguardhome

基於 AdGuard Home REST API 的網路廣告封鎖與 DNS 管理工具,專為 AI 代理與進階用戶設計。

cli-anything-adguardhome 是什麼?

cli-anything-adguardhome 是一款命令列工具,透過 AdGuard Home 的 REST API 提供網路層級的廣告封鎖與 DNS 管理功能。它無需圖形介面即可管理過濾規則、DNS 重寫、用戶端設備、DHCP 以及查詢日誌,非常適合整合到 AI 代理與自動化工作流程中。支援所有主流平台(Linux、macOS、Windows),並提供互動式 REPL 模式與結構化 JSON 輸出(透過 --json 旗標),方便程式解析與腳本化使用。其核心設計讓 AI 代理能直接執行系統管理任務,例如檢查伺服器狀態、新增封鎖清單、設定 DNS 重寫規則,或管理 DHCP 租約,大幅提升網路管理效率。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/HKUDS/CLI-Anything/tree/main/skills/cli-anything-adguardhome

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

cli-anything-adguardhome 是做什麼的?

透過 AdGuard Home REST API 實現網路層級的廣告封鎖與 DNS 管理。專為 AI 代理與進階用戶設計,無須圖形介面即可管理過濾、DNS 重寫、用戶端、DHCP 與查詢日誌。

安裝

此 CLI 作為 cli-anything-adguardhome 套件的一部分安裝:

pip install cli-anything-adguardhome

先決條件:

  • Python 3.10+
  • 必須安裝並執行 AdGuard Home
  • 安裝 AdGuard Home:curl -s -S -L https://raw.githubusercontent.com/AdguardTeam/AdGuardHome/master/scripts/install.sh | sh -s -- -v

使用方式

基本指令

# 顯示說明
cli-anything-adguardhome --help

# 啟動互動式 REPL 模式
cli-anything-adguardhome

# 檢查伺服器狀態
cli-anything-adguardhome server status

# 以 JSON 輸出執行(供代理程式使用)
cli-anything-adguardhome --json server status

REPL 模式

在不指定子指令的情況下呼叫時,CLI 會進入互動式 REPL 工作階段:

cli-anything-adguardhome
# 以 Tab 補全與歷史記錄功能互動式輸入指令

指令群組

Config(設定)

連線與組態管理。

指令說明
show顯示目前連線組態
save將連線設定儲存至設定檔
test測試與 AdGuard Home 的連線

Server(伺服器)

伺服器狀態與控制指令。

指令說明
status顯示伺服器保護狀態
version顯示 AdGuard Home 版本
restart重新啟動 AdGuard Home 伺服器

Filter(過濾器)

DNS 過濾清單管理。

指令說明
list列出所有已設定過濾清單
status顯示過濾狀態
toggle全域啟用或停用過濾
add透過 URL 新增過濾清單
remove移除過濾清單
enable啟用特定過濾清單
disable停用特定過濾清單
refresh強制重新整理所有過濾清單

Blocking(封鎖)

家長監護、安全瀏覽與安全搜尋設定。

指令說明
parental status顯示家長監護狀態
parental enable啟用家長監護
parental disable停用家長監護
safebrowsing status顯示安全瀏覽狀態
safebrowsing enable啟用安全瀏覽
safebrowsing disable停用安全瀏覽
safesearch status顯示安全搜尋狀態
safesearch enable啟用安全搜尋
safesearch disable停用安全搜尋

Blocked-Services(被封鎖服務)

管理被封鎖的網際網路服務。

指令說明
list列出目前已封鎖的服務
set設定被封鎖的服務清單

Clients(用戶端)

用戶端設備管理。

指令說明
list列出所有已設定的用戶端
add依名稱與 IP 新增用戶端
remove移除用戶端
show顯示特定用戶端的詳細資訊

Stats(統計)

查詢統計資料。

指令說明
show顯示 DNS 查詢統計資料
reset重設所有統計資料
config檢視或更新統計資料保留間隔

Log(日誌)

DNS 查詢日誌管理。

指令說明
show顯示最近的 DNS 查詢日誌項目
config檢視或更新查詢日誌設定
clear清除查詢日誌

Rewrite(重寫)

DNS 重寫規則。

指令說明
list列出所有 DNS 重寫規則
add新增 DNS 重寫規則
remove移除 DNS 重寫規則

DHCP

DHCP 伺服器管理。

指令說明
status顯示 DHCP 伺服器狀態
leases列出作用中的 DHCP 租約
add-static新增靜態 DHCP 租約
remove-static移除靜態 DHCP 租約

TLS

TLS/HTTPS 組態。

指令說明
status顯示 TLS 組態狀態

範例

檢查伺服器狀態

cli-anything-adguardhome server status
cli-anything-adguardhome server version

管理過濾清單

# 列出目前過濾器
cli-anything-adguardhome filter list

# 新增封鎖清單
cli-anything-adguardhome filter add --url https://somehost.com/list.txt --name "我的清單"

# 重新整理所有過濾器
cli-anything-adguardhome filter refresh

DNS 重寫

# 新增本機 DNS 項目
cli-anything-adguardhome rewrite add --domain "myserver.local" --answer "192.168.1.50"

# 列出所有重寫規則
cli-anything-adguardhome rewrite list

用戶端管理

cli-anything-adguardhome clients add --name "我的電腦" --ip 192.168.1.100
cli-anything-adguardhome clients list

查詢統計

# 顯示統計(人類可讀)
cli-anything-adguardhome stats show

# 顯示統計(JSON 格式,供代理程式使用)
cli-anything-adguardhome --json stats show

輸出格式

所有指令都支援雙重輸出模式:

  • 人類可讀(預設):表格、色彩、格式化文字
  • 機器可讀(--json 旗標):結構化 JSON,供代理程式使用
# 人類輸出
cli-anything-adguardhome filter list

# 供代理程式使用的 JSON 輸出
cli-anything-adguardhome --json filter list

給 AI 代理程式的建議

以程式方式使用此 CLI 時:

  1. 一律使用 --json 旗標,以取得可解析的輸出
  2. 檢查回傳碼 — 0 代表成功,非零代表錯誤
  3. 解析 stderr,以取得失敗時的錯誤訊息
  4. 在所有檔案操作中使用絕對路徑
  5. 先以 config test 測試連線,再執行其他指令

更多資訊

  • 完整文件:請參閱套件內的 README.md
  • 測試涵蓋範圍:請參閱套件內的 TEST.md
  • 方法論:請參閱 cli-anything-plugin 中的 HARNESS.md

版本

1.0.0

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

cli-anything-anygen

>-

cli-anything-audacity

>-

cli-anything-blender

>-

cli-anything-browser

Browser automation CLI using DOMShell MCP server. Maps Chrome

cli-anything-calibre

>-

cli-anything-ccswitch

CLI interface for CC Switch — manage AI coding tool configurations from the terminal

cli-anything-chromadb

>-

cli-anything-cloudanalyzer

Command-line interface for CloudAnalyzer — Agent-friendly harness for CloudAnalyzer, a QA platform for mapping, localization, and perception outputs. Supports 27 commands across 8 groups: point cloud evaluation, trajectory evaluation, ground segmentation QA, config-driven quality gates, baseline evolution, processing, visualization, and interactive REPL.

cli-anything-cloudcompare

Command-line interface for CloudCompare — Agent-friendly harness for CloudCompare, the open-source 3D point cloud and mesh processing software. Supports 41 commands across 9 groups: project management, session control, point cloud operations (subsample, filter, segment, analyze), mesh operations, distance computation (C2C, C2M), transformations (ICP, matrix), export (LAS/LAZ/PLY/PCD/OBJ/STL/E57), and interactive REPL.

cli-anything-comfyui

>-

cli-anything-dify-workflow

Wrapper for the Dify workflow DSL CLI. Create, inspect, validate, edit, and export Dify workflow files through a CLI-Anything harness.

cli-anything-drawio

>-

cli-anything-eez-studio

Use EEZ Studio from the command line: inspect and modify native .eez-project files, edit LVGL screens/widgets, manage SCPI commands, and invoke the real EEZ Studio backend for LVGL builds.

cli-anything-eth2-quickstart

>-

cli-anything-exa

>-

cli-anything-firefly-iii

Firefly III CLI - Personal finance management via CLI-Anything

cli-anything-freecad

Complete CLI harness for FreeCAD parametric 3D CAD modeler (258 commands). Covers ALL workbenches: Part (29 primitives + boolean + mirror + loft + sweep), Sketcher (26 cmds: geometry + constraints + editing), PartDesign (38 cmds: pad/pocket/groove/fillet/chamfer/patterns/hole/datum), Assembly (11 cmds), Mesh (16 cmds), TechDraw (15 cmds: views + dimensions + PDF/SVG), Draft (33 cmds: 2D shapes + arrays + transforms), FEM (12 cmds), CAM/CNC (10 cmds), Surface (6 cmds), Spreadsheet (7 cmds), Import (13 formats), Export (17 formats), Measure (12 cmds), Materials (21 presets). Headless FreeCAD export to STEP/IGES/STL/OBJ/DXF/PDF/glTF/3MF.

cli-anything-gimp

>-

cli-anything-godot

>-

cli-anything-inkscape

>-

相關技能