Skip to main content

aigen-cli

Zero-API, browser-based AI dataset generation.

Turn any web AI (Gemini, ChatGPT, Claude, Perplexity) into a batch generation engine. No API keys. No per-call costs. Just your browser and a config file.

$20/mo subscription → unlimited generations
vs
$0.001–$0.024 per API call → ~$5 for 200 items

Install

Via NPM (no Python setup needed)

npx aigen-cli auth gemini
npx aigen-cli run aigen.yaml

# Or install globally:
npm install -g aigen-cli
aigen auth gemini

The NPM wrapper auto-installs the Python package on first run.

Via pip

pip install aigen-cli

# With semantic dedup + quality scoring:
pip install aigen-cli[ml]

# With Playwright backend:
pip install aigen-cli[playwright]

# Everything:
pip install aigen-cli[all]

Quick Start

1. Authenticate once

aigen auth gemini

A Chrome window opens — sign in, then close it. Your session is saved encrypted.

2. Create a config

aigen init

Interactive wizard generates aigen.yaml.

3. Generate

aigen run aigen.yaml

Headless browsers start, data flows into output/dataset.json.


Commands

Command Description
aigen auth <platform> One-time login. Saves encrypted browser session. Platforms: gemini, chatgpt, claude, perplexity
aigen run <config.yaml> Primary command. Auth-first headless generation from config
aigen generate Legacy generation via an already-running Chrome debug session
aigen init Interactive wizard to create a generation config
aigen doctor System health check (Chrome, Python, keyring, optional deps)
aigen status Show generation stats for an output directory
aigen packs List built-in domain config packs (medical, legal, ecommerce, code)
aigen push-hf Push a completed dataset to HuggingFace Hub
aigen sessions List, export, or import browser sessions
aigen schedule Add/remove/run cron-scheduled generation jobs
aigen mcp Run as an MCP server for AI agent integration

Run aigen --help or aigen <command> --help for full options.


Config File

project: "My Dataset"
description: "Short description"
target: 100              # Total items to generate
batch_size: 5            # Items per browser request
agents: 2                # Parallel browser tabs
platforms:
  - gemini
  - chatgpt

schema:
  fields: [question_text, expected_answer, difficulty, marks]
  required: [question_text, expected_answer, difficulty]

topic_pool:
  - chapter: "Chapter 1"
    topic: "Algebra"
    question_type: short_answer
    difficulty: easy
    marks: 3

output:
  format: json           # json | csv | jsonl
  path: output
  filename: dataset.json

# Optional: push to HuggingFace after generation
huggingface:
  repo_id: "your-username/dataset-name"
  private: false

# Optional: quality + compliance
quality:
  enabled: true          # requires pip install aigen-cli[ml]
  mode: heuristic
  threshold: 6.0

compliance:
  pii_detection: true
  auto_redact: true

Domain Packs

Ready-made configs for common use cases:

aigen packs                          # list available packs
aigen generate --pack medical_mcq    # run a built-in pack

Built-in packs: medical_mcq, legal_qa, ecommerce, code_review


Architecture

┌─────────────────────────────────────────────────────────┐
│                      aigen-cli                           │
│                                                          │
│  ┌──────────┐  ┌──────────┐  ┌──────────┐  ┌──────────┐ │
│  │ Gemini   │  │ ChatGPT  │  │  Claude  │  │Perplexity│ │
│  │  Tab     │  │   Tab    │  │   Tab    │  │   Tab    │ │
│  └────┬─────┘  └────┬─────┘  └────┬─────┘  └────┬─────┘ │
│       └──────────────┴─────────────┴──────────────┘       │
│                          │                                │
│              ┌───────────▼───────────┐                    │
│              │    BrowserPool        │                    │
│              │  (auth-first agents)  │                    │
│              └───────────┬───────────┘                    │
│                          │                                │
│              ┌───────────▼───────────┐                    │
│              │  GenerationEngine     │                    │
│              └───────────┬───────────┘                    │
│                          │                                │
│    ┌─────────────────────┼─────────────────────┐         │
│    │                     │                     │         │
│ ┌──▼──┐  ┌───────────┐ ┌▼────────┐  ┌────────▼──┐      │
│ │Parse│  │  Validate  │ │ Dedup   │  │  Output   │      │
│ │JSON │  │  (schema)  │ │ Engine  │  │ Writers   │      │
│ └─────┘  └───────────┘ └─────────┘  └───────────┘      │
└─────────────────────────────────────────────────────────┘

Why This Exists

API costs scale linearly with usage. Generating 1000 items via API can cost $20–50. The same models via web interface are included in a flat $20/month subscription.

aigen-cli automates the web interface so you get:

  • Unlimited generations — rate-limited by platform anti-bot, not your billing
  • Zero API keys — just log in once like a normal user
  • Full transparency — every raw response is saved for audit
  • No vendor lock-in — swap platforms instantly via config

License

MIT

Metadata

Release files for aigen-cli 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for aigen-cli 1.0.0
File Size Uploaded Provenance
aigen_cli-1.0.0.tar.gz 69.7 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for aigen-cli 1.0.0
File Interpreter ABI Platform
aigen_cli-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 150.0 kB

Release files / aigen_cli-1.0.0.tar.gz

Download URL aigen_cli-1.0.0.tar.gz
Size 69.7 kB
Tags Source
SHA-256 checksum
How to use checksums
d8746d9cb335adb81b97e87e0095d3a64a16cb6eb7f68d6d64c6122df23c2b74
BLAKE2b-256 checksum
How to use checksums
29d1b7ae95437d3afae372d442adb4d5bbe9249dbe7ea7e13fd35ada0a8f4683
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.6

Release files / aigen_cli-1.0.0-py3-none-any.whl

Download URL aigen_cli-1.0.0-py3-none-any.whl
Size 80.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0360e03bae8b1f3435e195c0c7e0e3d91afed2e303352c92c69c4692ec9ce2f5
BLAKE2b-256 checksum
How to use checksums
c371ffc537c63e724a8855d068f463c0b4823d9c3879eeb07eb7653cef5b2bf5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.6

Security for aigen-cli 1.0.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files No provenance

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