Nutrient Document Processing

March 14, 2026 · View on GitHub

Nutrient DWS API npm version License Agent Skills

Give your AI agent PDF superpowers — in one command.
Generate, convert, extract, OCR, redact, sign, archive, and optimize documents from any coding agent.

Demo: Ask your agent to redact PII from a PDF

QuickstartWorkflowsFeatures40+ Agents


30-Second Quickstart

1. Get a free API keyhttps://dashboard.nutrient.io/sign_up/?product=processor

2. Install & configure:

# Install the skill (works with 40+ agents)
npx skills add PSPDFKit-labs/nutrient-agent-skill

# Set your API key
export NUTRIENT_API_KEY="pdf_live_..."

3. Ask your agent:

"Extract the text from invoice.pdf"

That's it. Your agent now has full document processing capabilities.


Requirements


Supported Agents

Works out of the box with 40+ AI coding agents:

Claude Code Codex CLI Gemini CLI Cursor GitHub Copilot Windsurf OpenCode Amp Roo Code OpenClaw and 30 more

Any agent that supports the Agent Skills standard works automatically.


Real-World Workflows

🔍 Workflow 1: OCR a scanned document and extract text

You have a scanned PDF — no selectable text. Ask your agent:

"OCR scanned-contract.pdf in English and extract the text to a file"

What happens:

scanned-contract.pdf (image-only)
  → OCR (English) → searchable-contract.pdf (selectable text)
  → Extract text → contract-text.txt
OCR workflow

📋 Workflow 2: Fill a PDF form and sign it

You have an onboarding form to complete. Ask your agent:

"Fill employee-onboarding.pdf with name 'Jane Smith', start date '2026-03-01', and department 'Engineering', then digitally sign it"

What happens:

employee-onboarding.pdf (blank form)
  → Fill fields (name, date, department)
  → Digital signature (CMS)
  → employee-onboarding-signed.pdf ✅
Fill form and sign workflow

🔒 Workflow 3: Redact PII before sharing

You need to share a document but it contains sensitive data. Ask your agent:

"Redact all social security numbers, email addresses, and credit card numbers from patient-records.pdf"

What happens:

patient-records.pdf (contains PII)
  → Detect SSNs, emails, credit cards
  → Apply black redaction boxes (irreversible)
  → patient-records-redacted.pdf 🔒

Tip: For smarter redaction, try: "Use AI redaction to find and remove all personally identifiable information from contract.pdf" — this uses contextual AI analysis instead of pattern matching.


Features

CapabilityDescriptionExample prompt
GenerateCreate PDFs from HTML templates, uploaded assets, or remote URLs"Generate a PDF proposal from this HTML template"
📄 ConvertPDF ↔ DOCX/XLSX/PPTX, HTML → PDF, images → PDF"Convert report.docx to PDF"
🧩 AssembleMerge, split, reorder, rotate, and flatten PDF packets before delivery"Merge these PDFs, rotate the landscape pages, and keep only pages 1-5"
📝 ExtractText, tables, and key-value pairs from PDFs"Extract all tables from invoice.pdf as Excel"
🔍 OCRMulti-language OCR for scanned documents"OCR this German scan and extract the text"
🔒 RedactPattern-based + AI-powered PII redaction"Redact all SSNs and emails from records.pdf"
💧 WatermarkText or image watermarks with full styling"Add a DRAFT watermark to proposal.pdf"
✍️ SignCMS and CAdES digital signatures"Digitally sign contract.pdf"
📋 Fill FormsProgrammatic PDF form filling"Fill the tax form with these values…"
🗂️ ComplianceConvert PDFs for archival or accessibility targets like PDF/A and PDF/UA"Convert this PDF to PDF/A-2a"
OptimizeOptimize and linearize PDFs for web delivery and download performance"Linearize this PDF for fast web viewing"
📊 CreditsMonitor API usage and balance"How many API credits do I have left?"

Installation

# Install to all detected agents
npx skills add PSPDFKit-labs/nutrient-agent-skill

# Install to specific agents only
npx skills add PSPDFKit-labs/nutrient-agent-skill -a claude-code -a codex -a cursor

# Install globally (available across all projects)
npx skills add PSPDFKit-labs/nutrient-agent-skill -g

Manual Installation

Copy the nutrient-document-processing/ folder to your agent's skills directory:

AgentProject PathGlobal Path
Claude Code.claude/skills/~/.claude/skills/
Codex CLI.codex/skills/~/.codex/skills/
Gemini CLI.gemini/skills/~/.gemini/skills/
Cursor.cursor/skills/~/.cursor/skills/
GitHub Copilot.github/skills/~/.copilot/skills/
OpenCode.opencode/skills/~/.config/opencode/skills/
Windsurf.windsurf/skills/~/.codeium/windsurf/skills/
Amp.agents/skills/~/.config/agents/skills/
OpenClawskills/~/.moltbot/skills/
Roo Code.roo/skills/~/.roo/skills/

Example for Claude Code:

git clone https://github.com/PSPDFKit-labs/nutrient-agent-skill.git
cp -r nutrient-agent-skill/nutrient-document-processing ~/.claude/skills/

Skill Structure

nutrient-document-processing/
├── SKILL.md                          # Main instructions (loaded by agents)
├── agents/
│   └── openai.yaml                   # Optional Codex App metadata
├── references/
│   ├── REFERENCE.md                  # Reference index
│   └── *.md                          # Focused cookbooks by workflow type
├── scripts/
│   ├── *.py                          # Single-operation scripts
│   └── lib/common.py                 # Shared utilities
├── assets/
│   ├── nutrient.svg                  # Skill icon
│   └── templates/
│       └── custom-workflow-template.py  # Runtime pipeline template
├── tests/
│   └── testing-guide.md
└── LICENSE.txt                       # Apache-2.0

Script Model

  • scripts/*.py are single-operation scripts only.
  • Multi-step workflows are generated at runtime in a temporary script from assets/templates/custom-workflow-template.py.
  • Do not commit runtime pipeline scripts.
  • Use references/ for HTML/URL generation, compliance outputs, and other workflows that are easier to express as direct API payloads or temporary pipelines.

Documentation

About

Built by Nutrient (formerly PSPDFKit) — document SDKs trusted by thousands of companies worldwide.

License

Apache-2.0