ellmos-security
Einstieg und Router der anbieterneutralen ellmos-Security-Familie (sec-*): ordnet Phasen von Bedrohungsmodell über Scan, Validierung, Triage, Fix, Verifikation und Tracking bis zum Bericht ein und ver
Files7
View on GitHubSKILL.mdskills/dev/ellmos-security/SKILL.md
GitHub<img src="banner.png" width="100%" alt="ellmos-security banner">
ellmos-security - Einstieg der Security-Familie
Die Familie prüft eigenen Code auf Schwachstellen und führt jeden Fund vom Verdacht bis zum nachverfolgten, verifizierten Fix. Alle Skills teilen einen Vertrag (Dateiformate, Lebenszyklus, Severity, Regeln): sec-scan/references/contract.md. Sie laufen bei Claude, Codex, Gemini und Kimi und hängen von keinem herstellerspezifischen Scanner ab; solche Scanner sind nur Adapter (Tabelle unten).
Phasen
| Phase | Skill | Wann |
|---|---|---|
| Modell | sec-threat-model |
vor dem ersten Scan: Werte, Vertrauensgrenzen, Einstiegspunkte |
| Scan | sec-scan |
ganzes Repo oder ein Pfad |
| Scan (Änderung) | sec-diff-scan |
Pull Request, Commit-Bereich, Diff |
| Validierung | sec-validate |
jeden candidate unabhängig bestätigen oder widerlegen |
| Triage | sec-triage |
Severity und Priorität gegen die Richtlinie |
| Fix | sec-fix |
nur auf Wunsch, Patch als Datei |
| Verifikation | sec-verify-fix |
schließt der Patch die Lücke, Regressionsrisiko |
| Tracking | sec-track |
Ticket, Issue oder Draft-Advisory |
| Bericht | sec-report |
report.md und findings.sarif |
Quer dazu: sec-policy (SECURITY.md), sec-hardening (strukturelle Maßnahmen), sec-writeup (Offenlegungsbericht), sec-supplychain (Fremdes vor der Installation).
Was will ich?
- Ein Repo prüfen ->
sec-scan(bei neuem Projekt vorhersec-threat-model) - Einen PR oder Diff prüfen ->
sec-diff-scan - Einen vorhandenen Fund weiterverfolgen ->
sec-validate->sec-triage->sec-fix->sec-verify-fix->sec-track - Ergebnisse als Bericht ->
sec-report - Regeln für ein Repo festlegen oder prüfen ->
sec-policy - Wiederkehrende Fundklassen grundsätzlich lösen ->
sec-hardening - Eine Lücke melden oder offenlegen ->
sec-writeup - Ein fremdes Skill, Plugin, einen MCP-Server oder Hook installieren ->
sec-supplychain
Nachbar-Skills (getrennt gepflegt, gehören dazu)
security-tech-stack-check+tech-detect: Abhängigkeiten und CVEs gegen den gemessenen Tech-Stack.protection-shield: akute Abwehr und wiederkehrende Log-/Stack-Prüfung auf eigenen Systemen.repo-publish-check: Veröffentlichungs-Gate vor dem Öffentlichmachen eines Repos.- Falls auf deinem System vorhanden: ein eigener Security-Wegweiser und ein Skill für persönliche Konten/Daten (kein Code). Sie sind nicht Teil dieser öffentlichen Familie.
Anbieter-Adapter (Vertrag §7)
| Anbieter | Natives Scan-Werkzeug | Anbindung | Kostenhinweis |
|---|---|---|---|
| Claude | Plugin /claude-security |
damit scannen, Ausgabeordner auf findings.json/coverage.json abbilden |
Plugin-Scan mit mehreren Agenten: vorher schätzen und warnen (Regel 5); Egress beachten (Regel 6) |
| Codex | Plugin codex-security |
dasselbe, aus dessen Scanausgabe | wie oben |
| Gemini, Kimi | keines | eigenes Verfahren aus sec-scan |
Tokens der laufenden Sitzung; deep-Scans vorher schätzen |
Adapter überspringen nie die Validierung: abgebildete Funde starten als candidate. Genaue Abbildungsschritte: sec-scan, Abschnitt Adapter.
Schnellstart
Ganzes Repo: sec-threat-model (kurz) -> sec-scan -> python scripts/secfind.py validate findings.json coverage.json (Skript in sec-scan) -> sec-validate mit anderem Anbieter -> sec-triage -> sec-report.
Pull Request: sec-diff-scan auf den Diff -> Funde des PR direkt an den Autor; bei Bestätigung sec-validate, danach wie oben. Abdeckung in coverage.json prüfen: nur den Diff gesehen heißt nicht "Code sicher".
Ein bestätigter Fund bis zum Ticket: sec-triage (Severity gegen SECURITY.md) -> auf Wunsch sec-fix -> sec-verify-fix mit anderem Prüfer -> sec-track (Vorschau, Bestätigung, finding.ticket zurückschreiben).
Gemeinsame Regeln (Kurzform, maßgeblich ist der Vertrag §6)
Nur eigener Code · Lock vor jedem Schreiben · Patches statt Commits · keine Geheimnis-Werte in Ausgaben · Kosten- und Egress-Warnung vor großen Läufen · unabhängige Validierung · ein Ergebnis ohne coverage.json ist keins.
Changelog
0.1.0 (2026-10-31)
- Erstfassung des Routers.