CtrlK
BlogDocsLog inGet started
Tessl Logo

azure-communication-callautomation-java

Build server-side call automation workflows including IVR systems, call routing, recording, and AI-powered interactions.

52

Quality

58%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Low

Low-risk findings worth noting

Fix and improve this skill with Tessl

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

Quality

Content

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

This is a strong, executable API cookbook: every major Call Automation operation has complete Java code and there is even error-handling guidance. Its weaknesses are structural — a padded meta-sections tail, a pinned version, no end-to-end event-driven workflow with validation checkpoints, and zero progressive disclosure of the reference material into separate files.

Suggestions

Add one end-to-end workflow section that sequences create call → wait for CallConnected → play prompt → recognize → handle RecognizeCompleted, with explicit checkpoints before destructive actions like hangUp(true) or stop(recordingId).

Remove the boilerplate 'When to Use' and 'Trigger Phrases' sections (trigger guidance belongs in the frontmatter description) and drop the pinned '1.6.0' version or move version guidance to a clearly labeled section.

Move the bulk of the per-operation API examples into a references/ file (e.g. references/examples.md) and keep SKILL.md as a concise overview with clearly signaled one-level-deep links.

DimensionReasoningScore

Conciseness

The code blocks are lean with no concept explanations, but the body carries unnecessary padding: a pinned '1.6.0' version (time-sensitive, not in a deprecated section), a 'Trigger Phrases' section that duplicates the frontmatter's job, and the vacuous 'This skill is applicable to execute the workflow or actions described in the overview.' It is not a 4 because these sections and the version pin are clearly trimmable.

3 / 5

Actionability

Complete, executable Java for every core operation (create/answer calls, play TTS and files, DTMF/speech recognition, recording lifecycle, transfer, event parsing, error handling) — mostly copy-paste ready. It falls short of 5 because the webhook plumbing is missing: how to obtain 'incoming-call-context-from-event' and the raw 'requestBody' (Event Grid subscription, controller endpoint, callback validation) is never shown.

4 / 5

Workflow Clarity

The content is a task-by-task cookbook with an implicit feedback loop in the event handler (RecognizeCompleted → process DTMF), but there is no explicit end-to-end sequence (create call → wait for CallConnected → play → recognize → act on result) with validation checkpoints, and destructive operations like 'hangUp(true)' and 'stop(recordingId)' have no verify-before-act steps. It is not a 2 because each task's steps are individually well defined and error handling with status codes is included.

3 / 5

Progressive Disclosure

Section headers and a key-concepts table give the ~250-line body reasonable structure, but the full API cookbook lives entirely inline in SKILL.md with no references or split files, so content that belongs in a separate reference file is inlined. The under-50-line simple-skill exception does not apply, and it is not a 2 because structure and navigation are present.

3 / 5

Total

13

/

20

Passed

Description

58%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 gives a concrete, well-scoped picture of what the skill does, but it completely lacks a 'when to use' clause and omits the platform and language identifiers (Azure Communication Services, Java) that users would naturally mention. Adding an explicit trigger clause naming the platform would lift both completeness and trigger term quality.

Suggestions

Add an explicit 'Use when...' clause, e.g. 'Use when building IVR or call-routing backends with Azure Communication Services Call Automation for Java.'

Name the platform and language in the description ('Azure Communication Services', 'Java', 'phone/PSTN calls') so it matches the phrases users actually say and avoids conflicts with other telephony SDK skills.

Replace the vague 'AI-powered interactions' with concrete actions like 'recognize DTMF tones and speech during calls'.

DimensionReasoningScore

Specificity

The description names several concrete capability areas — 'IVR systems, call routing, recording, and AI-powered interactions' — matching the several-specific-actions anchor. It is not a 5 because 'build... workflows' and 'AI-powered interactions' remain somewhat generic compared to fully concrete action verbs.

4 / 5

Completeness

The 'what' is clear (build server-side call automation with IVR, routing, recording, AI interactions) but there is no 'Use when...' clause or equivalent explicit trigger guidance, which caps completeness at 3 per the judging guidelines. It is not a 2 because the 'what' half is concrete and specific.

3 / 5

Trigger Term Quality

Natural terms like 'IVR', 'call routing', and 'call automation' are present, but the description omits the phrases users would actually say — 'Azure Communication Services', 'Java', 'phone call', 'PSTN' — leaving common variations and synonyms missing. It exceeds anchor 2 because more than one or two relevant keywords exist.

3 / 5

Distinctiveness Conflict Risk

'Server-side call automation' with IVR, routing, and recording carves a mostly distinct niche with only minor overlap risk against closely related telephony skills. It is not a 5 because the platform (Azure Communication Services) and language (Java) are unnamed, so it would also trigger for non-Azure call automation requests.

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
sickn33/agentic-awesome-skills
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.