/add-listen-hotkey
SkillAI & modelsInstall a global hotkey that triggers `deus listen` from anywhere on the OS. Also installs sox, whisper-cli, and a whisper model.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the /add-listen-hotkey skill
What this skill tells your AI
The instructions your AI receives, as published by sliamh11/deus in .claude/skills/add-listen-hotkey/SKILL.md and read by ahel’s review.
Install a global hotkey that triggers deus listen from anywhere on the OS.
Also installs all required dependencies (sox, whisper-cli) and downloads the whisper model.
Step 1 — Install dependencies and whisper model
Run these checks and installs before asking the user about hotkey preferences.
Dependencies
macOS:
# Check sox
command -v sox || brew install sox
# Check whisper-cli (from whisper-cpp)
command -v whisper-cli || brew install whisper-cpp
Linux:
# Check sox
command -v sox || sudo apt install -y sox libsox-fmt-all
# Check whisper-cli — not in apt, build from source if missing
if ! command -v whisper-cli; then
echo "whisper-cli not found. Build from: https://github.com/ggerganov/whisper.cpp"
echo "After building, ensure 'whisper-cli' is on your PATH."
# Pause and ask user to confirm before continuing
fi
Windows:
# Check sox
if (-not (Get-Command sox -ErrorAction SilentlyContinue)) {
winget install sharkdp.bat # or: choco install sox.portable
}
# Check whisper-cli
if (-not (Get-Command whisper-cli -ErrorAction SilentlyContinue)) {
Write-Host "Download whisper-cli from: https://github.com/ggerganov/whisper.cpp/releases"
Write-Host "Add it to your PATH, then re-run this skill."
# Stop and wait for user
}
Whisper model
Resolve the model path from WHISPER_MODEL env var, or default to
~/deus/data/models/ggml-large-v3-turbo.bin (Liam's personal config) or
~/deus/data/models/ggml-base.bin (public default).
If the model file doesn't exist, download it:
MODEL_PATH="${WHISPER_MODEL:-$HOME/deus/data/models/ggml-base.bin}"
MODEL_URL="https://huggingface.co/ggerganov/whisper.cpp/resolve/main/ggml-base.bin"
if [ ! -f "$MODEL_PATH" ]; then
mkdir -p "$(dirname "$MODEL_PATH")"
echo "Downloading whisper model (148 MB)..."
curl -L --progress-bar -o "$MODEL_PATH" "$MODEL_URL"
echo "Model saved to: $MODEL_PATH"
fi
For ggml-large-v3-turbo.bin (higher accuracy, 1.5 GB):
https://huggingface.co/ggerganov/whisper.cpp/resolve/main/ggml-large-v3-turbo.bin
Ask the user which model they want if WHISPER_MODEL is not already set:
base(148 MB, fast, good for English) — defaultlarge-v3-turbo(1.5 GB, best accuracy, recommended for Hebrew)
Set WHISPER_MODEL in ~/.zshrc / ~/.bashrc / Windows user environment variables
so deus listen always finds the model without specifying it each time.
Verify end-to-end
Run a quick smoke test before installing the hotkey:
DEUS_LISTEN_NO_CLIPBOARD=1 node ~/deus/dist/deus-listen.js --help 2>/dev/null || \
echo "Build needed — run: cd ~/deus && npm run build"
If the build is missing, run npm run build in ~/deus before proceeding.
Step 2 — Detect OS and ask for hotkey preferences
Detect the OS (IS_MACOS / IS_LINUX / IS_WINDOWS from platform.ts context, or run uname -s).
Ask the user:
- Hotkey — default
Cmd+Option+V(macOS) /Super+Alt+V(Linux) /Ctrl+Alt+V(Windows) - Mode:
silent(default) — runsdeus listenin background, notification on completionterminal— opens a new terminal window with the VU meter visible
- Stream mode? — if yes, uses
deus listen --streaminstead of single-shot
Step 3 — Install per OS
macOS — Hammerspoon
Check if Hammerspoon is installed: ls /Applications/Hammerspoon.app 2>/dev/null
If missing: brew install --cask hammerspoon (ask user to approve).
Write ~/.hammerspoon/deus-listen.lua:
-- deus listen hotkey (managed by Deus /add-listen-hotkey)
local mods = {"cmd", "alt"}
local key = "v"
hs.hotkey.bind(mods, key, function()
-- SILENT MODE: run headless, notify on completion
local task = hs.task.new("/bin/zsh", function(code, stdout, stderr)
local msg = code == 0 and "Copied to clipboard" or "Transcription failed"
hs.notify.new({title = "Deus", informativeText = msg}):send()
end, {"-lc", "deus listen --no-clipboard=false"})
task:start()
hs.notify.new({title = "Deus", informativeText = "Listening…"}):send()
end)
For terminal mode replace the task body with:
hs.execute("open -a Ghostty --args -e 'deus listen'")
(or iTerm2 / Terminal.app if Ghostty is absent — detect with ls /Applications/Ghostty.app).
Source the file from ~/.hammerspoon/init.lua:
-- Auto-appended by Deus /add-listen-hotkey
require("deus-listen")
Reload Hammerspoon: open -g hammerspoon://reloadConfig
Linux — sxhkd
Check if sxhkd is running: pgrep sxhkd
If missing: sudo apt install sxhkd (or pacman/dnf equivalent).
Append to ~/.config/sxhkd/sxhkdrc (create if missing):
# deus listen (managed by Deus /add-listen-hotkey)
super + alt + v
deus listen
For stream mode: replace deus listen with deus listen --stream.
Reload: pkill -USR1 sxhkd
For terminal mode (VU meter visible):
super + alt + v
ghostty -e deus listen
Windows — AutoHotkey v2
Check if AHK is installed: Get-Command autohotkey.exe -ErrorAction SilentlyContinue
If missing: winget install AutoHotkey.AutoHotkey
Write %APPDATA%\deus\deus-listen.ahk:
; deus listen hotkey (managed by Deus /add-listen-hotkey)
^!v:: { ; Ctrl+Alt+V
Run "deus listen", , "Hide"
}
For terminal mode: Run "wt.exe deus listen" (Windows Terminal).
Add to startup: create a shortcut in %APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup\.
Run immediately: Start-Process autohotkey.exe "$env:APPDATA\deus\deus-listen.ahk"
Step 4 — Verify
Test the hotkey:
- macOS: trigger it, wait for "Listening…" notification, speak, check clipboard.
- Linux: trigger, speak, check
xclip -o -selection clipboard. - Windows: trigger, speak, check
Get-Clipboard.
Step 5 — Uninstall instructions (show to user)
- macOS: delete
~/.hammerspoon/deus-listen.lua, remove therequireline frominit.lua, reload Hammerspoon. - Linux: remove the appended block from
~/.config/sxhkd/sxhkdrc,pkill -USR1 sxhkd. - Windows: delete
%APPDATA%\deus\deus-listen.ahkand the startup shortcut.
Signals
- GitHub stars
- 51
- Forks
- 4
- Last commit
- Sep 2026
ahel review
K1binfo
installs-packages
Automated review, not a security audit. Ruleset v1+k2.
Advanced
- Catalog kind
- skill
- Gateway key
add-listen-hotkey- Source
- github.com/sliamh11/deus