Simplify Athena runtime and document current architecture

This commit is contained in:
Mikei386
2026-08-30 08:45:52 +02:00
parent c721db47d0
commit c6517ee137
56 changed files with 1275 additions and 4713 deletions
+61 -72
View File
@@ -1,109 +1,98 @@
# Athena AI
Ein reproduzierbarer Docker-Stack für Athenas lokale Inferenz. Athena stellt
Router, llama.cpp-Profile, Sprache und Bildgenerierung bereit. Der offizielle
Hermes Agent und MCPHub laufen auf Unraid und werden dort mit Appdata gesichert.
Athena ist die lokale Inferenzmaschine. Der reproduzierbare Docker-Stack stellt
Qwen über eine kleine OpenAI-kompatible Router-API bereit und übernimmt lokale
Bild- und Sprachausgabe. **Hermes und die Fach-MCPs laufen auf Unraid.**
## Aufbau
## Aktueller Aufbau
- `compose.yaml` ist der einzige Einstieg für die KI-Dienste auf Athena.
- Genau ein llama.cpp-Profil ist aktiv. Der Router schaltet zwischen Fast,
Medium, Large, Ultra und Uncensored.
- Hermes verdichtet ältere Assistenten- und Werkzeug-Turns fortlaufend per
Micro-Compaction (alle fünf abgeschlossenen Turns). Das jeweils gewählte
27B-Hauptprofil erstellt die Zusammenfassung; ein separates, weniger
zuverlässiges Kompressionsmodell wird nicht betrieben.
- Der **Athena Operator** bleibt als einziger hostgebundener administrativer
MCP direkt auf Athena. MCPHub veröffentlicht seinen vorhandenen
WireGuard-HTTP-Endpunkt zentral unter `/mcp/athena-operator`; es gibt keinen
zweiten Operator und keine administrative SSH-Implementierung im Hub.
- Home Assistant, ARR, Unraid, Navidrome und GitHub laufen gemeinsam im
MCPHub-Container auf Unraid, bleiben aber als getrennte MCP-Server unter
`/mcp/NAME` sichtbar, abschaltbar und unabhängig für Clients freigebbar.
- Hermes verwendet für allgemeine Recherche den eingebauten schlüssellosen
Keenable-Provider für Suche und Seitenabruf; der frühere Athena-Webadapter
wird nicht mehr gestartet.
- MCPHubs eigene persistente Einstellungen unter `MCPHub/mcp_settings.json`
sind der produktive Zustand. Oberfläche und offizielle API ändern genau
diese Datei; Container-Updates überschreiben sie nicht.
`config/mcp-registry.json` ist nur der Neuinstallations-Seed.
- Hermes verbindet sich einmal mit MCPHubs gefiltertem `/mcp/hermes`-Endpunkt. Neue
aktivierte Server erscheinen dadurch nach **MCP neu laden**, ohne dass pro
MCP eine weitere Hermes-Konfiguration geschrieben werden muss.
- Modelle und Athena-Backups liegen auf `/data`. Hermes liegt vollständig unter
`/mnt/nvme-storage/appdata/Hermes-Agent`; MCPHub-Zustand, Client-Schlüssel und
MCP-Zugänge liegen unter `/mnt/nvme-storage/appdata/MCPHub`.
- Hermes verwendet unverändert `nousresearch/hermes-agent:latest`. Seine
Profile erreichen Athenas Router über `http://192.168.1.212:8081/v1`.
Die frühere Athena-Instanz bleibt vorerst gestoppt als Rückfall erhalten.
- KI-Oberflächen und APIs sind nur über WireGuard erreichbar.
### Athena
- genau ein aktives llama.cpp-Profil: Fast, Medium, Large, Ultra oder Uncensored
- Profile Router auf Port 8081
- Z-Image-Turbo als exklusiver Bild-Worker auf der RTX 5080
- XTTS auf der RTX 3060 mit Piper als CPU-Fallback
- Live-Dashboard mit 21 Tagen Detailhistorie auf Port 8099
- WireGuard-Gateway, Datenbackup und Athena-Operator
- keine produktive Hermes-, OpenWebUI- oder portable Fach-MCP-Instanz
### Unraid
- offizieller Hermes-Agent mit persistentem Appdata
- je ein eigener Container für ARR, Deemix, Navidrome, STRATO und
Nginx Proxy Manager
- MUA/Unraid-MCP als Unraid-Plugin
- Media-Tools als nachrüstbare Werkzeugkiste
- Sicherung durch das vorhandene Unraid-Appdata-Backup
Hermes nutzt Athenas Router unter `http://192.168.1.212:8081/v1`. Ein MCPHub
ist nicht mehr Bestandteil der produktiven Architektur.
## Installation – ein Befehl
Nach dem Ausfüllen von `config/install.env`:
```bash
sudo ./install.sh --config config/install.env
cp config/install.env.example /root/mike-ai-install.env
# Werte in /root/mike-ai-install.env eintragen und chmod 600 setzen
sudo ./install.sh --config /root/mike-ai-install.env
```
Das Skript installiert Docker und NVIDIA-Unterstützung, lädt die konfigurierten
Modelle und startet ausschließlich Athenas Inferenz-Kern plus Operator.
Das Installationsskript baut llama.cpp und die lokalen Images, lädt die
versionierten Modellartefakte und startet ausschließlich den Athena-Kern.
## Bedienung
## Betrieb
```bash
# Gesamten Stack anzeigen
docker compose --env-file /etc/mike-ai/stack.env ps
# Konfiguration prüfen
./manage.sh validate
# Erst anzeigen, dann eine gezielte Komponente ohne Nebenwirkungen ausrollen
./manage.sh --dry-run deploy router
# Gesamten Athena-Kern gezielt aktualisieren
./manage.sh deploy core
# Nur einen Dienst ausrollen
./manage.sh deploy router
# Sofortiges Datenbackup zusätzlich zum Fünf-Stunden-Zeitplan
docker exec mike-ai-backup backup
# Eindeutige Altcontainer entfernen
./manage.sh purge-legacy
# Kurzer read-only Ende-zu-Ende-Test nach jedem Release
# Read-only Ende-zu-Ende-Test
sudo ./smoke-test.sh
```
Router-API: `http://<WireGuard-IP>:8081/v1`
## Endpunkte
Hermes-Dashboard: `http://<Unraid-IP>:9119`
- Router: `http://192.168.1.212:8081/v1`
- Athena-Dashboard: `http://192.168.1.212:8099`
- Hermes-Dashboard auf Unraid: `http://192.168.1.2:9119`
Hermes-API: `http://<Unraid-IP>:8642`
Die Adressen sind nur über die vorgesehenen privaten Netze erreichbar.
## Ausgegliederte Fach-MCPs
## Ausgegliederte MCPs
- [ARR-MCP](https://git.casaderoll.de/michael/arr-mcp)
- [Deemix-MCP](https://git.casaderoll.de/michael/Deemix-MCP)
- [Strato-MCP](https://git.casaderoll.de/michael/Strato-MCP)
## Wiederherstellung – ein Befehl
Weitere produktive Container verwenden ihre jeweiligen Upstream-Images und
Unraid-DockerMan-Templates. Details stehen in
[docs/MCP_SERVERS.md](docs/MCP_SERVERS.md).
Nach einer frischen Installation und eingehängtem `/data`:
## Wiederherstellung
Nach einer frischen Debian-Installation und erneut eingehängtem `/data`:
```bash
sudo ./install.sh --config /root/mike-ai-install.env
sudo ./restore.sh /data/docker-backups/athena-latest.tar.gz
sudo ./smoke-test.sh
```
Details, Prüfschritte und der exakte Sicherungsumfang stehen in
[`docs/RECOVERY.md`](docs/RECOVERY.md).
Der genaue Sicherungsumfang steht in [docs/RECOVERY.md](docs/RECOVERY.md).
## Dokumentation
## Verbindliche Dokumentation
- [`ATHENA.md`](ATHENA.md) – kurze Maschinen- und Operatoranleitung
- [`docs/STANDARD_PROFILE_MATRIX.md`](docs/STANDARD_PROFILE_MATRIX.md) – Profile und Messwerte
- [`docs/MCP_SERVERS.md`](docs/MCP_SERVERS.md) – automatisch erzeugte MCP-Liste
- [`docs/RECOVERY.md`](docs/RECOVERY.md) – Backup und Neuaufbau
Die MCPHub-Installation, Endpunkte und der schrittweise Rückbau der alten
Athena-MCPs stehen in [`platform/mcphub/README.md`](platform/mcphub/README.md).
Der eigenständig betreibbare Sonarr-/Radarr-Container einschließlich
Debian-Slim-Installer und Unraid-Template liegt unter
[`services/arr-mcp/`](services/arr-mcp/README.md). Er ist für die schrittweise
Ablösung des bisherigen MCPHub-Prozesses vorbereitet, wird durch Athenas
Standardinstallation aber nicht automatisch gestartet.
Für Installation oder Wiederherstellung des Hermes-Gateways auf Unraid liegt unter
[`config/unraid-templates/my-Hermes-Agent-Official.xml`](config/unraid-templates/my-Hermes-Agent-Official.xml)
ein DockerMan-Template, das unverändert das offizielle Nous-Image verwendet.
- [ATHENA.md](ATHENA.md) – kurze Betriebsanleitung
- [docs/STANDARD_PROFILE_MATRIX.md](docs/STANDARD_PROFILE_MATRIX.md) – Profile
- [docs/MCP_SERVERS.md](docs/MCP_SERVERS.md) – produktive Werkzeuge
- [docs/RECOVERY.md](docs/RECOVERY.md) – Backup und Neuaufbau
Git enthält keine Secrets, Chatdaten oder Modellgewichte.