CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

azure-ai-contentsafety-py

Azure AI Content Safety SDK for Python. Use for detecting harmful content in text and images with multi-severity classification.

76

1.07x
Quality

71%

Does it follow best practices?

Impact

100%

1.07x

Average score across 3 eval scenarios

SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./plugins/AI-Agents-Safe-Coding-Skills-claude/skills/azure-ai-contentsafety-py/SKILL.md

The canonical home for this skill is azure-ai-contentsafety-py in sickn33/agentic-awesome-skills

SKILL.md
Quality
Evals
Security

Quality

Content

68%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 body delivers strong, concrete SDK guidance with good organization and SDK-specific reference material, but it is held back by undefined variables in several code snippets, absent validation/error-handling steps, and a filler 'When to Use' section. It is a solid reference-style skill that needs tightening to reach copy-paste quality.

Suggestions

Fix the undefined 'endpoint' and 'key' variables in the Analyze Text, Analyze Image, and Blocklist snippets by reusing the os.environ-based client construction shown in the Authentication section.

Remove or replace the filler 'When to Use' section with genuinely useful trigger guidance, and remove the duplicated import boilerplate across snippets.

Add basic error handling or response validation guidance (e.g., checking severity against a threshold before acting, handling API errors) to give the workflows explicit checkpoints.

DimensionReasoningScore

Conciseness

The body is mostly lean, executable code plus SDK-specific reference tables (Harm Categories, Severity Scale) that Claude would not know; minor trimmable filler remains, such as the tautological 'When to Use' section ('This skill is applicable to execute the workflow or actions described in the overview') and repeated import blocks across snippets.

4 / 5

Actionability

Concrete, mostly executable code for every operation (auth, analyze text/image, blocklist CRUD, severity modes), but several snippets use undefined variables (e.g. 'ContentSafetyClient(endpoint, AzureKeyCredential(key))' where 'endpoint' and 'key' are never defined), leaving minor gaps from copy-paste ready.

4 / 5

Workflow Clarity

The blocklist workflow (create blocklist -> add items -> analyze with blocklist) is sequenced across sections, but no validation checkpoints or error handling appear anywhere, and the multi-step blocklist flow is never explicitly presented as a sequence.

3 / 5

Progressive Disclosure

A well-organized single-file skill with clear section headers and no nested or buried references; blocklist management detail could arguably be split into a reference file, which keeps it at anchor 4 rather than 5.

4 / 5

Total

15

/

20

Passed

Description

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

The description clearly identifies the Azure AI Content Safety niche and includes an explicit 'Use for' trigger, but it undersells the skill's capabilities (blocklists, severity configuration) and lacks the natural vocabulary users would employ when asking for content moderation. Trigger guidance is present yet generic.

Suggestions

Expand the 'what' to cover the skill's main capabilities, e.g. 'Analyze text and images for harmful content across four severity levels, and manage custom text blocklists. Use when the user asks to moderate, flag, or filter harmful, toxic, or offensive content in user- or AI-generated text or images.'

Add natural trigger synonyms such as 'content moderation', 'toxicity detection', 'offensive content', and 'flag harmful content' so users' phrasing matches the description.

Make the 'when' clause concrete by naming typical use cases (e.g., pre-moderating AI outputs, filtering user-generated content) instead of the generic 'Use for detecting harmful content'.

DimensionReasoningScore

Specificity

Names the domain ('Azure AI Content Safety SDK for Python') and 1-2 concrete actions ('detecting harmful content in text and images with multi-severity classification'), but omits blocklist management and other capabilities covered in the body, so it is not comprehensive.

3 / 5

Completeness

Has a clear 'what' plus an explicit trigger clause ('Use for detecting harmful content in text and images'), but the 'when' could be more specific with concrete trigger phrases; matches anchor 4.

4 / 5

Trigger Term Quality

Includes relevant keywords like 'harmful content' and 'text and images', but misses common natural variations users would say such as 'content moderation', 'toxicity', 'flagging', or 'offensive content'.

3 / 5

Distinctiveness Conflict Risk

The Azure-specific SDK naming gives it a clear niche, but the generic 'detecting harmful content' trigger phrase creates minor overlap risk with other content-moderation skills.

4 / 5

Total

14

/

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.

Validation — 15 / 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

administrakt0r/AI-Agents-Safe-Coding-Skills

Path

plugins/AI-Agents-Safe-Coding-Skills-claude/skills/azure-ai-contentsafety-py/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.