synthdata-anonymize

Detect and replace PII in CSV, Excel, or JSON datasets with deterministic Faker values.

Updated Apr 5, 2026
One-click install
npx skills add https://github.com/rappdw/synthdata --skill synthdata-anonymize
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: synthdata-anonymize
Source: https://github.com/rappdw/synthdata/tree/main/skills/synthdata-anonymize
Command: npx skills add https://github.com/rappdw/synthdata --skill synthdata-anonymize

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires pandas, openpyxl, faker, and includes scripts (resource) and references (resource) components.

What problem does it solve?

Replace real PII in a dataset with realistic synthetic equivalents while preserving row counts, column types, and statistical distributions. Detects names, emails, phones, SSNs, addresses, credit cards, and user-identifying columns via name heuristics + value patterns. Use this skill when the user wants to "anonymize this dataset", "scrub PII", "make this data safe to share", "de-identify real data", "create a synthetic copy", or needs a sharable version of production data without exposing individuals.

Core Features & Use Cases

  • PII detection via name heuristics and value patterns
  • Deterministic anonymization using Faker with a seed to preserve joins across tables
  • Structure preservation maintains row counts, column types, and distributions
  • Safe sharing scenarios supports de-identification for production-like datasets
  • Multi-table workflows preserves foreign-key relationships when requested

Quick Start

Run a sample dataset through the anonymize pipeline to replace PII values with synthetic equivalents while keeping the original shape.

Frequently Asked Questions about synthdata-anonymize

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I anonymize PII in a CSV dataset while preserving column types?

To anonymize PII in a CSV dataset while preserving column types, this skill detects names, emails, and phones via heuristics, replacing them with deterministic Faker-generated values to maintain original statistical distributions and row counts.

Does deterministic anonymization preserve foreign-key relationships across multiple tables?

Deterministic anonymization preserves foreign-key relationships across multiple tables by using a Faker seed, ensuring identical source values map to the same synthetic replacement consistently across different files during multi-table workflows.

What is the best way to de-identify production data for safe sharing without losing distributions?

The best way to de-identify production data for safe sharing without losing distributions is using deterministic value replacement, which substitutes real PII with synthetic equivalents while maintaining the original statistical shape of the dataset.

Can I use Faker with pandas to scrub PII from Excel and JSON files?

You can use Faker with pandas to scrub PII from Excel and JSON files, as the pipeline supports single or multi-table tabular data in these formats, requiring Python with openpyxl and faker installed.

How does PII detection work when anonymizing a dataset?

PII detection works by analyzing dataset columns using name heuristics and value patterns to identify sensitive information like SSNs, addresses, and credit cards before replacing them with synthetic equivalents.

What are the limitations of using a seeded Faker approach for dataset anonymization?

A limitation of using a seeded Faker approach for dataset anonymization is that while it ensures deterministic mappings across runs, it relies on accurate heuristic detection of user-identifying columns rather than exhaustive schema-level rules.