Spotify: read-only Verbindungstest-Skript (Toolset/Login/Live-API), analog zum Auth-Skript

Prueft direkt in Hermes' eigenem Code (get_auth_status, _get_platform_tools,
SpotifyClient), ob Toolset aktiviert, Login vorhanden und ein echter
GET /me/player/devices erfolgreich ist -- ohne Umweg ueber Claude/Proxy,
da LLM-Textantworten wie 'nicht verbunden/aktiv' kein verlaesslicher
Diagnosewert sind.
This commit is contained in:
ARIA
2026-07-20 00:21:20 +00:00
parent 8f3a07adb4
commit d05ab23c1b
2 changed files with 181 additions and 0 deletions
+26
View File
@@ -294,6 +294,32 @@ nennen. Falls es weiter hakt: `docker logs hermes-proxy --tail 100 -f`
waehrend der Reproduktion pruefen ob `--safe-mode` tatsaechlich im
gestarteten Prozess ankam (`docker exec -it hermes-proxy ps aux | grep claude`).
### Verbindungstest ohne Chat/Claude (`spotify_test_connection.py`)
Wenn Claude im Dashboard-Chat was sagt wie "Spotify-Tools sind zwar
gelistet, aber nicht verbunden/aktiv" ist unklar OB das stimmt oder ob
Claude nur raet — eine LLM-Textantwort ist kein verlaesslicher
Diagnosewert. `scripts/spotify_test_connection.py` prueft stattdessen
direkt in Hermes' eigenem Code (denselben Funktionen, die der echte
Tool-Dispatch benutzt), read-only, ohne irgendwas zu veraendern:
1. Ist das Toolset `spotify` ueber `hermes tools` fuer irgendeine
Plattform aktiviert? (`~/.hermes/config.yaml` -> `platform_toolsets`)
2. Ist Spotify eingeloggt? (`~/.hermes/auth.json` -> `providers.spotify`)
3. Funktioniert ein ECHTER API-Call mit dem gespeicherten Token
(`GET /me/player/devices`, inkl. Auto-Refresh falls abgelaufen)?
```bash
docker cp scripts/spotify_test_connection.py hermes-agent:/tmp/spotify_test_connection.py
docker exec -it hermes-agent python3 /tmp/spotify_test_connection.py
```
Sind alle drei Punkte gruen und der Chat sagt trotzdem "kenn ich nicht" /
"nicht verbunden", liegt's am Proxy bzw. am System-Prompt (siehe Abschnitt
oben), nicht an Spotify selbst — dann `docker logs hermes-proxy` waehrend
der Reproduktion pruefen. Gleiches Nutzungsmuster wie
`scripts/spotify_manual_auth.py` (Login-Skript weiter oben).
## Mobiler Client (Android)?
Zwei GRUNDVERSCHIEDENE Richtungen, nicht verwechseln: