plugin-systemlisted
Install: claude install-skill ellmos-ai/skills
# Plugin System
Fehlertolerantes Plugin-System fuer Python-CLI-Anwendungen.
Ein fehlerhaftes Plugin stoppt niemals den Rest der Anwendung.
## Kernfeatures
- **Auto-Discovery:** Findet Plugins automatisch in einem Verzeichnis
- **Validierung:** Prueft `name`, `version`, `execute()` auf jeder Plugin-Klasse
- **Fehlertoleranz:** Defekte Plugins werden geloggt aber nicht geladen
- **Zero Dependencies:** Nur Python-Standardbibliothek
## Dateien
```
scripts/
plugin_system.py Kern: PluginBase (ABC) + PluginManager
cli_demo.py Demo-CLI mit argparse
test_plugin_system.py 16+ Unit-Tests
examples/
hello.py Hello-World Plugin
calculator.py Rechner-Plugin
systeminfo.py System-Info Plugin
```
## Schnellstart
### 1. Plugin erstellen
```python
from plugin_system import PluginBase
class MeinPlugin(PluginBase):
name = "MeinPlugin"
version = "1.0.0"
def execute(self, *args, **kwargs):
return {"status": "ok", "message": "Hallo!"}
```
### 2. PluginManager nutzen
```python
from plugin_system import PluginManager
manager = PluginManager(plugins_dir="./meine_plugins")
plugins = manager.discover_plugins()
# Alle Plugins auflisten
manager.list_plugins()
# Plugin ausfuehren
success, result = manager.execute_plugin("MeinPlugin", param="wert")
if success:
print(result)
```
### 3. In eigene App integrieren
```python
class MeineApp:
def __init__(self):
self.plugins = PluginManager("./plugins")