← ClaudeAtlas

audio-analysislisted

Transcribe a video or audio file. Default is local Whisper (faster-whisper, free, on-device). ElevenLabs is opt-in for speaker diarization / audio events or on explicit request. Triggers on "transcribe", "captions", "speech-to-text", or any request to extract spoken text from a media file.
Nagellabs/libi · ★ 2 · AI & Automation · score 75
Install: claude install-skill Nagellabs/libi
# Audio Analysis (Transcription) Use this skill whenever the user wants a transcript for a video or audio file. The default provider is **local Whisper** — free, no API key. ## Path A — Whisper (default) ``` libi.analysis_transcribe_audio({ fileId }) ``` `provider` defaults to `whisper`. The tool runs the whole pipeline server-side: extract audio, chunk long files, run faster-whisper per chunk, save + auto-aggregate into the `transcript_v1` step with word-level timings. **First-run bootstrap.** If the response is `{ status: "needs_install", hint: ... }`, the Whisper model isn't downloaded yet. Do this once: 1. `libi.get_install_plan({ mcpId: "whisper" })` 2. Follow it — it calls `libi.whisper_download_model({ model: "small" })` then `libi.update_dep_status({ mcpId: "whisper", status: "installed" })`. 3. Retry `libi.analysis_transcribe_audio({ fileId })`. **Response shape:** ``` { status: "ready" | "partial" | "failed" | "needs_install", totalChunks, readyChunks, failedChunks: [{ chunkIndex, error }], durationSeconds, wordCount, language, provider?, hint? } ``` On `ready` — done. On `partial`/`failed` — retry only failed chunks: `libi.analysis_transcribe_audio({ fileId, retry: true })`. Inspect with `libi.analysis_get_audio_chunks({ fileId })` if failures persist. ### If accuracy is poor faster-whisper quality scales with model size. To escalate: 1. `libi.whisper_list_models` — see sizes + what's installed. 2. Suggest the next size up to the user. **Downl