CtrlK
BlogDocsLog inGet started
Tessl Logo

robust-pdf-read

Reliably extract text from PDFs using pdftotext when standard file reading fails.

55

Quality

69%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Medium

Suggest reviewing before use

Fix and improve this skill with Tessl

tessl review fix ./benchmarks/gdpval/skills/robust-pdf-read/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

76%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 focused, highly actionable single-purpose skill with a clean shell-based workflow and well-organized sections. Its main weakness is the absence of explicit validation/error-recovery checkpoints for cases where extraction yields empty or unexpected output.

Suggestions

Add a validation checkpoint after running pdftotext (e.g. check that stdout is non-empty and non-garbled) with an explicit retry/escalation path, which would lift workflow clarity.

Trim the 'Benefits' section and the 'This occurs because PDFs are complex binary formats' explanation — Claude already knows PDFs are binary formats.

Note the fallback when pdftotext is unavailable (the Prerequisites mention install-or-notify, but the procedure does not reference it), to close the loop on missing-dependency handling.

DimensionReasoningScore

Conciseness

Largely lean with executable commands and a focused procedure; minor over-explanation such as 'This occurs because PDFs are complex binary formats' and the 'Benefits' section add slight padding but do not dominate.

4 / 5

Actionability

Provides a concrete, copy-paste-ready shell command with explained flags and an executable Python fallback example covering the common case; guidance is fully actionable.

5 / 5

Workflow Clarity

The three-step procedure is sequenced, but the detection step is not a true validation checkpoint and there is no explicit retry/error-recovery loop (e.g. what to do when pdftotext returns empty or errors), which leaves checkpoints implicit.

3 / 5

Progressive Disclosure

A single-purpose skill under 50 lines with no bundle files and well-organized sections (Problem, Solution, Procedure, Example, Prerequisites); per the simple-skill guideline this earns the top score with no external references needed.

5 / 5

Total

17

/

20

Passed

Description

50%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 states a clear, specific capability (PDF text extraction via pdftotext) but lacks an explicit 'Use when...' trigger clause and only implies the usage condition. Strong on distinctiveness, moderate on trigger term coverage.

Suggestions

Add an explicit 'Use when...' clause naming natural trigger phrases, e.g. 'Use when standard file reading returns garbled or binary content from a PDF, or when the user asks to read a .pdf file.'

Include user-natural synonyms/extensions such as 'PDF files', '.pdf', and 'read PDFs' to broaden trigger-term coverage.

If the skill supports related actions (e.g. preserving layout, handling scanned pages), name them to lift specificity above a single action.

DimensionReasoningScore

Specificity

Names the domain (PDFs) and one concrete action ('extract text') but offers no other capabilities — the second clause ('when standard file reading fails') describes a trigger, not an action.

3 / 5

Completeness

The 'what' is clear (extract text from PDFs) but the 'when' is only weakly implied via 'when standard file reading fails'; there is no explicit 'Use when...' clause, which caps completeness at 3 per the guidelines.

3 / 5

Trigger Term Quality

'PDFs' and 'pdftotext' appear but the natural user-facing phrases (e.g. 'PDF files', '.pdf', 'read a PDF') are absent; 'standard file reading fails' is a condition, not a keyword users say.

3 / 5

Distinctiveness Conflict Risk

Tied to a specific tool (pdftotext) and a specific fallback scenario, giving it a clear niche; minor overlap risk with general PDF skills, but the fallback framing distinguishes it.

4 / 5

Total

13

/

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.

Validation — 15 / 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
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.