CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

natural-language

Tokenize, tag, and analyze natural language text using Apple's NaturalLanguage framework and translate between languages with the Translation framework. Use when adding language identification, sentiment analysis, named entity recognition, part-of-speech tagging, text embeddings, or in-app translation to iOS/macOS/visionOS apps.

Quality

84%

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

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

An exemplarily lean, well-structured routing skill body with excellent progressive disclosure and a useful review checklist. Its main gap is actionability: the body offers class names and routing but no executable code or concrete usage patterns, relying wholly on the reference files for how-to detail.

Suggestions

Add one short copy-paste-ready snippet per framework (e.g. an NLTagger sentiment call and a .translationPresentation sheet) directly in the body so the most common cases are executable without opening a reference file.

Add a minimal inline example of the LanguageAvailability.status() check flow in the Translation Availability section, since the checklist requires it but the body never shows it.

State the boundary disambiguation triggers (e.g. 'OCR -> vision-framework') as user-facing keywords in the description or early body, not only as skill names, to reduce mis-routing overlap.

DimensionReasoningScore

Conciseness

The ~80-line body is lean throughout: a capability matrix, terse bullets, and gotchas with zero explanation of concepts Claude already knows; the only duplication (sentiment range in both the matrix and Common Mistakes) serves distinct purposes, and version numbers are availability floors rather than rotting temporal conditionals.

5 / 5

Actionability

The body names specific classes and schemes (NLTagger (.sentimentScore), .translationPresentation(isPresented:text:)) but contains no code, commands, or usage snippets — execution details are deferred entirely to the reference files, so it does not reach the 'concrete code or commands' anchor.

3 / 5

Workflow Clarity

Route by Task gives unambiguous task-to-reference routing and the Review Checklist supplies verification checkpoints (availability guards, LanguageAvailability.status()), but there are no error-recovery feedback loops for the 5 anchor.

4 / 5

Progressive Disclosure

A clear overview with two verified one-level-deep references (references/nlp-patterns.md, references/translation-patterns.md, both existing with the cited anchors), signaled both by task in Route by Task and in a References section with external doc links.

5 / 5

Total

17

/

20

Passed

Description

83%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 description with explicit what/when structure, concrete trigger phrases, and clear platform/framework scoping. Keyword coverage is good but misses common synonyms like 'NLP', and distinctiveness leans on framework names rather than boundary statements.

DimensionReasoningScore

Specificity

Concrete verbs ('Tokenize, tag, and analyze', 'translate') plus an enumerated capability list, but 'analyze' is generic and two frameworks are compressed into two sentences, leaving minor coverage gaps versus the comprehensive anchor.

4 / 5

Completeness

Explicitly answers both 'what' (tokenize/tag/analyze with NaturalLanguage, translate with Translation) and 'when' ('Use when adding language identification, sentiment analysis... to iOS/macOS/visionOS apps') with concrete trigger phrases.

5 / 5

Trigger Term Quality

Natural terms like 'sentiment analysis', 'named entity recognition', 'part-of-speech tagging', 'text embeddings', and 'in-app translation' are present, but common variations such as 'NLP' and 'text classification' are missing.

4 / 5

Distinctiveness Conflict Risk

Scoped to Apple's NaturalLanguage/Translation frameworks and specific platforms, giving a clear niche; minor overlap risk remains with closely related skills (on-device AI, localization) whose disambiguation lives in the body rather than the description.

4 / 5

Total

17

/

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

thienqo/ios-skills

Path

skills/natural-language/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.