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.3.0.tar.gz (28.5 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.3.0-py3-none-any.whl (36.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pdf_autofillr_cli-0.3.0.tar.gz
  • Upload date:
  • Size: 28.5 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.3.0.tar.gz
Algorithm Hash digest
SHA256 3e302b7e106e8066656ce4b5c2608d808cf2bd3e55461f2966f136b0ed932556
MD5 2171c14a65fa55b16987e116389cee29
BLAKE2b-256 36e47fc9f239a11899cce07c01a191617ed1305230aa9dea26aae69d8b2ef856

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pdf_autofillr_cli-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6a7c79cfa5f205685caaa2a115f1c61bd4c673a28f98b2c21f87728126f77066
MD5 6635f041bfb326a39ee7f67f0673aefd
BLAKE2b-256 2b474644520f1ea058594a234b6ea25021f384eea06ee3557de5641977e02b89

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