Software requirements

Classification: Internal · Version: 1.0 · Audience: Engineering leadership · Primary focus: Platform, dependencies, security

Formal platform, security, and delivery requirements for the Voice Hotkey application. Product context is in the Executive overview; UX detail is in the Design guide.

1. Platform requirements

RequirementSpecification
Operating systemLinux (kernel 5.x+)
Display serverX11 or Wayland with XWayland
Python3.9 or later
Audio subsystemPulseAudio or PipeWire (via PortAudio)
Clipboardxclip, xsel, or wl-copy
FFmpegRequired by Whisper for audio decoding

2. Python dependencies

PackagePurposeLicense
pynputGlobal keyboard listenerLGPL-3.0
sounddeviceAudio capture via PortAudioMIT
numpyAudio buffer managementBSD
openai-whisperLocal speech-to-textMIT
pyperclipCross-platform clipboardBSD
tomliTOML parsing (Python < 3.11)MIT

3. Security requirements

4. Configuration specification

Config path: ~/.config/voice-hotkey/config.toml (respects $XDG_CONFIG_HOME).

SectionKeyTypeDefaultDescription
[hotkey]keystring"Key.ctrl_r"pynput key name
double_click_msint400Max interval between taps
[recording]sample_rateint16000Samples per second
timeout_secondsint30Auto-stop after N seconds
[whisper]modelstring"base"Whisper model size
languagestring"en"Language or "auto"
[output]targetstring"clipboard"Output destination

5. Delivery

← Back to Voice Hotkey