CtrlK
BlogDocsLog inGet started
Tessl Logo

image-ocr

Extract text from images with Tesseract OCR; use it when you need to recognize text from PNG/JPEG/TIFF/BMP images, select a language model, or run OCR via natural-language requests (e.g., "Interpret the image at C:\path\image.png").

60

Quality

71%

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 ./scientific-skills/Other/image-ocr/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

42%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 OCR-specific core (When to Use, Key Features, Dependencies, Example Usage, Implementation Details) is solid, but the body is bloated with generic boilerplate and contains accuracy errors — a config path mismatch and fabricated --help/output-file behaviors — that hurt executability. The bundled troubleshooting reference is also not surfaced.

Suggestions

Remove the generic template sections (When Not to Use, Required Inputs, Recommended Workflow, Deterministic Output Rules, Output Contract, Validation and Safety Rules, Failure Handling, Completion Checklist, Scope Reminder) and keep only OCR-specific guidance to cut token bloat.

Fix the config path mismatch: image_ocr.py reads from artifacts/ocr_config.json (CONFIG_PATH), but the docs and the bundled file use scripts/ocr_config.json — align the documented path, the bundled file location, and the script so users' edits actually take effect.

Correct the fabricated validation/output claims: the script has no --help flag and prints extracted text to stdout (it does not write image_ocr_result.md or emit a validation summary), so rewrite Quick Validation and Output Contract to match real script behavior, or add that behavior to the script.

Link references/ocr-troubleshooting.md from the body (e.g., under a Troubleshooting section) so the bundled reference is discoverable instead of orphaned.

DimensionReasoningScore

Conciseness

Noticeably padded: roughly half the body is generic template boilerplate (When Not to Use, Required Inputs, Recommended Workflow, Deterministic Output Rules, Output Contract, Validation and Safety Rules, Failure Handling, Completion Checklist, Scope Reminder) that adds no OCR-specific knowledge Claude does not already have.

2 / 5

Actionability

Provides concrete install/run commands and JSON config examples, but a critical path mismatch undermines executability: the docs say to edit scripts/ocr_config.json while image_ocr.py reads from artifacts/ocr_config.json, so a user following the instructions would edit a file the script ignores.

3 / 5

Workflow Clarity

The Implementation Details execution flow is a clear, accurate sequence, but the Quick Validation and Output Contract sections describe behavior the script does not have (a --help flag and writing image_ocr_result.md / a validation summary), making the documented checkpoints misleading rather than genuinely verifiable.

3 / 5

Progressive Disclosure

Sections are headed and scripts/ files are referenced, but the bundled references/ocr-troubleshooting.md is never linked from the body (orphaned reference), and content that belongs in that reference is inlined as generic boilerplate.

3 / 5

Total

11

/

20

Passed

Description

100%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.

A strong, well-crafted description that concisely states the capability, names concrete actions and file formats, and provides explicit 'use when' trigger guidance with a natural example phrase. It cleanly satisfies all four dimensions.

DimensionReasoningScore

Specificity

Lists multiple concrete actions — 'Extract text from images', 'recognize text from PNG/JPEG/TIFF/BMP images', 'select a language model', 'run OCR via natural-language requests' — giving comprehensive coverage of the OCR capability space.

5 / 5

Completeness

Explicitly answers both 'what' ('Extract text from images with Tesseract OCR') and 'when' ('use it when you need to recognize text ...') with concrete trigger phrases, hitting the top anchor.

5 / 5

Trigger Term Quality

Covers natural terms and synonyms ('extract text', 'recognize text', 'OCR'), file extensions (PNG/JPEG/TIFF/BMP), and a concrete user phrase ('Interpret the image at ...'), matching the comprehensive-coverage anchor.

5 / 5

Distinctiveness Conflict Risk

The Tesseract OCR + image-format + language-model niche is clearly distinct with specific triggers and minimal overlap risk with other skills.

5 / 5

Total

20

/

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
aipoch/medical-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.