Skip to content
Data Maestro Download
Commands

Generation

Discover a schema, then generate schema-driven data from it — generate-schema is the one you'll actually use in CI.

generate-schema The one for CI

Reads a JSON field-schema file (the same format the Mac app exports) and writes generated rows to stdout or a file.

data-maestro-cli generate-schema [--output <file>] [--threads <N>] \
  <schema_json_path> <format> <rows> [<table_name>] [<locale>]

data-maestro-cli generate-schema schema.json json 50 users en > users.json
Argument Meaning
schema_json_path Path to a schema JSON file — see Schema file.
format One of 34 export formats — see Reference.
rows Row count. Capped at 100 on the Free tier — see Free tier & licensing.
table_name (optional) Table/collection name used by SQL and table-oriented formats. Defaults to mock_data.
locale (optional) One of 5 locale codes — see Reference. Defaults to en.
--output <file> stream to disk instead of buffering in memory --threads <N> parallelize generation (default 1)

Minimal — positional args only, printed to stdout

data-maestro-cli generate-schema schema.json csv 100

Stream to a file instead of stdout

data-maestro-cli generate-schema --output data.csv schema.json csv 10000

Parallelize across threads (needs --output for large jobs)

data-maestro-cli generate-schema \
  --output data.csv --threads 8 \
  schema.json csv 1000000

Flags can go after the positional args too

data-maestro-cli generate-schema \
  schema.json csv 500 --output data.csv

Custom table name — used by SQL and table-oriented formats

data-maestro-cli generate-schema schema.json sql 200 customers

Table name + locale together

data-maestro-cli generate-schema schema.json sql 200 clientes pt

Locale only — no table name needed for non-SQL formats

data-maestro-cli generate-schema schema.json json 200 mock_data fr

Binary format — always pair with --output, never stdout

data-maestro-cli generate-schema \
  --output fixtures.parquet schema.json parquet 5000

Pipe JSON output straight into jq

data-maestro-cli generate-schema schema.json json 20 \
  | jq '.[] | .email'

Seed a local Postgres from the SQL output

data-maestro-cli generate-schema schema.json postgresql 500 users \
  | psql "$DATABASE_URL"

Seed MongoDB via mongoimport (the format writes a JSON array)

data-maestro-cli generate-schema --output data.json schema.json mongodb 500
mongoimport --uri="$MONGODB_URI" --collection=users --jsonArray --file=data.json

Generate an ML fine-tuning dataset

data-maestro-cli generate-schema \
  --output training.jsonl schema.json openai 5000
import-schema

Discovers a schema from an existing CSV/TSV/PSV/SSV/JSON/XLSX/XLS file — or a live database table — and writes the same JSON shape generate-schema consumes. Ungated — schema discovery doesn't move or generate data.

data-maestro-cli import-schema <file_path> [--output <file>]

data-maestro-cli import-schema --db-type <type> --host <host> --port <port> \
  --database <db> --table <table> [--user <user>] \
  [--password <pw>|--password-env <VAR>] [--output <file>]
--db-type <type> any of the 14 connector types --password-env <VAR> read the DB password from an env var instead --output <file> write JSON here instead of stdout
import-openapi

Discovers a schema (plus route/method/port) from an OpenAPI/JSON-Schema spec. Only the first resolvable path+method in the spec is imported. Ungated.

data-maestro-cli import-openapi <spec_path> [--output <file>]
generate

Prints one fake email address for a name — a quick one-off, not for bulk generation.

data-maestro-cli generate <first> [last]

$ data-maestro-cli generate Jane Doe
Generated email: [email protected]

import-schema / import-openapi examples

Discover a schema from an existing CSV

data-maestro-cli import-schema users.csv --output schema.json

Discover a schema from a live Postgres table

data-maestro-cli import-schema --db-type postgres --host localhost \
  --port 5432 --database mydb --table users \
  --user admin --password-env DB_PASSWORD --output schema.json

Round-trip straight into generate-schema — build a fixture that matches a real table's shape

data-maestro-cli import-schema --db-type postgres --host localhost \
  --port 5432 --database mydb --table users --output schema.json
data-maestro-cli generate-schema schema.json csv 5000 > fixture.csv

Discover a schema — plus route/method/port — from an OpenAPI spec, then serve it back

data-maestro-cli import-openapi openapi.yaml --output schema.json
# stderr reports which route/method/port were imported, e.g. GET /users on port 4000

generate examples

First name only

$ data-maestro-cli generate Jane
Generated email: [email protected]

First and last name

$ data-maestro-cli generate Jane Doe
Generated email: [email protected]

Generate one email per line of a names file

while IFS= read -r name; do
  data-maestro-cli generate $name
done < names.txt