Neue Ansicht 'Von allein': Skills + Vorschlags-Bilanz der Box (+ schlafende P1-Basis)
User-Wunsch 15.07.: EIN Viewpoint, was die Box selbst geleistet hat - Chronik ist zu kompliziert. Neue Operativ-Ansicht #eigenleben: - Skills aus ~/.hermes/skills (= Lucys Satz) mit Klartext-Beschreibung, Nutzungszaehler (.usage.json) und Herkunft (selbst erstellt / von uns gebaut / mitgeliefert), aufklappbar mit vollem SKILL.md. - Vorschlags-Bilanz: angenommen (Auftragsbuch-Chronik) + abgelehnt mit Grund (Lern-Journal) als eine Timeline + Zaehler. Backend: services/eigenleben.py + routers/eigenleben.py (read-only). Mit an Bord (User-Ja, schlafend): P1-Basis des Gateway-Auszugs der Parallel-Session (config.V1_UPSTREAM + app.py-Weiche + gateway_forward) - ohne MC_V1_UPSTREAM in der Unit exakt altes Verhalten; Rest von P1 (gateway_app, deploy.sh, Unit, token_stats) committet die andere Session. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Executable
+59
@@ -0,0 +1,59 @@
|
||||
#!/usr/bin/env bash
|
||||
# Gateway-Cutover (UMBAU v3 P1, Stufe 2 = Unabhängigkeit):
|
||||
# Hermes' LLM-Endpunkte vom Steuerpult-Umweg (127.0.0.1:9001/v1) auf den
|
||||
# eigenständigen Gateway (127.0.0.1:9010/v1) umstellen — Top-Level-config.yaml
|
||||
# UND alle Profil-Configs (werkstatt/betrieb). Danach überleben Lucys Hirn und
|
||||
# die komplette Nacht-Autonomie jeden MC2-Neustart.
|
||||
#
|
||||
# BEWUSST NICHT in deploy.sh: ~/.hermes/config.yaml ist Zwei-Schreiber-sensibel
|
||||
# (Hermes schreibt sie selbst). Einmalig von Hand bzw. per angenommener Karte:
|
||||
# bash ~/mission-control-v2/deploy/gateway-cutover.sh # umstellen
|
||||
# bash ~/mission-control-v2/deploy/gateway-cutover.sh --revert # zurück
|
||||
# Je geänderter Datei entsteht ein Backup *.bak-gwcut-<Zeitstempel>.
|
||||
# Danach: hermes-gateway-Neustart + kurzer Funktionsnachweis.
|
||||
set -euo pipefail
|
||||
|
||||
if [ "${1:-}" = "--revert" ]; then
|
||||
ALT="127.0.0.1:9010/v1"; NEU="127.0.0.1:9001/v1"
|
||||
PROBE="http://127.0.0.1:9001/api/health" # Rückweg: MC2 muss /v1 wieder selbst bedienen
|
||||
else
|
||||
ALT="127.0.0.1:9001/v1"; NEU="127.0.0.1:9010/v1"
|
||||
PROBE="http://127.0.0.1:9010/gw/health" # Hinweg: Gateway-Prozess muss leben
|
||||
fi
|
||||
|
||||
# Sicherung: NIE auf ein totes Ziel umstellen — das würde Lucy das Hirn abschneiden.
|
||||
if ! curl -sf -m 5 "$PROBE" >/dev/null 2>&1; then
|
||||
echo "ABBRUCH: Ziel $NEU antwortet nicht ($PROBE). Nichts geändert."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
STAMP="$(date +%Y%m%d-%H%M%S)"
|
||||
ALT_RE="${ALT//./\\.}" # Punkte für sed escapen
|
||||
geaendert=0
|
||||
for f in "$HOME/.hermes/config.yaml" "$HOME"/.hermes/profiles/*/config.yaml; do
|
||||
[ -f "$f" ] || continue
|
||||
grep -q "$ALT" "$f" || continue
|
||||
cp "$f" "$f.bak-gwcut-$STAMP"
|
||||
sed -i "s|$ALT_RE|$NEU|g" "$f"
|
||||
echo "umgestellt: $f (Backup: $f.bak-gwcut-$STAMP)"
|
||||
geaendert=1
|
||||
done
|
||||
|
||||
if [ "$geaendert" -eq 0 ]; then
|
||||
echo "Nichts zu tun — '$ALT' kommt in keiner Hermes-Config vor."
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo "hermes-gateway neu starten …"
|
||||
systemctl --user restart hermes-gateway
|
||||
sleep 3
|
||||
if systemctl --user is-active --quiet hermes-gateway; then
|
||||
echo "hermes-gateway läuft."
|
||||
else
|
||||
echo "WARN: hermes-gateway ist nach dem Neustart NICHT aktiv!"
|
||||
echo " journalctl --user -u hermes-gateway -n 30 und ggf.: $0 --revert"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Empfohlener Nachweis: cd ~/.hermes/hermes-agent && venv/bin/hermes doctor"
|
||||
echo "FERTIG. Rückweg jederzeit: $0 --revert"
|
||||
Reference in New Issue
Block a user