← ClaudeAtlas

generate-from-schemalisted

Generate synthetic datasets from a schema specification using the Rockfish SDK. Use when a user wants to create synthetic tabular or time-series data with specific structure — independent, stateful, or derived columns, state machines, timeseries with seasonality, entity relationships (foreign keys, composite keys, parent/child fan-out, self-references), or realistic PII-like values (names, emails, addresses, SSNs) via NamedEntityProvider. Also generates OpenTelemetry telemetry from a service call graph — distributed-trace span trees with correlated RED metrics and logs derived from the same spans. Trigger on phrases like "generate synthetic data", "fake data from a schema", "create a test dataset", "GenerateFromDataSchema", "OpenTelemetry / span / trace / call-graph data", or mentions of entity/foreign-key/state-machine data.
Rockfish-Data/rockfish-skills · ★ 0 · API & Backend · score 72
Install: claude install-skill Rockfish-Data/rockfish-skills
# Generate from schema Use `rockfish.actions.GenerateFromDataSchema` to produce synthetic datasets from a declarative schema. One `DataSchema` yields one dataset (PyArrow table) per `Entity`, with referential integrity, temporal patterns, and reproducible output. ## When to use this skill Use when the user wants synthetic tabular or time-series data with: - Specific column shapes — IDs, globally-unique keys, categoricals, statistical distributions, mixtures. - Time-varying measurements (timeseries with seasonality/noise/spikes) or behavioral sequences (state machines). - Computed columns — arithmetic, value mapping, running totals, cross-entity roll-ups, string templates. - Cross-entity relationships — foreign keys, composite keys, count-driven fan-out, whales, hierarchies. - Realistic PII-like values (names, emails, addresses, SSNs, cards) that carry no real customer data. - OpenTelemetry telemetry — distributed-trace span trees from a service call graph, with correlated RED metrics and logs. See [OpenTelemetry span trees](#opentelemetry-span-trees). If the user wants to inject *incidents* (spikes, outages, ramps, sustained shifts) into an existing time-series dataset, use the `inject-incidents` skill instead. ## Concept A schema is a tree. Every generated column is one of four **column types**, and each column is also either **metadata** (constant per entity instance) or **measurement** (varies per timestamp): ``` DataSchema(seed, scale_factor) ├── entities: list[En