9Router Speech-to-Text
decolua/9router
Transcribes audio files into text or subtitles through 9Router's Whisper-compatible endpoint, using models from OpenAI, Groq, Gemini, Deepgram and others.
Add voice message transcription to ClaudeClaw using OpenAI's Whisper API.
$ npx skills add sbusso/claudeclaw --skill add-voice-transcription -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install sbusso/claudeclaw add-voice-transcription --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/sbusso/claudeclaw.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/add-voice-transcription .claude/skills/add-voice-transcription && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "add-voice-transcription" agent skill from https://github.com/sbusso/claudeclaw/tree/main/skills/add-voice-transcription into .claude/skills/add-voice-transcription/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "add-voice-transcription", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/sbusso/claudeclaw/tree/main/skills/add-voice-transcriptionType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add sbusso/claudeclaw --skill add-voice-transcription -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install sbusso/claudeclaw add-voice-transcription --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sbusso/claudeclaw.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/add-voice-transcription .agents/skills/add-voice-transcription && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "add-voice-transcription" agent skill from https://github.com/sbusso/claudeclaw/tree/main/skills/add-voice-transcription into .agents/skills/add-voice-transcription/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "add-voice-transcription", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add sbusso/claudeclaw --skill add-voice-transcription -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install sbusso/claudeclaw add-voice-transcription --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sbusso/claudeclaw.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/add-voice-transcription .cursor/skills/add-voice-transcription && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "add-voice-transcription" agent skill from https://github.com/sbusso/claudeclaw/tree/main/skills/add-voice-transcription into .cursor/skills/add-voice-transcription/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "add-voice-transcription", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/sbusso/claudeclaw.git --path skills/add-voice-transcription--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add sbusso/claudeclaw --skill add-voice-transcription -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install sbusso/claudeclaw add-voice-transcription --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sbusso/claudeclaw.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/add-voice-transcription .gemini/skills/add-voice-transcription && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "add-voice-transcription" agent skill from https://github.com/sbusso/claudeclaw/tree/main/skills/add-voice-transcription into .gemini/skills/add-voice-transcription/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "add-voice-transcription", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install sbusso/claudeclaw add-voice-transcriptionInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add sbusso/claudeclaw --skill add-voice-transcription -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/sbusso/claudeclaw.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/add-voice-transcription .github/skills/add-voice-transcription && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "add-voice-transcription" agent skill from https://github.com/sbusso/claudeclaw/tree/main/skills/add-voice-transcription into .github/skills/add-voice-transcription/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "add-voice-transcription", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add sbusso/claudeclaw --skill add-voice-transcription -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install sbusso/claudeclaw add-voice-transcription --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sbusso/claudeclaw.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/add-voice-transcription .opencode/skills/add-voice-transcription && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "add-voice-transcription" agent skill from https://github.com/sbusso/claudeclaw/tree/main/skills/add-voice-transcription into .opencode/skills/add-voice-transcription/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "add-voice-transcription", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
add-voice-transcriptionAdd voice message transcription to ClaudeClaw using OpenAI's Whisper API.
Add Voice Transcription is an agent skill from sbusso/claudeclaw. Add voice message transcription to ClaudeClaw using OpenAI's Whisper API. Automatically transcribes WhatsApp voice notes so the agent can read and respond to them.
Its SKILL.md is about 1.1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Media & Creative, covering Transcription. It works with OpenAI, WhatsApp and Whisper. The repository describes itself as: Use Claude to orchestrate agents like OpenClaw. The licence is MIT.
4 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 1395af4. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
gitnpmnpxcurlFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
api.openai.comgithub.comAlso links to:
platform.openai.comFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
OPENAI_API_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Add Voice Transcription loads about 1.1k tokens when it runs. Until then it costs about 47 tokens; SKILL.md has 484 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
Add to `.env`:mkdir -p data/env && cp .env data/env/envds environment from `data/env/env`, not `.env` directly.NAI_API_KEY not set` — key missing from `.env`1. Check `OPENAI_API_KEY` is set in `.env` AND synced to `data/env/env`Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from sbusso/claudeclaw at commit 1395af4, republished under its MIT licence (© sbusso). 484 words, ~1,137 tokens.
.claude/skills/add-voice-transcription/SKILL.md (or your agent's skills folder).This skill adds automatic voice message transcription to ClaudeClaw's WhatsApp channel using OpenAI's Whisper API. When a voice note arrives, it is downloaded, transcribed, and delivered to the agent as [Voice: <transcript>].
Check if src/transcription.ts exists. If it does, skip to Phase 3 (Configure). The code changes are already in place.
Use AskUserQuestion to collect information:
AskUserQuestion: Do you have an OpenAI API key for Whisper transcription?
If yes, collect it now. If no, direct them to create one at https://platform.openai.com/api-keys.
Prerequisite: WhatsApp must be installed first (skill/whatsapp merged). This skill modifies WhatsApp channel files.
git remote -vIf whatsapp is missing, add it:
git remote add whatsapp https://github.com/qwibitai/claudeclaw-whatsapp.gitgit fetch whatsapp skill/voice-transcription
git merge whatsapp/skill/voice-transcription || {
git checkout --theirs package-lock.json
git add package-lock.json
git merge --continue
}This merges in:
src/transcription.ts (voice transcription module using OpenAI Whisper)src/channels/whatsapp.ts (isVoiceMessage check, transcribeAudioMessage call)src/channels/whatsapp.test.tsopenai npm dependency in package.jsonOPENAI_API_KEY in .env.exampleIf the merge reports conflicts, resolve them by reading the conflicted files and understanding the intent of both sides.
npm install --legacy-peer-deps
npm run build
npx vitest run src/channels/whatsapp.test.tsAll tests must pass and build must be clean before proceeding.
If the user doesn't have an API key:
I need you to create an OpenAI API key:
- Go to https://platform.openai.com/api-keys
- Click "Create new secret key"
- Give it a name (e.g., "ClaudeClaw Transcription")
- Copy the key (starts with
sk-)Cost:
$0.006 per minute of audio ($0.003 per typical 30-second voice note)
Wait for the user to provide the key.
Add to .env:
OPENAI_API_KEY=<their-key>Sync to container environment:
mkdir -p data/env && cp .env data/env/envThe container reads environment from data/env/env, not .env directly.
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.
npm run build
launchctl kickstart -k gui/$(id -u)/com.claudeclaw # macOS
# Linux: systemctl --user restart claudeclawTell the user:
Send a voice note in any registered WhatsApp chat. The agent should receive it as
[Voice: <transcript>]and respond to its content.
tail -f logs/claudeclaw.log | grep -i voiceLook for:
Transcribed voice message — successful transcription with character countOPENAI_API_KEY not set — key missing from .envOpenAI transcription failed — API error (check key validity, billing)Failed to download audio message — media download issueOPENAI_API_KEY is set in .env AND synced to data/env/envcurl -s https://api.openai.com/v1/models -H "Authorization: Bearer $OPENAI_API_KEY" | head -c 200Check logs for the specific error. Common causes:
Verify the chat is registered and the agent is running. Voice transcription only runs for registered groups.
© sbusso, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/add-voice-transcription of sbusso/claudeclaw.
Open the folder on GitHubat commit 1395af4
Add Voice Transcription next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Add Voice Transcription this skillsbusso/claudeclaw | 194 | — | ~1.1k | Automated safety check: Notes | MIT | |
| 9Router Speech-to-Textdecolua/9router | 31k | — | ~914 | Automated safety check: Pass | MIT | |
| Openai Whisper APIopenclaw/openclaw | 392k | 1 repos | ~518 | Automated safety check: Pass | MIT | |
| Keirouter Sttmydisha/keirouter | 147 | — | ~680 | Automated safety check: Pass | MIT | |
| Openai Whispercoco-research/coco | 513 | — | ~964 | Automated safety check: Pass | Custom licence | |
| Openai Whisper APItrpc-group/trpc-agent-go | 1.9k | 12 repos | ~288 | Automated safety check: Pass | Apache-2.0 |
decolua/9router
Transcribes audio files into text or subtitles through 9Router's Whisper-compatible endpoint, using models from OpenAI, Groq, Gemini, Deepgram and others.
openclaw/openclaw
OpenAI Audio Transcriptions API via curl; gpt-4o-transcribe, mini, diarize, or whisper-1.
mydisha/keirouter
Speech-to-text via KeiRouter /v1/audio/transcriptions using OpenAI Whisper / Groq / Gemini / Deepgram / AssemblyAI models.
coco-research/coco
Speech-to-text transcription via OpenAI Whisper. An agent skill from coco-research/coco.
trpc-group/trpc-agent-go
Transcribe audio via OpenAI Audio Transcriptions API (Whisper).
Orchestra-Research/AI-Research-SKILLs
Transcribes audio with OpenAI's Whisper: 99 languages, translation to English, language detection, six model sizes and word-level timestamps, from Python or the CLI.
sbusso/claudeclaw
Debug container agent issues. An agent skill from sbusso/claudeclaw.
sbusso/claudeclaw
X (Twitter) integration for ClaudeClaw. An agent skill from sbusso/claudeclaw.
sbusso/claudeclaw
Add Gmail integration to ClaudeClaw. An agent skill from sbusso/claudeclaw.
sbusso/claudeclaw
Add QMD (Query Markup Documents) as an advanced memory search backend.
sbusso/claudeclaw
Add Telegram as a channel. An agent skill from sbusso/claudeclaw.
sbusso/claudeclaw
Add Agent Swarm (Teams) support to Telegram. An agent skill from sbusso/claudeclaw.
Categories
Add voice message transcription to ClaudeClaw using OpenAI's Whisper API. Add Voice Transcription is an agent skill from sbusso/claudeclaw. Add voice message transcription to ClaudeClaw using OpenAI's Whisper API.
Add Voice Transcription fits situations like: tasks that involve Transcription.
Run `npx skills add sbusso/claudeclaw --skill add-voice-transcription -a claude-code`. Or copy the skill folder (skills/add-voice-transcription in sbusso/claudeclaw) into .claude/skills/add-voice-transcription in your project. Claude Code loads it when a task matches its description.
Run `npx skills add sbusso/claudeclaw --skill add-voice-transcription -a codex`. Or copy the skill folder (skills/add-voice-transcription in sbusso/claudeclaw) into .agents/skills/add-voice-transcription in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add sbusso/claudeclaw --skill add-voice-transcription -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/add-voice-transcription, .gemini/skills/add-voice-transcription, .github/skills/add-voice-transcription and .opencode/skills/add-voice-transcription in your project.
Going by SKILL.md and its folder, Add Voice Transcription needs the command-line tools its instructions call (git, npm, npx and curl) and credentials named OPENAI_API_KEY. Our summary lists: Node.js; A credential in OPENAI_API_KEY.
SKILL.md names 3 domains. In commands or code: api.openai.com and github.com; the agent is likely to contact these when it follows the instructions. As links in the text: platform.openai.com. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Add Voice Transcription is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.1k tokens (SKILL.md is roughly 4.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Add Voice Transcription: 9Router Speech-to-Text (decolua/9router, 31k stars), Openai Whisper API (openclaw/openclaw, 392k stars), Keirouter Stt (mydisha/keirouter, 147 stars) and Openai Whisper (coco-research/coco, 513 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
sbusso (a GitHub user) maintains it in sbusso/claudeclaw, which has 194 GitHub stars. The repository holds 23 skills in this directory. The repository was last updated on August 12, 2026.
Source: sbusso/claudeclaw on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.