Help us improve
Share bugs, ideas, or general feedback.
Share bugs, ideas, or general feedback.
Share bugs, ideas, or general feedback.
By aaddrick
Push-to-talk voice input for Claude Code. Hold Ctrl+Space to record, release to transcribe and insert text.
npx claudepluginhub aaddrick/claude-ptt --plugin pttA Claude Code plugin that enables voice input via push-to-talk. Hold a hotkey to record your voice, release to transcribe and insert text into Claude Code.
Ctrl+Space to record, release to transcribe/plugin marketplace add aaddrick/claude-ptt
/plugin install ptt@claude-ptt-marketplace
git clone https://github.com/aaddrick/claude-ptt.git
cd claude-ptt
npm install
npm run build
Configuration is stored in ~/.claude/ptt-config.json:
{
"hotkey": "Ctrl+Space",
"whisper": {
"openaiApiKey": null,
"localModelPath": null,
"preferredMode": "api",
"enableFallback": true,
"language": "en"
},
"audio": {
"sampleRate": 16000,
"silenceThreshold": 0.5
},
"keystroke": {
"waylandBackend": "wtype"
},
"feedback": {
"showRecordingIndicator": true
}
}
API Mode (Recommended for ease of use):
OPENAI_API_KEY environment variable, oropenaiApiKey in configLocal Mode (Recommended for privacy):
localModelPath to your model fileUse preferredMode to choose which backend to try first:
"api": Try OpenAI API first"local": Try local whisper.cpp firstEnable enableFallback to automatically try the other backend if the preferred one fails.
No additional setup required. The plugin uses nut.js for keystroke simulation.
Grant accessibility permissions to your terminal application:
Install libxtst for keystroke simulation:
sudo apt install libxtst-dev
Install one of the following for keystroke simulation:
# Option 1: wtype (recommended, no daemon required)
sudo apt install wtype
# Option 2: ydotool (requires daemon)
sudo apt install ydotool
sudo systemctl enable --now ydotool
# Option 3: dotool
# Build from source: https://sr.ht/~geb/dotool/
The plugin uses system audio tools:
arecord (ALSA, usually pre-installed)sox (install via brew install sox or download from http://sox.sourceforge.net/)# Via npm
npm start
# Or directly
node dist/daemon.js
Ctrl+Space to recordCtrl+Space to transcribeThe plugin provides MCP tools for configuration:
ptt_get_config: Get current configurationptt_set_config: Update configurationptt_get_status: Get daemon statusptt_get_platform_info: Get platform info and setup instructionswhich arecordwhich sox# Install dependencies
npm install
# Build TypeScript
npm run build
# Watch mode
npm run watch
# Run daemon
npm start
# Run MCP server
npm run mcp-server
MIT
Aaddrick Williams aaddrick@gmail.com
Admin access level
Server config contains admin-level keywords
Share bugs, ideas, or general feedback.
Based on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
Voice conversations with Claude Code using local speech-to-text and text-to-speech
Voice I/O for Claude Code - speak to users and hear their voice input
Voice-first interaction with automatic TTS markers for Claude Code
Upstash Context7 MCP server for up-to-date documentation lookup. Pull version-specific documentation and code examples directly from source repositories into your LLM context.
Comprehensive skill pack with 66 specialized skills for full-stack developers: 12 language experts (Python, TypeScript, Go, Rust, C++, Swift, Kotlin, C#, PHP, Java, SQL, JavaScript), 10 backend frameworks, 6 frontend/mobile, plus infrastructure, DevOps, security, and testing. Features progressive disclosure architecture for 50% faster loading.
Comprehensive startup business analysis with market sizing (TAM/SAM/SOM), financial modeling, team planning, and strategic research
Comprehensive GitHub CLI search commands and troubleshooting. Provides skills for gh search code, commits, issues, PRs, and repos with proper exclusion syntax, quoting, and platform-specific handling.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge.
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge.
Sign in to claim