CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

pdf-official

This guide covers essential PDF processing operations using Python libraries and command-line tools. For advanced features, JavaScript libraries, and detailed examples, see reference.md. If you need to fill out a PDF form, read forms.md and follow its instructions.

Quality

62%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./plugins/antigravity-bundle-documents-presentations/skills/pdf-official/SKILL.md

The canonical home for this skill is pdf-official in administrakt0r/AI-Agents-Safe-Coding-Skills

SKILL.md
Quality
Evals
Security

Quality

Content

68%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 strongly actionable, code-dense reference whose examples are executable and well-organized by task, but it has no validation checkpoints for its batch operations and its progressive disclosure is broken: every reference pointer (reference.md, forms.md) targets a nonexistent file while the nine real scripts in scripts/ are never surfaced. Two filler sections (duplicated Overview, vacuous 'When to Use') slightly bloat it.

Suggestions

Fix the reference graph: either create reference.md and forms.md as real bundle files or remove all pointers to them — currently every 'see reference.md/forms.md' mention is a dead link.

Surface the existing scripts/ directory in the body (e.g., a 'Form filling scripts' section listing fill_fillable_fields.py, extract_form_field_info.py, check_bounding_boxes.py) so the bundle's actual deep content is discoverable.

Add verification steps after batch operations (e.g., confirm the split produced len(reader.pages) files, or re-open the merged PDF to check page count) to lift workflow clarity.

Delete the 'When to Use' filler section and the Overview paragraph that duplicates the description verbatim.

DimensionReasoningScore

Conciseness

The body is dominated by lean, executable code with almost no conceptual padding (no 'what is a PDF' prose), matching anchor 4 ('Efficient; minor instances of over-explanation that could be trimmed'). Not 5 because of genuine waste: the Overview duplicates the frontmatter description verbatim, and the 'When to Use' section ('This skill is applicable to execute the workflow or actions described in the overview') is pure filler.

4 / 5

Actionability

Every section is copy-paste-ready, complete code or shell commands (pypdf merge/split/rotate, pdfplumber tables-to-Excel, reportlab, qpdf, pdftotext, OCR pipeline) with correct imports and outputs. This matches anchor 5 ('Fully executable; copy-paste ready code or commands; specific examples cover the common cases').

5 / 5

Workflow Clarity

Each recipe is a clear, unambiguous sequence, but the skill includes batch operations (splitting a PDF into one file per page, bulk table extraction, watermarking every page) with zero validation or verification steps — the rubric caps workflow clarity at 3 in that case. The Quick Reference table gives tool-selection guidance, but no recipe tells the reader to verify output (e.g., page counts of merged/split files), so it cannot reach 4.

3 / 5

Progressive Disclosure

The body repeatedly points to 'reference.md' and 'forms.md' ('For advanced features... see reference.md', 'read forms.md and follow its instructions', plus four more mentions in Next Steps and the table), but neither file exists in the bundle — there is no references/ directory at all. Meanwhile the bundle's actual scripts/ directory (fill_fillable_fields.py, extract_form_field_info.py, etc.) is never mentioned in the body, so the real deep content is undiscoverable and the signaled references are dead. This matches anchor 2 ('Minimal structure; content that clearly belongs in separate files is inlined; or references are buried').

2 / 5

Total

14

/

20

Passed

Description

40%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 names the PDF domain and includes one concrete trigger (form filling) but is dominated by generic phrasing ('essential PDF processing operations') and file-routing instructions rather than capability or usage statements. Its most significant defect is the total absence of a 'Use when...' clause, which caps completeness at a low score.

Suggestions

Add an explicit 'Use when...' clause (e.g., 'Use when working with PDF files or when the user mentions PDFs, forms, merging, or text extraction').

Replace 'covers essential PDF processing operations' with concrete action verbs: extract text and tables, merge/split documents, add watermarks, OCR scanned pages.

Drop the reference.md routing sentence from the description and keep only capability and trigger content.

DimensionReasoningScore

Specificity

The only action phrases are 'covers essential PDF processing operations' and 'fill out a PDF form' — the domain (PDF processing) is named but the actions are generic ('processing operations') with no concrete verbs like extract, merge, or split. This matches anchor 2 ('Names the domain but actions are minimal or generic') and falls below anchor 3, which requires 1-2 genuinely concrete actions.

2 / 5

Completeness

The 'what' is vague ('essential PDF processing operations') and there is no 'Use when...' clause or equivalent trigger guidance anywhere — the remaining sentences only route to reference.md and forms.md. This matches anchor 2 ('Has a vague what and no when'), and the missing 'Use when' clause caps completeness at 3 regardless.

2 / 5

Trigger Term Quality

Natural terms present: 'PDF', 'PDF form', 'fill out a PDF form'. However it misses common variations users would say — no 'extract text', 'merge', 'split', or '.pdf' extension — matching anchor 3 ('Some relevant keywords but missing common variations or synonyms'). Not 4, since the coverage is thin (essentially one trigger phrase family around forms).

3 / 5

Distinctiveness Conflict Risk

The PDF-processing niche plus explicit form-filling mention makes it mostly distinct with only minor overlap risk against other document skills, matching anchor 4. Not 5, because without a 'Use when' clause or enumerated capabilities it is less sharply differentiated than the anchor-5 example.

4 / 5

Total

11

/

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

administrakt0r/AI-Agents-Safe-Coding-Skills

Path

plugins/antigravity-bundle-documents-presentations/skills/pdf-official/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.