Fast-Path-Plugin raus, offizielle quick_commands rein (funktioniert auch in der TUI)
Root Cause fuers "geht trotzdem ans LLM": unser fast-paths-Plugin war auf pre_gateway_dispatch registriert -- der Hook feuert laut Sourcecode nur fuer die Gateway-Plattformen (Telegram/Discord/...), nicht fuer die TUI (tui_gateway/server.py), die komplett am Gateway-Dispatcher vorbei direkt in den Agent-Loop laeuft. Ein Patch an tui_gateway/server.py waere noetig gewesen, aber Concurrency-kritischer Kern-Code -- zu riskant. Hermes hat dafuer schon einen eigenen Mechanismus: quick_commands (type: exec) bypassen den Agent-Loop nachweislich auf JEDER Plattform inkl. TUI, kein LLM-Call, keine Tokens, offiziell dokumentiert. Trade-off: fester Slash-Befehl statt Freitext (/next statt "naechstes Lied") -- gleiches Prinzip wie Alexas Intent-Slots, ohne Slot-Fuellung. scripts/spotify_quick.py buendelt next/previous/pause/play/volume_up/ volume_down/current in einem Skript (ein Argument pro Aktion), nutzt denselben SpotifyClient wie der echte Tool-Dispatch. docker-compose.yml mountet scripts/ jetzt read-only nach /opt/data/scripts statt fast-paths/ nach /opt/data/plugins/fast-paths. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
+6
-11
@@ -220,17 +220,12 @@ services:
|
||||
# Start einmalig hierher kopiert (siehe README) und dann von Hermes
|
||||
# NICHT mehr angefasst (nur geseedet wenn's fehlt).
|
||||
- ./hermes-data/agent-home:/opt/data
|
||||
# Unser eigener Fast-Path-Layer (siehe fast-paths/README.md): faengt
|
||||
# einfache Steuerbefehle wie "pause"/"naechstes Lied" per Regex VOR dem
|
||||
# LLM-Aufruf ab. Wird als Hermes-USER-Plugin unter $HERMES_HOME/plugins/
|
||||
# erwartet ($HERMES_HOME=/opt/data, siehe ENV oben) -- ein verschachtelter
|
||||
# Bind-Mount UEBER dem agent-home-Mount oben, versioniert in unserem
|
||||
# eigenen Git-Repo statt im gitignorten hermes-data/. Read-only, damit
|
||||
# Hermes (oder ein kompromittierter Plugin-Code) den Code hier nie
|
||||
# veraendern kann. MUSS zusaetzlich in config.yaml unter
|
||||
# "plugins: enabled: [fast-paths]" eingetragen werden (siehe README) --
|
||||
# Plugins sind bei Hermes standardmaessig opt-in.
|
||||
- ./fast-paths:/opt/data/plugins/fast-paths:ro
|
||||
# scripts/ (Spotify-Quick-Steuerung etc.) READ-ONLY in den Container,
|
||||
# damit `quick_commands` in config.yaml (siehe README, Abschnitt
|
||||
# "Fast-Path ohne LLM") sie unter einem festen Pfad aufrufen koennen,
|
||||
# ohne jedes Mal manuell `docker cp` machen zu muessen. Versioniert in
|
||||
# unserem eigenen Git-Repo statt im gitignorten hermes-data/.
|
||||
- ./scripts:/opt/data/scripts:ro
|
||||
environment:
|
||||
- HERMES_UID=${HERMES_UID:-10000}
|
||||
- HERMES_GID=${HERMES_GID:-10000}
|
||||
|
||||
Reference in New Issue
Block a user