Feature Request: Remappable voice push-to-talk key + system-wide Claude dictation for Windows

Resolved 💬 4 comments Opened Mar 17, 2026 by Tereseus Closed Apr 14, 2026

Feature Request

1. Make the voice push-to-talk activation key remappable via keybindings.json

Currently, Claude Code's voice dictation (hold-to-talk) is hardcoded to the spacebar. This makes it impossible to trigger via AutoHotkey or other input remapping tools, because the terminal interprets simulated spacebar events as character input rather than a hold gesture.

The ask: Expose voice:pushToTalk (or similar) as a remappable keybinding in keybindings.json, ideally supporting keys like F13-F24 or modifier combos that terminals pass through as escape sequences rather than characters. This would allow tools like AutoHotkey to trigger Claude Code voice mode via mouse buttons or other hardware inputs.

2. System-wide Claude voice dictation as a standalone Windows program (replace Win+H)

Windows' built-in voice typing (Win+H) is significantly worse than Claude Code's speech-to-text recognition. Claude's voice recognition is dramatically more accurate. A standalone system-wide dictation tool powered by Claude's STT engine would be a massive upgrade — usable in any application, not just Claude Code's terminal.

Real-world user workflow (AutoHotkey script in use for ~1 year)

This user has been using an AutoHotkey script to map mouse side buttons to Win+H for hands-free dictation. The workflow is: press a mouse button, walk around the room, talk, and text appears. It works great ergonomically but Windows' recognition quality is poor.

Here is the actual AHK script in use:

#Requires AutoHotkey v2.0

; Auto-elevate to admin if not already running as admin
if not A_IsAdmin {
    try Run '*RunAs "' A_ScriptFullPath '"'
    ExitApp
}

; Maps the "Back" side button (closer to your thumb/wrist) to Win + H
XButton1::Send "#h"

; Maps the "Forward" side button to F20 (remapped to Claude Code voice push-to-talk)
; Hold the button = hold F20, release the button = release F20
XButton2::SendInput "{F20 down}"
XButton2 Up::SendInput "{F20 up}"

Current state:

  • XButton1 (back mouse button) → triggers Win+H (Windows voice typing) — works system-wide but recognition is poor
  • XButton2 (forward mouse button) → attempted to trigger Claude Code voice via F20 keybinding remap — doesn't work because voice:pushToTalk isn't an exposed keybinding

Ideal state:

  • Mouse button triggers Claude-quality voice dictation system-wide in any app, OR
  • At minimum, Claude Code's voice push-to-talk key is remappable so mouse buttons can trigger it via AHK

Why this matters

  • Claude's STT is "10,000 times better" than Windows voice typing (user's words, and honestly accurate)
  • The spacebar hold requirement forces the user to sit at the keyboard — defeats the purpose of voice input
  • A mouse button trigger lets the user walk around and dictate naturally
  • System-wide Claude dictation would be a killer feature that replaces a universally frustrating Windows component

Environment

  • Windows 11
  • Windows Terminal (PowerShell)
  • AutoHotkey v2.0
  • Claude Code with voiceEnabled: true

View original on GitHub ↗

This issue has 4 comments on GitHub. Read the full discussion on GitHub ↗