CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

pdf

Use this skill whenever the user wants to do anything with PDF files. This includes reading or extracting text/tables from PDFs, combining or merging multiple PDFs into one, splitting PDFs apart, rotating pages, adding watermarks, creating new PDFs, filling PDF forms, encrypting/decrypting PDFs, extracting images, and OCR on scanned PDFs to make them searchable. If the user mentions a .pdf file or asks to produce one, use this skill.

1.31x
Quality

88%

Does it follow best practices?

Impact

95%

1.31x

Average score across 8 eval scenarios

SecuritybySnyk

Low

Low-risk findings worth noting

SKILL.md
Quality
Evals
Security

Quality

Content

72%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body is an efficient, highly actionable task reference with executable code throughout and one valuable non-obvious warning. Its two real weaknesses are missing validation for batch/file-overwriting operations (workflow_clarity capped at 3) and a progressive-disclosure chain that points to files absent from the bundle while ignoring the scripts directory that does exist.

Suggestions

Add lightweight validation checkpoints after batch/destructive operations — e.g., after merging, assert len(PdfReader('merged.pdf').pages) equals the sum of inputs; after encrypting, confirm PdfReader('encrypted.pdf', password=...) opens.

Fix the dangling references: either include REFERENCE.md and FORMS.md in the bundle, or repoint the form-filling pointers at the existing scripts/ (e.g., 'run scripts/check_fillable_fields.py first, then scripts/fill_fillable_fields.py').

Trim the pdftk '(if available)' section and the Quick Reference table, which duplicate guidance already fully covered by the qpdf and library sections, to tighten token efficiency.

DimensionReasoningScore

Conciseness

The body is code-dominant with almost no explanation of concepts Claude already knows (no 'what is a PDF' padding), and the Unicode sub/superscript warning is genuinely non-obvious knowledge that earns its tokens. Minor trims are possible: the pdftk section ('if available') largely duplicates qpdf, and the Quick Reference table restates commands already shown, so it sits at 'efficient; minor instances that could be trimmed' rather than lean-perfect.

4 / 5

Actionability

Every section is copy-paste ready, executable code or an exact command: complete pypdf/pdfplumber/reportlab snippets with imports and output handling, and precise CLI invocations with flags (e.g., 'qpdf input.pdf --pages . 1-5 -- pages1-5.pdf', 'pdftotext -f 1 -l 5'). Dependencies are even stated where needed ('Requires: pip install pytesseract pdf2image'), matching the score-5 anchor for fully executable coverage of common cases.

5 / 5

Workflow Clarity

The content is organized as a per-task reference rather than a sequenced workflow, and it includes batch/file-overwriting operations — merging, splitting, watermarking, encryption — with no validation or verification steps (e.g., checking the merged output's page count or that the encrypted file reopens). Per the rubric's cap, batch operations without validation cannot exceed 3; it is not a 2 because each task's own steps are coherent and correctly ordered.

3 / 5

Progressive Disclosure

Section structure and reference signaling are good ('For advanced features... see REFERENCE.md', 'read FORMS.md and follow its instructions'), but scored against the actual bundle both referenced files are missing — REFERENCE.md and FORMS.md do not exist in references/ or anywhere in the bundle — while the 8 form-filling scripts in scripts/ that the bundle actually provides are never mentioned. Navigation is therefore broken at the exact point it hands off, and the real bundle content is undiscoverable; this fits 'some structure but could be better organized' rather than a 4.

3 / 5

Total

15

/

20

Passed

Description

100%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description is a strong, well-calibrated trigger: it lists a comprehensive set of concrete PDF operations and gives explicit, natural 'use when' guidance including the file extension. It matches the rubric's top anchors on all four dimensions with no vague fluff or over-claims.

DimensionReasoningScore

Specificity

The description enumerates many concrete actions — 'reading or extracting text/tables from PDFs, combining or merging multiple PDFs into one, splitting PDFs apart, rotating pages, adding watermarks, creating new PDFs, filling PDF forms, encrypting/decrypting PDFs, extracting images, and OCR' — comprehensive and specific, matching the score-5 anchor. The opening 'do anything with PDF files' is broad, but it is immediately grounded by an explicit action list rather than left vague.

5 / 5

Completeness

It explicitly answers both questions: what ('This includes reading or extracting text/tables... encrypting/decrypting... OCR') and when ('Use this skill whenever the user wants to do anything with PDF files... If the user mentions a .pdf file or asks to produce one, use this skill'). This mirrors the score-5 anchor's what+when structure with concrete trigger phrases; a 4 would require a weaker or less explicit 'when' clause, which is not the case here.

5 / 5

Trigger Term Quality

It covers the natural terms users would say — 'PDF files', 'PDFs', '.pdf file', 'filling PDF forms', 'extracting', 'merging', 'watermark', 'OCR' — including the file extension, matching the score-5 anchor ('PDF files, PDFs, forms, document extraction, .pdf'). Not a 4 because no commonly used natural synonym or variation is missing.

5 / 5

Distinctiveness Conflict Risk

It occupies a clear niche (PDF file operations) with distinct, unambiguous triggers ('.pdf file', 'PDFs', 'forms', 'document extraction') that would not fire for other document or data skills. Matches the score-5 anchor; no meaningful overlap risk with adjacent skills.

5 / 5

Total

20

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

anthropics/skills

Path

skills/pdf/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.