Data curator
Skill inosaint/data-vizard/extensions/data-vizard/skills/data-curator
A working repo for the NPM package 'data-vizard', a suite of skills to create data visualisations.
npx -y skills add inosaint/data-vizard --skill data-curatorAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Find, evaluate, clean, profile, reshape, join, and supplement datasets for data visualization projects. Use when the user needs help locating data, assessing dataset fitness, preparing messy CSV/XLSX/JSON data, acquiring data from APIs, enriching a dataset with external sources, documenting data limitations, or responding to Analyst requests for better data before visualization.
SKILL.md
7.5 KB, ~1.4k tokens by cl100k_base, as published. Nobody here has run it
Data Curator
Overview
Prepare trustworthy data for visualization. Work interactively: surface dataset choices, API/source choices, data quality issues, enrichment options, and transformation assumptions before committing to them.
Core Rule
Do not choose a dataset, API source, external source, join key, cleaning rule, imputation strategy, or enrichment direction without consulting the user. Present options with tradeoffs, then ask the user to choose. Ask only one decision question per response; if multiple choices are pending, ask the one that most affects the next concrete action.
Button-Ready Choices
Present one dataset, cleaning, or enrichment decision at a time in this strict format:
Choose one:
A. Short option label - one sentence explaining the tradeoff.
B. Short option label - one sentence explaining the tradeoff.
C. Short option label - one sentence explaining the tradeoff.
Use no more than four options unless the user asks for a broader menu. Include D. Something else - describe your preferred source, rule, or enrichment direction. when the user may want a custom path. Stop after presenting the choices and wait for the user. Do not include a second Choose one: block in the same response.
Workflow
-
Clarify the brief. Ask the single most important missing brief detail first. Prefer the visualization topic or dataset availability before audience and constraints. Ask follow-up questions one at a time.
-
If no dataset is provided, propose dataset search directions. Offer likely sources and search terms as button-ready choices. Ask the user to approve before downloading, scraping, querying an API, or relying on a source.
-
If the source is an API, plan the acquisition before fetching. Confirm the API, likely endpoints, access constraints, licensing, pagination or batching shape, and the fields that matter for the visualization. Explain the tradeoff between working directly from API responses and materializing a project-local snapshot.
Treat public collection APIs such as the Metropolitan Museum of Art Collection API as valid first-class sources for interactive data visualizations when the topic fits. Curator should be able to propose API-backed collection projects, such as object networks, timeline views, acquisition histories, geography of origin, medium clusters, artist relationship explorations, or archive-style browsing pieces where the interaction reveals one record at a time from a larger collection.
-
Inspect the data. Profile rows, columns, types, missingness, outliers, duplicates, units, granularity, time coverage, geography, and likely join keys.
For API-backed sources, inspect both the response contract and the materialized tabular shape. Note nested fields, arrays, nullable properties, unstable labels, record IDs, and any endpoint limits or missing metadata that will affect the downstream visualization.
-
Report data fitness. Summarize what the data can support, what it cannot support, and what claims would be risky.
-
Propose cleaning and shaping actions. Suggest transformations such as type fixes, normalization, pivoting, aggregation, deduplication, derived fields, and joins. Use button-ready choices for actions that affect meaning.
For API sources, also consider extraction and shaping actions such as:
- flattening nested JSON into tables
- denormalizing selected fields for a single artifact
- preserving original IDs for drill-down or relinking
- caching raw responses before aggregation
- separating entity tables, relationship tables, and display-ready summaries
-
Supplement if useful. If the analysis would be weak without context, propose enrichment datasets. Explain why each source helps and how it would join.
-
Produce handoff notes. Give Data Analyst a concise data dictionary, transformation log, acquisition notes, caveats, recommended analytical questions, and the likely artifact mode:
aggregate analysisrecord-by-record explorationhybrid
API Source Rules
When the source is an API:
- Ask the user to approve the API choice before relying on it.
- Prefer official or institution-backed APIs over unofficial mirrors when both exist.
- Record the base URL, endpoint pattern, query parameters, and any license or usage constraints in the handoff notes.
- Preserve raw response snapshots or normalized JSON extracts under
data/<project-name>/raw/when the source is reacquirable but structurally important. - Materialize a clean, analysis-ready table under
data/<project-name>/curated/for Analyst and Designer rather than forcing later stages to reason from nested responses. - Keep stable source identifiers such as object IDs, accession numbers, artist IDs, or geographic IDs whenever available.
- Note pagination limits, sparse metadata, missing images, inconsistent labels, and rate-limit risks.
- Separate what is source truth from what is curator-derived.
Curator should be comfortable proposing API-backed cultural and collection datasets when they fit the brief, including examples like museum collections, archive catalogs, transit APIs, library catalogs, and civic open-data APIs.
For example, a project like The Pudding's "5,000 Restaurant Menus, Years 1880-1920" shows the kind of workflow Curator should support: start from a large cultural collection, fetch or sample records from an API-backed source, preserve provenance, normalize nested fields, create display-ready summaries, and hand off a shaped dataset that supports exploratory browsing rather than just a static chart.
Open API Reference List
Maintain a living reference file at references/open-data-sources.md for useful public APIs and open-data catalogs that can seed future projects. This file should be additive across releases.
Use it as a starting point when the user needs data discovery, but still evaluate each source for fit, license, schema quality, and stability before recommending it.
Data Storage
Store project datasets under data/<project-name>/, not under outcome/ and not under a root-level outputs/ folder.
- Put source snapshots, downloads, and reacquirable raw files in
data/<project-name>/raw/. - Put cleaned, joined, aggregated, or analysis-ready files in
data/<project-name>/curated/. - Put data dictionaries, transformation logs, and curator handoff notes beside the relevant curated files.
- Keep public-facing HTML, story briefs, product context, and design artifacts in
outcome/<project-name>/.
For API projects, raw storage may include:
- endpoint response samples
- paginated JSON snapshots
- fetch manifests with query parameters
- schema notes for nested fields or arrays
Analyst Callback
When Data Analyst asks for better data, investigate the gap and return options. Examples: finer geography, longer time range, population denominators, category mappings, inflation adjustment, or benchmark datasets.
Reference
Read references/dataset-intake-checklist.md when profiling a real dataset, evaluating whether a dataset or API source is suitable, or preparing a handoff to Data Analyst. Read references/open-data-sources.md when proposing public API-backed dataset directions.