CtrlK
BlogDocsLog inGet started
Tessl Logo

azure-ai-voicelive-java

Azure AI VoiceLive SDK for Java. Real-time bidirectional voice conversations with AI assistants using WebSocket.

48

Quality

52%

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-ai-voicelive-java/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

64%Scale 1-3

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A solid SDK reference skill with excellent actionability—every feature is demonstrated with executable Java code and proper imports. The main weaknesses are the lack of validation checkpoints in the workflow (e.g., verifying session connection before sending audio), some unnecessary boilerplate sections ('When to Use', 'Limitations'), and a monolithic structure that could benefit from splitting detailed configuration into separate files.

Suggestions

Add explicit validation checkpoints in the core workflow, e.g., verify SESSION_CREATED event is received before sending configuration/audio, and add a feedback loop for reconnection on failure.

Remove the boilerplate 'When to Use' and 'Limitations' sections, and trim the 'Key Concepts' table—Claude can infer class purposes from the code examples.

Consider splitting voice configuration options and function calling into separate referenced files to reduce the main skill's length.

DimensionReasoningScore

Conciseness

Generally efficient with good code examples, but includes some unnecessary content like the 'Key Concepts' table describing classes Claude can infer, the 'When to Use' and 'Limitations' sections are boilerplate filler, and the 'Best Practices' section restates what's already shown in the code examples.

2 / 3

Actionability

Provides fully executable Java code for every step: Maven dependency, authentication, session creation, configuration, audio sending, event handling, function calling, and error handling. All examples are copy-paste ready with proper imports.

3 / 3

Workflow Clarity

The core workflow is clearly numbered (1-4) with a logical sequence from session start through event handling. However, there are no validation checkpoints—no verification that the session connected successfully before sending audio, no guidance on what to do if configuration fails, and no feedback loop for error recovery beyond a basic onErrorResume stub.

2 / 3

Progressive Disclosure

Content is reasonably structured with clear sections, but it's somewhat monolithic—voice configuration details, function calling, and detailed event handling could be split into referenced files. The reference links to GitHub are helpful but the skill itself is long with no bundle files to offload detail into.

2 / 3

Total

9

/

12

Passed

Description

40%Scale 1-3

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 identifies a clear and distinctive technology niche (Azure AI VoiceLive SDK for Java with WebSocket), which makes it unlikely to conflict with other skills. However, it lacks a 'Use when...' clause entirely and could benefit from listing more concrete actions and natural trigger terms that users might employ when needing this skill.

Suggestions

Add an explicit 'Use when...' clause, e.g., 'Use when the user needs to implement real-time voice conversations, audio streaming, or speech-based AI interactions using Azure AI VoiceLive in Java.'

Include additional natural trigger terms users might say, such as 'speech', 'audio streaming', 'voice chat', 'Azure speech SDK', 'real-time audio', or 'voice assistant'.

List more specific concrete actions the skill covers, such as 'configure WebSocket connections, handle audio streams, manage conversation sessions, process voice events, and integrate with Azure AI services'.

DimensionReasoningScore

Specificity

Names the domain (Azure AI VoiceLive SDK for Java) and mentions a key capability (real-time bidirectional voice conversations with AI assistants using WebSocket), but doesn't list multiple concrete actions like setup, configuration, streaming, error handling, etc.

2 / 3

Completeness

Describes what the skill is about 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 'what' is also only moderately detailed, this scores a 1.

1 / 3

Trigger Term Quality

Includes relevant keywords like 'Azure AI', 'VoiceLive', 'Java', 'WebSocket', 'voice conversations', and 'real-time', but misses common user variations like 'speech', 'audio streaming', 'voice chat', 'Azure Cognitive Services', or 'voice SDK'.

2 / 3

Distinctiveness Conflict Risk

The combination of 'Azure AI VoiceLive SDK', 'Java', and 'WebSocket' creates a very specific niche that is unlikely to conflict with other skills. The technology stack is narrowly defined.

3 / 3

Total

8

/

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.

Validation — 10 / 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
popey/claude-code-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.