Commit Graph

6 Commits

Author SHA1 Message Date
yuhao 99f92f0525 WIP transfer root-skills and hub updates 2026-04-18 10:12:58 +00:00
Okyumi 4bb6109b84 feat: add missing SKILL.md for adguardhome, comfyui, mermaid + fix setup.py + expand test coverage
Three harnesses shipped without the SKILL.md skill definition introduced
in Phase 6.5, and their setup.py files lacked the package_data entry
needed for pip install to include the skill file.  This means agents
cannot discover these CLIs through the standard skill system.

Changes:

- Add skills/SKILL.md for adguardhome (12 command groups, 36+ commands)
- Add skills/SKILL.md for comfyui (5 command groups: workflow, queue,
  models, images, system)
- Add skills/SKILL.md for mermaid (4 command groups: project, diagram,
  export, session)
- Fix adguardhome/setup.py: add package_data and include_package_data
- Fix mermaid/setup.py: add package_data and include_package_data
- Fix comfyui/setup.py: add package_data for skills (was missing despite
  include_package_data=True already being set)
- Add comfyui to .gitignore allow-list (was tracked before the gitignore
  was tightened, but new files could not be added)
- Expand test_skill_path.py HARNESSES list from 11 to all 18 harnesses
- Fix test assertion to accept mubu-style explicit SKILL.md reference
  alongside the glob pattern used by other harnesses

Test results: 79 passed (was 51 tests covering only 11 harnesses)
2026-03-22 14:17:13 +00:00
pyxl 433c3cf880 fix: preserve server config when toggling log/filter settings
- log_config: trigger POST when --interval is passed without --enabled,
  read current config for missing parameters
- set_enabled: read current filter interval from server instead of
  hardcoding 24h
- Update test mock to cover the new get_status call in set_enabled

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-18 15:39:58 +01:00
pyxl 1cf993dc97 refactor: simplify Path conversion and persist https in save_config
- Extract duplicate Path(config_path) conversion to a single variable
- save_config() now accepts and persists the https flag, ensuring
  load/save roundtrip symmetry for all config fields

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 19:21:53 +01:00
pyxl b5a118e426 fix: address code review feedback on PR #65 (AdGuardHome CLI)
- Fix REPL argument parsing: use shlex.split() instead of str.split()
  so quoted args like --name "My PC" are handled correctly
- Fix config save: respect --config path by storing config_path in
  ctx.obj and passing it through to save_config()
- Fix HTTPS persistence: load_config() now reads 'https' key from
  saved config files (default False)
- docs: add AdGuardHome to README (badge 12 Apps, category table,
  project tree) per yuh-yang's request

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 19:21:53 +01:00
pyxl a4c5f7b3de feat: add AdGuardHome CLI harness (cli-anything-adguardhome)
First REST HTTP API harness in the collection — AdGuardHome is a DNS-based
ad blocker and privacy protection server exposing 58 endpoints across 14
tag groups, secured with HTTP Basic Auth.

CLI covers all major API groups:
- filter: list/add/remove/enable/disable/refresh/status/toggle
- blocking: parental/safebrowsing/safesearch enable/disable/status
- blocked-services: list/set
- clients: list/add/remove/show
- stats: show/reset/config
- log: show/config/clear
- rewrite: list/add/remove
- dhcp: status/leases/add-static/remove-static
- server: status/version/restart
- config: show/save/test

Features: --json output, REPL mode, --https flag, env vars (AGH_HOST etc),
config file (~/.config/cli-anything-adguardhome.json)

Tests: 36 passing (24 unit + 12 E2E via Docker adguard/adguardhome)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-17 19:21:01 +01:00