# Key Facts - Trixy Voice Assistant Projektkonfiguration und wichtige Referenzinformationen. ## ⚠️ SICHERHEITSHINWEIS **Niemals Passwörter, API-Keys oder sensible Credentials hier speichern!** Dieses Dokument wird in Git committed. Secrets gehören in `.env` oder Secret-Manager. --- ## Projekt-Übersicht **Name:** Trixy Voice Assistant **Sprache:** Python 3.10+ **ML Framework:** PyTorch **Version:** 1.0.0 **Protokollversion:** 1.0 ## Betriebsmodi | Modus | Befehl | Beschreibung | |-------|--------|--------------| | Server | `python3 main.py server` | Zentrale Steuerung | | Client | `python3 main.py client --host --port 2101 --room --alias ` | Satellite | | Standalone | `python3 main.py standalone` | All-in-One | | Train | `python3 main.py train [wakeword\|voice-recognition\|all]` | ML-Training | **Debug-Modus:** `--debug` Flag für stdout-Ausgabe statt TUI ## Netzwerk-Ports | Port | Verwendung | Format | |------|------------|--------| | 2101 | Command Socket | AES-256-GCM verschlüsselt | | 2102 | Audio Input | 16KHz mono PCM | | 2103 | Audio Output | 16KHz mono PCM | | 2104 | Music Stream | 48KHz stereo PCM | ## Audio-Spezifikationen **Standard Audio:** - Sample Rate: 16 kHz - Bit Depth: 16-bit - Channels: 1 (mono) - Format: PCM **Music Audio:** - Sample Rate: 48 kHz - Channels: 2 (stereo) **ML Features:** - Log-Mel-Spectrogram - n_mels: 80 - n_fft: 1024 - hop_length: 256 ## Verzeichnisstruktur | Pfad | Inhalt | |------|--------| | `config/` | JSON-Konfigurationsdateien | | `plugins/` | Plugin-Verzeichnisse | | `models/wakeword/` | Wakeword-Modelle | | `models/voice_recognition/` | Sprechererkennungsmodelle | | `assets/{profile}/` | Audio-Dateien (default als Fallback) | | `satellites/` | Registrierte Satellites (JSON) | | `certs/` | SSL/Encryption Keys | | `logs/` | Anwendungslogs | | `trainer/data/` | ML-Trainingsdaten | ## Konfigurationsdateien | Datei | Modus | |-------|-------| | `config/server_config.json` | Server | | `config/client_config.json` | Client | | `config/standalone_config.json` | Standalone | | `config/trainer_config.json` | Trainer | ## Wakeword-Modelle | Modell | Beschreibung | |--------|--------------| | `custom` | Benutzerdefiniertes Wakeword | | `system_command` | System-Befehle | **Modell-Dateien:** - `model.pth` - PyTorch (passwortgeschützt) - `model.onnx` - ONNX Export - `model.pt` - TorchScript - `metafile.json` - Metadaten ## Timing-Parameter | Parameter | Wert | Beschreibung | |-----------|------|--------------| | Wakeword Threshold | 0.5 | Erkennungsschwelle | | Arbitration Timeout | 1.0s | Multi-Satellite Arbitrierung | | Max Silence | 3.0s | Stille beendet Aufnahme | | Max Duration | 60.0s | Maximale Aufnahmedauer | | Reconnect Interval | 5.0s | Client-Wiederverbindung | | Registration Timeout | 60s | Satellite-Registrierungsfenster | ## Entwicklung **Tests ausführen:** ```bash python -m pytest tests/ -v ``` **Alle Tests:** 244 Tests in 8 Testdateien **Dependencies:** - watchdog (Config File-Watching) - cryptography (AES-256-GCM) - pytest, pytest-asyncio (Testing) ## Dokumentation | Pfad | Inhalt | |------|--------| | `CLAUDE.md` | Projektübersicht für AI-Assistenten | | `.claude/project-knowledge/` | Detaillierte Projekt-Wissensbasis | | `docs/project_notes/` | Bug-Log, Entscheidungen, Key Facts | --- ## Tipps - Einträge aktuell halten - Deprecated Informationen nach Migration entfernen - URLs für einfache Navigation hinzufügen - Konsistentes Format verwenden