Use when writing or reviewing Java code in this repo that calls Deepgram Conversational STT v2 / Flux over `/v2/listen`. Covers `client.listen().v2().v2WebSocket()`, `V2ConnectOptions`, `onTurnInfo`, and turn-aware close handling. Use `deepgram-java-speech-to-text` for standard v1 transcription and `deepgram-java-voice-agent` for fully interactive assistants. Triggers include "flux", "conversational stt", "listen v2", "turn detection", "end of turn", and "eot".
76
93%
Does it follow best practices?
Impact
—
No eval scenarios have been run
Passed
No known issues
Quality
Discovery
100%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 excellent skill description that hits all the marks. It provides specific API-level details, explicit trigger terms, clear 'use when' guidance, and proactively disambiguates from related skills. The description is concise yet comprehensive, making it easy for Claude to select the right skill from a large pool.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists multiple specific concrete actions and API elements: 'client.listen().v2().v2WebSocket()', 'V2ConnectOptions', 'onTurnInfo', 'turn-aware close handling', and references the specific endpoint '/v2/listen'. Very concrete and actionable. | 3 / 3 |
Completeness | Clearly answers both 'what' (writing/reviewing Java code for Deepgram Conversational STT v2/Flux, specific API classes and patterns) and 'when' (explicit 'Use when' clause plus explicit trigger terms). Also helpfully disambiguates from related skills ('deepgram-java-speech-to-text' for v1, 'deepgram-java-voice-agent' for agents). | 3 / 3 |
Trigger Term Quality | Excellent coverage of natural trigger terms explicitly listed: 'flux', 'conversational stt', 'listen v2', 'turn detection', 'end of turn', 'eot'. Also includes contextual terms like 'Deepgram', 'Java', and 'v2/listen' that users would naturally mention. | 3 / 3 |
Distinctiveness Conflict Risk | Highly distinctive with a clear niche (Deepgram v2/Flux conversational STT in Java). Explicitly disambiguates from two related skills by name, making conflict very unlikely. The specific API references and version targeting create a well-defined boundary. | 3 / 3 |
Total | 12 / 12 Passed |
Implementation
87%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This is a high-quality skill that efficiently teaches Claude how to use Deepgram's Conversational STT v2 in Java. Its strengths are excellent conciseness, fully executable code examples, and a well-organized layered reference structure. The main weakness is the lack of explicit error handling/validation steps in the workflow, particularly around connection failures and error message handling.
Suggestions
Add a brief error handling pattern showing how to use onErrorMessage and what to do if connect().get() throws (timeout, auth failure), to improve workflow clarity for this async WebSocket operation.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The content is lean and efficient. It doesn't explain what WebSockets are, what STT means, or how Java works. Every section earns its place — the 'When to use' section is brief and differentiating, the code is minimal, and the gotchas are specific to this SDK rather than general knowledge. | 3 / 3 |
Actionability | The quick start provides fully executable, copy-paste-ready Java code with correct imports, connection setup, event handling, and close flow. Key parameters are enumerated with their exact method names, and the gotchas section provides specific, actionable warnings (e.g., exact model string format, which close method to use). | 3 / 3 |
Workflow Clarity | The quick start shows a clear sequence (create client → register handlers → connect → send media → close), and gotcha #7 explicitly warns about ordering. However, there's no explicit validation checkpoint or error recovery flow — e.g., what to do if connect fails, how to handle onErrorMessage, or how to verify the connection is healthy before streaming audio. | 2 / 3 |
Progressive Disclosure | The content is well-structured with clear sections progressing from overview to quick start to API surface to references. The layered API reference section provides a prioritized hierarchy of sources (in-repo source → AsyncAPI → Context7 → product docs). No bundle files exist, but for a skill of this size (~80 lines), the single-file organization is appropriate and well-navigated. | 3 / 3 |
Total | 11 / 12 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 — 11 / 11 Passed
Validation for skill structure
No warnings or errors.
6d7d7d5
Table of Contents
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.