π¦ ClawHub
Privacy Protector
by @modeioai
Runs PII anonymization, local de-anonymization, and deterministic local detector checks for text and supported files. Use for redact/restore flows, file-firs...
TERMINAL
clawhub install privacy-protectorπ About This Skill
name: privacy-protector description: >- Runs PII anonymization, local de-anonymization, and deterministic local detector checks for text and supported files. Use for redact/restore flows, file-first anonymization, or offline detector tuning with allowlist, blocklist, and threshold controls. version: 0.1.0 metadata: clawdbot: homepage: https://github.com/mode-io/mode-io-skills/tree/main/privacy-protector requires: bins: - python3
Run anonymization and restore flows
Use this skill when you need to anonymize text/files, restore placeholders with a saved map, or tune the local detector.
Maintainer-only validation assets are excluded from ClawHub uploads.
Scope
scripts/anonymize.py)
- deanonymize (scripts/deanonymize.py)
- local detector diagnostics (scripts/detect_local.py)
- file/map workflow helpers behind those entrypoints
modeio-middleware)
- command safety analysis (security)
- staged-diff or git pre-commit scanningWorking directory
Run these commands from inside the privacy-protector folder.
Requirements
python3requests for API-backed dynamic, strict, and crossborderpython-docx for .docxPyMuPDF for .pdfANONYMIZE_API_URL for non-lite levelsMODEIO_REDACT_MAP_DIR for local map storageCore commands
Anonymize text
python3 scripts/anonymize.py \
--input "Email: alice@example.com, Phone: 415-555-1234" \
--level lite \
--json
Anonymize a file
python3 scripts/anonymize.py \
--input ./incident.docx \
--level lite \
--json
Restore from a saved map
python3 scripts/deanonymize.py \
--input "Email: [EMAIL_1]" \
--map ~/.modeio/redact/maps/.json \
--json
Tune the local detector
python3 scripts/detect_local.py \
--input "Project codename Phoenix is approved. Reach support@example.com." \
--allowlist-file examples/detect-local/allowlist.json \
--blocklist-file examples/detect-local/blocklist.json \
--thresholds-file examples/detect-local/thresholds.json \
--json
Runtime notes
lite runs fully local. dynamic, strict, and crossborder call the backend APIcrossborder, pass both --sender-code and --recipient-code.txt, .md, .markdown, .csv, .tsv, .json, .jsonl, .yaml, .yml, .xml, .html, .htm, .rst, .log, .docx, .pdf~/.modeio/redact/maps; use MODEIO_REDACT_MAP_DIR to override that location.map.json references when needed.pdf supports anonymization only; de-anonymization is not supported--json when you want the stable machine-readable envelope and file workflow metadataResources
ARCHITECTURE.md for package boundariesreferences/cli-contracts.md for flags and output contractsreferences/file-workflows.md for map linkage and assurance behaviorreferences/local-detector.md for profiles and shipped config examplesexamples/detect-local/ for ready-to-edit tuning files