Pronunciation Coach
by @crazybuffon
Pronunciation coaching with real voice analysis using Azure Speech Services. Analyzes audio files for phoneme-level accuracy, fluency, prosody, and intonatio...
clawhub install pronunciation-coachπ About This Skill
name: pronunciation-coach description: Pronunciation coaching with real voice analysis using Azure Speech Services. Analyzes audio files for phoneme-level accuracy, fluency, prosody, and intonation scores. env: AZURE_SPEECH_KEY: Azure Speech Service API Key AZURE_SPEECH_REGION: Azure Speech Service Region (e.g., southeastasia)
Pronunciation Coach
Analyze spoken English pronunciation using Azure Speech Services and provide actionable coaching feedback.
Privacy Note: This skill reads local voice messages from ~/.openclaw/media/inbound/ and transmits them to Microsoft Azure Speech Services for processing.
Prerequisites
AZURE_SPEECH_KEY env varAZURE_SPEECH_REGION env var (e.g., southeastasia)Workflow
1. Receive Audio
Voice messages from Telegram are stored in ~/.openclaw/media/inbound/. Find the latest .ogg file matching the message timestamp.
ls -lt ~/.openclaw/media/inbound/*.ogg | head -5
2. Run Assessment
scripts/pronunciation-assess.sh ""
audio_file: Path to the voice message (ogg/wav/mp3/m4a)reference_text: What the speaker intended to say (from transcript)3. Generate Report
Pipe the JSON output into the report generator:
scripts/pronunciation-assess.sh audio.ogg "reference text" | node scripts/pronunciation-report.js
The report includes:
4. Provide Coaching
After generating the report:
1. Send the text report to the user (scores + word breakdown)
2. Identify top 3 problem sounds from the phoneme scores
3. Explain each problem β what the correct sound is and how to produce it
- See references/phoneme-guide.md for phoneme descriptions and fixes
4. Send a voice message (via TTS) demonstrating the correct pronunciation of problem words
5. Assign practice β give the user specific sentences to re-record focusing on weak sounds
Coaching Tips
βοΈ Configuration
AZURE_SPEECH_KEY env varAZURE_SPEECH_REGION env var (e.g., southeastasia)