CtrlK
BlogDocsLog inGet started
Tessl Logo

azure-ai-contentsafety-ts

Analyze text and images for harmful content with customizable blocklists.

46

Quality

48%

Does it follow best practices?

Impact

No eval scenarios have been run

SecuritybySnyk

Advisory

Suggest reviewing before use

Optimize this skill with Tessl

npx tessl skill review --optimize ./skills/antigravity-azure-ai-contentsafety-ts/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Discovery

32%

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 conveys the core purpose of content moderation with blocklists but lacks explicit trigger guidance ('Use when...'), which is a significant gap for skill selection. It would benefit from more specific action verbs, natural user trigger terms, and a clear 'when to use' clause to help Claude distinguish it from other analysis-oriented skills.

Suggestions

Add a 'Use when...' clause with trigger terms like 'content moderation', 'filter harmful content', 'NSFW detection', 'profanity filter', or 'content safety'.

List more specific concrete actions such as 'flag toxic language, detect NSFW images, categorize content violations, apply custom blocklists and allowlists'.

Include common user-facing synonyms and file/content types to improve trigger term coverage, e.g., 'moderation', 'toxic', 'offensive', 'inappropriate content'.

DimensionReasoningScore

Specificity

Names the domain (content moderation) and two actions (analyze text/images, customizable blocklists), but doesn't list multiple specific concrete actions like flagging, filtering, reporting, or categorizing harmful content types.

2 / 3

Completeness

Describes what the skill does but completely lacks a 'Use when...' clause or any explicit trigger guidance for when Claude should select this skill. Per rubric guidelines, a missing 'Use when...' clause caps completeness at 2, and since the 'when' is entirely absent, this scores a 1.

1 / 3

Trigger Term Quality

Includes some relevant keywords like 'harmful content', 'blocklists', 'text', and 'images', but misses common user terms like 'moderation', 'content safety', 'NSFW', 'filter', 'profanity', or 'toxic content'.

2 / 3

Distinctiveness Conflict Risk

The combination of 'harmful content' analysis with 'customizable blocklists' is somewhat specific, but 'analyze text and images' is broad enough to overlap with general text/image analysis skills.

2 / 3

Total

7

/

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 code example is complete and executable with proper imports and error handling. The main weaknesses are moderate verbosity (boilerplate sections, explanatory tables Claude doesn't need) and the monolithic structure that could benefit from splitting reference material into separate files. The blocklist management workflow would benefit from explicit sequencing as a connected multi-step process.

Suggestions

Remove the boilerplate 'When to Use' and 'Limitations' sections, and trim the 'Best Practices' to only non-obvious, SDK-specific guidance.

Add explicit workflow sequencing for blocklist management (e.g., numbered steps: create → add items → verify → analyze with blocklist) with validation checkpoints.

Extract the API Endpoints table, Key Types, and Harm Categories/Severity Levels into a separate REFERENCE.md to reduce the main file size and improve progressive disclosure.

DimensionReasoningScore

Conciseness

The skill is mostly efficient with executable code examples, but includes some unnecessary content like the 'Best Practices' section with generic advice Claude already knows (e.g., 'handle edge cases'), the boilerplate 'When to Use' and 'Limitations' sections, and the Harm Categories description table which adds little actionable value. The content could be tightened by ~20-30%.

2 / 3

Actionability

All code examples are fully executable TypeScript with proper imports, concrete API paths, and copy-paste ready patterns. The authentication setup, text/image analysis, blocklist management, and the moderation helper function are all complete and specific.

3 / 3

Workflow Clarity

Individual operations are clear, but the blocklist management workflow (create → add items → analyze with blocklist) lacks explicit sequencing as a connected workflow. Error handling is present via isUnexpected() checks, but there are no validation checkpoints or feedback loops for multi-step operations like blocklist setup.

2 / 3

Progressive Disclosure

The content is well-structured with clear section headers and a logical progression from setup to basic usage to advanced features. However, at ~230 lines it's a monolithic file with no references to supporting documents; the API reference table, key types, and the moderation helper could be split into separate files for better organization.

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.

Validation10 / 11 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

10

/

11

Passed

Repository
boisenoise/skills-collections
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.