CtrlK
BlogDocsLog inGet started
Tessl Logo

pdf

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.

65

Quality

78%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

High

Do not use without reviewing

Fix and improve this skill with Tessl

tessl review fix ./SKILLs/pdf/SKILL.md

The canonical home for this skill is pdf in anthropics/skills

SKILL.md
Quality
Evals
Security

Quality

Content

65%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.

A highly actionable, code-dense toolkit body that is let down by structural issues: redundant CLI tool coverage, missing validation checkpoints for batch operations, and body references (forms.md, reference.md) that point to files not present in the bundle.

Suggestions

Add verification steps after batch/destructive operations (e.g., open merged.pdf and assert len(pages) == expected, or verify an encrypted PDF raises PasswordError) so workflows can score above the validation cap.

Reconcile the bundle with the body: either provide forms.md and reference.md, or replace those pointers with links to the actual ./scripts (e.g., fill_fillable_fields.py, fill_pdf_form_with_annotations.py) that exist.

Collapse the redundant merge/split/rotate coverage to one primary tool (pypdf or qpdf) and mention pdftk only as a fallback to trim the repeated CLI sections and the Quick Reference table.

DimensionReasoningScore

Conciseness

The body is mostly lean code with no concept-explanation padding, but it redundantly covers merge/split/rotate across three command-line tools (qpdf, pdftk, pypdf) and repeats them in a Quick Reference table, so it could be tightened.

3 / 5

Actionability

Nearly every section is copy-paste-ready executable code or commands covering the common cases (merge, split, extract text/tables, create PDFs, OCR, watermark, encrypt), matching the fully-executable top anchor.

5 / 5

Workflow Clarity

Each recipe is an unambiguous sequence, but batch/destructive operations like merge, split, and encrypt have no verification checkpoints (e.g., confirming page counts or that output opened), which caps workflow clarity per the rubric.

3 / 5

Progressive Disclosure

References to reference.md and forms.md are clearly signaled one level deep, but those files are absent from the bundle and the existing ./scripts form-filling scripts are never linked from the body, leaving navigation partly broken.

3 / 5

Total

14

/

20

Passed

Description

92%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.

A strong, third-person description that concretely enumerates capabilities and pairs them with an explicit usage trigger. The only gap is a couple of common synonyms (PDFs, .pdf) in the trigger terms.

DimensionReasoningScore

Specificity

Lists multiple concrete actions — 'extracting text and tables, creating new PDFs, merging/splitting documents, and handling forms' plus 'process, generate, or analyze PDF documents' — giving comprehensive coverage rather than vague abstraction.

5 / 5

Completeness

It explicitly states what the toolkit does and follows with an explicit 'When Claude needs to...' trigger clause answering when to use it, matching the top anchor.

5 / 5

Trigger Term Quality

Strong natural terms appear ('PDF form', 'PDF documents', 'forms', 'extracting text and tables'), but the standalone plural 'PDFs' and the '.pdf' file extension are absent, leaving a few common synonyms missing.

4 / 5

Distinctiveness Conflict Risk

The description is anchored to a clear PDF-only niche with distinct triggers ('PDF form', 'PDF documents'), giving minimal overlap risk with other skills.

5 / 5

Total

19

/

20

Passed

Validation

93%

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

Validation15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

15

/

16

Passed

Repository
netease-youdao/LobsterAI
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.