Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Agent Paranoid Android

PyPI CI Documentation OpenSSF Scorecard License: MIT

Safety-first, deterministic synthetic test data generation from CSV structure, safe profiles, reviewed DatasetSpec files, and allowlisted Trino metadata. The CLI and Python library are primary; MCP, Trino, and AI providers are optional integrations. The base package supports CSV/JSON workflows without installing the Trino client, SQL parser, or MCP SDK. Source rows are profiled, never shuffled or copied into generated output.

Read the documentation for tutorials, concepts, configuration, MCP setup, and troubleshooting.

Current version: 1.0.0rc5. Package: agent-paranoid-android; CLI: test-data-agent.

What It Preserves

From bounded evidence and a reviewed DatasetSpec, generation can preserve schema and types, nullability, ranked distribution and scale shape, approved FK graphs, temporal dependencies, and executable business rules. AI may propose relationships and rules; human review and deterministic validation remain the authority boundary.

It intentionally does not preserve or copy source values or real PII. It does not certify statistical anonymity, protection from every re-identification attack, or cross-environment byte identity. A seed provides logical reproducibility under the recorded package, dependency, locale, and serializer environment.

Install

Python 3.11 or newer is required. CI tests CPython 3.11 through 3.14. After publication, install the exact RC5 candidate used for acceptance:

python3 -m pip install "agent-paranoid-android==1.0.0rc5"
test-data-agent doctor

Install only features you use:

python3 -m pip install "agent-paranoid-android[parquet]==1.0.0rc5"
python3 -m pip install "agent-paranoid-android[mcp]==1.0.0rc5"
python3 -m pip install "agent-paranoid-android[trino]==1.0.0rc5"
python3 -m pip install "agent-paranoid-android[mcp,trino]==1.0.0rc5"
python3 -m pip install "agent-paranoid-android[openai]==1.0.0rc5"

The trino extra is required only for Trino profiling and contains the Trino client and safe SQL parser. Add mcp when using the Trino MCP server. The default aggregate-only tools return summaries, not source rows. The explicit opt-in row-returning tools include run_safe_select, which requires TRINO_ENABLE_SAFE_SELECT=true; bounded, masked rows may contain allowed source values and are not source-free, PII-free, anonymous, or privacy-safe.

First Offline Run

Run the installed package with its bundled fictional customer fixture. No checkout, network, Trino, MCP, or provider is required:

test-data-agent demo --output out/demo

A successful run reports:

Generated synthetic dataset: out/demo | rows: customers=12 | seed: 20260801 | validation: passed | source rows copied: no

Representative deterministic output:

customer_id,email,segment,signup_date
syn_customers_00000001,amber21@example.test,category_1,2024-02-10

The demo preserves evidenced column names and types, non-null shape, category rank, and date range. Its fixture has no relationship or business-rule evidence, so the demo makes no claim about those properties. The output folder contains:

  • customers.csv;
  • csv_profile.json;
  • dataset_spec.json;
  • validation_report.json;
  • generation_manifest.json.

The destination must not already exist. Review the manifest and effective spec before accepting any dataset. Then follow First CSV Dataset to profile your own input.

Choose A Guide

Goal Documentation
Generate from one CSV First CSV Dataset
Generate related tables Related Tables
Review specs and output Review The Output
Add deterministic business rules Business Rules
Use the review-first agent flow Agent Design
Connect an AI client or provider AI Integration · Provider Adapter · Runnable MCP example
Run isolated OCI images Container Deployment
Understand the trust boundaries Safety Model
Configure limits and Trino Configuration · Runnable local Trino example
Inspect CSV, JSON, SQL, and Parquet output Runnable output-format example
Recover from an error Troubleshooting
Decide whether this tool fits Choose An Approach

Safety

The project derives bounded metadata such as field types, null ratios, ranges, masked patterns, and safe low-cardinality distributions. It rejects or bounds:

  • raw detected PII, credentials, tokens, and private keys in profiles;
  • source-row copying and source/output path reuse;
  • path traversal and symlink escapes through generator MCP tools;
  • unrestricted SQL and write operations through Trino tools;
  • oversized input, output, rule, query, and generation work.

Human review is still required for ambiguous identifiers, rare free text, inferred relationships, and organization-specific privacy policy.

Development

python3 -m pip install "uv==0.11.23"
uv sync --frozen --all-extras --no-install-project
uv sync --frozen --all-extras --no-editable --no-build-isolation
uv run --no-sync scripts/check_release.sh

See Contributing, Support, Governance, Code Of Conduct, Security Policy, Changelog, and License.

Releases use tokenless PyPI Trusted Publishing with verified wheels/source distributions, checksums, SBOMs, and GitHub attestations.

AI-Assisted Development

AI-assisted changes require human review and tests; never send production data, raw PII, credentials, or tokens to AI. The name nods to Radiohead's "Paranoid Android"; this project is unaffiliated.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

agent_paranoid_android-1.0.0rc5.tar.gz (686.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

agent_paranoid_android-1.0.0rc5-py3-none-any.whl (181.8 kB view details)

Uploaded Python 3

File details

Details for the file agent_paranoid_android-1.0.0rc5.tar.gz.

File metadata

File hashes

Hashes for agent_paranoid_android-1.0.0rc5.tar.gz
Algorithm Hash digest
SHA256 4001fea17f4d6312cec635152072e731c0b9df2b76a97b9b1ef94a4010309a79
MD5 e8992be80ee21b4f5851ae3edf8210e3
BLAKE2b-256 f5d42bae57822d39f3e8f0f6adabeb8cfa7829b90050d42f815c143915f6ddbd

See more details on using hashes here.

Provenance

The following attestation bundles were made for agent_paranoid_android-1.0.0rc5.tar.gz:

Publisher: publish-pypi.yml on wa-pis/agent-paranoid-android

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file agent_paranoid_android-1.0.0rc5-py3-none-any.whl.

File metadata

File hashes

Hashes for agent_paranoid_android-1.0.0rc5-py3-none-any.whl
Algorithm Hash digest
SHA256 f4f04d23b70f9d9d7997f5f4ecfdac1207007f07ff30ec7f1e9155c4be841cbc
MD5 68d58daf313c4d2ca1387cf836bc9664
BLAKE2b-256 d6bcae05b456f8450df5919c61a214da74d3dde69dec63910a5accefa9dd71e0

See more details on using hashes here.

Provenance

The following attestation bundles were made for agent_paranoid_android-1.0.0rc5-py3-none-any.whl:

Publisher: publish-pypi.yml on wa-pis/agent-paranoid-android

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

1.4.0

2 files

1.3.2

2 files

1.3.1

2 files

1.3.0

2 files

1.2.0

2 files

1.1.0

2 files

1.0.0

2 files

This release

1.0.0rc5 This release

2 files

0.12.0

2 files

0.11.0

2 files

0.10.0

2 files

0.9.0

2 files

0.8.1

2 files

0.8.0

2 files

0.7.1

2 files

0.7.0

2 files

0.6.0

2 files

0.5.1

2 files

0.5.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page