feat: open Athena tool architecture

This commit is contained in:
Mikei386
2026-08-24 12:46:33 +02:00
parent 5528f3ab22
commit 5db73d0a92
26 changed files with 430 additions and 212 deletions
+25 -26
View File
@@ -11,8 +11,9 @@ Prompts heraus, verhindert den früher beobachteten Kontextverbrauch von über
| Container | Endpunkt im Netz `mike-ai-tools` | Zweck | Standard |
|---|---|---|---|
| `mcp-platform-context` | `http://mike-ai-mcp-platform-context:8000/mcp` | Athena-Wissen, begrenzter Snapshot und kontrollierte Docs-Pflege | an |
| `mcp-athena-operator` | `http://mike-ai-mcp-athena-operator:8000/mcp` | vollständiger Betrieb der Athena-KI-Plattform über Vorschau/Freigabe | an |
| `mcp-web` | `http://mike-ai-mcp-web:8000/mcp` | kompakte Websuche und Quellenvergleich | an |
| `mcp-athena-operator` | `http://mike-ai-mcp-athena-operator:8000/mcp` | vollständiger Betrieb plus breites begrenztes Terminal | an |
| `tinysearch` | `http://tinysearch:8000/mcp` | allgemeine portable Websuche und Seitenabruf | an |
| `mcp-web` | `http://mike-ai-mcp-web:8000/mcp` | frühere spezialisierte Web-Fassade | nur Profil `legacy-web` |
| `mcp-homeassistant` | `http://mike-ai-mcp-homeassistant:8000/mcp` | Relay zum nativen HA-MCP; Token bleibt serverseitig | Profil `homeassistant` |
| `mcp-arr` | `http://mike-ai-mcp-arr:8000/mcp` | Sonarr/Radarr/Prowlarr mit serverseitiger Policy | Profil `arr` |
| `mcp-navidrome` | `http://mike-ai-mcp-navidrome:3000/mcp` | Navidrome-Bibliothek, Suche, Playlists, Favoriten und Hörverlauf | Profil `navidrome` |
@@ -39,15 +40,14 @@ Preview/Approval-Ablauf begrenzt. Vollständige Beschreibung:
[`docs/PLATFORM_CONTEXT_MCP.md`](../../docs/PLATFORM_CONTEXT_MCP.md).
Der Athena Operator MCP ist die einzige Bedienebene für Arbeiten an der lokalen
KI-Plattform. Qwen kann damit Quellen lesen, Änderungen vorbereiten, MCPs und
Docker-Dienste bauen/deployen, Modelle laden, Benchmarks starten, Profile und
OpenWebUI pflegen, Git veröffentlichen und Recovery erzeugen. Die unprivilegierte
MCP-Fassade sieht dabei nur einen lokalen Unix-Socket. Docker-Socket,
Repository, Modellverzeichnis, Git-Zugang und Root-Rechte verbleiben im
rootseitigen Executor. Jede Änderung benötigt eine vollständige Vorschau, ein
inhaltlich gebundenes, ablaufendes Ticket und eine spätere exakte Bestätigung.
Eine freie Shell sowie SSH-, Netzwerk-, Boot-, Kernel-, Treiber-, Partitions-,
Reboot- und Shutdown-Aktionen werden nicht angeboten.
KI-Plattform. Qwen kann damit Quellen lesen, strukturierte Änderungen
vorbereiten, MCPs und Docker-Dienste bauen/deployen, Modelle laden, Benchmarks
starten, Profile und OpenWebUI pflegen, Git veröffentlichen und Recovery
erzeugen. Zusätzlich bietet er ein breites, ausgabebegrenztes Terminal für
unvorhergesehene Docker-, Datei-, Git-, HTTP-, Modell- und Remote-SSH-Aufgaben.
Die MCP-Fassade sieht nur einen lokalen Unix-Socket; Root-Rechte verbleiben im
Executor. Strombefehle und Änderungen an Athenas SSH, LAN, WireGuard, Firewall,
Boot, Kernel, Mounts und Partitionen werden serverseitig blockiert.
Für Git-Publishing besitzt Athena ein eigenes Schlüsselpaar unter
`/etc/mike-ai/athena-operator-git{,.pub}`. Nur der öffentliche Schlüssel wird
@@ -64,14 +64,13 @@ TinySearch bleibt als Ganzes read-only. Nur das flüchtige tmpfs-Verzeichnis
temporären Browser- und Sitzungszustand erzeugt. Es wird bei jedem
Container-Neustart vollständig verworfen.
TinySearch und SearXNG sind interne Abhängigkeiten des Web-MCPs und werden
nicht direkt als allgemeine Werkzeuge angeboten.
TinySearch ist der allgemeine portable Web-MCP. Auf VPN-Port 8203 können Hermes,
Pi und andere Clients seine vier Upstream-Werkzeuge direkt nutzen. SearXNG ist
der Such-Backenddienst. Die historische eigene Web-Fassade ist nur Rollback.
Die fünf Open-WebUI-Profile Fast, Medium, Large, Ultra und Uncensored verwenden
für allgemeine öffentliche Recherche Open WebUIs native Werkzeuge `search_web`
und `fetch_url`. Der Server `server:mcp:web-local` bleibt als manuell
zuschaltbarer Spezialkatalog für gezielte YouTube- und Hugging-Face-Abfragen
erhalten. Er wird nicht mehr automatisch an öffentliche Fragen gebunden.
Die fünf Open-WebUI-Profile Fast, Medium, Large, Ultra und Uncensored halten für
allgemeine öffentliche Recherche Open WebUIs native Werkzeuge `search_web` und
`fetch_url` verfügbar. Neue Websites benötigen keine neue Selector-Regel.
Ein gemeinsamer Systemhinweis der fünf Profile verlangt Webprüfung bei
aktuellen, veränderlichen oder wesentlich unsicheren Tatsachen. Stabiles
@@ -82,9 +81,9 @@ vertrauenswürdige Daten statt als Anweisungen.
## Entscheidungshilfe für das Modell
Die Server- und Werkzeugbeschreibungen grenzen die Zuständigkeiten absichtlich
deutlich voneinander ab. Das Modell soll pro Aufgabe zunächst genau **einen**
passenden Server wählen:
Die Server- und Werkzeugbeschreibungen grenzen die Zuständigkeiten voneinander
ab. Das Modell beginnt mit den breitesten geeigneten Grundfähigkeiten und nutzt
Fach-MCPs dort, wo strukturierte Daten oder Aktionen benötigt werden:
| Aufgabe | Werkzeugserver | Nicht zusätzlich verwenden |
|---|---|---|
@@ -113,8 +112,8 @@ oder ein anderes Werkzeug benötigt wird.
- Jeder Container ist read-only, verliert Linux-Capabilities und hat
`no-new-privileges`.
- Der SSH-basierte Unraid-Container ist nicht Teil des Standardstarts.
- Ein allgemeiner Host-Shell-MCP wird weiterhin bewusst nicht angeboten. Der
Athena Operator besitzt strukturierte Plattformaktionen statt freier Befehle.
- Das allgemeine Terminal ist Bestandteil des Athena Operators auf Port 8202;
ein zweiter Shell-MCP ist nicht erforderlich.
## Start
@@ -122,12 +121,12 @@ oder ein anderes Werkzeug benötigt wird.
sudo platform/mcp/install-tools.sh
```
Der Grundstart enthält Plattformwissen, den kontrollierten Athena Operator und
den Web-Spezialadapter. Bereits konfigurierte Fachbereiche werden explizit
Der Grundstart enthält Plattformwissen, den Athena Operator und das allgemeine
TinySearch-Webwerkzeug. Bereits konfigurierte Fachbereiche werden explizit
ergänzt:
Das Skript erkennt vorhandene Secret-Dateien und aktiviert dadurch automatisch
`homeassistant`, `arr` und `unraid`. Ohne Fach-Secrets bleiben nur die drei
`homeassistant`, `arr`, `navidrome` und `github`. Ohne Fach-Secrets bleiben die
secretfreien Grunddienste aktiv.
Für den derzeit migrierten Container kann der Name `Open-WebUI` lauten. Der