Skip to content
/ yap Public

🗣️ A CLI for on-device speech transcription using Speech.framework on macOS 26

License

Notifications You must be signed in to change notification settings

finnvoor/yap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🗣️ yap

A CLI for on-device speech transcription using Speech.framework on macOS 26.

Demo

Usage

USAGE: yap transcribe [--locale <locale>] [--censor] <input-file> [--txt] [--srt] [--output-file <output-file>]

ARGUMENTS:
  <input-file>            Path to an audio or video file to transcribe.

OPTIONS:
  -l, --locale <locale>   (default: current)
  --censor                Replaces certain words and phrases with a redacted form.
  --txt/--srt             Output format for the transcription. (default: --txt)
  -o, --output-file <output-file>
                          Path to save the transcription output. If not provided,
                          output will be printed to stdout.
  -h, --help              Show help information.

Installation

Homebrew

brew install yap

Mint

mint install finnvoor/yap

Examples

Transcribe a YouTube video using yap and yt-dlp

yt-dlp "https://www.youtube.com/watch?v=ydejkIvyrJA" -x --exec yap

Summarize a video using yap and llm

yap video.mp4 | uvx llm -m mlx-community/Llama-3.2-1B-Instruct-4bit 'Summarize this transcript:'

Create SRT captions for a video

yap video.mp4 --srt -o captions.srt

Live System Audio

yap listen transcribes system audio in real time — anything playing on your computer.

USAGE: yap listen [--locale <locale>] [--censor]

OPTIONS:
  -l, --locale <locale>   (default: current)
  --censor                Replaces certain words and phrases with a redacted form.
  -h, --help              Show help information.

Screen Recording permission is required. Grant it to your terminal app in System Settings > Privacy & Security > Screen Recording.

Examples

# Transcribe system audio live
yap listen

# Pipe live transcription to another tool
yap listen | uvx llm 'Translate this to French:'

Listen and Dictate

yap listen-and-dictate transcribes both system audio and microphone input simultaneously — perfect for meeting transcription.

USAGE: yap listen-and-dictate [--locale <locale>] [--censor]

OPTIONS:
  -l, --locale <locale>   (default: current)
  --censor                Replaces certain words and phrases with a redacted form.
  -h, --help              Show help information.

Both Screen Recording and Microphone permissions are required. Grant them to your terminal app in System Settings > Privacy & Security.

Examples

# Transcribe a video call (both sides)
yap listen-and-dictate

# Save a meeting transcript
yap listen-and-dictate > meeting.txt

Dictation

yap dictate transcribes microphone input in real time.

USAGE: yap dictate [--locale <locale>] [--censor]

OPTIONS:
  -l, --locale <locale>   (default: current)
  --censor                Replaces certain words and phrases with a redacted form.
  -h, --help              Show help information.

Microphone permission is required. Grant it to your terminal app in System Settings > Privacy & Security > Microphone.

Examples

# Dictate from your microphone
yap dictate

# Dictate and save to a file
yap dictate > notes.txt

MCP Server

yap includes an MCP server that exposes a transcribe tool, allowing any MCP-compatible agent to transcribe audio and video files.

Claude Code

claude mcp add yap -- yap mcp

Codex

codex mcp add yap -- yap mcp

About

🗣️ A CLI for on-device speech transcription using Speech.framework on macOS 26

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Contributors 3

  •  
  •  
  •  

Languages