Skip to content

abiassi/abispeak

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

86 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎙️ abiSPEAK

Homebrew Python 3.11+ License: MIT

Turn your voice into text with a key hold — minimal, fast, and macOS-native.

Overview

abiSPEAK is a set-it-and-forget-it speech-to-text utility for macOS. Hold the Fn key to record, release to transcribe, and your words appear wherever your cursor is — automatically pasted. Lives in your menu bar, stays out of your way.

Features

  • 🖥️ Menu Bar App: Runs quietly in the menu bar with visual recording indicator
  • Fn Key Activation: Hold Fn to record, release to transcribe (or quick-tap to toggle)
  • 📋 Auto-Paste: Text lands right where you need it, no extra clicks
  • 🔊 Audio Cues: Subtle beeps when recording starts and stops
  • 🍎 Mac Optimized: Uses Apple Silicon acceleration (MLX, MPS)
  • 🌍 Multilingual: Default model supports 25 European languages with auto-detection
  • 📜 History: Access recent transcriptions from the menu bar

Requirements

  • macOS: 12.3+ (Apple Silicon recommended)
  • Python: 3.10+
  • Permissions:
    • 🎤 Microphone access
    • ⌨️ Input Monitoring (for Fn key detection)

Installation

Using Homebrew (Recommended)

brew tap abiassi/abispeak
brew install --cask abispeak

Manual Installation

git clone https://github.com/abiassi/abispeak.git
cd abispeak
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

For additional model support:

pip install -r requirements-nvidia.txt   # NVIDIA NeMo models
pip install -r requirements-whisper.txt  # OpenAI Whisper

Usage

Quick Start

  1. Launch abiSPEAK (from Applications or python menu_bar_app.py)
  2. Grant permissions when prompted (Microphone, Input Monitoring)
  3. Hold Fn to record, release to transcribe
  4. Text is automatically pasted at your cursor

Menu Bar Controls

Click the menu bar icon to access:

  • Audio Device: Select your microphone
  • Model: Switch transcription models
  • Recent Transcriptions: Copy previous transcriptions
  • Preferences: Configure settings

Activation Modes

  • Hold Mode: Hold Fn to record, release to stop (default)
  • Toggle Mode: Quick-tap Fn to start, tap again to stop

Models

Alias Model Notes
parakeet ONNX INT8 v3 Default, 25 languages, fastest
parakeet-mlx MLX Parakeet Apple Silicon optimized
canary Canary 1B Flash Multilingual (En, De, Fr, Es)
whisper Whisper Large v3 Most accurate, slower
# List available models
python menu_bar_app.py --list-models

# Use a specific model
python menu_bar_app.py --model whisper

Command Line Options

python menu_bar_app.py [OPTIONS]

Options:
  --model MODEL        Select speech recognition model (default: parakeet)
  --list-models        Show all available models
  --no-history         Disable transcription history
  --debug              Enable debug logging

Troubleshooting

  • Fn key not working: Grant Input Monitoring permission in System Settings → Privacy & Security
  • No transcription: Check Microphone permission is granted
  • Mic indicator stays on: Update to v1.7.2+ which fixes this issue

Privacy

  • All transcription happens locally on your Mac
  • No audio is sent to external servers
  • History stored in ~/.abispeak/history.db (delete to clear)

Credits

Originally forked from patelnav/ctrlspeak.

Contributors

License

MIT License

About

macOS menu bar speech-to-text utility

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors