CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

extracting-clinical-entities

Run clinical and biomedical named-entity recognition on medical text with OpenMed's analyze_text. Use when the user wants to extract diseases, drugs, anatomy, genes, or other biomedical entities from notes; needs NER output as dict/json/html/csv; wants to filter by confidence, group entities, toggle sentence detection, or save spans to JSONL; or wants the openmed analyze CLI. Pairs with loading-openmed-models and choosing-openmed-models, and runs after deidentifying-clinical-text in a privacy-first pipeline.

72

Quality

90%

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

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.

Strong, highly actionable content with executable examples throughout and no padding, brought down by the absence of validation steps in its batch workflows (capping workflow clarity at 3) and minor verbosity/re organization gaps. Moving reference material out of SKILL.md and adding simple result-verification to the batch example would lift it further.

Suggestions

Add a lightweight validation step to the JSONL batch example (e.g., skip or flag notes where result.entities is empty, or verify the written file line count) so the batch workflow includes an explicit checkpoint.

Move the CLI flag enumeration, edge-case details, and standards links into a references/ file, keeping SKILL.md as a lean overview with clearly signaled one-level-deep pointers.

Delete the second Output-formats code block (it restates what the format table already specifies) or merge it into the quick start to remove the redundancy flagged in conciseness.

DimensionReasoningScore

Conciseness

Overall lean and free of concept tutorials, but two minor instances of trimmable content: the second Output-formats code block largely duplicates the format table's information, and the 'Standards & references' link to Hugging Face's generic token-classification guide covers a concept Claude already knows.

4 / 5

Actionability

Every section is copy-paste executable: quick start with a runnable example, format examples, the full parameter signature with defaults, a complete JSONL batch writer, CLI commands with a flag list, and a concrete deid-to-NER hand-off snippet.

5 / 5

Workflow Clarity

The single-call core workflow is unambiguous and well-sequenced (when to use → install → quick start → parameters → outputs → CLI → hand-offs), but the batch operations (the JSONL loop over multiple notes and the process_batch hand-off) include no validation or verification steps. The rubric's batch-operation cap therefore limits workflow clarity to 3 despite the otherwise clear sequence.

3 / 5

Progressive Disclosure

A single well-sectioned SKILL.md with clearly named sibling-skill references and no nested or dead references. However, at ~190 lines it exceeds the simple-skill exception, and content like the CLI flag enumeration, the edge-case list, and the standards links could live in a references/ file to keep the overview leaner.

4 / 5

Total

16

/

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.

An exemplary description: comprehensive concrete actions, explicit 'Use when' triggers with synonyms, clear third-person what/when coverage, and strong distinctiveness via named sibling skills and the specific API. No fluff or over-claims despite its length.

DimensionReasoningScore

Specificity

The description lists multiple concrete actions — 'Run clinical and biomedical named-entity recognition on medical text with OpenMed's analyze_text', 'extract diseases, drugs, anatomy, genes', 'filter by confidence, group entities, toggle sentence detection, or save spans to JSONL' — comprehensively covering the skill's capabilities.

5 / 5

Completeness

It explicitly answers 'what' ('Run clinical and biomedical named-entity recognition on medical text with OpenMed's analyze_text') and 'when' ('Use when the user wants to extract...; needs NER output...; wants to filter...; or wants the openmed analyze CLI') with concrete trigger phrases.

5 / 5

Trigger Term Quality

Natural terms users would say appear with synonyms and format extensions: 'medical text', 'clinical', 'biomedical entities', 'notes', 'NER'/'named-entity recognition', 'dict/json/html/csv', 'JSONL', and 'the openmed analyze CLI'. No common natural phrasing is obviously missing.

5 / 5

Distinctiveness Conflict Risk

A clear niche (biomedical NER via a specific API) with named sibling skills ('Pairs with loading-openmed-models and choosing-openmed-models') and pipeline position, minimizing overlap risk. Uses third-person voice ('Run...', 'Pairs with...'), so no voice penalty.

5 / 5

Total

20

/

20

Passed

Validation

100%

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

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

maziyarpanahi/openmed

Path

skills/extracting-clinical-entities/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.