add-pdf-reader

add-pdf-reader is a skill for Claude Code from sbusso/claudeclaw. It costs 37 tokens per session (763 once invoked), scanned A, original, MIT.

An addition that lets ClaudeClaw agents read PDF files by extracting their text with command-line tools. It supports local files, web URLs, and PDF attachments received through WhatsApp.

In plain words
What is it for?
Use it to make PDFs available for text-based agent tasks, including documents sent as WhatsApp attachments.
Why use it?
It removes the need to convert or copy PDF contents manually before an agent can work with them.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin.

Needs its repository: it runs a file that does not travel with it, so clone the repository first. The line is ./src/runtimes/docker/build.sh.

Part of the claudeclaw plugin — 27 skills shipped together

Good fit Use it to make PDFs available for text-based agent tasks, including documents sent as WhatsApp attachments.

Compare 6 skills from other repositories ↓
Install

Getting it into your agent

It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.

Clone the repo
git clone --depth 1 https://github.com/sbusso/claudeclaw
agentmods
npx agentmods add skills/sbusso/claudeclaw/add-pdf-reader

Made for: Claude Code.

Or install claudeclaw, the plugin that ships this one along with the rest of its 27 skills.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for add-pdf-reader

README.md
[![agentmods](https://agentmods.dev/badge/skills/sbusso/claudeclaw/add-pdf-reader/github.svg)](https://agentmods.dev/skills/sbusso/claudeclaw/add-pdf-reader)
Your own site
<a href="https://agentmods.dev/skills/sbusso/claudeclaw/add-pdf-reader"><img src="https://agentmods.dev/badge/skills/sbusso/claudeclaw/add-pdf-reader/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for add-pdf-reader

Your own site · 80×15
<a href="https://agentmods.dev/skills/sbusso/claudeclaw/add-pdf-reader"><img src="https://agentmods.dev/badge/skills/sbusso/claudeclaw/add-pdf-reader.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 37 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 763 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector warn 7 Sept 2026
SkillSpector: 2 findings, up to medium

These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →

  • medium Agent Snooping · line 41
    Skill enumerates or reads other installed skills. Access to other skills' SKILL.md files or the skills directory reveals prompt instructions, capabilities, and secrets that should be invisible to peer skills.
    Fix: Remove all code or instructions that list or read other skills' files or directories. Skills should operate independently; cross-skill access is a privilege escalation.
  • medium MCP Rug Pull · line 53
    npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
    Fix: Pin the version: npx @scope/[email protected]
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00037 $0.00763
Opus 5.5 $0.00015 $0.00305
Sonnet 5.5 $0.00007 $0.00153
Haiku 4.5 $0.00004 $0.00076

Measured 1mo ago against content hash f57d5bc2d627, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

add-pdf-reader scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/add-pdf-reader/SKILL.md · 107 lines

How it starts

The opening of the file, as written. The whole thing — 107 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Add PDF Reader

Adds PDF reading capability to all container agents using poppler-utils (pdftotext/pdfinfo). PDFs sent as WhatsApp attachments are auto-downloaded to the group workspace.

Phase 1: Pre-flight

  1. Check if agent/skills/pdf-reader/pdf-reader exists — skip to Phase 3 if already applied
  2. Confirm WhatsApp is installed first (skill/whatsapp merged). This skill modifies WhatsApp channel files.

Phase 2: Apply Code Changes

Ensure WhatsApp fork remote

git remote -v

If whatsapp is missing, add it:

git remote add whatsapp https://github.com/qwibitai/claudeclaw-whatsapp.git

Merge the skill branch

git fetch whatsapp skill/pdf-reader
git merge whatsapp/skill/pdf-reader || {
  git checkout --theirs package-lock.json
  git add package-lock.json
  git merge --continue
}

This merges in:

  • agent/skills/pdf-reader/SKILL.md (agent-facing documentation)
  • agent/skills/pdf-reader/pdf-reader (CLI script)
  • poppler-utils in src/runtimes/docker/Dockerfile
  • PDF attachment download in src/channels/whatsapp.ts
  • PDF tests in src/channels/whatsapp.test.ts

If the merge reports conflicts, resolve them by reading the conflicted files and understanding the intent of both sides.

Validate

npm run build
npx vitest run src/channels/whatsapp.test.ts

Rebuild container

./src/runtimes/docker/build.sh

Service name: Derived from the directory name: com.claudeclaw.<dirname> (macOS) / claudeclaw-<dirname> (Linux). For example, if cwd is my-assistant, the service is com.claudeclaw.my-assistant. Determine the correct service name before running service commands below.

Restart service

launchctl kickstart -k gui/$(id -u)/com.claudeclaw  # macOS
# Linux: systemctl --user restart claudeclaw

Phase 3: Verify

Test PDF extraction

Send a PDF file in any registered WhatsApp chat. The agent should:

  1. Download the PDF to attachments/
  2. Respond acknowledging the PDF
  3. Be able to extract text when asked

Read the full file on GitHub · 107 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 1mo ago First seen · 107 lines · 37 tokens per session scan A f57d5bc2d627

Subscribe to this mod's changes

add-pdf-reader is a skill published in the GitHub repository sbusso/claudeclaw (194 stars, last pushed 2mo ago), licensed MIT. It adds 37 tokens to every session and 763 once invoked, about $0.0001 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

papyrus-diagnose-compilation

Diagnose and fix LaTeX compilation failures. Use when the document does not compile, pdflatex/bibtex/biber/tectonic errors out, the PDF is stale, or the author reports a build/compile error in the Papyrus editor.

kirodotdev/KiroCrew · 60 tokens

pdf

Use when tasks involve reading, creating, or reviewing PDF files where rendering and layout matter; prefer visual checks by rendering pages (Poppler) and use Python tools such as reportlab, pdfplumber, and pypdf for generation and extraction.

MemTensor/memmy-agent · 56 tokens

pdfcraft

Headless PDF work with PdfCraft, provisioned on demand by pi-craft - combine, split, extract, rotate, delete and reorder pages, read text, render a page to png, audit faux redactions, script its 163 tools. Use for "merge these two PDFs", "extract pages 1 and 3 from this PDF", "rotate page 1 and drop page 2", "what…

BlackBeltTechnology/pi-agent-dashboard · 92 tokens

craft-data-visual

Turn data into a finished visual with ArtCraft apps - GridCraft workbook with a formula-error read-back, chart, VectorCraft/DesignCraft infographic, DeckCraft slide; verified and resumable. Use for "make a chart from this spreadsheet", "build an infographic from these numbers", "put the revenue chart on a slide".

BlackBeltTechnology/pi-agent-dashboard · 71 tokens

deck3d-from-pptx

Turn an existing .pptx into a styled deck3d 3D presentation: import, reference renders, then nine steps (fidelity … transitions), each authoring 2-4 variants, showing a contact sheet, asking the user, recording the pick, then build + compare. Use on "make a 3D deck from this pptx", "convert my PowerPoint to deck3d"…

BlackBeltTechnology/pi-agent-dashboard · 100 tokens

deckcraft

Headless presentations with DeckCraft (PPTX slides, layouts, shapes, text, tables), provisioned on demand by pi-craft - build a deck from commands, export to PDF, render slides to png. Use for "make a 3-slide presentation", "add a title slide to this pptx", "export this deck to pdf", "render slide 2 as an image".

BlackBeltTechnology/pi-agent-dashboard · 83 tokens