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.

79

1.35x
Quality

76%

Does it follow best practices?

Impact

92%

1.35x

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-communication-sms-java/SKILL.md

The canonical home for this skill is azure-communication-sms-java in sickn33/agentic-awesome-skills

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, well-sectioned reference with concrete code for every common case, held back by token inefficiency and zero progressive disclosure. The filler Trigger Phrases/When to Use sections and repeated sendWithResponse demonstrations pad the file, and the ~280-line monolith should split reference material (properties table, Event Grid details) into bundle files.

Suggestions

Delete the 'Trigger Phrases' and 'When to Use' sections — they duplicate the frontmatter description and add no executable value.

Merge 'Send Options' and 'Response Handling' into the send examples (options and response iteration are already demonstrated there) to remove the repetition of sendWithResponse.

Move the SmsSendResult properties table and the Event Grid delivery-report field details to a references/ file (e.g. references/delivery-reports.md), keeping SKILL.md as a lean quick-start.

DimensionReasoningScore

Conciseness

Mostly lean code, but real padding exists: "## Trigger Phrases" duplicates the frontmatter, "## When to Use / This skill is applicable to execute the workflow or actions described in the overview." is pure filler, "## Send Options" repeats options already demonstrated in the multi-recipient example, and "## Response Handling" re-demonstrates sendWithResponse a second time. More than 'minor instances of over-explanation', so anchor 3 over anchor 4; the pinned version "1.2.0" is also time-sensitive info outside any deprecated section.

3 / 5

Actionability

Concrete, near-executable code covers all common cases: three auth styles plus async client creation, single send, bulk send with options, response handling, and status-code-branched error handling. Minor gaps keep it from 5: the multi-recipient sample lacks the `Context` import, the async sample lacks its `SmsAsyncClient` import, and `handleMessageError` appears as a bare `private void` outside any class — breaking copy-paste readiness.

4 / 5

Workflow Clarity

Logically sequenced (Installation → Client Creation → Send → Options → Response → Async → Error Handling) for a simple single-purpose skill. The batch send does validate per recipient (isSuccessful() loop with per-recipient error output, plus a 429 rate-limit branch), so the batch-operation no-validation cap doesn't bind; but no retry/backoff loop is shown despite Best Practices directing "Implement retry with backoff for 429 responses", and there is no explicit end-to-end sequence tying sections together — anchor 4, not 5.

4 / 5

Progressive Disclosure

No bundle files exist; ~280 lines are monolithically inlined in SKILL.md. Sections are well-headered, but content that clearly belongs in separate reference files — the SmsSendResult properties table, the Event Grid delivery-report schema notes, the async deep-dive — is all inline. The under-50-lines simple-skill exception doesn't apply, so anchor 3 ('content that should be separate is inline').

3 / 5

Total

14

/

20

Passed

Description

78%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: clear what, explicit 'Use when' triggers, and a precise technology niche. Slightly under-specified on the capability side (only one stated action) and its generic SMS trigger phrases carry minor conflict risk with other SMS-provider skills.

DimensionReasoningScore

Specificity

The what-clause states a single concrete action — "Send SMS messages with Azure Communication Services SMS Java SDK" — naming the domain precisely but not enumerating several distinct capabilities (bulk, delivery reports appear only as when-clauses). This matches anchor 3 ('names domain and 1-2 concrete actions') better than anchor 4, which expects several listed specific actions.

3 / 5

Completeness

Explicitly answers both: 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 — a direct match for the anchor-5 example pattern.

5 / 5

Trigger Term Quality

Good natural coverage: "SMS notifications", "alerts", "OTP delivery", "bulk messaging", "delivery reports", "Java" — phrases users would plausibly say. Not 5 because common synonyms like "text message" or "send a text" are absent.

4 / 5

Distinctiveness Conflict Risk

"Azure Communication Services SMS Java SDK" carves a clear niche, but the when-clause triggers ("SMS notification", "OTP delivery", "bulk messaging") are provider-agnostic and could fire for other SMS skills (Twilio, other languages). Mostly distinct with minor overlap risk — anchor 4.

4 / 5

Total

16

/

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