Skip to main content

Unified CLI for all pdf-autofillr modules

Project description

PyPI Python License: MIT Tests Platform

pdf-autofillr-cli

Fill PDF forms from your terminal using any LLM — one command, all modules.

Quick Start · Python SDK · Live Platform


Status: Under active development. For production use today, see the Python SDK or the live platform at pdffillr.ai.

What it does

pdf-autofillr-cli is a unified terminal interface for all pdf-autofillr modules. One install gives you embed, fill, run, batch, chatbot, doc-upload, rag, mapper, and plugins — all under one command.

Without CLI With CLI
ragpdf predict ... pdf-autofillr-cli rag predict ...
chatbot-cli ... pdf-autofillr-cli chatbot session ...
pdf-mapper ... pdf-autofillr-cli mapper embed ...
doc-upload-cli ... pdf-autofillr-cli doc-upload process ...
No unified pipeline pdf-autofillr-cli run form.pdf --schema keys.json --data data.json

Installation

pip install pdf-autofillr-cli

This installs the full SDK (pdf-autofillr[all]) alongside the CLI automatically.


Quick Start

# Step 1: First-time setup — creates configs/ and .env
pdf-autofillr-cli setup

# Step 2: Add your API key to .env
# OPENAI_API_KEY=sk-...  or  ANTHROPIC_API_KEY=sk-ant-...

# Step 3: Check everything is ready
pdf-autofillr-cli status

# Step 4: Embed your blank PDF template (run once per form)
pdf-autofillr-cli embed form.pdf --schema configs/form_keys.json

# Step 5: Fill it with data
pdf-autofillr-cli fill form.pdf --data data.json

# Or do steps 4+5 in one shot
pdf-autofillr-cli run form.pdf --schema configs/form_keys.json --data data.json

All Commands

Quick commands

# Embed field metadata into a blank PDF template (once per template)
pdf-autofillr-cli embed form.pdf --schema configs/form_keys.json

# Fill an embedded PDF with JSON data
pdf-autofillr-cli fill form.pdf --data data.json
pdf-autofillr-cli fill form.pdf --data '{"first_name": "Jane", "last_name": "Doe"}'

# Full pipeline: embed + fill in one shot
pdf-autofillr-cli run form.pdf --schema configs/form_keys.json --data data.json --output filled.pdf

# Batch fill from a directory of JSON files
pdf-autofillr-cli batch --template form.pdf --schema configs/form_keys.json --input data/ --output output/

Chatbot

pdf-autofillr-cli chatbot session --pdf form.pdf --user u1
pdf-autofillr-cli chatbot start --port 8000
pdf-autofillr-cli chatbot sessions

Doc Upload

pdf-autofillr-cli doc-upload process \
  --doc investor.pdf \
  --pdf blank_form.pdf \
  --schema configs/form_keys.json \
  --user u1 --id lp_sub_v1

Mapper (low-level)

pdf-autofillr-cli mapper embed --pdf form.pdf --schema configs/form_keys.json
pdf-autofillr-cli mapper fill  --pdf form.pdf --data data.json
pdf-autofillr-cli mapper start --port 8001

RAG

pdf-autofillr-cli rag init-vectors
pdf-autofillr-cli rag predict --user u1 --session s1 --pdf p1 --fields fields.json --hash abc123
pdf-autofillr-cli rag metrics --type global
pdf-autofillr-cli rag system-info
pdf-autofillr-cli rag feedback --user u1 --session s1 --pdf p1 --errors errors.json
pdf-autofillr-cli rag error-analytics --from 2026-01-01T00:00:00Z

Plugins

pdf-autofillr-cli plugins list
pdf-autofillr-cli plugins list --json
pdf-autofillr-cli plugins list --category extractor
pdf-autofillr-cli plugins info my-plugin

Status & Setup

pdf-autofillr-cli status    # check modules + env vars
pdf-autofillr-cli setup     # create configs/ and .env

data.json format

{
  "first_name": "Jane",
  "last_name": "Doe",
  "date_of_birth": "1990-01-15",
  "ssn": "123-45-6789"
}

Supported LLMs

Set the API key in .env for whichever provider you use:

Provider Env var
OpenAI OPENAI_API_KEY
Anthropic ANTHROPIC_API_KEY
Groq GROQ_API_KEY
Ollama (local) no key needed

Repository Layout

pdf-autofillr-cli/
├── cli/                  ← this package
│   ├── src/pdf_autofillr_cli/
│   ├── tests/
│   ├── pyproject.toml
│   └── CHANGELOG.md
├── benchmarks/
├── deployment/
├── docs/
└── examples/

Development

git clone https://github.com/Engineersmind/pdf-autofillr-cli.git
cd pdf-autofillr-cli/cli
pip install -e ".[dev]"
pytest tests/ -v

See CONTRIBUTING.md for the full guide.


Related

Package Description
pdf-autofillr-python-sdk Python SDK — programmatic use
pdf-autofillr Umbrella PyPI package
pdf-autofillr-mapper Semantic PDF field mapper
pdf-autofillr-chatbot Conversational onboarding
pdf-autofillr-rag RAG prediction engine
pdf-autofillr-doc-upload Document extraction

License

MIT — see LICENSE.

Project details


Download files

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

Source Distribution

pdf_autofillr_cli-0.2.2.tar.gz (25.1 kB view details)

Uploaded Source

Built Distribution

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

pdf_autofillr_cli-0.2.2-py3-none-any.whl (32.9 kB view details)

Uploaded Python 3

File details

Details for the file pdf_autofillr_cli-0.2.2.tar.gz.

File metadata

  • Download URL: pdf_autofillr_cli-0.2.2.tar.gz
  • Upload date:
  • Size: 25.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.6

File hashes

Hashes for pdf_autofillr_cli-0.2.2.tar.gz
Algorithm Hash digest
SHA256 6a9d35f03a813c88fd10d8c487fbfde2b7a629d0fb11c8f1a0be99de24ba5087
MD5 b59d35c1d4cc8a8ad7dc766dddeb0046
BLAKE2b-256 38f962d81a70b25757fcb7088fd99d87ef4647c71a6da1c5ca1afd296fa3825d

See more details on using hashes here.

File details

Details for the file pdf_autofillr_cli-0.2.2-py3-none-any.whl.

File metadata

File hashes

Hashes for pdf_autofillr_cli-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 e6cb9fdbc8821c4d53ff8cea7aab0df486c9bb6986c1f99e12accb675284a7df
MD5 6783af5a0e4efc84a7b8bd2ac0badf77
BLAKE2b-256 db501eba9286a29d8bb02ae44226b923ea269f541a56272307061e37bfcf242c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page