CtrlK
BlogDocsLog inGet started
Tessl Logo

pdf-apiio

PDF-API.io integration. Manage data, records, and automate workflows. Use when the user wants to interact with PDF-API.io data.

46

Quality

48%

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 ./skills/pdf-apiio/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

56%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 body provides concrete, executable Membrane CLI guidance with a reasonably sequenced connection workflow and state-based checkpoints. Its main weakness is a large keyword-stuffed bullet list that pads the file without adding actionable value, and the absence of any worked PDF-API.io action examples.

Suggestions

Delete or move the ~85-item bullet keyword list (Conversion…Software) out of the overview; it is padding that hurts token efficiency without aiding execution.

Add one or two concrete worked examples of running an actual PDF-API.io action (with a real actionId and --input JSON) so the guidance is copy-paste ready.

Replace the 'check the error field' instruction for CONFIGURATION_ERROR/SETUP_FAILED with an explicit recovery step (e.g. re-run connection ensure, surface error to user).

DimensionReasoningScore

Conciseness

The ~85-item bullet list (Conversion through Software/Application) is heavy keyword padding unrelated to executing the skill, and the intro lightly over-explains what PDF-API.io is, matching score 2's noticeably verbose/padded anchor; it avoids a 1 only because the CLI sections are genuinely useful.

2 / 5

Actionability

Concrete, runnable commands are given throughout (npm install -g @membranehq/cli@latest, membrane login, connection ensure, action list/run, request) plus a flags table, fitting score 4; it does not reach 5 because no concrete PDF-API.io actionIds or worked input examples are shown for the common cases.

4 / 5

Workflow Clarity

The connection flow is clearly sequenced (install → login → connection ensure → poll/wait → branch on state → search → run) with state checkpoints (READY/BUILDING/CLIENT_ACTION_REQUIRED/CONFIGURATION_ERROR) and a re-poll feedback loop, matching score 4; it falls short of 5 because some checkpoints (e.g. what to do on CONFIGURATION_ERROR beyond 'check the error field') are left implicit.

4 / 5

Progressive Disclosure

No bundle files exist and the skill is a single ~235-line file with reasonable section headers, but the large keyword list is inlined content that should not be in the overview at all, matching score 3's 'content that should be separate is inline'; it does not reach 4 because that inlined block is poorly organized noise.

3 / 5

Total

13

/

20

Passed

Description

41%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 correctly uses third person and includes an explicit 'Use when' trigger, but its capability list is generic ('Manage data, records, and automate workflows') rather than naming concrete PDF actions. Naming a specific service keeps it fairly distinct despite the vague verbs.

Suggestions

Replace 'Manage data, records, and automate workflows' with concrete PDF-API.io actions (e.g. 'Generate, convert, merge, split, watermark, and OCR PDF documents').

Add natural user trigger phrases and file extensions beyond the brand name, e.g. 'Use when the user wants to generate, convert, merge, or watermark PDFs via PDF-API.io'.

Tie the 'Use when' clause to specific tasks (PDF generation, conversion, OCR) rather than the generic 'interact with data'.

DimensionReasoningScore

Specificity

It names the domain (PDF-API.io) but the actions are generic — 'Manage data, records, and automate workflows' lists no concrete PDF operations, matching the score-2 anchor of minimal/generic actions; it does not reach the 1-2 concrete actions needed for a 3.

2 / 5

Completeness

It has an explicit 'Use when the user wants to interact with PDF-API.io data' clause (so it is not capped for a missing trigger) and a 'what', but the 'what' is vague ('Manage data, records, and automate workflows'), landing on score 3 rather than 4 where both would be concrete.

3 / 5

Trigger Term Quality

The only natural keyword is the brand 'PDF-API.io'; the surrounding verbs ('manage data, records, automate workflows') are generic and miss the natural phrases users say, fitting score 2 rather than the 3 which requires relevant domain keywords.

2 / 5

Distinctiveness Conflict Risk

Naming a specific service (PDF-API.io) gives it a clear niche with low conflict risk, matching score 4; it does not reach 5 because the generic verb list ('manage data, records, automate workflows') could overlap with other integration/data skills.

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.

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
membranedev/application-skills
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.