Communitygithub.com

JSungMin/vs-token-safer

Tokensichere C++/C#-Codesuche über clangd-/Roslyn-Index statt grep. Nur lokal, keine IDE erforderlich. Claude Code Plugin + vts CLI.

Was ist vs-token-safer?

Diese Fähigkeit ermöglicht eine tokensichere Suche in C++- und C#-Codebasen, indem sie den clangd-Index (für C++) und den Roslyn-Index (für C#) anstelle von grep verwendet. Dadurch werden semantisch korrekte Ergebnisse geliefert, die Token-Grenzen und Sprachkontext respektieren – ideal für Refactoring, Fehlersuche und Code-Analyse. Die Suche erfolgt ausschließlich lokal, sodass keine sensiblen Daten das System verlassen, und erfordert keine integrierte Entwicklungsumgebung (IDE). Es wird als Claude Code Plugin bereitgestellt, ergänzt durch das Kommandozeilenwerkzeug `vts` (CLI), das eine schnelle und präzise Abfrage von Code-Symbolen und Definitionen ermöglicht. Entwickler profitieren von einer deutlichen Reduzierung falscher Positivtreffer im Vergleich zu textbasierten Suchmethoden, was die Produktivität bei der Arbeit mit großen Codebasen steigert.

Funktioniert mit✓Claude Code~Codex CLI~Cursor
npx skills add JSungMin/vs-token-safer

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Was macht vs-token-safer?

Tokensichere C++/C#-Codesuche über clangd-/Roslyn-Index statt grep. Nur lokal, keine IDE erforderlich. Claude Code Plugin + vts CLI.

Übersicht

vs-token-safer ist ein CLI-Tool und Claude Code Plugin, das eine tokensichere Suche in C++- und C#-Codebasen ermöglicht. Es nutzt die Indizes von clangd (für C++) und Roslyn (für C#), anstatt sich auf textbasierte Suche mit grep zu verlassen. Dies liefert semantisch korrekte Ergebnisse, die Token-Grenzen und Sprachkontext respektieren – ideal für Refactoring, Fehlersuche und Code-Analyse.

Hauptmerkmale

  • Tokensichere Suche: Findet Symbole und Definitionen basierend auf dem Sprachindex, nicht nur Textmuster.
  • Lokale Ausführung: Sämtliche Verarbeitung erfolgt lokal, keine Datenverlassen Ihr System.
  • Keine IDE erforderlich: Funktioniert eigenständig über die CLI oder als Claude Code Plugin.
  • Unterstützt C++ und C#: Nutzt clangd für C++ und Roslyn für C#.

Installation

  1. Klonen Sie das Repository:

    git clone https://github.com/JSungMin/vs-token-safer.git
    cd vs-token-safer
    
  2. Bauen Sie das Projekt (stellen Sie sicher, dass .NET SDK und ein C++-Compiler installiert sind):

    dotnet build
    
  3. Fügen Sie das vts-CLI-Tool Ihrem PATH hinzu oder verwenden Sie den bereitgestellten Symlink.

Verwendung

CLI (vts)

Führen Sie Suchabfragen direkt in Ihrem Terminal aus:

vts search "MeinSymbolName" --language cpp
vts search "MeineKlasse" --language csharp

Weitere Optionen:

  • --project-root: Pfad zum Projektstammverzeichnis (Standard: aktuelles Verzeichnis).
  • --index-path: Pfad zum Indexverzeichnis (Standard: automatisch erkannt).
  • --verbose: Ausführliche Ausgabe für Debugging.

Claude Code Plugin

Das Plugin wird automatisch geladen, wenn Sie Claude Code in einem Verzeichnis mit einer gültigen claude_config.yml oder vts-Konfiguration ausführen. Sie können dann natürliche Sprachbefehle verwenden:

  • „Suche nach Definition von MyMethod in C++“
  • „Finde alle Verweise auf MyClass im C#-Projekt“

Konfiguration

Erstellen Sie eine vts.config.json-Datei in Ihrem Projektstammverzeichnis:

{
  "cpp": {
    "indexPath": ".vscode/cquery_index",
    "compileCommands": "build/compile_commands.json"
  },
  "csharp": {
    "projectFile": "MyProject.csproj",
    "indexPath": ".roslyn_index"
  }
}

Fehlerbehebung

  • CLI nicht gefunden: Stellen Sie sicher, dass die vts-Binärdatei in Ihrem PATH ist oder der Symlink korrekt gesetzt ist.
  • Keine Ergebnisse: Prüfen Sie, ob die Indexdateien korrekt generiert wurden und ob die Suchbegriffe existieren. Führen Sie vts --verbose search "..." aus, um mehr Details zu erhalten.
  • Claude Code Plugin lädt nicht: Vergewissern Sie sich, dass die Konfigurationsdatei vorhanden und gültig ist und dass Claude Code auf die Plugin-Dateien zugreifen kann.

Mitwirken

Beiträge sind willkommen! Bitte lesen Sie CONTRIBUTING.md für Details zum Einreichen von Pull Requests.

Lizenz

Dieses Projekt ist unter der MIT-Lizenz lizenziert – siehe LICENSE für Details.

Verwandte Skills