Upload
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
# Desktop UI
|
||||
PySide6>=6.6
|
||||
|
||||
# Audio I/O (mic capture + speaker playback) — cross-platform via PortAudio.
|
||||
# On Linux you may also need the system package: sudo apt install libportaudio2
|
||||
sounddevice>=0.4.6
|
||||
numpy>=1.24
|
||||
|
||||
# HTTP client to the Bolt desk API
|
||||
requests>=2.31
|
||||
|
||||
# Wake-word detection (local, offline after first run) — runs the
|
||||
# custom-trained thunderbolt.onnx model shipped in this repo, same runtime
|
||||
# as the main repo's desk_client/bolt_desk.py (bolt.onnx). First use
|
||||
# downloads openwakeword's feature-extraction sub-models (~few MB, cached
|
||||
# under the package's own resources/ dir afterward) — needs internet once.
|
||||
openwakeword
|
||||
|
||||
# Offline TTS fallback if ElevenLabs isn't configured or a request fails.
|
||||
# Uses SAPI5 on Windows, NSSpeechSynthesizer on macOS, espeak on Linux
|
||||
# (Linux also needs: sudo apt install espeak-ng).
|
||||
pyttsx3>=2.90
|
||||
|
||||
# Global push-to-talk hotkey (PUSH_TO_TALK_HOTKEY). Optional: the pet
|
||||
# degrades to wake-word + tray + click if it's missing or if the session
|
||||
# won't allow a global key hook (most Wayland setups; macOS needs
|
||||
# Accessibility permission).
|
||||
pynput>=1.7
|
||||
|
||||
# Optional — only needed for scripts/slice_spritesheet.py (converting a
|
||||
# grid sprite sheet into the per-frame-PNG convention sprite.py expects).
|
||||
# Not imported by the app itself.
|
||||
Pillow>=10.0
|
||||
|
||||
# Test runner (tests/ — pure logic, no audio hardware or display needed;
|
||||
# run with QT_QPA_PLATFORM=offscreen).
|
||||
pytest>=8.0
|
||||
Reference in New Issue
Block a user