Data Cleaner /data-cleaner
Deduplicate, normalize, and validate messy CSVs and tables.
$ askill install data-cleaner@2.0.0
About this skill
Data Cleaner is the skill you call before the analysis, not after it embarrasses you. Hand it a messy CSV — inconsistent dates, duplicate rows, 'N/A' in five spellings, phone numbers in seven formats — and get back a clean dataset plus a report of everything it changed.
It profiles first and asks questions later: type inference, uniqueness checks, and anomaly flags come before any mutation, so you see the mess before it's fixed. Every transformation is logged row-by-row, which means the cleaning is auditable — critical when the data feeds a model or a report someone signs.
It chains beautifully: clean with Data Cleaner, then hand the result to SQL Whisperer for analysis without worrying about garbage-in.
Inputs
- dataset · string
Path to CSV/TSV/Parquet file. - rules · string
Optional custom cleaning rules in YAML. - dry_run · boolean
Report only, change nothing. Default: false.
Outputs
- clean_path · string
Path to the cleaned dataset. - change_report · string
Row-by-row log of transformations. - profile · string
Pre-clean data profile: types, nulls, anomalies.
Permissions
Deny-by-default: the skill can only use what it declares.
Manifest
{
"spec": "agentskills.io/v1",
"name": "data-cleaner",
"version": "2.0.0",
"description": "Profiles a messy dataset, then deduplicates, normalizes formats, validates types, and returns a clean dataset plus a full report of every change.",
"inputs": {
"dataset": {"type": "string", "description": "Path to CSV/TSV/Parquet file.", "required": true},
"rules": {"type": "string", "description": "Optional custom cleaning rules in YAML.", "required": false},
"dry_run": {"type": "boolean", "description": "Report only, change nothing. Default: false.", "required": false}
},
"outputs": {
"clean_path": {"type": "string", "description": "Path to the cleaned dataset."},
"change_report": {"type": "string", "description": "Row-by-row log of transformations."},
"profile": {"type": "string", "description": "Pre-clean data profile: types, nulls, anomalies."}
},
"permissions": ["fs:read", "fs:write"],
"author": "Tablestakes",
"category": "Data"
}
Changelog
v2.0.0 · 2026-08-14
New change-report format with row-level diffs. Breaking: profile output schema changed.
v1.9.0 · 2026-06-02
Parquet input support and fuzzy-duplicate detection.
v1.8.3 · 2026-04-19
Fixed date inference on ambiguous DD/MM vs MM/DD formats.