hermes-agent/tests/skills
SHL0MS c2828f2b9b feat(skills): add security/unbroker (autonomous data-broker removal)
unbroker finds where a consenting person's info is exposed across data
brokers and people-search sites and files the removals, running as far as
each site allows and handing only genuinely human-only steps (hard CAPTCHA,
gov-ID, phone, fax) back as an end-of-run digest.

- Deterministic stdlib CLI (scripts/pdd.py) owns config, dossiers+consent,
  the broker DB, tier planning, the ledger, email, and the autonomous
  action queue; the agent scans/submits with native tools (web_extract,
  browser_*, delegate_task, cronjob, terminal).
- Verify-before-disclose, least-disclosure (never volunteers SSN), consent
  gate, opaque ids, optional age-at-rest encryption, file-locked ledger.
- Jurisdiction-aware (CCPA/CPRA, GDPR, generic); CA DROP one-shot covers
  the state registry (~545) in a single request; BADBOOL + curated
  people-search coverage; scheduled re-scan for re-listing.
- No CAPTCHA-solving services or anti-bot bypass; browser email mode needs
  no stored password.
- 85 hermetic tests (tests/skills/test_unbroker_skill.py; SMTP/IMAP via
  injected fakes, registry via CSV fixtures). Ships placeholder data only.

Broker dataset adapted from BADBOOL (Yael Grauer, CC BY-NC-SA 4.0).
2026-07-02 21:16:10 -04:00
..
test_cloudflare_temporary_deploy_skill.py feat(skills): add cloudflare-temporary-deploy optional skill (#50849) 2026-06-22 12:14:30 -07:00
test_darwinian_evolver_skill.py feat(skill): darwinian-evolver optional skill 2026-05-15 21:56:07 -07:00
test_fetch_transcript.py fix(deps): declare youtube-transcript-api in pyproject.toml [youtube] extra 2026-05-09 13:36:01 -07:00
test_google_workspace_api.py fix(google-workspace): handle Gmail header casing case-insensitively 2026-05-30 02:38:18 -07:00
test_google_workspace_credential_files.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
test_hyperliquid_skill.py Add unit tests for hyperliquid skill functionality 2026-05-10 22:15:04 -07:00
test_memento_cards.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
test_openclaw_migration.py chore: ruff auto-fix PLR6201 resweep — tuple → set in membership tests (#27355) 2026-05-17 02:29:41 -07:00
test_openclaw_migration_hardening.py feat(claw-migrate): harden OpenClaw import with plan-first apply, redaction, and pre-migration backup (#16911) 2026-04-28 01:50:23 -07:00
test_telephony_skill.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00
test_unbroker_skill.py feat(skills): add security/unbroker (autonomous data-broker removal) 2026-07-02 21:16:10 -04:00
test_xurl_article_ingestion_docs.py fix(skills): document xurl X Article ingestion 2026-06-03 15:11:57 -07:00
test_youtube_quiz.py chore: prune unused imports and duplicate import redefinitions 2026-05-28 22:26:25 -07:00