CtrlK
BlogDocsLog inGet started
Tessl Logo

extracting-pii-entities

Detect PHI/PII spans in clinical text with OpenMed's extract_pii without altering the text. Use when the user wants to find names, dates, MRNs, phone numbers, addresses, SSNs, or other identifiers and get their offsets and labels (not redact them), inspect what would be removed before de-identifying, route spans to a custom redactor, normalize labels to a canonical taxonomy, or filter by confidence and language. Covers extract_pii, the PIIEntity fields, CANONICAL_LABELS / normalize_label, and how it differs from deidentify. Pairs before reidentifying-text and deidentifying-clinical-text.

74

Quality

91%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

High

Do not use without reviewing

SKILL.md
Quality
Evals
Security

Quality

Content

82%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 well-structured, executable skill body with concise getting-started content, real code examples, and a strong edge-cases section. It avoids over-explaining basics and provides clear hand-off guidance to related skills, with only minor tightening opportunities.

Suggestions

Dedupe the `.confidence`/`.score` note between the field listing and the edge-cases section to tighten conciseness.

Consider moving the canonical-label taxonomy details and offset-redactor recipe into a reference file so the overview stays leaner.

Add a short validate/verify step (e.g., assert `canon in CANONICAL_LABELS or canon == 'OTHER'`) into the redaction workflow to give it an explicit checkpoint.

DimensionReasoningScore

Conciseness

Lean and largely free of padding — it does not explain basic concepts and every section earns its place. The PIIEntity field listing and the edge-cases list have slight overlap (the .confidence note appears both inline and in gotchas) that could be tightened slightly.

4 / 5

Actionability

Multiple copy-paste-ready, fully executable code blocks cover the common cases (quick start, normalization, offset-based redaction) with real identifiers, signatures, and concrete parameter guidance.

5 / 5

Workflow Clarity

The single-purpose detection task is clearly sequenced (detect -> inspect/route -> hand off to deidentify) with threshold trade-off guidance and an explicit edge-cases checklist. No validate->fix->retry loop is present, but detection is non-destructive and non-batch, so the destructive/batch cap does not apply.

4 / 5

Progressive Disclosure

Well-organized sections with no nested references and a clear standards/references section. No bundle files are present; the canonical-label and redactor recipes are kept inline at a reasonable length, though either could be split into a reference file to fully reach a 5.

4 / 5

Total

17

/

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, specific, third-person description that clearly states the capability, concrete trigger conditions, and how it differs from related skills. It answers what and when explicitly and uses natural user vocabulary with identifier synonyms.

DimensionReasoningScore

Specificity

Names the concrete capability ("Detect PHI/PII spans in clinical text with OpenMed's extract_pii without altering the text") and enumerates specific supporting actions (get offsets and labels, inspect before de-identifying, route spans to a custom redactor, normalize labels, filter by confidence and language), giving comprehensive coverage.

5 / 5

Completeness

Explicitly answers both what ("Detect PHI/PII spans... get their offsets and labels") and when ("Use when the user wants to find names, dates, MRNs... or filter by confidence and language") with concrete trigger phrases.

5 / 5

Trigger Term Quality

Covers natural trigger terms users would say ("find names, dates, MRNs, phone numbers, addresses, SSNs, or other identifiers") plus task verbs (audit, route, normalize, filter) and concrete identifiers as synonyms.

5 / 5

Distinctiveness Conflict Risk

Clear niche with explicit disambiguation ("not redact them", "how it differs from deidentify") and pairing cues ("Pairs before reidentifying-text and deidentifying-clinical-text") minimizing conflict risk.

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.

Validation16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
maziyarpanahi/openmed
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.