CtrlK
BlogDocsLog inGet started
Tessl Logo

deepgram-python-voice-agent

Use when writing or reviewing Python code in this repo that builds an interactive voice agent via `agent.deepgram.com/v1/agent/converse`. Covers `client.agent.v1.connect()`, `AgentV1Settings`, `send_settings`, `send_media`, event handling, and function/tool calling. Full-duplex STT + LLM + TTS with barge-in. Use `deepgram-python-text-to-speech` for one-way synthesis, `deepgram-python-speech-to-text` / `deepgram-python-conversational-stt` for transcription only. Triggers include "voice agent", "agent converse", "full duplex", "interactive assistant", "barge-in", "agent.v1", "function calling", "AgentV1Settings".

72

Quality

88%

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 thorough, highly actionable skill body with executable examples and solid recovery workflow guidance. It is slightly verbose and references a reference.md that is not bundled, keeping it just short of top marks on conciseness and progressive disclosure.

Suggestions

Trim the repeated deepgram import blocks in the dynamic-adjustment and reconnect examples to only the new symbols, referencing the quick-start imports, to tighten conciseness.

Add an explicit validation/gating checkpoint (e.g. 'verify SettingsApplied before send_media') in the quick start to make the workflow's validation steps as explicit as the recovery section's.

Either ship the referenced reference.md as a bundle file under ./references/ or relabel the 'In-repo reference' line so the reference target is guaranteed to exist.

DimensionReasoningScore

Conciseness

Dense, mostly efficient body that avoids explaining beginner concepts, with only minor spots that could be trimmed (e.g. repeated import blocks and slightly verbose inline comments); not a perfect 5 due to a few redundant long code listings.

4 / 5

Actionability

Multiple copy-paste-ready, executable code blocks cover connect/settings, mid-session dynamic adjustments, and reconnect-with-context; specific examples span the common cases.

5 / 5

Workflow Clarity

Sequenced quick start and a lifecycle/recovery section with explicit checkpoints (CLOSE handler triggers reconnect, idle keepalive, resume via send_media); a couple of validation checkpoints remain implicit rather than called out as gating steps.

4 / 5

Progressive Disclosure

Well-sectioned body with a clearly signaled 'API reference (layered)' block pointing one level deep (reference.md, AsyncAPI, Context7, product docs); no nested references, though the main body itself is fairly long and a referenced reference.md file is not present in the bundle.

4 / 5

Total

17

/

20

Passed

Description

95%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, highly specific description with explicit trigger guidance and clear separation from related skills. The only ding is the second-person 'Use when' voice, which the rubric penalizes on specificity.

DimensionReasoningScore

Specificity

Names multiple concrete actions and APIs (`client.agent.v1.connect()`, `send_settings`, `send_media`, function/tool calling, barge-in), giving comprehensive coverage for this domain; reduced by one for the second-person 'Use when...' phrasing per the rubric's voice penalty.

4 / 5

Completeness

It clearly answers 'what' (builds an interactive voice agent over a specific endpoint covering listed APIs) and 'when' (an explicit 'Use when...' clause plus a dedicated triggers list).

5 / 5

Trigger Term Quality

An explicit 'Triggers include' list provides comprehensive natural phrases and synonyms users would actually say ('voice agent', 'interactive assistant', 'barge-in', 'full duplex', 'function calling').

5 / 5

Distinctiveness Conflict Risk

A clear niche (full-duplex voice agent) with explicit demarcation from sibling skills (TTS-only, STT-only, management-api) yields minimal conflict risk.

5 / 5

Total

19

/

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.

Validation16 / 16 Passed

Validation for skill structure

No warnings or errors.

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