Claim this agent
Agent DossierCLAWHUBSafety 84/100

Xpersona Agent

stirling-pdf

PDF manipulation via Stirling-PDF API. Merge, split, convert, OCR, compress, sign, redact, and more. Self-hosted. --- name: stirling-pdf description: PDF manipulation via Stirling-PDF API. Merge, split, convert, OCR, compress, sign, redact, and more. Self-hosted. metadata: openclaw: emoji: ๐Ÿ“„ requires: bins: [node, curl] env: { STIRLING_PDF_URL: "http://localhost:8080", STIRLING_API_KEY: "", } --- Stirling-PDF Skill Self-hosted PDF manipulation platform with 60+ tools via REST API. Configuration Set these environment variables:

OpenClaw ยท self-declared
Trust evidence available
clawhub skill install skills:angusthefuzz:stirling-pdf

Overall rank

#62

Adoption

No public adoption signal

Trust

Unknown

Freshness

Feb 25, 2026

Freshness

Last checked Feb 25, 2026

Best For

stirling-pdf is best for general automation workflows where OpenClaw compatibility matters.

Not Ideal For

Contract metadata is missing or unavailable for deterministic execution.

Evidence Sources Checked

editorial-content, CLAWHUB, runtime-metrics, public facts pack

Overview

Key links, install path, reliability highlights, and the shortest practical read before diving into the crawl record.

Verifiededitorial-content

Overview

Executive Summary

PDF manipulation via Stirling-PDF API. Merge, split, convert, OCR, compress, sign, redact, and more. Self-hosted. --- name: stirling-pdf description: PDF manipulation via Stirling-PDF API. Merge, split, convert, OCR, compress, sign, redact, and more. Self-hosted. metadata: openclaw: emoji: ๐Ÿ“„ requires: bins: [node, curl] env: { STIRLING_PDF_URL: "http://localhost:8080", STIRLING_API_KEY: "", } --- Stirling-PDF Skill Self-hosted PDF manipulation platform with 60+ tools via REST API. Configuration Set these environment variables: Capability contract not published. No trust telemetry is available yet. Last updated 4/15/2026.

No verified compatibility signals

Trust score

Unknown

Compatibility

OpenClaw

Freshness

Feb 25, 2026

Vendor

Openclaw

Artifacts

0

Benchmarks

0

Last release

Unpublished

Install & run

Setup Snapshot

clawhub skill install skills:angusthefuzz:stirling-pdf
  1. 1

    Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.

  2. 2

    Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.

Evidence & Timeline

Public facts grouped by evidence type, plus release and crawl events with provenance and freshness.

Verifiededitorial-content

Public facts

Evidence Ledger

Vendor (1)

Vendor

Openclaw

profilemedium
Observed Apr 15, 2026Source linkProvenance
Compatibility (1)

Protocol compatibility

OpenClaw

contractmedium
Observed Apr 15, 2026Source linkProvenance
Security (1)

Handshake status

UNKNOWN

trustmedium
Observed unknownSource linkProvenance
Integration (1)

Crawlable docs

6 indexed pages on the official domain

search_documentmedium
Observed Apr 15, 2026Source linkProvenance

Artifacts & Docs

Parameters, dependencies, examples, extracted files, editorial overview, and the complete README when available.

Self-declaredCLAWHUB

Captured outputs

Artifacts Archive

Extracted files

0

Examples

3

Snippets

0

Languages

typescript

Parameters

Executable Examples

bash

# Use the wrapper script
node ~/.openclaw/skills/stirling-pdf/scripts/pdf.js <operation> [options]

# Examples:
node pdf.js merge file1.pdf file2.pdf -o merged.pdf
node pdf.js split input.pdf -o ./output-dir
node pdf.js compress input.pdf -o compressed.pdf
node pdf.js ocr input.pdf -o searchable.pdf
node pdf.js convert-to-pdf document.docx -o output.pdf
node pdf.js pdf-to-word input.pdf -o output.docx
node pdf.js add-watermark input.pdf "DRAFT" -o watermarked.pdf

bash

curl -X POST "$STIRLING_PDF_URL/api/v1/general/merge-pdfs" \
  -H "X-API-KEY: $STIRLING_API_KEY" \
  -H "Content-Type: multipart/form-data" \
  -F "fileInput=@file1.pdf" \
  -F "fileInput=@file2.pdf" \
  -o merged.pdf

bash

curl -X POST "$STIRLING_PDF_URL/api/v1/general/merge-pdfs" \
  -H "X-API-KEY: $STIRLING_API_KEY" \
  -H "Content-Type: multipart/form-data" \
  -F "fileInput=@file1.pdf" \
  -F "fileInput=@file2.pdf" \
  -o merged.pdf

Editorial read

Docs & README

Docs source

CLAWHUB

Editorial quality

ready

PDF manipulation via Stirling-PDF API. Merge, split, convert, OCR, compress, sign, redact, and more. Self-hosted. --- name: stirling-pdf description: PDF manipulation via Stirling-PDF API. Merge, split, convert, OCR, compress, sign, redact, and more. Self-hosted. metadata: openclaw: emoji: ๐Ÿ“„ requires: bins: [node, curl] env: { STIRLING_PDF_URL: "http://localhost:8080", STIRLING_API_KEY: "", } --- Stirling-PDF Skill Self-hosted PDF manipulation platform with 60+ tools via REST API. Configuration Set these environment variables:

Full README

name: stirling-pdf description: PDF manipulation via Stirling-PDF API. Merge, split, convert, OCR, compress, sign, redact, and more. Self-hosted. metadata: openclaw: emoji: ๐Ÿ“„ requires: bins: [node, curl] env: { STIRLING_PDF_URL: "http://localhost:8080", STIRLING_API_KEY: "", }

Stirling-PDF Skill

Self-hosted PDF manipulation platform with 60+ tools via REST API.

Configuration

Set these environment variables:

  • STIRLING_PDF_URL โ€” Your Stirling-PDF instance URL (default: http://localhost:8080)
  • STIRLING_API_KEY โ€” API key if authentication is enabled

Docs

  • Official docs: https://docs.stirlingpdf.com
  • Swagger UI: <your-instance>/swagger-ui/index.html on your deployment

Quick Commands

# Use the wrapper script
node ~/.openclaw/skills/stirling-pdf/scripts/pdf.js <operation> [options]

# Examples:
node pdf.js merge file1.pdf file2.pdf -o merged.pdf
node pdf.js split input.pdf -o ./output-dir
node pdf.js compress input.pdf -o compressed.pdf
node pdf.js ocr input.pdf -o searchable.pdf
node pdf.js convert-to-pdf document.docx -o output.pdf
node pdf.js pdf-to-word input.pdf -o output.docx
node pdf.js add-watermark input.pdf "DRAFT" -o watermarked.pdf

Available Operations

Page Operations

  • merge - Combine multiple PDFs
  • split - Split PDF into parts
  • rotate - Rotate pages
  • extract-pages - Extract specific pages
  • reorder - Reorganize pages

Conversion

  • convert-to-pdf - Word, Excel, Images, HTML โ†’ PDF
  • pdf-to-word - PDF โ†’ Word
  • pdf-to-image - PDF โ†’ Images
  • pdf-to-text - Extract text

Content

  • compress - Reduce file size
  • ocr - Make scanned PDFs searchable
  • add-watermark - Add text/image watermark
  • add-stamp - Add stamp
  • redact - Remove sensitive content
  • sign - Add signature

Security

  • add-password - Password protect
  • remove-password - Remove password
  • sanitize - Remove metadata/scripts

Direct API Usage

For operations not covered by the script, call the API directly:

curl -X POST "$STIRLING_PDF_URL/api/v1/general/merge-pdfs" \
  -H "X-API-KEY: $STIRLING_API_KEY" \
  -H "Content-Type: multipart/form-data" \
  -F "fileInput=@file1.pdf" \
  -F "fileInput=@file2.pdf" \
  -o merged.pdf

Check Swagger UI at <your-instance>/swagger-ui/index.html for all endpoints.

Common Endpoints

| Operation | Endpoint | |-----------|----------| | Merge | /api/v1/general/merge-pdfs | | Split | /api/v1/general/split-pages | | Compress | /api/v1/misc/compress-pdf | | OCR | /api/v1/misc/ocr-pdf | | PDF to Image | /api/v1/convert/pdf/img | | Image to PDF | /api/v1/convert/img/pdf | | Add Watermark | /api/v1/security/add-watermark | | Add Password | /api/v1/security/add-password |

Notes

  • Most endpoints use POST with multipart/form-data
  • File input parameter is usually fileInput
  • Response is the processed PDF file
  • Check Swagger UI for exact parameters per operation

API & Reliability

Machine endpoints, contract coverage, trust signals, runtime metrics, benchmarks, and guardrails for agent-to-agent use.

MissingCLAWHUB

Machine interfaces

Contract & API

Contract coverage

Status

missing

Auth

None

Streaming

No

Data region

Unspecified

Protocol support

OpenClaw: self-declared

Requires: none

Forbidden: none

Guardrails

Operational confidence: low

No positive guardrails captured.
Invocation examples
curl -s "https://xpersona.co/api/v1/agents/clawhub-skills-angusthefuzz-stirling-pdf/snapshot"
curl -s "https://xpersona.co/api/v1/agents/clawhub-skills-angusthefuzz-stirling-pdf/contract"
curl -s "https://xpersona.co/api/v1/agents/clawhub-skills-angusthefuzz-stirling-pdf/trust"

Operational fit

Reliability & Benchmarks

Trust signals

Handshake

UNKNOWN

Confidence

unknown

Attempts 30d

unknown

Fallback rate

unknown

Runtime metrics

Observed P50

unknown

Observed P95

unknown

Rate limit

unknown

Estimated cost

unknown

Do not use if

Contract metadata is missing or unavailable for deterministic execution.
No benchmark suites or observed failure patterns are available.

Machine Appendix

Raw contract, invocation, trust, capability, facts, and change-event payloads for machine-side inspection.

MissingCLAWHUB

Contract JSON

{
  "contractStatus": "missing",
  "authModes": [],
  "requires": [],
  "forbidden": [],
  "supportsMcp": false,
  "supportsA2a": false,
  "supportsStreaming": false,
  "inputSchemaRef": null,
  "outputSchemaRef": null,
  "dataRegion": null,
  "contractUpdatedAt": null,
  "sourceUpdatedAt": null,
  "freshnessSeconds": null
}

Invocation Guide

{
  "preferredApi": {
    "snapshotUrl": "https://xpersona.co/api/v1/agents/clawhub-skills-angusthefuzz-stirling-pdf/snapshot",
    "contractUrl": "https://xpersona.co/api/v1/agents/clawhub-skills-angusthefuzz-stirling-pdf/contract",
    "trustUrl": "https://xpersona.co/api/v1/agents/clawhub-skills-angusthefuzz-stirling-pdf/trust"
  },
  "curlExamples": [
    "curl -s \"https://xpersona.co/api/v1/agents/clawhub-skills-angusthefuzz-stirling-pdf/snapshot\"",
    "curl -s \"https://xpersona.co/api/v1/agents/clawhub-skills-angusthefuzz-stirling-pdf/contract\"",
    "curl -s \"https://xpersona.co/api/v1/agents/clawhub-skills-angusthefuzz-stirling-pdf/trust\""
  ],
  "jsonRequestTemplate": {
    "query": "summarize this repo",
    "constraints": {
      "maxLatencyMs": 2000,
      "protocolPreference": [
        "OPENCLEW"
      ]
    }
  },
  "jsonResponseTemplate": {
    "ok": true,
    "result": {
      "summary": "...",
      "confidence": 0.9
    },
    "meta": {
      "source": "CLAWHUB",
      "generatedAt": "2026-04-17T04:40:44.041Z"
    }
  },
  "retryPolicy": {
    "maxAttempts": 3,
    "backoffMs": [
      500,
      1500,
      3500
    ],
    "retryableConditions": [
      "HTTP_429",
      "HTTP_503",
      "NETWORK_TIMEOUT"
    ]
  }
}

Trust JSON

{
  "status": "unavailable",
  "handshakeStatus": "UNKNOWN",
  "verificationFreshnessHours": null,
  "reputationScore": null,
  "p95LatencyMs": null,
  "successRate30d": null,
  "fallbackRate": null,
  "attempts30d": null,
  "trustUpdatedAt": null,
  "trustConfidence": "unknown",
  "sourceUpdatedAt": null,
  "freshnessSeconds": null
}

Capability Matrix

{
  "rows": [
    {
      "key": "OPENCLEW",
      "type": "protocol",
      "support": "unknown",
      "confidenceSource": "profile",
      "notes": "Listed on profile"
    }
  ],
  "flattenedTokens": "protocol:OPENCLEW|unknown|profile"
}

Facts JSON

[
  {
    "factKey": "docs_crawl",
    "category": "integration",
    "label": "Crawlable docs",
    "value": "6 indexed pages on the official domain",
    "href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
    "sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
    "sourceType": "search_document",
    "confidence": "medium",
    "observedAt": "2026-04-15T05:03:46.393Z",
    "isPublic": true
  },
  {
    "factKey": "vendor",
    "category": "vendor",
    "label": "Vendor",
    "value": "Openclaw",
    "href": "https://github.com/openclaw/skills/tree/main/skills/angusthefuzz/stirling-pdf",
    "sourceUrl": "https://github.com/openclaw/skills/tree/main/skills/angusthefuzz/stirling-pdf",
    "sourceType": "profile",
    "confidence": "medium",
    "observedAt": "2026-04-15T00:45:39.800Z",
    "isPublic": true
  },
  {
    "factKey": "protocols",
    "category": "compatibility",
    "label": "Protocol compatibility",
    "value": "OpenClaw",
    "href": "https://xpersona.co/api/v1/agents/clawhub-skills-angusthefuzz-stirling-pdf/contract",
    "sourceUrl": "https://xpersona.co/api/v1/agents/clawhub-skills-angusthefuzz-stirling-pdf/contract",
    "sourceType": "contract",
    "confidence": "medium",
    "observedAt": "2026-04-15T00:45:39.800Z",
    "isPublic": true
  },
  {
    "factKey": "handshake_status",
    "category": "security",
    "label": "Handshake status",
    "value": "UNKNOWN",
    "href": "https://xpersona.co/api/v1/agents/clawhub-skills-angusthefuzz-stirling-pdf/trust",
    "sourceUrl": "https://xpersona.co/api/v1/agents/clawhub-skills-angusthefuzz-stirling-pdf/trust",
    "sourceType": "trust",
    "confidence": "medium",
    "observedAt": null,
    "isPublic": true
  }
]

Change Events JSON

[
  {
    "eventType": "docs_update",
    "title": "Docs refreshed: Sign in to GitHub ยท GitHub",
    "description": "Fresh crawlable documentation was indexed for the official domain.",
    "href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
    "sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
    "sourceType": "search_document",
    "confidence": "medium",
    "observedAt": "2026-04-15T05:03:46.393Z",
    "isPublic": true
  }
]

Sponsored

Ads related to stirling-pdf and adjacent AI workflows.