GitHub - itsfabioroma/transcribee: Open source macOS video transcriber that builds a self-organizing knowledge base ๐Ÿ ยท GitHub

Source: original

transcribee ๐Ÿ

Open source macOS transcriber for YouTube, Instagram Reels, TikTok, and local media โ€” evolves a self-organizing knowledge base.

transcribee "https://youtube.com/watch?v=..." transcribee "https://instagram.com/reel/..." transcribee "https://vt.tiktok.com/..." transcribee ~/Downloads/podcast.mp3

Over time, your ~/Documents/transcripts/ folder naturally evolves into a personal library:

transcripts/ โ”œโ”€โ”€ AI-Research/ โ”‚ โ”œโ”€โ”€ ilya-sutskever-agi-2024/ โ”‚ โ””โ”€โ”€ anthropic-constitutional-ai/ โ”œโ”€โ”€ Startups/ โ”‚ โ”œโ”€โ”€ ycombinator-how-to-get-users/ โ”‚ โ””โ”€โ”€ pmarca-founder-mode/ โ””โ”€โ”€ Health/ โ””โ”€โ”€ huberman-sleep-optimization/

Each transcript is speaker-labeled and ready to paste into ChatGPT, Claude, or any LLM.

Why ๐Ÿฏ

I consume a lot of video content โ€” YouTube, Instagram, TikTok, podcasts, interviews. I wanted to:

transcribee does exactly that. Transcribe once, knowledge stays forever.

Features ๐Ÿชป

Use with OpenClaw ๐Ÿค–

transcribee is available as an OpenClaw skill. Just ask your agent to transcribe any YouTube video:

"Transcribe this video: https://youtube.com/watch?v=..."

Install the skill

Install from ClawHub (recommended)

openclaw skills install transcribee

Or clone manually

git clone https://github.com/itsfabioroma/transcribee.git ~/.openclaw/workspace/skills/transcribee

Make sure you have the dependencies installed (brew install yt-dlp ffmpeg) and API keys configured.

Quick Start ๐Ÿชบ

Install dependencies (macOS)

brew install yt-dlp ffmpeg pnpm install

Configure API keys

cp .env.example .env

Add your ElevenLabs + Anthropic API keys to .env

Transcribe anything

transcribee "https://youtube.com/watch?v=..." transcribee "https://instagram.com/reel/..." transcribee "https://vt.tiktok.com/..." transcribee ~/Downloads/podcast.mp3 transcribee ~/Videos/interview.mp4

Shell alias (recommended)

Add to ~/.zshrc:

alias transcribee="noglob /path/to/transcribee/transcribe.sh"

Output ๐Ÿฏ

Each transcript saves to ~/Documents/transcripts/{category}/{title}/:

File | What it's for

transcript.txt | Speaker-labeled transcript โ€” paste this into your LLM metadata.json | Video info, language, auto-detected theme

Raw JSON (optional)

For power users who need word-level timestamps and confidence scores:

transcribee --raw "https://youtube.com/watch?v=..."

This adds transcript-raw.json with the full ElevenLabs response.

How it works ๐Ÿ

  1. Downloads audio from YouTube (yt-dlp) or extracts from local video (ffmpeg)
  2. Transcribes with ElevenLabs (scribe_v1_experimental with speaker diarization)
  3. Claude analyzes content and existing library structure
  4. Auto-categorizes into the right folder
  5. Saves transcript files with metadata

Requirements

Supported formats

Type | Formats

Audio | mp3, m4a, wav, ogg, flac Video | mp4, mkv, webm, mov, avi URLs | youtube.com, youtu.be, instagram.com/reel, tiktok.com bzz bzz ๐Ÿ