CtrlK
BlogDocsLog inGet started
Tessl Logo

pdf-download-extract-fallback

Multi-step PDF download and text extraction with progressive fallback strategies

48

Quality

50%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Low

Low-risk findings worth noting

Fix and improve this skill with Tessl

tessl review fix ./benchmarks/gdpval/skills/pdf-download-extract-fallback/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

46%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 content is highly actionable with concrete commands and a validation-aware sequence, but it is verbose, repeats installation and script blocks, and is structurally damaged by a duplicated mid-file frontmatter that re-emits orphaned sections. Splitting into reference files and removing the duplicated content would substantially improve both conciseness and progressive disclosure.

Suggestions

Remove the duplicated frontmatter and orphaned sections starting at line 253 — keep a single canonical copy of the Overview, Mode A/B, and Complete Workflow Script sections.

De-duplicate the poppler-utils install instructions (currently shown in Step 3, the workflow script, and the pre-check section) and trim explanatory prose Claude already knows to improve token efficiency.

Move the full workflow script and the failure-mode table into reference files (e.g. scripts/pdf-extract-workflow.sh and references/failure-modes.md) referenced one level deep, so the SKILL.md body becomes a lean overview.

DimensionReasoningScore

Conciseness

The body restates concepts Claude already knows (e.g. 'Many PDF hosting sites use JavaScript-based redirects or block automated requests'), repeats the poppler-utils install block three times, and duplicates whole sections — 'Noticeably verbose; several unnecessary explanations or padded sections' fits better than the 'mostly efficient' anchor of 3.

2 / 5

Actionability

It provides mostly executable, concrete guidance — runnable curl/pdftotext/PyMuPDF commands, a full bash workflow script, and a failure-mode table — with only minor gaps (placeholder 'URL_HERE', the duplicate truncated 'Complete Workflow Script' at the end), matching 'Mostly executable guidance; concrete code or commands with minor gaps' rather than the fully copy-paste-ready 5.

4 / 5

Workflow Clarity

Steps are clearly numbered with validation checkpoints (file-type verification, tool pre-check), but the file is structurally corrupted by a duplicated/orphaned frontmatter block at line 253 that re-starts 'Overview', 'Mode A/B', and a truncated script, breaking the sequence and leaving implicit how to reconcile the two copies — fitting 'sequence present but checkpoints missing or implicit' rather than a clean 4.

3 / 5

Progressive Disclosure

No bundle files exist (references/, scripts/, assets/ are absent) and all content is inlined into a single monolithic SKILL.md, with large repeated blocks (the workflow script, install instructions, overview) that clearly belong in separate files; this matches 'Minimal structure; content that clearly belongs in separate files is inlined' rather than a 3, which requires at least some clear signaling or separation.

2 / 5

Total

11

/

20

Passed

Description

53%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 domain-specific and non-generic, but it is a single sentence that lists only one or two actions and, critically, omits any explicit 'Use when...' trigger guidance. Adding concrete trigger phrases and a fuller action list would lift specificity and completeness.

Suggestions

Add an explicit 'when' clause, e.g. 'Use when the user needs to extract text from a PDF, especially from web URLs that may block automated downloads or return error pages.'

Expand the action list to be comprehensive — mention fallback methods by name (pdftotext, PyMuPDF) and the local-file vs. URL distinction so specificity reaches the 4-5 anchors.

Include natural trigger synonyms and a file extension (e.g. '.pdf', 'scanned PDFs', 'download a PDF that won't open') to improve trigger-term coverage.

DimensionReasoningScore

Specificity

Quotes 'Multi-step PDF download and text extraction with progressive fallback strategies' — it names the domain and a couple of concrete actions (download, text extraction) but stops short of a comprehensive enumeration of actions, matching the 'Names domain and 1-2 concrete actions' anchor rather than the multi-action list of a 4 or 5.

3 / 5

Completeness

It gives a clear 'what' but contains no 'Use when...' or equivalent explicit trigger guidance, so per the boundary guidance a missing 'when' clause caps completeness at 3; it is not a 4 because the 'when' is entirely absent rather than merely implicit.

3 / 5

Trigger Term Quality

The terms 'PDF download', 'text extraction', and 'fallback' are relevant keywords but common natural user phrasings and file extensions (e.g. '.pdf', 'get the text out of', 'scanned PDF') are absent, fitting 'Some relevant keywords but missing common variations or synonyms'.

3 / 5

Distinctiveness Conflict Risk

'PDF download and text extraction with progressive fallback' carves a fairly specific niche with low conflict risk against unrelated skills, though it could still overlap with general PDF/OCR skills, matching 'Mostly distinct; minor overlap risk'.

4 / 5

Total

13

/

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.

Validation16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
HKUDS/OpenSpace
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.