Agent skill · writing content · sundial-org

openrouter-transcribe

Transcribe audio files via OpenRouter using audio-capable models (Gemini, GPT-4o-audio, etc).

Why this skill is useful

Adds an executable script for audio transcription using OpenRouter's API, which includes specific commands and error handling not commonly found in public documentation.

What it needs

Requires base64, curl, ffmpeg, jq installed locally. Requires openrouter account access. About 1k tokens when loaded. Last updated 2026-03-07. 639 stars on the source repository.

What this skill does

OpenRouter Audio Transcription Transcribe audio files using OpenRouter's chat completions API with inputaudio content type. Works with any audio-capable model. Quick start Output goes to stdout. Useful flags How it works 1. Converts audio to WAV (mono, 16kHz) using ffmpeg 2. Base64 encodes the audio 3. Sends to OpenRouter chat completions with inputaudio content 4. Extracts transcript from response API key Set OPENROUTERAPIKEY env var, or configure in ~/.clawdbot/clawdbot.json: Headers The script sends identification headers to OpenRouter: X-Title: Caller name (default: "Peanut/Clawdbot") HTTP-Referer: Reference URL (default: "https://clawdbot.com") These show up in your OpenRouter dashboard for tracking. Troubleshooting ffmpeg format errors: The script uses a temp directory (not mktemp -t file.wav) because macOS's mktemp adds random suffixes after the extension, breaking format detection. Argument list too long: Large audio files produce huge base64 strings that exceed shell argument limits. The script writes to temp files (--rawfile for jq, @file for curl) instead of passing data as arguments. Empty response: If you get "Empty response from API", the script will dump the raw response for debugging. Common causes: Invalid API key Model doesn't support audio input Audio file too large or corrupted

How to use it

Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:

@skills sundial-org/openrouter-transcribe

View the source on GitHub

Browse the @skills marketplace