3 Punkte von flamehaven01 2025-12-05 | 2 Kommentare | Auf WhatsApp teilen

Hallo. Vor etwa drei Monaten habe ich Dir2md zum ersten Mal vorgestellt.
Seitdem habe ich es auf verschiedene Projekte angewendet, dabei wurden strukturelle Grenzen sichtbar, und deshalb habe ich den gesamten Algorithmus-, Sicherheits- und Output-Pipeline-Bereich neu aufgestellt.


❔Was ist Dir2md?

Dir2md ist ein Tool, das komplexe Verzeichnisstrukturen in AI-freundlichen Markdown-/JSONL-Kontext mit Smart Sampling, Sicherheits-Masking und Token-Budget-Steuerung umwandelt. Es bereitet Repositories automatisch in einer Form auf, die für AI-assisted Development optimiert ist.


🔧 Was hat sich geändert — Ergebnis einer vollständigen Überarbeitung in 3 Monaten

1) Neudesign der AI-Optimierungs-Engine

  • Einführung von Head-/Tail-Smart-Sampling auf Dateiebene
  • Verfeinerte Logik zur automatischen Verteilung des Token-Budgets
  • Überarbeitung der Struktur zur bevorzugten Auswahl wichtiger Dateien
  • Aufbau einer Multi-Output-Pipeline für Markdown, JSON, JSONL und Manifest

2) Einführung von Spicy (Sicherheits- und Risikoanalysator)

  • Integrierter Risiko-Scanner, der standardmäßig beim Ausführen aktiviert ist
  • Einsatz eines 5-stufigen Schweregrad-Systems von ok bis critical
  • Berechnung eines Risiko-Scores von 0 bis 100 auf Repository-Ebene
  • Ausgabe einer Actionable Risk Table mit Datei/Zeile/Kategorie/Reaktionsleitfaden

3) Verstärkung der Sicherheits-Masking-Engine

  • Automatisches Maskieren zentraler Muster wie API Keys, JWT, OAuth, DB-URL und PEM
  • Einführung benutzerdefinierter Regex sowie einer Funktion zum Laden von Pattern-Dateien

4) Einführung der Duplikatentfernung auf Basis von SimHash

  • Entfernt ähnliche Dateien und Build-Artefakte
  • Minimiert die Verschwendung doppelter Tokens im LLM-Eingabekontext

5) Erweiterung des Preset-Systems

  • Vier Modi: raw, pro, ai, fast
  • Der ai-Modus enthält ein Budget von 6000 Tokens plus query-basiertes Datei-Ranking

🌶️ Was ist die scharfe Variante (Spicy)?

Spicy ist kurz gesagt „ein automatischer Reviewer wie ein erfahrener Senior-Entwickler mit scharfem Blick, der nie nachsichtig bei Sicherheit ist“.

Dir2md ist nicht nur ein Tool zum „Dokumentieren von Verzeichnissen“, sondern führt in einem Schritt auch die Sicherheits- und Qualitätsprüfungen durch, die unbedingt nötig sind, bevor ein Repository in eine AI eingespeist wird.

1) Erkennung sensibler Informationen

  • Erkennt Muster, die zu realen Vorfällen führen können, wie API Key, OAuth Client Secret, JWT, DB-URL und PEM-Key

2) Analyse schwacher Verschlüsselung und unsicherer Sicherheitsnutzung

  • Erkennt Code mit Sicherheitsproblemen wie schwache Algorithmen oder unsichere Schlüsselverarbeitung

3) Diagnose möglicher Injection-Risiken

  • Erkennt Muster ähnlich zu SQL/Command/Code Injection

4) Datenoffenlegung über Logs und Debugging

  • Erkennt Code und Konfigurationen, die sensible Informationen ausgeben

5) Probleme bei der Zugriffskontrolle

  • Analysiert Muster mit Schwachstellen bei Authentifizierung und Berechtigungen
  • Erkennt zusätzlich Konfigurations-Warnsignale, die im README erwähnt werden

📊 Gemessene Ergebnisse auf Basis von 9 internen Produktions-Repositories

Nach dem Redesign von Dir2md + Spicy wurden mit Stand gestern folgende reale Werte gemessen:

  • Durchschnittlich 2,4 Funde sensibler Informationen pro Repository im Bereich high/critical
    • API Keys, PEM-Private-Keys, DB-URLs, Bearer Tokens usw.
  • Durchschnittlich 68 % kleinere Kontextgröße
    • 128k → ~41k Tokens (alle bedeutungsvollen Dateien bleiben erhalten)
  • Zeit für Security Review: bisher 3,5 Stunden → 11 Sekunden
  • Seit der Einführung über LLM-Prompts offengelegte Geheimnisse: 0 Fälle

Diese Ergebnisse entsprechen der Leistung in realen Betriebsumgebungen, wenn Smart Sampling, SimHash-Deduplizierung, Spicy-Risikoanalyse und die Masking-Engine zusammenwirken.


⭐ Wenn das Projekt hilfreich war

Dir2md + Spicy ist Open Source.
Die meisten Funktionen, die Sie hier sehen, konnten sich dank Nutzerfeedback und Stars (⭐) weiterentwickeln. Vielen Dank noch einmal.

  • 👉 Ein GitHub Star ist eine große Unterstützung!
  • 👉 Bugs und Ideenvorschläge sind jederzeit willkommen.

2 Kommentare

 
flamehaven01 2025-12-19

📌 Zusammenfassung der wichtigsten Updates seit dir2md v1.1.2

  • v1.2.1 (Sicherheits-/Zuverlässigkeitspatch)

    • Markdown-```-Injection-Schwachstelle behoben → Fence wird automatisch escaped
    • subprocess für externes Tool (vulture) entfernt → RCE-Vektor blockiert
    • stille Exceptions entfernt, Warn-Logs verstärkt
    • glob-Verarbeitung vereinfacht (gitignore-Regeln werden eingehalten)
    • Standard-Excludes in defaults.json ausgelagert + Prioritätssystem eingeführt
  • v1.2.0 (intelligente automatische Optimierung)

    • Pipeline mit 60–70 % Token-Einsparung, die ohne Konfiguration funktioniert

      • Gravitas-Komprimierung (Symbolersetzung)
      • semantisches Sampling auf Basis von Python-AST
    • bei Verwendung von --query automatische Tippfehlerkorrektur + erweiterte Suche

    • preset-zentriertes Design mit stark reduzierter Anzahl an Flags (raw/fast/pro/ai)

    • implementiert ohne externe NLP-/LLM-Abhängigkeiten

  • v1.1.3

    • Phantom-Code-Erkennung: Tool zur Dead-Code-Analyse im PATH wird automatisch erkannt

👉 Kurz gesagt sind die Releases ab 1.2.x auf „weniger Konfiguration, mehr Sicherheit, Determinismus und AI-Freundlichkeit“ fokussiert.
(Abwärtskompatibilität bleibt erhalten, keine CLI-Breaking-Changes)

Quelle: CHANGELOG

 
flamehaven01 2025-12-09

🚂 dir2md 1.1.2 veröffentlicht!
Dieses Update wirkt äußerlich klein, bündelt aber ausschließlich Änderungen, die sich direkt auf die Stabilität im praktischen Einsatz auswirken.

🛡 Security

🔸Vorabkompilierung der Standard-/Advanced-Masking-Regexe → geringeres ReDoS-Risiko
🔸Dateien über 1 MB werden vor dem Einlesen übersprungen und nur im Manifest vermerkt

⚙️ Performance
🔸LRU-Cache (2048) für die Token-Schätzung → höhere Geschwindigkeit in großen Repositories
🔸Auch leere Strings werden mit mindestens 1 Token behandelt → die Mehrdeutigkeit von „0 Token“ entfällt

🧩 UX / Behavior
🔸Übersprungene Dateien hinterlassen Platzhalter-Hash/Zusammenfassung für mehr Transparenz
🔸Bei benutzerdefinierten Masking-Mustern wird ein Kompilierungsfehler mit Warnung ignoriert (verhindert stilles Fehlschlagen)

✅ Tests
🔸22 bestanden, 2 übersprungen

Kleines Release, aber wir haben alle Tests durchlaufen lassen.

Das Ziel dieser Version ist genau eines:
„Kann man sie täglich in CI und auf echtem Produktionscode laufen lassen?“
Dem sind wir wieder einen Schritt näher gekommen.

https://github.com/flamehaven01/Dir2md/releases/tag/v1.1.2