By aaddrick
Push-to-talk voice input for Claude Code. Hold Ctrl+Space to record, release to transcribe and insert text.
A 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 [email protected]
Admin access level
Server config contains admin-level keywords
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
npx claudepluginhub aaddrick/claude-ptt --plugin pttComprehensive 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.
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
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
v9.44.1 — Patch release for Gemini environment/version detection and qwen auth gating. Run /octo:setup.