Was macht skills?
Agent Skills (agentskills.io). Erste Fertigkeit: Argo Rollouts — Erstellen, Validieren und Betreiben von Kubernetes-Rollout-Manifesten mittels eigenständiger Python-Skripte.
Übersicht
Dieses Repository enthält Fertigkeiten für KI-Agenten. Jede Fertigkeit ist als eine eigenständige Einheit implementiert, die der Agent aufrufen kann, um spezifische Aufgaben zu erledigen.
Fertigkeiten
| Name | Beschreibung |
|---|---|
| Argo Rollouts | Generieren, validieren und verwalten von Kubernetes Argo Rollout Manifesten. Verwendet Python-Skripte ohne externe Abhängigkeiten (kein kubectl oder curl erforderlich). |
Argo Rollouts
Die Argo-Rollouts-Fertigkeit bietet eine Reihe von Python-Funktionen, die einen Argo Rollout Controller nachahmen:
- Generieren: Erstellen eines neuen Argo Rollout Manifests aus einer Vorlage mit benutzerdefinierten Replikatzahlen, Containern, Analysen und Strategien.
- Validieren: Syntax-Prüfung eines Rollout-Manifests auf gültige YAML-Struktur und feldspezifische Validierung.
- Abrufen: Abrufen des aktuellen Status eines simulierten Rollouts (Status, Replikatzahlen, Übergänge).
- Promote: Simulieren eines Promote-Befehls für einen Rollout, um die nächste Stufe einer BlueGreen/Canary-Strategie auszulösen.
- Abort: Einen laufenden Rollout abbrechen und in einen Fehlerzustand versetzen.
- Restart: Einen Rollout neu starten (Einfrieren und erneutes Ausrollen).
Verwendung
Die Fertigkeit erwartet, dass das Python-Skript argo_rollouts.py im Arbeitsverzeichnis des Agenten vorhanden ist. Der Agent kann die darin definierten Funktionen direkt aufrufen.
Beispielaufruf (Agent):
# Einen neuen Rollout generieren
rollout = generate_argo_rollout(
name="my-rollout",
namespace="default",
replicas=3,
image="my-app:v1",
strategy="bluegreen",
autoPromotionEnabled=True
)
# Das Manifest validieren
validation = validate_argo_rollout(rollout_yaml)
# Status abrufen
status = get_rollout_status("my-rollout")
Voraussetzungen
- Python 3.8+
- Keine zusätzlichen Pakete (verwendet nur Standardbibliotheken
json,yaml,dataclassesusw.) - Die Fertigkeit muss in der Umgebung des KI-Agenten verfügbar sein (z. B. innerhalb des Projektkontextes).
Einschränkungen
- Die Fertigkeit simuliert einen Argo Rollout Controller vollständig im Speicher. Es wird keine tatsächliche Kubernetes-API verwendet.
- Für die Produktion mit echten Kubernetes-Clustern sind separate Tools (kubectl, argo CLI) erforderlich.
- Die Validierung ist syntaktisch und feldspezifisch, aber nicht semantisch in Bezug auf Kubernetes-Ressourcenlimits.
Lizenz
MIT