- New: auth.py – Role-based access (operator/approver/viewer) - New: llm_router.py – Configurable primary/fallback provider chain - New: audit_log.py + audit_query.py – DSGVO-compliant audit trail - New: sanitize_output() – masks secrets in bot responses - Updated: bot.py – Integrated auth guards, router, audit logging - Updated: ollama_client.py – Router-compatible interface - Updated: CLOWNFISCHSERVER.md – Documentation updated - Updated: README.md – Documentation updated
1.6 KiB
1.6 KiB
Contributing to Clownfischserver 🐠
Danke dass du mitmachen willst! Hier sind die Regeln:
Grundprinzipien
- Open Source bleibt Open Source – GPL-3.0, keine Ausnahmen
- Lokal first – keine Cloud-Dependencies, keine externen APIs
- Einfach bleiben – ein Nutzer, ein Bot, ein Server
- Sicherheit – Safety-Check vor jeder Aktion
Pull Requests
- Fork das Repo
- Branch erstellen:
git checkout -b feature/dein-feature - Änderungen committen
- PR öffnen mit Beschreibung was und warum
Code Style
- Python: PEP8, async/await
- Bash: shellcheck-kompatibel
- Kommentare auf Deutsch oder Englisch
- Header in jeder Datei (siehe bestehende Dateien)
Code-Hygiene (wichtig!)
- Kein toter Code – keine Funktionen/Module die definiert aber nie aufgerufen werden
- Keine versteckten Cloud-Calls – jeder externe Request muss klar ersichtlich und opt-in sein
- Niemals
verify=Falsebei HTTPS-Requests - Keine User-Eingaben an Dritte ohne explizites Opt-in (DSGVO by design)
- Klare Conditions – verschachtelte Ternaries (
A if B else Cinnerhalb vonand-Ketten) vermeiden - Selbst-Review vor jedem Release: macht jede Zeile noch das was sie soll?
Issues
- Bug? → Issue mit Log-Output
- Feature-Idee? → Issue mit Use-Case Beschreibung
- Frage? → Issue oder Discussions
Was wir suchen
- Distro-Support (getestete Fedora/Arch Fixes)
- Neue Bot-Commands
- Bessere Safety-Prompts
- Dokumentation
- Tests
Was wir NICHT wollen
- Cloud-Dependencies
- Closed-Source Komponenten
- Komplexität die Einsteiger abschreckt