Comprehensive PDF manipulation toolkit for extracting text and tables, creating new PDFs, merging/splitting documents, and handling forms. When Claude needs to fill in a PDF form or programmatically process, generate, or analyze PDF documents at scale.
95
76%
Does it follow best practices?
Impact
97%
2.48xAverage score across 10 eval scenarios
Risky
Do not use without reviewing
Optimize this skill with Tessl
npx tessl skill review --optimize ./config/claude/skills/pdf/SKILL.mdQuality
Discovery
100%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
This is a strong skill description that clearly enumerates specific PDF capabilities and provides an explicit 'When' clause for trigger guidance. It uses third-person voice appropriately and includes natural keywords users would use when requesting PDF-related tasks. The description is concise yet comprehensive, making it easy for Claude to distinguish this skill from others.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists multiple specific concrete actions: 'extracting text and tables', 'creating new PDFs', 'merging/splitting documents', 'handling forms', 'fill in a PDF form', 'programmatically process, generate, or analyze PDF documents'. | 3 / 3 |
Completeness | Clearly answers both 'what' (extracting text/tables, creating PDFs, merging/splitting, handling forms) and 'when' ('When Claude needs to fill in a PDF form or programmatically process, generate, or analyze PDF documents at scale'). The 'When' clause is explicit. | 3 / 3 |
Trigger Term Quality | Includes strong natural keywords users would say: 'PDF', 'extract text', 'tables', 'merging', 'splitting', 'forms', 'PDF form', 'generate', 'analyze PDF documents'. Covers a wide range of common user terms for PDF-related tasks. | 3 / 3 |
Distinctiveness Conflict Risk | Clearly scoped to PDF manipulation with distinct triggers like 'PDF form', 'merging/splitting documents', 'PDF documents'. Unlikely to conflict with other skills due to the specific PDF focus and detailed action list. | 3 / 3 |
Total | 12 / 12 Passed |
Implementation
52%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
The skill provides excellent actionable, executable code examples across a wide range of PDF operations, making it a strong practical reference. However, it lacks workflow clarity—no validation steps, error handling, or feedback loops for multi-step operations like merging or encryption. The content is somewhat verbose for a skill file, with many inline examples that could be offloaded to reference files for better progressive disclosure.
Suggestions
Add validation/verification steps to multi-step operations (e.g., after merging, verify page count matches expected total; after encryption, verify the file requires a password to open)
Add error handling patterns for common failure modes (e.g., corrupted PDFs, password-protected inputs, missing dependencies)
Move command-line tools and less common operations (OCR, watermarking, image extraction) into reference.md to keep SKILL.md focused on the most common operations
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is fairly comprehensive but includes some redundancy (e.g., showing both pypdf and qpdf/pdftk for the same operations, multiple similar code patterns). Some sections like the quick reference table partially duplicate what's already shown in code examples. However, it doesn't over-explain concepts Claude already knows. | 2 / 3 |
Actionability | All code examples are fully executable and copy-paste ready with proper imports. Both Python and command-line approaches are provided with concrete, complete examples covering a wide range of PDF operations. | 3 / 3 |
Workflow Clarity | There are no multi-step workflows with validation checkpoints. Operations like merging, watermarking, and encryption are presented as isolated code snippets without any verification steps (e.g., checking if the output PDF is valid, verifying page counts after merge, confirming encryption worked). For destructive/batch operations like merging and splitting, this is a significant gap. | 1 / 3 |
Progressive Disclosure | The skill references forms.md and reference.md for advanced content, which is good structure. However, the main file itself is quite long (~200+ lines of inline code examples) and could benefit from moving some sections (e.g., command-line tools, OCR) into separate reference files. The references are clearly signaled but the body contains too much inline detail. | 2 / 3 |
Total | 8 / 12 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 — 11 / 11 Passed
Validation for skill structure
No warnings or errors.
3974caa
Table of Contents
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.