CtrlK
BlogDocsLog inGet started
Tessl Logo

azure-ai-voicelive-ts

Azure AI Voice Live SDK for JavaScript/TypeScript. Build real-time voice AI applications with bidirectional WebSocket communication.

50

Quality

55%

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

The body is highly actionable with comprehensive executable TypeScript examples, but it is a monolithic ~470-line file that repeats the subscribe pattern across sections, inlines reference material that would benefit from separate files, and lacks validation checkpoints in its session workflow.

Suggestions

Move the full event-handler catalog, type reference, and voice/audio/model tables into separate reference files (e.g. EVENTS.md, TYPES.md) and link to them from SKILL.md to apply progressive disclosure.

Show the subscribe/tools pattern once and reference it; remove the duplicated blocks repeated across Quick Start, Event Handling, Function Calling, and Error Handling.

Relocate the inline version number (1.0.0-beta.3) into a clearly marked version section or drop it, since inlined time-sensitive values penalize conciseness.

DimensionReasoningScore

Conciseness

Content is code-heavy and mostly free of concept over-explanation, but the subscribe/tools pattern is repeated across Quick Start, Event Handling, Function Calling, and Error Handling, and the time-sensitive 'Current Version: 1.0.0-beta.3' is inlined outside any deprecated section. It is not 2 because the bulk is actionable code rather than padded prose, and not 4 because the redundancy and inline version number could be tightened.

3 / 5

Actionability

Most examples are executable, copy-paste ready TypeScript covering auth, session config, events, function calling, and error handling. It is not 5 because the Browser Usage section ends with a placeholder ('... see samples for full implementation') leaving a gap in a common case.

4 / 5

Workflow Clarity

Quick Start shows a rough sequence (create client -> start session -> updateSession -> subscribe -> sendAudio) but there are no validation checkpoints or error-recovery feedback loops. It is not 2 because a coherent sequence is present, and not 4 because checkpoints are entirely missing or implicit.

3 / 5

Progressive Disclosure

The file has good section headers and a Reference Links table to external URLs, but no local bundle files exist, so the full event-handler catalog, type reference, and voice/audio/model tables are all inlined in a ~470-line monolith. It is not 2 because section organization is reasonable, and not 4 because reference content that belongs in separate files is not split out.

3 / 5

Total

13

/

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 clearly identifies the product and a couple of concrete capabilities but omits any 'Use when...' trigger guidance, which caps completeness at 3, and relies on technical terms over the natural phrases users would say.

Suggestions

Add an explicit 'Use when...' clause with concrete triggers, e.g. 'Use when building real-time voice assistants, speech AI, or bidirectional audio streaming apps in JavaScript/TypeScript'.

Include natural synonyms users actually say — 'voice assistant', 'speech', 'audio streaming', 'WebSocket audio' — alongside 'real-time voice AI'.

Use third-person declarative voice ('Builds real-time voice AI applications...') instead of the imperative 'Build' to match the rubric's preferred voice.

DimensionReasoningScore

Specificity

Names the domain ('Azure AI Voice Live SDK for JavaScript/TypeScript') and 1-2 concrete actions ('Build real-time voice AI applications', 'bidirectional WebSocket communication'), but coverage is not comprehensive enough to reach 4. It is above 2 because concrete actions are named rather than minimal/generic.

3 / 5

Completeness

The 'what' is clear (an SDK for building real-time voice AI apps over WebSocket) but the 'when' is entirely missing — there is no 'Use when...' clause or explicit trigger guidance, which per the rubric caps completeness at 3. It is not 2 because the 'what' is clearly stated, not vague.

3 / 5

Trigger Term Quality

Relevant keywords are present ('real-time voice AI', 'bidirectional WebSocket', 'JavaScript/TypeScript') but common natural variations a user would say ('voice assistant', 'speech', 'audio streaming') are missing. It is not 4 because keyword coverage lacks the everyday synonyms users actually invoke.

3 / 5

Distinctiveness Conflict Risk

Targets a specific named Azure product niche with minimal conflict risk, mostly distinct from other skills. It is not 5 because, without an explicit trigger clause and with only technical jargon, the description does not fully carve out distinct natural-language triggers.

4 / 5

Total

13

/

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.

Validation15 / 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/antigravity-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.