Was macht codebase-auditor?
Codex-Fähigkeit und CLI für Codebasis-Komplexitäts-, Sicherheits-, Architektur-, Abhängigkeits- und Leistungsprüfungen.
Übersicht
Dieses Tool führt eine automatisierte, mehrdimensionale Prüfung Ihrer Codebasis durch. Es erfasst Metriken in den folgenden Kategorien:
- Komplexität: Zyklomatische Komplexität, Code-Duplizierung, Zeilenanzahl pro Funktion/Methode.
- Sicherheit: Scannt auf bekannte Sicherheitslücken (CVE) in Abhängigkeiten und unsichere Codierungsmuster (z.B. SQL-Injection, XSS).
- Architektur: Analysiert Schichtenverletzungen, zirkuläre Abhängigkeiten und Kopplung zwischen Modulen.
- Abhängigkeiten: Erkennt Konflikte, veraltete Pakete und transitive Abhängigkeiten.
- Leistung: Identifiziert potenzielle Engpässe wie ineffiziente Datenbankoperationen, übermäßiges Speicher-Logging oder langsame Algorithmen.
Verwendung
Als CLI
npx twinedge-ai/codebase-auditor --path /pfad/zum/projekt --format json > audit-report.json
Optionen:
--path(erforderlich): Pfad zur Codebasis.--format: Ausgabeformat (json, markdown, html). Standard istmarkdown.--categories: Kommagetrennte Liste der zu prüfenden Kategorien (z.B.complexity,security). Ohne Angabe werden alle Kategorien geprüft.--output: Pfad zur Ausgabedatei. Wenn nicht angegeben, wird in die Standardausgabe geschrieben.
Als Codex-Fähigkeit
Fügen Sie dieses Skill zu Ihrem Codex-Workflow hinzu, um bei Bedarf Audit-Berichte zu generieren oder während Code-Reviews zu integrieren.
Beispiel-Prompt:
Führe ein Codebase-Audit für das aktuelle Projekt durch. Fokussiere dich auf Sicherheit und Architektur. Gib die Ergebnisse als Markdown-Report aus.
Installation
npm install -g twinedge-ai/codebase-auditor
Konfiguration
Sie können eine .auditrc-Datei im Stammverzeichnis Ihres Projekts erstellen, um Standardoptionen festzulegen:
{
"categories": ["security", "architecture"],
"format": "json",
"exclude": ["node_modules", "dist", "*.test.js"]
}
Ausgabe
Ein Beispiel für eine JSON-Ausgabe:
{
"summary": {
"totalIssues": 12,
"complexity": 5,
"security": 3,
"architecture": 2,
"dependencies": 1,
"performance": 1
},
"details": [
{
"category": "sicherheit",
"severity": "hoch",
"file": "src/api/auth.js",
"line": 45,
"message": "Mögliche SQL-Injection: Verwenden Sie parametrisierte Abfragen."
},
...
]
}
Weiterentwicklung
Beiträge und Verbesserungsvorschläge sind willkommen. Reichen Sie Issues oder Pull-Requests im GitHub-Repository ein.
Lizenz
MIT