CtrlK
BlogDocsLog inGet started
Tessl Logo

azure-ai-voicelive-py

Build real-time voice AI applications with bidirectional WebSocket communication.

54

Quality

62%

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

Quality

Content

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

The body is a strong, code-heavy API guide: highly actionable with copy-paste examples, a clear logical progression, and efficient use of tokens apart from some boilerplate footer sections. Its main defect is progressive disclosure — it advertises three reference files that are absent from the bundle, leaving promised depth unreachable and detailed reference tables inline.

Suggestions

Create the advertised bundle files (references/api-reference.md, references/examples.md, references/models.md) or remove the References section — currently all three pointers are dangling.

Move the exhaustive Voice Options, Audio Formats, and full event-handling tables into the reference files, keeping SKILL.md to quick start plus core patterns.

Trim the generic "When to Use" and "Limitations" boilerplate (e.g. "This skill is applicable to execute the workflow or actions described in the overview") and add the missing imports/helpers (json, defined audio I/O functions) so examples are fully copy-paste ready.

DimensionReasoningScore

Conciseness

The body is dominated by dense, useful code and tables with very little conceptual padding — it does not explain what WebSockets or PCM are. Minor trimmable content exists: the closing "When to Use" ("This skill is applicable to execute the workflow or actions described in the overview") and "Limitations" sections are generic template filler, and the auth examples repeat the same connect boilerplate. Not 5 because of that boilerplate; not 3 since the padding is a small fraction of the whole.

4 / 5

Actionability

Installation, env vars, both auth flows, a fully copy-paste-ready Quick Start, session configuration, audio streaming, event handling, and error handling are all concrete executable code. Minor gaps prevent a 5: undefined helpers ("read_audio_from_microphone()", "play_audio()", "handle_function()"), a missing json import in the function-call example, and "..." placeholders in the auth and error-handling blocks. Not 3 because there is no pseudocode and the core flows run as written.

4 / 5

Workflow Clarity

Sections form a coherent build sequence — install → configure env/auth → connect → configure session → stream audio → handle events → handle interrupts/errors — with a dedicated Error Handling section giving feedback on API and connection failures. Not 5 because there are no explicit validation checkpoints (e.g. verifying a session.created event before streaming); not 3 because the sequence is clear and this is not a destructive/batch skill, so the workflow-clarity cap does not apply.

4 / 5

Progressive Disclosure

A dedicated References section clearly signals one-level-deep files (references/api-reference.md, examples.md, models.md), but those files do not exist in the bundle — no references/ directory is present — so the pointers are dangling. Meanwhile detailed reference material (voice tables, audio format tables, full event catalogs) is inlined in SKILL.md where it arguably belongs in those missing files. Not 4 because the structure is undermined by broken references and inline bulk; not 2 because section organization itself is good and references are prominently signaled, not buried.

3 / 5

Total

15

/

20

Passed

Description

53%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 communicates a clear, reasonably specific capability but omits any 'when to use' trigger guidance, which caps its completeness and weakens trigger-term coverage. Adding an explicit "Use when..." clause with natural synonyms (Azure Voice Live, speech, audio streaming) would raise both completeness and trigger quality.

Suggestions

Add an explicit trigger clause, e.g. "Use when building real-time voice agents, speech-to-speech assistants, or audio streaming over WebSockets with the Azure AI Voice Live SDK."

Include natural user-facing synonyms and the SDK name (Azure Voice Live, speech, audio streaming, realtime voice agent) so the description matches how users actually phrase requests.

Optionally enumerate 2-3 concrete actions (e.g. "stream audio in/out, configure VAD turn detection, handle function calls") to strengthen specificity.

DimensionReasoningScore

Specificity

"Build real-time voice AI applications with bidirectional WebSocket communication" names the domain (real-time voice AI) and one concrete technical characteristic (bidirectional WebSocket streaming), but the stated action ("build applications") is otherwise generic. Not score 2 because the WebSocket detail is a concrete capability, not pure abstraction; not 4 because it does not list several distinct actions.

3 / 5

Completeness

The description has a clear 'what' (build real-time voice AI apps over bidirectional WebSockets) but no 'when' — there is no "Use when..." clause or equivalent trigger guidance, which caps completeness at 3 per the judging guidelines. Not 4 because the 'when' is entirely absent rather than merely imprecise.

3 / 5

Trigger Term Quality

Terms like "voice AI", "real-time", and "WebSocket" are relevant and somewhat natural, but common variations users would say are missing: no "Azure", "speech", "audio streaming", or SDK name. Not 4 because keyword coverage lacks the natural synonyms and product-name triggers users would most likely use.

3 / 5

Distinctiveness Conflict Risk

"Real-time voice AI" with "bidirectional WebSocket communication" carves a fairly distinct niche that would not trigger for unrelated skills, though it could overlap with other voice/speech/audio streaming skills since no SDK-identifying term (Azure, Voice Live) appears. Not 5 because the niche boundary is not pinned by distinct product-specific triggers.

4 / 5

Total

13

/

20

Passed

Validation

87%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

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

Warning

referenced_paths_exist

Referenced path issues: 3 missing

Warning

Total

14

/

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.