System Management Tool (KI Entwicklung)
-
Hi,
ich habe immer ein einfaches System Management Tool für mein Homelab vermisst. Die Anforderung ist von oben betrachtet, relativ simpel. Ich will Clients anlegen können und auf diesen dann via SSH Befehle ausführen. Alles als lokale Applikation und ausdrücklich keine Webapplikation.
Für den reinen Windows Einsatz gäbe es mit PDQ Deploy etwas, nur ist Windows hier etwas dünn gesäht.
Letzte Woche habe ich mich näher mit MCP Servern beschäftigt und mir gedacht, dass ich mal versuche, eine KI ein System Management Tool entwickeln zu lassen. Ich habe also einen MCP Server für den lokalen Dateisystemzugriff installiert und Claude mit folgenden Anforderungen gefüttert:
Bitte entwickle eine Client Management Applikation für mein Homelab. Der Code soll in C:\Users\Bastian\Nextcloud\Development\AI\Projects\Homelab__MGMT\sources gespeichert werden. Dies sind die Anforderungen des Product Owners: Ich möchte, dass die Applikation in Python entwickelt wird. Ich möchte, dass die Applikation eine Benutzeroberfläche hat. Ich möchte, dass die Applikation ohne Agent auf den Clients verwendet werden kann. Ich möchte, dass die Applikation SSH für die Client Verbindung nutzt. Ich möchte, dass die SSH Verbindung für die Befehlsausführung auf den Clients verwendet wird. Ich möchte, dass beliebige Client Betriebssysteme verwaltet werden können. Ich möchte, dass Clients in einer einzigen INI Datei verwaltet werden. Ich möchte, dass jeder Client in der INI Datei eine eigene Section hat und alle weiteren Parameter als Key-Value Paare definiert sind. Ich möchte, dass für jeden Client bestimmte CLI Befehle definiert werden können. Diese sollen dann in der INI Datei als Key-Value Paar dem Client zugeordnet werden. Die Erstellung der Befehle soll über die Benutzeroberfläche der Applikation erfolgen. Die Ausführung der Befehle soll dann über die GUI möglich sein. Ich möchte, dass man auch Befehle ausführen kann, die keinem Client zugeordnet sind. Ich möchte, dass die Clients auf der linken Seite der GUI als Liste dargestellt werden. Ich möchte, dass Clients frei gruppierbar sind. Ich möchte, dass man mehrere Clients auswählen kann und auf diesen einen CLI Befehl ausführen kann. Ich möchte, dass man einen CLI Befehl auf einer Gruppe von Clients ausführen kann. Ich möchte, dass die Möglichkeit besteht, sudo inklusive automatischer Passworteingabe für die CLI Befehlsausführung bei Linux Clients zu nutzen. Ich möchte, dass sich das Ausgabefeld dynamisch aktualisiert, so bei einem echten CLI. Ich möchte, dass sich verschiedene Befehle zu einem gemeinsamen Alias zusammenfassen lassen. Wenn ich beispielsweise den Alias ‚update‘ auswähle, kann das auf einem Client den Befehl ‚apt dist-upgrade‘ ausführen, auf einem anderen stattdessen ‚opkg upgrade‘. Zu einem Alias sollen sich beliebig viele Befehle hinzufügen lassen, wobei ein Befehl immer eindeutig einem Client zugeordnet werden muss. Ein Alias Befehl kann auf einer Gruppe ausgeführt werden oder auf frei ausgewählten Clients.
Herausgekommen ist tatsächlich eine brauchbare Applikation, die ich hier gern bereitstelle. Ich würde das allerdings erst im Laufe der Woche machen, da sudo an einer Stelle nicht funktioniert. Sobald Claude das gefixt hat, veröffentliche ich das Tool hier.
Wenn ihr dann selbst Anforderungen habt, schreibt sie gern hier im Thread. Ich gebe das dann weiter
Gruß,
Bastian -
B bastian verschob dieses Thema von Small Talk