CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

azure-communication-sms-java

Send SMS messages with Azure Communication Services SMS Java SDK. Use when implementing SMS notifications, alerts, OTP delivery, bulk messaging, or delivery reports.

Quality

77%

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

Fix and improve this skill with Tessl

tessl review fix ./skills/azure-communication-sms-java/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

63%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 highly actionable, executable API skill with real error-handling and safety guidance, but it front-loads everything into one long SKILL.md with no progressive disclosure, and it carries boilerplate filler sections (Trigger Phrases, When to Use) plus a pinned SDK version that will age. Moving reference material out and cutting the filler would raise both conciseness and structure.

Suggestions

Move the SmsSendResult property table, Event Grid delivery-report payload details, and async operation examples into a references/ file, keeping SKILL.md as a lean quick-start overview with clearly signaled links.

Delete the 'Trigger Phrases' section (duplicates the frontmatter description) and the generic 'When to Use' filler, and note the SDK version as 'latest 1.x' or into an upgrade/deprecation note instead of pinning '1.2.0'.

Replace the comment-skeleton Event Grid webhook handler with a minimal executable parser example so the delivery-report workflow is fully actionable.

DimensionReasoningScore

Conciseness

The bulk of the body is lean, executable code with no conceptual re-explanation, but there is avoidable padding: the pinned version '1.2.0' is time-sensitive, and 'Trigger Phrases' duplicates the frontmatter description while 'When to Use' ('applicable to execute the workflow or actions described in the overview') is vague filler. This fits 'mostly efficient but could be tightened'; score 2 would require noticeably verbose concept explanation throughout, which is absent.

3 / 5

Actionability

Nearly every section gives copy-paste-ready Java (dependency XML, three auth variants, single/multi sends with options, response handling, async subscribe patterns, per-status error handling with concrete 400/429 branches). The Event Grid handler is a comment skeleton rather than executable code, which is the kind of minor gap the score-4 anchor describes; score 5 would require fully executable coverage of all cases.

4 / 5

Workflow Clarity

The section order gives an implicit create-client → send → check per-recipient success → reconcile delivery sequence, and validation is present rather than missing: per-recipient isSuccessful() checks, 429 retry-with-backoff guidance, and the closing safety paragraph's pre-send confirmation and reconcile-before-retry requirements. It lacks an explicit numbered workflow or checklist, which keeps it below the score-5 anchor but above anchor 3, where checkpoints would be merely implicit.

4 / 5

Progressive Disclosure

The body has clear section headers but is a single ~277-line monolith with no bundle files: the SmsSendResult property table, Event Grid delivery-report payload details, and async operation specifics are exactly the API-reference material the score-3 anchor describes as inline content that could live in a separate reference file. Score 4 would require most bulk detail moved out or well-signaled references, which are absent.

3 / 5

Total

14

/

20

Passed

Description

82%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: it states a concrete capability, gives an explicit 'Use when' clause with natural trigger scenarios, and clearly delimits its niche (Azure SMS via Java). The only weakness is that capabilities beyond plain 'send' are implied through triggers rather than stated explicitly.

Suggestions

State the multi-recipient and delivery-report capabilities explicitly in the 'what' portion (e.g., 'Send SMS messages to single or multiple recipients and track delivery') rather than leaving them implicit in the trigger list.

Add a common synonym such as 'text message' to the trigger coverage.

DimensionReasoningScore

Specificity

"Send SMS messages with Azure Communication Services SMS Java SDK" names the domain and one concrete action, but the other capabilities (bulk messaging, delivery reports) appear only in the 'Use when' trigger list, not as explicit capability statements. This matches the anchor for naming a domain with 1-2 concrete actions without comprehensive coverage; score 4 would require several explicitly stated actions.

3 / 5

Completeness

The description explicitly answers both questions: what ("Send SMS messages with Azure Communication Services SMS Java SDK") and when ("Use when implementing SMS notifications, alerts, OTP delivery, bulk messaging, or delivery reports") with concrete trigger phrases. This closely matches the score-5 anchor example, and it is written in third person.

5 / 5

Trigger Term Quality

"SMS notifications, alerts, OTP delivery, bulk messaging, or delivery reports" covers the natural phrases a user would say when they need this skill. Missing common synonyms such as 'text message'/'texting' keeps it below the comprehensive-synonym anchor of 5, but coverage is clearly better than anchor 3's sparse keyword set.

4 / 5

Distinctiveness Conflict Risk

"Azure Communication Services SMS Java SDK" carves out a clear niche (Azure SMS specifically via Java), so it would not trigger for other SMS providers, other Azure services, or other languages. Triggers like 'OTP SMS' and 'Azure Communication Services SMS' are distinct, matching the clear-niche/minimal-conflict anchor.

5 / 5

Total

17

/

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

sickn33/agentic-awesome-skills

Path

skills/azure-communication-sms-java/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.