CtrlK
BlogDocsLog inGet started
Tessl Logo

ax-rust-audio

Use when writing Rust code with `axllm` for audio input/output, OpenAI Responses audio mapping, realtime event folding, and generated package audio examples.

58

Quality

73%

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 ./website/static/rust/.well-known/agent-skills/ax-rust-audio/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 a lean, fact-dense reference for the generated axllm audio API with strong specific detail (field names, defaults, error behavior) and useful guardrails. Its weaknesses are the absence of an executable example for the core audio tasks, only an implicit workflow sequence, and references to package materials (API.md, examples/) that cannot be verified and partially duplicated inline.

Suggestions

Add a short, complete Rust example of an audio task (e.g. building a speak() request via AxAIClient::speak and reading the result keys) to raise actionability from concrete-but-incomplete to executable.

Convert the guardrails and When To Use bullets into an explicit ordered sequence (consult examples -> map request fields -> run no-key check -> only then use provider-api with credentials) so the workflow has explicit checkpoints.

Move the inline Relevant API Surface symbol list into the referenced API.md (or a references/ file) so SKILL.md stays an overview and progressive disclosure is one level deep.

DimensionReasoningScore

Conciseness

The body is dense with package-specific facts (e.g. "`speak()` returns TypeScript's speech result keys: `data` (base64 audio), `format`, `mimeType`, `transcript`") with no padding and no explanation of concepts Claude already knows; only the symbol dump in "Relevant API Surface" could be trimmed. It stops short of anchor 5 only because that inline list and some over-dense bullets could be tightened further.

4 / 5

Actionability

Concrete specifics are present ("OpenAI defaults to `gpt-4o-mini-tts` with the `alloy` voice", "AxAIClient::speak(request)"), but the only executable code is the 2-line Core Pattern (`let llm = ai("openai", options)?;`) with no example of speak() or audio input — the skill's core task. It exceeds anchor 3's pseudocode level but the missing executable example is more than a minor gap, so it does not reach anchor 4.

3 / 5

Workflow Clarity

"Start from package examples for exact native syntax before inventing a new call shape" is a principle, not an ordered sequence; there are no explicit steps or checkpoints for accomplishing audio input/output tasks. No destructive or batch operations apply, so the cap is irrelevant, but the sequence remains implicit only — matching anchor 3's 'sequence present but checkpoints missing or implicit'.

3 / 5

Progressive Disclosure

"Package Facts" clearly signals external materials ("Package API docs: `API.md` and `axir-api.json`", "Runnable examples: `examples/`"), but no bundle files exist to verify those references, and the inline "Relevant API Surface" symbol list is content that belongs in the referenced API.md. Structure is decent yet content that should be separate is inline, matching anchor 3.

3 / 5

Total

13

/

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, niche-scoped description with an explicit 'Use when...' trigger and several concrete capability areas, giving it low conflict risk. Its main gaps are the absent natural synonyms (speech/TTS/voice/transcription) and an implicit rather than explicit statement of what the skill does.

Suggestions

Add natural synonyms users would actually say — e.g. speech, TTS, voice, transcription, text-to-speech — to broaden trigger coverage.

Lead with a short action clause stating what the skill does (e.g. 'Guides Rust audio input/output, speech synthesis, and realtime event handling with the `axllm` package.') before the 'Use when...' trigger.

DimensionReasoningScore

Specificity

The description lists several concrete capability areas — "audio input/output, OpenAI Responses audio mapping, realtime event folding, and generated package audio examples" — but these are domains rather than actions, leaving minor gaps versus anchor 5's comprehensive concrete actions; it clearly exceeds anchor 3's '1-2 concrete actions'.

4 / 5

Completeness

An explicit 'Use when...' trigger is present and the what is derivable (writing Rust code with `axllm` for these audio features), but the description never states what the skill does — there is no leading action clause such as 'Guide audio input/output...'. Both what and when are present with the when explicit and the what implicit, matching anchor 4 rather than anchor 5's fully explicit both.

4 / 5

Trigger Term Quality

Natural user terms are present ("Rust", "audio", "realtime", "OpenAI Responses") and would plausibly be said when this skill is needed, but common synonyms and variations such as "speech", "TTS", "voice", or "transcription" are missing. Coverage is good with a few natural terms missing — anchor 4 — rather than comprehensive (anchor 5) or merely partial (anchor 3).

4 / 5

Distinctiveness Conflict Risk

The combination of "Rust", "`axllm`", "OpenAI Responses audio mapping", and "realtime event folding" carves a clear niche around one package's audio features with distinct triggers and minimal risk of firing for unrelated skills — matching anchor 5.

5 / 5

Total

17

/

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
ax-llm/ax
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.