speak-debug-bundle
Generates diagnostic reports for troubleshooting Speak API authentication and audio processing issues.
Install
mkdir -p .claude/skills/speak-debug-bundle && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/8519" && unzip -o skill.zip -d .claude/skills/speak-debug-bundle && rm skill.zipInstalls to .claude/skills/speak-debug-bundle
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Collect diagnostic information for Speak API issues: auth verification,Key capabilities
- →Verify Speak API authentication status
- →Validate audio file codec and sample rate
- →Inspect session duration and status
- →Test network connectivity to Speak and OpenAI endpoints
- →Check environment variable configuration
How it works
The tool executes shell scripts to verify API key authorization and network latency, while using ffprobe to inspect audio file metadata against specific codec and sample rate requirements.
Inputs & outputs
When to use speak-debug-bundle
- →Generate diagnostic logs for support
- →Test Speak API authentication
- →Validate audio file formats
- →Debug Speak integration network issues
About this skill
Speak Debug Bundle
Overview
Collect diagnostic information for Speak API issues: auth verification, audio format validation, session inspection, and network testing.
Prerequisites
- Completed
speak-install-authsetup - Valid API credentials configured
- ffmpeg installed for audio processing
Instructions
Current State
!node --version 2>/dev/null || echo 'N/A'
!ffmpeg -version 2>/dev/null | head -1 || echo 'ffmpeg not installed'
Step 1: Auth Diagnostic
#!/bin/bash
set -euo pipefail
echo "=== Speak Debug Bundle ==="
echo "Time: $(date -u)"
echo -e "\n--- Auth Check ---"
STATUS=$(curl -s -o /dev/null -w "%{http_code}" \
-H "Authorization: Bearer $SPEAK_API_KEY" \
https://api.speak.com/v1/languages)
echo "API Key Status: HTTP $STATUS"
[ "$STATUS" = "200" ] && echo " Auth: OK" || echo " Auth: FAILED"
echo -e "\n--- Environment ---"
echo "SPEAK_API_KEY set: $([ -n \"${SPEAK_API_KEY:-}\" ] && echo 'yes' || echo 'no')"
echo "SPEAK_APP_ID set: $([ -n \"${SPEAK_APP_ID:-}\" ] && echo 'yes' || echo 'no')"
Step 2: Audio Format Validator
import { execSync } from 'child_process';
function validateAudio(filePath: string): { valid: boolean; issues: string[] } {
const issues: string[] = [];
try {
const info = JSON.parse(execSync(
`ffprobe -v quiet -print_format json -show_streams "${filePath}"`,
{ encoding: 'utf-8' }
));
const stream = info.streams[0];
if (stream.codec_name !== 'pcm_s16le') issues.push(`Codec: ${stream.codec_name} (need pcm_s16le)`);
if (parseInt(stream.sample_rate) !== 16000) issues.push(`Sample rate: ${stream.sample_rate} (need 16000)`);
if (stream.channels !== 1) issues.push(`Channels: ${stream.channels} (need 1/mono)`);
const size = parseInt(execSync(`stat -f%z "${filePath}"`, { encoding: 'utf-8' }));
if (size > 25 * 1024 * 1024) issues.push(`File too large: ${(size/1024/1024).toFixed(1)}MB (max 25MB)`);
if (size < 1000) issues.push('File too small — may be empty or corrupt');
} catch (e) {
issues.push(`Cannot read file: ${e}`);
}
return { valid: issues.length === 0, issues };
}
Step 3: Network Connectivity
echo -e "\n--- Network ---"
curl -s -o /dev/null -w "API: HTTP %{http_code} in %{time_total}s\n" \
-H "Authorization: Bearer $SPEAK_API_KEY" \
https://api.speak.com/v1/health
curl -s -o /dev/null -w "OpenAI: HTTP %{http_code} in %{time_total}s\n" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
https://api.openai.com/v1/models
Output
- Bundle implementation complete
- Speak API integration verified
- Production-ready patterns applied
Error Handling
| Error | Cause | Solution |
|---|---|---|
| 401 Unauthorized | Invalid API key | Verify SPEAK_API_KEY environment variable |
| 429 Rate Limited | Too many requests | Wait Retry-After seconds, use backoff |
| Audio format error | Wrong codec/sample rate | Convert to WAV 16kHz mono with ffmpeg |
| Session expired | Timeout after 30 min | Start a new conversation session |
Resources
Next Steps
See speak-prod-checklist for production readiness.
Examples
Basic: Apply debug bundle with default configuration for a standard Speak integration.
Advanced: Customize for production with error recovery, monitoring, and team-specific requirements.
When not to use it
- →When Speak API credentials are not configured
- →When ffmpeg is not installed on the host system
Prerequisites
Limitations
- →Audio files must be under 25MB
- →Sessions expire after 30 minutes
- →Requires pcm_s16le codec and 16000Hz sample rate
How it compares
This tool automates the collection of environment and connectivity diagnostics that would otherwise require manual curl commands and individual ffprobe inspections.
Compared to similar skills
speak-debug-bundle side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| speak-debug-bundle (this skill) | 0 | 27d | Review | Intermediate |
| godot | 1,044 | 5mo | Review | Intermediate |
| python-testing-patterns | 77 | 2mo | Review | Intermediate |
| error-handling-patterns | 35 | 2mo | No flags | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
More by jeremylongshore
View all by jeremylongshore →You might also like
godot
bfollington
This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.
python-testing-patterns
wshobson
Implement comprehensive testing strategies with pytest, fixtures, mocking, and test-driven development. Use when writing Python tests, setting up test suites, or implementing testing best practices.
error-handling-patterns
wshobson
Master error handling patterns across languages including exceptions, Result types, error propagation, and graceful degradation to build resilient applications. Use when implementing error handling, designing APIs, or improving application reliability.
chrome-devtools
mrgoonie
Browser automation, debugging, and performance analysis using Puppeteer CLI scripts. Use for automating browsers, taking screenshots, analyzing performance, monitoring network traffic, web scraping, form automation, and JavaScript debugging.
unreal-engine-cpp-pro
sickn33
Expert guide for Unreal Engine 5.x C++ development, covering UObject hygiene, performance patterns, and best practices.
python-performance-optimization
wshobson
Profile and optimize Python code using cProfile, memory profilers, and performance best practices. Use when debugging slow Python code, optimizing bottlenecks, or improving application performance.