Realistic data without exposing people
Apply explicit transformations to names, emails, addresses, tokens, identifiers, and payment-related fields before records reach the target environment.
Open-source CLI for anonymized database clones
Clonio CLI copies production data into development, test, staging, and CI. On the way it anonymizes columns, syncs the schema, remaps keys, and writes a signed audit log.
Run it from your terminal, Docker, Composer, or CI pipeline. Clonio connects directly from your machine or CI runner to your databases, with no Clonio cloud service in between.
| column | production | target | strategy |
|---|---|---|---|
| id | 4812 | 731905 | remap |
| first_name | Jana | Lukas | fake |
| jana.weber@gmx.de | marie42@example.org | fake | |
| phone | +49 151 2345 6789 | +49 *** **** **** | mask |
| notes | Prefers calls before noon | NULL | "null" |
| created_at | 2023-04-11 | 2023-04-11 | keep |
$ clonio cloning:run production.cloning.yaml --target ciaudit log signed
In 20 seconds
Jana's row leaves production, every column runs through its strategy, and the target gets realistic data with no trace of her. The run ends with a signed audit log.
Problem solved
Developers and QA get usable database states without seeing personal data or production IDs, and every run writes an audit log, even a failed one.
Apply explicit transformations to names, emails, addresses, tokens, identifiers, and payment-related fields before records reach the target environment.
Generate a cloning file, review it once, commit it, and rerun the same clone whenever a team needs fresh production-like data.
Produce signed audit artefacts and structured process logs for local storage, S3-compatible storage, email, Slack, Microsoft Teams, or ntfy.
CLI workflow
Connection names stay separate from secrets. The generated YAML controls row selection, schema synchronization, anonymization strategies, and key remapping. It is safe to commit because it references connection names, not credentials.
$ clonio init $ clonio connection:add production --production $ clonio connection:add local-dev $ clonio cloning:dump --connection production $ clonio cloning:run production.cloning.yaml --target local-dev
Core capabilities
Use fake, hash, mask, null, static, exclude, or keep per column, with PII matchers to help draft a configuration you can review.
Create missing tables automatically. Optionally add missing columns or drop extra ones to keep targets aligned when the production schema moves faster.
Replace primary keys with new random values and rewrite declared foreign keys consistently across cloned records.
Install a standalone binary, PHAR, Composer dev dependency, or Docker image, then run it from local scripts, cron, or CI jobs.
Open source
Use Clonio CLI inside your own infrastructure, including commercial projects. Sponsorships fund maintenance, new database drivers, better anonymization strategies, and documentation.
Read the source before you adopt it, or open a feature request through the GitHub issue template.