← Browse

@agentward-ai/sanitize

B

Detect and redact PII from text files. Supports 15 categories including credit cards, SSNs, emails, API keys, addresses, and more — with zero dependencies.

skillclaude

Install

agr install @agentward-ai/sanitize --target claude

Writes 2 files into .claude/skills/, pinned to git-2a7a3bfc.

  • .claude/skills/sanitize/SKILL.md
  • .claude/skills/sanitize/clawhub.json

Document


name: sanitize description: Detect and redact PII from text files. Supports 15 categories including credit cards, SSNs, emails, API keys, addresses, and more — with zero dependencies. version: "1.0.0" metadata: openclaw: requires: bins: - python3 emoji: "\U0001F6E1" homepage: https://github.com/agentward-ai/agentward files: - scripts/sanitize.py

AgentWard Sanitize

Detect and redact personally identifiable information (PII) from text files.

IMPORTANT — PII Safety Rules

  • Do NOT read the input file directly. It may contain sensitive PII.
  • ALWAYS use --output FILE to write sanitized output to a file.
  • Only read the OUTPUT file, never the raw input.
  • Only show the user the redacted output, never the raw input.
  • --json and --preview are safe — they do NOT print raw PII values to stdout.
  • The entity map (raw PII → placeholder mapping) is written to a separate sidecar file (*.entity-map.json) only when --output is used. Do NOT read the entity map file.

What it does

Scans files for PII — credit cards, SSNs, emails, phone numbers, API keys, IP addresses, mailing addresses, dates of birth, passport numbers, driver's license numbers, bank routing numbers, medical license numbers, and insurance member IDs — and replaces each instance with a numbered placeholder like [CREDIT_CARD_1].

Usage

Sanitize a file (RECOMMENDED — always use --output)

python scripts/sanitize.py patient-notes.txt --output clean.txt

Preview mode (detect PII categories/offsets without showing raw values)

python scripts/sanitize.py notes.md --preview

JSON output (safe — no raw PII in stdout)

python scripts/sanitize.py report.txt --json --output clean.txt

Filter to specific categories

python scripts/sanitize.py log.txt --categories ssn,credit_card,email --output clean.txt

Supported PII categories

See references/SUPPORTED_PII.md for the full list with detection methods and false positive mitigation.

CategoryPattern typeExample
credit_cardLuhn-validated 13-19 digits4111 1111 1111 1111
ssn3-2-4 digit groups123-45-6789
cvvKeyword-anchored 3-4 digitsCVV: 123
expiry_dateKeyword-anchored MM/YYexpiry 01/30
api_keyProvider prefix patternssk-abc..., ghp_..., AKIA...
emailStandard email formatuser@example.com
phoneUS/intl phone numbers+1 (555) 123-4567
ip_addressIPv4 addresses192.168.1.100
date_of_birthKeyword-anchored datesDOB: 03/15/1985
passportKeyword-anchored alphanumericPassport: AB1234567
drivers_licenseKeyword-anchored alphanumericDL: D12345678
bank_routingKeyword-anchored 9 digitsrouting: 021000021
addressStreet + city/state/zip742 Evergreen Terrace Dr, Springfield, IL 62704
medical_licenseKeyword-anchored license IDLicense: CA-MD-8827341
insurance_idKeyword-anchored member/policy IDMember ID: BCB-2847193

Security and Privacy

  • All processing is local. The script makes zero network calls. No data leaves your machine.
  • Zero dependencies. Uses only Python standard library — no third-party packages to audit.
  • PII never reaches stdout. The --json and --preview modes strip raw PII values from output. The entity map (containing raw PII to placeholder mappings) is only written to a sidecar file on disk when --output is used.
  • Designed for agent safety. The skill instructions above tell the agent to never read the raw input file or the entity map file — only the sanitized output.

Requirements

  • Python 3.11+
  • No external dependencies (stdlib only)

About

Built by AgentWard — the open-source permission control plane for AI agents.

Trustgrade B

  • passBody integrity

    Whether the stored document is plausibly the kind of file the artifact declares, rather than something fetched by mistake.

  • passType matchnot applicable to this artifact type

    Whether the artifact is really the kind of thing its metadata claims it is.

  • passFreshness

    How long since the source repository was last pushed to.

  • passPrompt injection

    Scans the artifact's own text for instructions aimed at your agent rather than at you.

  • warnLicenseno SPDX license detected

    Whether the source repository declares an SPDX license permissive enough to redistribute.

How the grade is calculated

Each check contributes 0 points when it passes, 1 when it warns, and 2 when it fails. The total maps to a letter:

  • Aevery check passed
  • Bone warning
  • Ctwo warnings
  • Dprompt injection or body integrity failed, or three warnings
  • Fone of those failed, and something else is wrong

These are automated hygiene checks, not a security audit, and not a dependency or vulnerability scan. A grade of A means nothing was flagged — not that the artifact is safe.

Versions

  • git-2a7a3bfcdb4f2026-07-31