Azure AI Text Analytics SDK for sentiment analysis, entity recognition, key phrases, language detection, PII, and healthcare NLP. Use for natural language processing on text.
55
62%
Does it follow best practices?
Impact
—
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./skills/azure-ai-textanalytics-py/SKILL.mdQuality
Discovery
60%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
The description excels at listing specific capabilities (sentiment analysis, entity recognition, PII, etc.) but falls short on trigger guidance. The 'Use for natural language processing on text' clause is too vague to help Claude distinguish this skill from other NLP tools. Adding more specific trigger scenarios and user-facing keywords would significantly improve skill selection accuracy.
Suggestions
Expand the 'Use for' clause with specific trigger scenarios, e.g., 'Use when the user asks about Azure Text Analytics, Azure Cognitive Services for text, or needs SDK-based sentiment analysis, entity extraction, PII redaction, or healthcare text processing.'
Add common user phrasings and variations like 'analyze sentiment', 'detect language', 'extract key phrases', 'redact PII', 'Azure Cognitive Services', '@azure/ai-text-analytics'.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists multiple specific concrete actions: sentiment analysis, entity recognition, key phrases, language detection, PII detection, and healthcare NLP. These are clearly defined capabilities. | 3 / 3 |
Completeness | The 'what' is well covered with specific capabilities, but the 'when' clause ('Use for natural language processing on text') is overly broad and doesn't provide explicit trigger scenarios. It doesn't specify when to choose this skill over other NLP tools or mention user-facing trigger phrases. | 2 / 3 |
Trigger Term Quality | Includes good technical terms like 'sentiment analysis', 'entity recognition', 'PII', 'language detection', but misses common user phrasings like 'detect sentiment', 'extract entities', 'analyze text', 'Azure Cognitive Services', or 'Text Analytics API'. The 'Use for' clause is too generic ('natural language processing on text'). | 2 / 3 |
Distinctiveness Conflict Risk | Mentioning 'Azure AI Text Analytics SDK' provides some distinctiveness, but the generic 'Use for natural language processing on text' trigger could easily conflict with other NLP-related skills. It could overlap with any general text analysis or NLP skill. | 2 / 3 |
Total | 9 / 12 Passed |
Implementation
64%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This is a solid API reference skill with excellent actionability — every feature has complete, executable code examples. Its main weaknesses are that it's somewhat long for a single file without progressive disclosure to supporting documents, and it lacks validation/error-recovery guidance for batch and long-running operations. Minor verbosity from boilerplate sections and redundant tables slightly reduces token efficiency.
Suggestions
Add error handling and retry guidance for long-running operations (begin_analyze_healthcare_entities, begin_analyze_actions), including how to check poller status and handle partial failures.
Consider splitting detailed per-operation code examples into a separate REFERENCE.md or EXAMPLES.md, keeping SKILL.md as a concise overview with the authentication setup and Available Operations table.
Remove the generic 'When to Use' and 'Limitations' boilerplate sections — they add no SDK-specific value and waste tokens.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The content is mostly efficient with executable examples, but includes some unnecessary elements like the 'When to Use' and 'Limitations' boilerplate sections that add no value, and the Client Types table is redundant (only one client). The 'Best Practices' section is reasonably concise but some points are things Claude already knows (e.g., use context manager). | 2 / 3 |
Actionability | Every major feature has fully executable, copy-paste-ready Python code with realistic example inputs and output handling. Authentication setup, environment variables, and all API methods are demonstrated with concrete, complete code blocks. | 3 / 3 |
Workflow Clarity | The skill is primarily a reference/cookbook rather than a multi-step workflow, so sequencing needs are modest. However, for batch operations (begin_analyze_actions, begin_analyze_healthcare_entities) there are no validation checkpoints, error recovery guidance, or feedback loops for handling partial failures in batch results. | 2 / 3 |
Progressive Disclosure | The content is well-structured with clear section headers and a useful reference table, but it's a long monolithic file (~180 lines of content) with no references to external files. The detailed code examples for each operation could be split into separate reference files with the SKILL.md serving as a concise overview. | 2 / 3 |
Total | 9 / 12 Passed |
Validation
90%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 10 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 10 / 11 Passed | |
76aea27
Table of Contents
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.