CtrlK
BlogDocsLog inGet started
Tessl Logo

instructor

Extract structured data from LLM responses with Pydantic validation, retry failed extractions automatically, parse complex JSON with type safety, and stream partial results with Instructor - battle-tested structured output library

61

Quality

73%

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 ./16-prompt-engineering/instructor/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

65%

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

Highly actionable with abundant executable code, but the body is verbose, duplicates the reference files, and explains concepts Claude already knows. Workflow clarity is decent for retries but lacks verification checkpoints for batch operations.

Suggestions

Offload the validation, provider, and example detail from SKILL.md into the existing reference files (which already duplicate it), leaving a lean overview with clearly signaled links.

Remove the "Benefits" and "How it works" prose that explains concepts Claude already knows (type safety, IDE autocomplete, retry mechanics).

Add a validation/verification checkpoint to the batch-processing pattern (Pattern 5) so the feedback loop is explicit for batch operations.

DimensionReasoningScore

Conciseness

The ~730-line body is far from lean: "Benefits" lists explain type safety and IDE autocomplete, a "How it works" list explains retry mechanics, and validation/provider/example content is duplicated verbatim with the reference files; not a 1 because the bulk is executable Instructor-specific code rather than generic concept explanation, and not a 3 because of the verbosity and known-concept padding.

2 / 3

Actionability

Examples are complete and copy-paste ready with imports, Pydantic models, and full client calls (e.g. the Basic Example and streaming examples), matching the fully-executable anchor; not a 2 because the code is concrete rather than pseudocode.

3 / 3

Workflow Clarity

The retry flow is sequenced ("1. LLM generates output ... 5. Repeats up to max_retries") and error handling shows a try/except, but batch processing (Pattern 5) has no validation/verification feedback loop, capping the score at 2 per the batch-operations guideline; not a 1 because sequences are present, not a 3 because batch checkpoints are missing.

2 / 3

Progressive Disclosure

References are one level deep and clearly signaled in "See Also" (validation.md, providers.md, examples.md), but content that should live only in those references — validators, provider config, extraction patterns — is duplicated inline in SKILL.md, matching the "content that should be separate is inline" anchor; not a 3 because the split is not clean.

2 / 3

Total

9

/

12

Passed

Description

82%

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 specific, well-targeted description with good trigger terms and a clear niche, held back only by the absence of an explicit "Use when..." trigger clause. A minor marketing tagline ("battle-tested") adds slight fluff.

Suggestions

Add an explicit "Use when..." clause, e.g. "Use when extracting structured data from LLM responses, validating outputs against a schema, or needing automatic retry on validation failure."

Trim the "battle-tested structured output library" tagline, since buzzwords do not aid trigger matching.

DimensionReasoningScore

Specificity

Lists several concrete actions — "Extract structured data from LLM responses", "retry failed extractions automatically", "parse complex JSON with type safety", "stream partial results" — matching the multiple-specific-actions anchor; not a 2 because the action list is comprehensive rather than partial.

3 / 3

Completeness

The "what" is explicit but there is no "Use when..." clause or equivalent trigger guidance, so per the judging guideline completeness is capped at 2; it is not a 1 because the capability description itself is clear, and not a 3 because the "when" is only implied.

2 / 3

Trigger Term Quality

Natural terms for the developer audience are well covered ("structured data", "Pydantic validation", "JSON", "stream partial results", "structured output library", "Instructor"), matching the good-coverage anchor; it is not a 2 since common variations are largely present rather than missing.

3 / 3

Distinctiveness Conflict Risk

The named library ("Instructor") plus "structured output library" / "Pydantic validation" carve a clear niche unlikely to trigger rival skills; not a 2 because the domain is distinctly scoped rather than broadly overlapping.

3 / 3

Total

11

/

12

Passed

Validation

87%

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

Validation14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

SKILL.md is long (741 lines); consider splitting into references/ and linking

Warning

frontmatter_unknown_keys

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

Warning

Total

14

/

16

Passed

Repository
Orchestra-Research/AI-Research-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.