Allgemeine Einführung
code2prompt ist ein Open-Source-Befehlszeilen-Tool, das vom Entwickler Mufeed VH erstellt wurde und auf GitHub gehostet wird. Es wurde entwickelt, um Benutzer bei der schnellen Umwandlung ganzer Codebasen in Prompts zu unterstützen, die für das Large Language Model (LLM) geeignet sind. Es erzeugt eine formatierte Markdown-Ausgabe, indem es das Code-Verzeichnis durchläuft, eine Quellcode-Baumstruktur erzeugt und den Inhalt der Dateien für die direkte Verwendung in Aufgaben wie Code-Analyse, Dokumentation oder Feature-Verbesserung konsolidiert. Mit der Unterstützung von Handlebars-Vorlagenanpassung, Token-Counting-Statistiken und Git-Diff-Integration eignet sich das Tool besonders gut für Entwickler, die die Leistungsfähigkeit von Big Models wie ChatGPT (oder Claude) zur Bearbeitung komplexer Code-Basen. Ob es um die Optimierung der Leistung, das Auffinden von Fehlern oder das Generieren von Commits geht, code2prompt bringt erhebliche Effizienzgewinne. Mit Stand vom 3. März 2025 hat das Projekt mehr als 4.500 Sterne, was seine breite Akzeptanz in der Entwicklergemeinde beweist.
Funktionsliste
- Codebase-KonvertierungKonsolidierung von Codedateien aus einem bestimmten Verzeichnis in eine einzige LLM-lesbare Eingabeaufforderung.
- Quellcode-BaumerzeugungAutomatisches Erstellen einer Baumstruktur von Codeverzeichnissen zum besseren Verständnis des Projektlayouts.
- Anpassung von VorlagenAnpassung des Ausgabeformats mit Handlebars-Vorlagen zur Unterstützung einer Vielzahl von Anwendungsszenarien.
- Anzahl der Token: Statistische Generierung von Prompts für Token Zahl, um die Anpassung an die kontextuellen Zwänge der verschiedenen Modelle zu gewährleisten.
- Git-IntegrationUnterstützung für das Hinzufügen von Git diff und log, um die Änderungshistorie des Codes anzuzeigen.
- Dokument-FilterungUnterstützt das Filtern von Dateien im Glob-Modus, wobei fremde Inhalte wie .gitignore ignoriert werden.
- Markdown-AusgabeGenerieren Sie strukturierte Markdown-Dokumente, die Sie direkt in LLM hochladen können.
- Plattformübergreifende UnterstützungStabil auf Linux, macOS und Windows.
- Unterstützung der ZwischenablageKopieren Sie die generierten Tipps automatisch in die Zwischenablage, um die betriebliche Effizienz zu steigern.
Hilfe verwenden
Ablauf der Installation
code2prompt ist ein in Rust geschriebenes Kommandozeilenwerkzeug mit einem einfachen Installationsprozess und Unterstützung für mehrere Methoden. Hier sind die detaillierten Schritte:
Methode 1: Installation über den Quellcode
- VorbedingungenStellen Sie sicher, dass Rust und Cargo (der Paketmanager von Rust) auf Ihrem System installiert sind. Dies kann mit dem folgenden Befehl überprüft werden:
rustc --version cargo --version
Wenn Sie das Programm nicht haben, können Sie es auf der Rust-Website herunterladen und installieren.
2. Klon-Lager::
git clone https://github.com/mufeedvh/code2prompt.git
cd code2prompt
- Kompilierung und Installation::
cargo build --release
Nach der Kompilierung wird die
Ziel/Freigabe/
Verzeichnis zu finden, um diecode2prompt
Ausführbare Datei. - Zum globalen Pfad wechseln(Optional): Verschiebt Dateien in einen Systempfad, z. B. für globale Aufrufe:
sudo mv target/release/code2prompt /usr/local/bin/
Methode 2: Durch Vorkompilierung von Binärdateien
- Besuchen Sie die GitHub Releases-Seite, um die neueste Version der Binärdatei für Ihr Betriebssystem herunterzuladen (z.B.
code2prompt-v2.0.0-linux-x86_64
). - Entpacken Sie die Datei und erteilen Sie die Ausführungserlaubnis:
chmod +x code2prompt
- In den globalen Pfad verschieben (optional):
sudo mv code2prompt /usr/local/bin/
Methode 3: Installation über Nix
Wenn Sie den Nix-Paketmanager verwenden, können Sie es direkt installieren:
# keine Flocken
nix-env -iA nixpkgs.code2prompt
# mit Flocken
nix profile install nixpkgs#code2prompt
Verwendung
Nach der Installation können Sie es von der Kommandozeile aus starten code2prompt
. Nachstehend finden Sie eine detaillierte Beschreibung der Hauptfunktionen:
1. grundlegende Verwendung: Generierung von Hinweisen zur Codebasis
Angenommen, Sie haben ein Codeverzeichnis /pfad/zu/codebase
führen Sie den folgenden Befehl aus:
code2prompt /pfad/zu/codebase
- Die Ausgabe enthält den Quellbaum und alle Dateiinhalte, die standardmäßig im Markdown-Format erzeugt und in die Zwischenablage kopiert werden.
- Beispielhafte Ausgabe:
Quellbaum.
dir/
Datei1.rs
└── file2.py`dir/file1.rs`.
2. benutzerdefinierte Vorlagen
code2prompt bietet eingebaute Vorlagen (z.B. für die Erzeugung von Git-Commit-Nachrichten, Dokumentationskommentaren usw.), die sich im Installationsverzeichnis des Vorlagen/
Ordner. Sie können auch benutzerdefinierte Vorlagen erstellen. Zum Beispiel können Sie mit dem dokument-des-codes.hbs
Dokumentenkommentare hinzufügen:
code2prompt /pfad/zu/codebase -t templates/document-the-code.hbs
- Benutzerdefinierte Vorlagen müssen der Handlebars-Syntax folgen, mit Variablen wie
absoluter_code_pfad
(Code-Pfad),quelle_baum
(Quellcode-Baum) undDateien
(Liste der Dokumente).
3 Token-Zählung und Kodierungsoptionen
Anzeige der Anzahl der erzeugten Hinweis-Token, mit Unterstützung für mehrere Splitter:
code2prompt /pfad/zur/codebase --tokens -c cl100k
- Fakultatives Partizip:
cl100k
(Voreinstellung),p50k
, undp50k_edit
, undr50k
.
4. die Git-Integration
Git diff hinzufügen (Staged Files):
code2prompt /pfad/zur/codebase --diff
Vergleichen Sie die Unterschiede zwischen den beiden Zweigen:
code2prompt /path/to/codebase --git-diff-branch "main, development"
Abrufen des Übergabeprotokolls zwischen Zweigen:
code2prompt /path/to/codebase --git-log-branch "main, development"
5. die Filterung von Dokumenten
Bestimmte Dateien oder Verzeichnisse ausschließen:
code2prompt /path/to/codebase --exclude "*.log" --exclude "tests/*"
Enthält nur bestimmte Dateien:
code2prompt /path/to/codebase --include "*.rs" --include "*.py"
6. die Ausgabe speichern
Speichern Sie die Ergebnisse als Datei, anstatt sie nur in die Zwischenablage zu kopieren:
code2prompt /pfad/zur/codebase -o output.md
Beispiel für den Betrieb
Angenommen, Sie möchten Empfehlungen zur Leistungsoptimierung für ein Python-Projekt erstellen:
- Befehl ausführen:
code2prompt /Pfad/zu/Projekt -t templates/improve-performance.hbs -o prompt.md
- Oberbefehlshaber (Militär)
prompt.md
Hochgeladene Inhalte auf Claude oder ChatGPT, geben Sie ein: "Leistungsoptimierungen auf der Grundlage dieser Codebasis vorschlagen". - Abrufen der vom Modell zurückgegebenen Optimierungsoptionen, wie Schleifenoptimierung, Empfehlungen zur Speicherverwaltung usw.
caveat
- Wenn die Zwischenablagefunktion auf manchen Systemen (z.B. Ubuntu 24.04) nicht funktioniert, exportieren Sie in das Terminal und kopieren Sie manuell:
code2prompt /pfad/zur/codebase -o /dev/stdout | xclip -auswahl c
- Sonde
.gitignore
Datei, um sicherzustellen, dass fremde Dateien korrekt ignoriert werden (verfügbar mit der--no-ignore
(Deaktiviert).
Mit den oben genannten Schritten können Sie schnell mit code2prompt beginnen und Ihre Code-Basis einfach in große, modellierbare Prompts verwandeln, die den gesamten Prozess von der Analyse bis zur Optimierung abschließen.