sbusso/claudeclaw/use-local-whisper
Claude Code and agent skill by sbusso/claudeclaw
- community
Checking that the SKILL.md file is still in the repository.
Use when the user wants local voice transcription instead of OpenAI Whisper API. Switches to whisper.cpp running on Apple Silicon. WhatsApp only for now. Requires voice-transcription skill to be applied first.
Install
npx vskill@latest install sbusso/claudeclaw/use-local-whisperSKILL.md
Use Local Whisper
Switches voice transcription from OpenAI's Whisper API to local whisper.cpp. Runs entirely on-device — no API key, no network, no cost.
Channel support: Currently WhatsApp only. The transcription module (src/transcription.ts) uses Baileys types for audio download. Other channels (Telegram, Discord, etc.) would need their own audio-download logic before this skill can serve them.
Note: The Homebrew package is whisper-cpp, but the CLI binary it installs is whisper-cli.
Prerequisites
voice-transcriptionskill must be applied first (WhatsApp channel)- macOS with Apple Silicon (M1+) recommended
whisper-cppinstalled:brew install whisper-cpp(provides thewhisper-clibinary)ffmpeginstalled:brew install ffmpeg- A GGML model file downloaded to
data/models/
Phase 1: Pre-flight
Check if already applied
Check if src/transcription.ts already uses whisper-cli:
If already applied, skip to Phase 3 (Verify).
Check dependencies are installed
If missing, install via Homebrew:
Check for model file
If no model exists, download the base model (148MB, good balance of speed and accuracy):
For better accuracy at the cost of speed, use ggml-small.bin (466MB) or ggml-medium.bin (1.5GB).
Phase 2: Apply Code Changes
Ensure WhatsApp fork remote
If whatsapp is missing, add it:
Merge the skill branch
This modifies src/transcription.ts to use the whisper-cli binary instead of the OpenAI API.
Validate
Phase 3: Verify
Ensure launchd PATH includes Homebrew
The ClaudeClaw launchd service runs with a restricted PATH. whisper-cli and ffmpeg are in /opt/homebrew/bin/ (Apple Silicon) or /usr/local/bin/ (Intel), which may not be in the plist's PATH.
Service name: Derived from the directory name:com.claudeclaw.<dirname>(macOS) /claudeclaw-<dirname>(Linux). For example, if cwd ismy-assistant, the service iscom.claudeclaw.my-assistant. Determine the correct service name before running service commands below.
Check the current PATH:
If /opt/homebrew/bin is missing, add it to the <string> value inside the PATH key in the plist. Then reload:
Build and restart
Test
Send a voice note in any registered group. The agent should receive it as [Voice: <transcript>].
Check logs
Look for:
Transcribed voice message— successful transcriptionwhisper.cpp transcription failed— check model path, ffmpeg, or PATH
Configuration
Environment variables (optional, set in .env):
| Variable | Default | Description | |
|---|---|---|---|
WHISPER_BIN | whisper-cli | Path to whisper.cpp binary | |
WHISPER_MODEL | data/models/ggml-base.bin | Path to GGML model file |
Troubleshooting
"whisper.cpp transcription failed": Ensure both whisper-cli and ffmpeg are in PATH. The launchd service uses a restricted PATH — see Phase 3 above. Test manually:
Transcription works in dev but not as service: The launchd plist PATH likely doesn't include /opt/homebrew/bin. See "Ensure launchd PATH includes Homebrew" in Phase 3.
Slow transcription: The base model processes ~30s of audio in <1s on M1+. If slower, check CPU usage — another process may be competing.
Wrong language: whisper.cpp auto-detects language. To force a language, you can set WHISPER_LANG and modify src/transcription.ts to pass -l $WHISPER_LANG.
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/use-local-whisper/SKILL.md
Popularity
- Repository stars
- 173
- Repository forks
- 56
- 7-day trend score
- 26
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/sbusso/claudeclaw/use-local-whisper)