Skill Details
Back to Skills

/asr

by ilyakam

Fast, accurate, and incredibly inexpensive automatic speech-to-text transcription service.

View on GitHub

Speech is Cheap (SIC) Skill

Fast, accurate, and incredibly inexpensive automatic speech-to-text transcription service.

🚀 Why use this skill?

  • Disruptive Pricing: $0.06 - $0.12 per hour (2-15x cheaper than Deepgram or OpenAI).
  • Extreme Speed: 100 minutes of audio transcribes in ~1 minute.
  • Multilingual: Supports 100 languages with auto-detection.
  • Agent-Ready: Designed for high-volume, automated pipelines.

🛠 Setup

1. Get an API Key

Sign up at speechischeap.com. Use code CH5 for $5 off.

2. Configure Authentication

This skill looks for your API key in the SIC_API_KEY environment variable.

Add this to your .env or agent config:

SIC_API_KEY=your_key_here

📖 Usage

🤖 TL;DR for Agents

When this skill is installed, you can transcribe any URL from an OpenClaw session and get the JSON results immediately by running: ./skills/asr/scripts/asr.sh transcribe --url "https://example.com/audio.mp3"

Transcribe a URL

# Basic transcription
./skills/asr/scripts/asr.sh transcribe --url "https://example.com/audio.mp3"

# Advanced transcription with options
./skills/asr/scripts/asr.sh transcribe --url "https://example.com/audio.mp3" \
  --speakers --words --labels \
  --language "en" \
  --format "srt" \
  --private

Transcribe a Local File

Perfect for processing audio already on your disk. This handles the upload automatically.

# Upload and transcribe local media
./skills/asr/scripts/asr.sh transcribe --file "./local-audio.wav"

# Upload with webhook callback
./skills/asr/scripts/asr.sh transcribe --file "./local-audio.wav" --webhook "https://mysite.com/callback"

# Note: For local files, the skill handles the multi-part upload to
# https://upload.speechischeap.com before starting the transcription.

Supported Options

  • --speakers: Enable speaker diarization
  • --words: Enable word-level timestamps
  • --labels: Enable audio labeling (music, noise, etc.)
  • --stream: Enable streaming output
  • --private: Do not store audio/transcript (privacy mode)
  • --language <code>: ISO language code (e.g., 'en', 'es')
  • --confidence <float>: Minimum confidence threshold (default 0.5)
  • --format <fmt>: Output format (json, srt, vtt, webvtt)
  • --webhook <url>: URL to receive job completion payload
  • --segment-duration <n>: Segment duration in seconds (default 30)

Check Job Status

./skills/asr/scripts/asr.sh status "job-id-here"

🤖 For Agents

The asr.sh command-line tool returns JSON by default when successful, making it easy to pipe into other tools or parse directly.

If the SIC_API_KEY is missing, the tool will provide a clear error message and a direct link to the signup page.