CtrlK
BlogDocsLog inGet started
Tessl Logo

deepgram-js-conversational-stt

Use when writing or reviewing JavaScript/TypeScript in this repo that calls Deepgram Conversational STT v2 / Flux (`/v2/listen`) for turn-aware streaming transcription. Covers `client.listen.v2.createConnection()` / `connect()`, Flux models, and turn events like `TurnInfo`. Use `deepgram-js-speech-to-text` for standard v1 ASR and `deepgram-js-voice-agent` for full-duplex assistants. Triggers include "flux", "v2 listen", "conversational STT", "turn detection", "end of turn", "EOT", and "listen.v2".

74

Quality

91%

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

SKILL.md
Quality
Evals
Security

Quality

Content

82%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 content is a strong, lean SDK-oriented skill: fully executable quick start, precise API surface mapping to repo source files, and a gotchas section capturing real failure modes. Its only real weaknesses are mild — a slightly padded reference/promotion tail, an implicit rather than explicit validate-recover loop, and inlined detail that could live in a reference file.

DimensionReasoningScore

Conciseness

The body is dense with non-obvious, SDK-specific facts (connect args, socket methods, gotchas like "Close with `sendCloseStream`, not `sendFinalize`") and never explains concepts Claude already knows, matching the lean anchor. It falls short of 5 because the five-layered "API reference" section and the closing "Central product skills" promotion ("npx skills add deepgram/skills") include tokens that could be trimmed without losing guidance value.

4 / 5

Actionability

The quick start is copy-paste-ready executable code drawn from a real repo example (`examples/26-transcription-live-websocket-v2.ts`), with concrete auth setup, exact socket methods (`sendMedia`, `sendCloseStream`, `waitForOpen`), exact repo source paths for the API surface, and a runnable install command. This fully matches the anchor for executable guidance covering the common cases.

5 / 5

Workflow Clarity

The connection sequence is clear and even called out explicitly ("`createConnection()` is lazy. Call `connect()` after registering handlers"), and error handling appears via the `FatalError` handler and the 400/access diagnosis gotcha. It is not 5 because the workflow lives implicitly in code order rather than an explicit validate/recover loop, and not 3 because most checkpoints (wait for open, FatalError close, endpoint-availability diagnosis) are present.

4 / 5

Progressive Disclosure

The body is well-sectioned and pushes detail to clearly signaled, one-level-deep sources — in-repo files (`src/CustomClient.ts`, `src/api/.../{Client,Socket}.ts`), the canonical OpenAPI/AsyncAPI URLs, and product docs. It falls short of 5 because no bundle reference files exist (no `references/`, `scripts/`, or `assets/`), so moderately deep material like the parameter list and gotcha details is inlined in SKILL.md rather than split out.

4 / 5

Total

17

/

20

Passed

Description

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

This is an exemplary description: concrete capability enumeration, an explicit natural-language trigger list, clear what/when coverage, and active disambiguation against sibling Deepgram skills. All four dimensions sit at the top anchor with no vague or padded language.

DimensionReasoningScore

Specificity

The description names the domain ("turn-aware streaming transcription" via `/v2/listen`) and multiple concrete capabilities — `client.listen.v2.createConnection()` / `connect()`, Flux models, and turn events like `TurnInfo` — which comprehensively covers this skill's surface. It does not fall to 4 because there are no minor gaps: the API entry points, model family, and event types are all explicitly enumerated.

5 / 5

Completeness

It explicitly answers both questions: what it covers ("Covers `client.listen.v2.createConnection()` / `connect()`, Flux models, and turn events like `TurnInfo`") and when to use it ("Use when writing or reviewing JavaScript/TypeScript in this repo that calls Deepgram Conversational STT v2 / Flux"), followed by concrete trigger phrases. This is the anchor-5 pattern: both what and when with explicit triggers.

5 / 5

Trigger Term Quality

It lists an explicit trigger set — "flux", "v2 listen", "conversational STT", "turn detection", "end of turn", "EOT", "listen.v2" — covering natural phrasings, abbreviations, and SDK identifiers a user would actually say. Nothing common is missing; this matches the anchor for comprehensive natural-term coverage including synonyms.

5 / 5

Distinctiveness Conflict Risk

It carves out a clear niche (v2 `/v2/listen` turn-aware STT) and actively disambiguates against sibling skills ("Use `deepgram-js-speech-to-text` for standard v1 ASR and `deepgram-js-voice-agent` for full-duplex assistants"), minimizing wrong-skill triggering. It cannot be 4 because the boundary guidance is explicit, not merely implied by scope.

5 / 5

Total

20

/

20

Passed

Validation

100%

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

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
deepgram/deepgram-js-sdk
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.