skills$openclaw/assemblyai-transcribe
tristanmanchester6.4k

by tristanmanchester

assemblyai-transcribe – OpenClaw Skill

assemblyai-transcribe is an OpenClaw Skills integration for writing workflows. Transcribe audio/video with AssemblyAI (local upload or URL), plus subtitles + paragraph/sentence exports.

6.4k stars1.2k forksSecurity L1
Updated Feb 7, 2026Created Feb 7, 2026writing

Skill Snapshot

nameassemblyai-transcribe
descriptionTranscribe audio/video with AssemblyAI (local upload or URL), plus subtitles + paragraph/sentence exports. OpenClaw Skills integration.
ownertristanmanchester
repositorytristanmanchester/assemblyai-transcribe
languageMarkdown
licenseMIT
topics
securityL1
installopenclaw add @tristanmanchester/assemblyai-transcribe
last updatedFeb 7, 2026

Maintainer

tristanmanchester

tristanmanchester

Maintains assemblyai-transcribe in the OpenClaw Skills directory.

View GitHub profile
File Explorer
3 files
.
_meta.json
324 B
assemblyai.mjs
14.8 KB
SKILL.md
3.5 KB
SKILL.md

name: assemblyai-transcribe description: Transcribe audio/video with AssemblyAI (local upload or URL), plus subtitles + paragraph/sentence exports. homepage: https://www.assemblyai.com/docs user-invocable: true metadata: {"clawdbot":{"skillKey":"assemblyai","emoji":"🎙️","requires":{"bins":["node"],"env":["ASSEMBLYAI_API_KEY"]},"primaryEnv":"ASSEMBLYAI_API_KEY"}}

AssemblyAI transcription + exports

Use this skill when you need to transcribe audio/video or export readable formats (subtitles, paragraphs, sentences) using AssemblyAI.

The helper script in this skill implements the basic REST flow:

  1. (Local files) Upload via POST /v2/upload.
  2. Create a transcript job via POST /v2/transcript.
  3. Poll GET /v2/transcript/:id until the transcript status is completed (or error).

Setup

This skill requires:

  • node on PATH (Node.js 18+ recommended; script uses built-in fetch)
  • ASSEMBLYAI_API_KEY in the environment

Recommended Clawdbot config (~/.clawdbot/clawdbot.json):

{
  skills: {
    entries: {
      // This skill declares metadata.clawdbot.skillKey = "assemblyai"
      assemblyai: {
        enabled: true,
        // Because this skill declares primaryEnv = ASSEMBLYAI_API_KEY,
        // you can use apiKey as a convenience:
        apiKey: "YOUR_ASSEMBLYAI_KEY",
        env: {
          ASSEMBLYAI_API_KEY: "YOUR_ASSEMBLYAI_KEY",

          // Optional: use EU async endpoint
          // ASSEMBLYAI_BASE_URL: "https://api.eu.assemblyai.com"
        }
      }
    }
  }
}

Usage

Run these commands via the Exec tool.

Transcribe (local file or public URL)

Print transcript text to stdout:

node {baseDir}/assemblyai.mjs transcribe "./path/to/audio.mp3"
node {baseDir}/assemblyai.mjs transcribe "https://example.com/audio.mp3"

Write transcript to a file (recommended for long audio):

node {baseDir}/assemblyai.mjs transcribe "./path/to/audio.mp3" --out ./transcript.txt

Pass advanced transcription options

Any fields supported by POST /v2/transcript can be passed via --config:

node {baseDir}/assemblyai.mjs transcribe "./path/to/audio.mp3" \
  --config '{"speaker_labels":true,"summarization":true,"summary_model":"informative","summary_type":"bullets"}' \
  --export json \
  --out ./transcript.json

Export subtitles (SRT/VTT)

Transcribe and immediately export subtitles:

node {baseDir}/assemblyai.mjs transcribe "./path/to/video.mp4" --export srt --out ./subtitles.srt
node {baseDir}/assemblyai.mjs transcribe "./path/to/video.mp4" --export vtt --out ./subtitles.vtt

Or export subtitles from an existing transcript ID:

node {baseDir}/assemblyai.mjs subtitles <transcript_id> srt --out ./subtitles.srt

Export paragraphs / sentences

node {baseDir}/assemblyai.mjs paragraphs <transcript_id> --out ./paragraphs.txt
node {baseDir}/assemblyai.mjs sentences <transcript_id> --out ./sentences.txt

Fetch an existing transcript

node {baseDir}/assemblyai.mjs get <transcript_id> --format json
node {baseDir}/assemblyai.mjs get <transcript_id> --wait --format text

Guidance

  • Prefer --out <file> when output might be large.
  • Keep API keys out of logs and chat; rely on env injection.
  • If a user asks for EU processing/data residency, set ASSEMBLYAI_BASE_URL to the EU host.
  • AssemblyAI requires that uploads and the subsequent transcript request use an API key from the same AssemblyAI project (otherwise you can get a 403 / 'Cannot access uploaded file').
README.md

No README available.

Permissions & Security

Security level L1: Low-risk skills with minimal permissions. Review inputs and outputs before running in production.

Requirements

  • OpenClaw CLI installed and configured.
  • Language: Markdown
  • License: MIT
  • Topics:

FAQ

How do I install assemblyai-transcribe?

Run openclaw add @tristanmanchester/assemblyai-transcribe in your terminal. This installs assemblyai-transcribe into your OpenClaw Skills catalog.

Does this skill run locally or in the cloud?

OpenClaw Skills execute locally by default. Review the SKILL.md and permissions before running any skill.

Where can I verify the source code?

The source repository is available at https://github.com/openclaw/skills/tree/main/skills/tristanmanchester/assemblyai-transcribe. Review commits and README documentation before installing.