CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

deepgram-java-voice-agent

Use when writing or reviewing Java code in this repo that builds an interactive voice agent over `agent.deepgram.com/v1/agent/converse`. Covers `client.agent().v1().v1WebSocket()`, `AgentV1Settings`, `sendSettings`, `sendMedia`, event handlers, provider configuration, and message injection. Use `deepgram-java-text-to-speech` for one-way synthesis or the STT skills for transcription-only flows. Triggers include "voice agent", "agent converse", "full duplex", "barge in", "function call", and "agent websocket".

74

Quality

93%

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.

A strong, highly actionable reference: executable quick start, real gotchas specific to the SDK's union types and agent-environment URL, and layered pointers to authoritative sources. The main gaps are mild padding (import block, cross-promotion section) and the absence of error-recovery guidance around the listed error/warning events.

Suggestions

Add a short error-handling note under Gotchas showing how to respond to `onErrorMessage`/`onWarning` (e.g., log and reconnect vs. fail fast), closing the workflow's validation gap.

Move the exhaustive send-method and event-handler inventories to a reference file and link to it, keeping SKILL.md to the quick start, gotchas, and layered pointers.

Trim the 10-line import block in the quick start to the essential types and drop or shorten the "Central product skills" promotional section.

DimensionReasoningScore

Conciseness

The body is dense and assumes competence ("user audio in, agent events + audio out"; gotchas are SDK-specific, not general WebSocket explanation). Minor trimmable fat remains: the 10-line import block and the promotional "Central product skills" section with the `npx skills add deepgram/skills` pitch. Above the 3 anchor because nothing teaches concepts Claude already knows; below 5 because a few tokens don't earn their place.

4 / 5

Actionability

Fully executable, copy-paste-ready guidance: auth via `DeepgramClient.builder()`, a complete `AgentV1Settings` builder quick start, working `sendInjectUserMessage`/`sendInjectAgentMessage` examples, and an explicit inventory of send methods, event handlers, and example file paths. Covers the common cases the way the top anchor requires.

5 / 5

Workflow Clarity

The session sequence is concretely demonstrated — register handlers, `connect()`, wait for `onWelcome`, then `sendSettings` — and Gotcha 2 makes the ordering checkpoint explicit ("the repo examples wait for `onWelcome(...)` and immediately call `sendSettings(...)`"). Not 5 because error recovery is only named (`onErrorMessage`, `onWarning` are listed) with no fix/retry guidance; above 3 because the critical gate is explicit rather than implicit.

4 / 5

Progressive Disclosure

Good structure with clearly signaled, one-level-deep references: the "API reference (layered)" section points to in-repo source of truth (`src/main/java/...`, `examples/agent/`) and external docs, and honestly notes no `reference.md` exists. Not 5 because at ~127 lines the full event-handler list and gotcha detail are inlined where a reference file would serve, and the under-50-line simple-skill exception doesn't apply.

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.

An exemplary description: it states a concrete what, an explicit when, comprehensive natural trigger terms, and explicit routing to sibling skills to avoid mis-triggering. Third-person-appropriate imperative voice with no fluff or over-claims.

DimensionReasoningScore

Specificity

Names the concrete task ("builds an interactive voice agent over `agent.deepgram.com/v1/agent/converse`") and comprehensively enumerates the API surface: `v1WebSocket()`, `AgentV1Settings`, `sendSettings`, `sendMedia`, event handlers, provider configuration, and message injection. No meaningful capability gaps, matching the comprehensive-coverage anchor rather than the minor-gaps anchor at 4.

5 / 5

Completeness

Opens with an explicit "Use when writing or reviewing Java code in this repo..." clause answering when, and the enumerated API surface answers what, with concrete trigger phrases at the end. Both what and when are explicit and concrete, so it sits at the top anchor rather than 4 where the when is only adequately specific.

5 / 5

Trigger Term Quality

Explicitly lists natural trigger phrases — "voice agent", "agent converse", "full duplex", "barge in", "function call", "agent websocket" — including niche synonyms like "barge in" that a user of this product would actually say. Coverage is comprehensive for a Java SDK skill; file extensions do not apply here.

5 / 5

Distinctiveness Conflict Risk

Scoped to a specific endpoint and SDK, and actively routes siblings: "Use `deepgram-java-text-to-speech` for one-way synthesis or the STT skills for transcription-only flows." This explicit disambiguation gives it a clear niche with minimal conflict risk.

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-java-sdk

Path

.agents/skills/deepgram-java-voice-agent/SKILL.md

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.