Funk-lab/stt/client/config/stt.example.toml
Claude c0da379755
feat(stt): app de bureau (fenêtre type Discord) + auto-update
Rend STT lançable comme une application de bureau et ajoute la mise à jour intégrée.

- Mode fenêtre « app » : _open_browser ouvre le HUD en fenêtre chromeless
  (--app=, type Discord) en plus du kiosk plein écran ; support Brave ajouté.
  Sélection via --window {app,kiosk,none} ou [ui].window_mode.
- stt --install-desktop / --uninstall-desktop : entrée .desktop + icône
  (stt/hud/icon.svg, aussi favicon du HUD) → STT dans le menu/dock, lance --window app.
- stt --update : pipx reinstall depuis la source git (via clé SSH), affiche
  « ancienne → nouvelle » ; stt --version.
- Docs (admin/ia/stt.md, stt/README) + config (window_mode) + bump 0.3.0 → 0.4.0.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017Qjq5jHiqNepnobJpHYpCa
2026-06-18 20:39:32 +00:00

34 lines
1.6 KiB
TOML

# Configuration du CLIENT STT — copier vers ~/.config/stt/stt.toml (`stt --setup` le génère).
# Reflète les défauts embarqués (stt/client/stt/config.py : DEFAULT_CONFIG).
# Le client n'a plus de cerveau : il envoie le texte au STT-server (in-cluster).
[server]
url = "http://stt.lab.local" # endpoint du STT-server (paramétrable)
timeout_sec = 90
model = "hermes-default" # modèle demandé au serveur
# Noms courts (--model / commande /model) : hermes=hermes-default, qwen=qwen3-8b,
# claude=claude-sonnet-4-6, opus=claude-opus-4-7. Sinon mets un alias LiteLLM brut.
[voice]
wake_word = "hermes" # "Ok Hermès"
whisper_model = "large-v3" # STT faster-whisper (CPU int8) — "small" pour tester
piper_voice = "fr_FR-upmc-medium" # TTS — ~/.local/share/piper/<voix>.onnx
language = "fr"
silence_sec = 1.2
min_speech_sec = 0.6
chat_timeout_sec = 60
# theme / avatar sont désormais réglés dans le HUD (drawer Réglages, mémorisé en
# localStorage) — ces deux clés sont gardées pour compat mais ignorées par le HUD.
[ui]
theme = "arc-reactor"
avatar = "default"
kiosk = true # (compat) plein écran si window_mode absent
window_mode = "kiosk" # "app" (fenêtre, type Discord) | "kiosk" (plein écran) | "none"
ws_host = "127.0.0.1"
ws_port = 9300 # websocket états ↔ HUD (doit matcher hud/index.html)
http_port = 9301 # HTTP statique qui sert le HUD
[memory]
enabled = true # cache local de conversation (brut, gitignoré)
local_db = "~/.local/share/stt/memory.sqlite"