pii-mask

CLI Commands

Full command reference for the pii-mask CLI.

mask

The primary command. Reads input, masks PII, writes output.

pii-mask <file> [options]

Options

FlagDescriptionDefault
--modeMasking modemask
--formatInput format (json, csv, jsonl, txt)auto-detect
--outputOutput directory path./masked-output
--in-placeOverwrite input file instead of writing to output dirfalse
--disableComma-separated detector IDs to disablenone
--onlyComma-separated detector IDs or categories to runall
--token-map-outFile path to persist the token map (tokenize mode)none
--reportPrint detection report without maskingfalse
--configPath to .pii-mask.json config filenone

Config file

Create a .pii-mask.json file to set defaults:

{
  "mode": "redact",
  "disable": "person-name,address",
  "output": "./redacted"
}

Load it with --config:

pii-mask data.json --config .pii-mask.json

CLI flags override config file values.

Examples

# Mask a JSON file
pii-mask data.json --mode redact

# Mask CSV, output to file
pii-mask users.csv --mode mask --output ./masked

# Mask in place
pii-mask data.json --mode redact --in-place

# Only run specific detectors
pii-mask data.json --only email,phone

# Tokenize and save token map
pii-mask data.json --mode tokenize --token-map-out tokens.json

# Detection report only (no masking)
pii-mask data.json --report

# Pipe from stdin
cat data.json | pii-mask --format json --mode tokenize

Exit codes

CodeMeaning
0Success
1User error (bad arguments, unsupported format)
2Unexpected runtime error