Skip to content
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions repomix.config.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
"showLineNumbers": false,
"includeEmptyDirectories": true,
"truncateBase64": true,
"tokenCountTree": 50000,
"git": {
"sortByChanges": true,
"sortByChangesMaxCommits": 100,
Expand Down
90 changes: 51 additions & 39 deletions website/client/src/de/guide/command-line-options.md
Original file line number Diff line number Diff line change
@@ -1,73 +1,80 @@
# Kommandozeilenoptionen
# Befehlszeilenoptionen

## Grundlegende Optionen
- `-v, --version`: Zeigt die Version an

## Ausgabeoptionen
- `-o, --output <file>`: Ausgabedateiname (Standard: `repomix-output.txt`)
- `--stdout`: Ausgabe an die Standardausgabe anstatt in eine Datei (kann nicht mit der Option `--output` verwendet werden)
- `--style <type>`: Ausgabeformat (`plain`, `xml`, `markdown`) (Standard: `xml`)
- `--parsable-style`: Aktiviert parsbare Ausgabe basierend auf dem gewählten Formatschema (Standard: `false`)
- `--compress`: Führt eine intelligente Code-Extraktion durch, die sich auf Funktions- und Klassensignaturen konzentriert und Implementierungsdetails entfernt. Weitere Details und Beispiele finden Sie im [Code-Komprimierungsleitfaden](code-compress)
- `--output-show-line-numbers`: Fügt Zeilennummern hinzu (Standard: `false`)
- `--copy`: In die Zwischenablage kopieren (Standard: `false`)
- `--no-file-summary`: Deaktiviert die Dateizusammenfassung (Standard: `true`)
- `--no-directory-structure`: Deaktiviert die Verzeichnisstruktur (Standard: `true`)
- `--no-files`: Deaktiviert die Ausgabe des Dateiinhalts (Nur-Metadaten-Modus) (Standard: `true`)
- `--remove-comments`: Entfernt Kommentare (Standard: `false`)
- `--remove-empty-lines`: Entfernt leere Zeilen (Standard: `false`)
- `--truncate-base64`: Schneidet Base64-kodierte Datenstrings ab (Standard: `false`)
- `--header-text <text>`: Benutzerdefinierter Text für den Dateikopf
- `-v, --version`: Tool-Version anzeigen

## CLI Ein-/Ausgabeoptionen
- `--verbose`: Ausführliche Protokollierung aktivieren
- `--quiet`: Alle Ausgaben an stdout deaktivieren
- `--stdout`: Ausgabe an stdout statt in eine Datei (kann nicht mit `--output` Option verwendet werden)
- `--stdin`: Dateipfade von stdin lesen statt Dateien automatisch zu entdecken
- `--copy`: Generierte Ausgabe zusätzlich in die Systemzwischenablage kopieren
- `--token-count-tree [threshold]`: Dateibaum mit Token-Anzahl-Zusammenfassungen anzeigen (optional: minimale Token-Anzahl-Schwelle). Nützlich zur Identifizierung großer Dateien und Optimierung der Token-Nutzung für KI-Kontextlimits
- `--top-files-len <number>`: Anzahl der Top-Dateien in der Zusammenfassung

## Repomix-Ausgabeoptionen
- `-o, --output <file>`: Ausgabedateiname angeben
- `--style <style>`: Ausgabestil angeben (`xml`, `markdown`, `plain`)
- `--parsable-style`: Parsbare Ausgabe basierend auf dem gewählten Stil-Schema aktivieren. Beachten Sie, dass dies die Token-Anzahl erhöhen kann.
- `--compress`: Intelligente Code-Extraktion durchführen, die sich auf wesentliche Funktions- und Klassensignaturen konzentriert, um die Token-Anzahl zu reduzieren
- `--output-show-line-numbers`: Zeilennummern in der Ausgabe anzeigen
- `--no-file-summary`: Datei-Zusammenfassungsbereich-Ausgabe deaktivieren
- `--no-directory-structure`: Verzeichnisstruktur-Bereich-Ausgabe deaktivieren
- `--no-files`: Dateiinhalt-Ausgabe deaktivieren (nur Metadaten-Modus)
- `--remove-comments`: Kommentare aus unterstützten Dateitypen entfernen
- `--remove-empty-lines`: Leere Zeilen aus der Ausgabe entfernen
- `--truncate-base64`: Kürzung von Base64-Datenstrings aktivieren
- `--header-text <text>`: Benutzerdefinierten Text im Dateikopf einschließen
- `--instruction-file-path <path>`: Pfad zu einer Datei mit detaillierten benutzerdefinierten Anweisungen
- `--include-empty-directories`: Leere Verzeichnisse in die Ausgabe einbeziehen (Standard: `false`)
- `--include-diffs`: Git-Unterschiede in die Ausgabe einbeziehen (enthält sowohl Arbeitsbaum- als auch gestaged Änderungen separat) (Standard: `false`)
- `--include-empty-directories`: Leere Verzeichnisse in die Ausgabe einschließen
- `--include-diffs`: Git-Diffs in die Ausgabe einschließen (beinhaltet Arbeitsbaum- und gestufte Änderungen separat)
- `--no-git-sort-by-changes`: Sortierung der Dateien nach Git-Änderungsanzahl deaktivieren (standardmäßig aktiviert)

## Filteroptionen
- `--include <patterns>`: Einzuschließende Muster (durch Komma getrennt)
- `-i, --ignore <patterns>`: Zu ignorierende Muster (durch Komma getrennt)
- `--stdin`: Dateipfade von stdin lesen anstatt Dateien automatisch zu erkennen
- `--no-gitignore`: Deaktiviert die Verwendung der .gitignore-Datei
- `--no-default-patterns`: Deaktiviert Standardmuster
## Dateiauswahloptionen
- `--include <patterns>`: Liste der Einschlussmuster (kommagetrennt)
- `-i, --ignore <patterns>`: Zusätzliche Ignoriermuster (kommagetrennt)
- `--no-gitignore`: .gitignore-Datei-Nutzung deaktivieren
- `--no-default-patterns`: Standardmuster deaktivieren

## Remote-Repository-Optionen
- `--remote <url>`: Remote-Repository verarbeiten
- `--remote-branch <name>`: Remote-Branch-Name, Tag oder Commit-Hash angeben (Standard ist der Standard-Branch des Repositories)
- `--remote-branch <name>`: Remote-Branch-Name, Tag oder Commit-Hash angeben (Standard ist Repository-Standard-Branch)

## Konfigurationsoptionen
- `-c, --config <path>`: Pfad zur benutzerdefinierten Konfigurationsdatei
- `-c, --config <path>`: Benutzerdefinierten Konfigurationsdateipfad
- `--init`: Konfigurationsdatei erstellen
- `--global`: Globale Konfiguration verwenden

## Sicherheitsoptionen
- `--no-security-check`: Deaktiviert die Sicherheitsprüfung (Standard: `true`)
- `--no-security-check`: Sicherheitsprüfung deaktivieren (Standard: `true`)

## Token-Zähloptionen
- `--token-count-encoding <encoding>`: Token-Zählkodierung festlegen (z.B. `o200k_base`, `cl100k_base`) (Standard: `o200k_base`)
## Token-Anzahl-Optionen
- `--token-count-encoding <encoding>`: Token-Anzahl-Kodierung angeben, die von OpenAIs [tiktoken](https://github.com/openai/tiktoken) Tokenizer verwendet wird (z.B. `o200k_base` für GPT-4o, `cl100k_base` für GPT-4/3.5). Siehe [tiktoken model.py](https://github.com/openai/tiktoken/blob/main/tiktoken/model.py#L24) für Kodierungsdetails.

## Weitere Optionen
- `--top-files-len <number>`: Anzahl der anzuzeigenden Top-Dateien (Standard: `5`)
- `--verbose`: Ausführliche Protokollierung aktivieren
- `--quiet`: Deaktiviert alle Ausgaben an stdout
- `--quiet`: Alle Ausgaben an stdout deaktivieren

## Beispiele

```bash
# Grundlegende Verwendung
# Grundlegende Nutzung
repomix

# Benutzerdefinierte Ausgabe
repomix -o output.xml --style xml

# Ausgabe an die Standardausgabe
# Ausgabe an stdout
repomix --stdout > custom-output.txt

# Ausgabe an die Standardausgabe senden, dann in einen anderen Befehl weiterleiten (zum Beispiel: simonw/llm)
repomix --stdout | llm "Bitte erkläre, was dieser Code macht"
# Ausgabe an stdout, dann an anderen Befehl weiterleiten (z.B. simonw/llm)
repomix --stdout | llm "Bitte erklären Sie, was dieser Code macht."

# Benutzerdefinierte Ausgabe mit Komprimierung
repomix --compress

# Bestimmte Dateien verarbeiten
# Spezifische Dateien verarbeiten
repomix --include "src/**/*.ts" --ignore "**/*.test.ts"

# Remote-Repository mit Branch
Expand All @@ -82,5 +89,10 @@ repomix --remote user/repo
# Dateiliste mit stdin
find src -name "*.ts" -type f | repomix --stdin
git ls-files "*.js" | repomix --stdin
echo -e "src/index.ts\nsrc/utils.ts" | repomix --stdin
```
echo -e "src/index.ts
src/utils.ts" | repomix --stdin
Comment thread
yamadashy marked this conversation as resolved.
Outdated

# Token-Anzahl-Analyse
repomix --token-count-tree
repomix --token-count-tree 1000 # Nur Dateien/Verzeichnisse mit 1000+ Tokens anzeigen
```
Comment thread
yamadashy marked this conversation as resolved.
Outdated
34 changes: 34 additions & 0 deletions website/client/src/de/guide/usage.md
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,40 @@ repomix --compress
repomix --remote yamadashy/repomix --compress
```

### Token-Anzahl-Optimierung

Das Verständnis der Token-Verteilung Ihrer Codebasis ist entscheidend für die Optimierung von KI-Interaktionen. Verwenden Sie die `--token-count-tree`-Option, um die Token-Nutzung in Ihrem gesamten Projekt zu visualisieren:

```bash
repomix --token-count-tree
```

Dies zeigt eine hierarchische Ansicht Ihrer Codebasis mit Token-Anzahlen:

```
🔢 Token Count Tree:
────────────────────
└── src/ (70,925 tokens)
├── cli/ (12,714 tokens)
│ ├── actions/ (7,546 tokens)
│ └── reporters/ (990 tokens)
└── core/ (41,600 tokens)
├── file/ (10,098 tokens)
└── output/ (5,808 tokens)
```

Sie können auch eine minimale Token-Schwelle setzen, um sich auf größere Dateien zu konzentrieren:

```bash
repomix --token-count-tree 1000 # Nur Dateien/Verzeichnisse mit 1000+ Tokens anzeigen
```

Dies hilft Ihnen dabei:
- **Token-schwere Dateien identifizieren** - Dateien, die KI-Kontextlimits überschreiten könnten
- **Dateiauswahl optimieren** - Verwendung von `--include` und `--ignore` Mustern
- **Komprimierungsstrategien planen** - Zielgerichtete Strategien für die größten Beitragenden
- **Inhalte vs. Kontext ausbalancieren** - Beim Vorbereiten von Code für KI-Analysen

## Ausgabeformate

### XML (Standard)
Expand Down
55 changes: 33 additions & 22 deletions website/client/src/en/guide/command-line-options.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,30 +3,36 @@
## Basic Options
- `-v, --version`: Show tool version

## Output Options
- `-o, --output <file>`: Output file name (default: `repomix-output.txt`)
## CLI Input/Output Options
- `--verbose`: Enable verbose logging
- `--quiet`: Disable all output to stdout
- `--stdout`: Output to stdout instead of writing to a file (cannot be used with `--output` option)
- `--style <type>`: Output style (`plain`, `xml`, `markdown`) (default: `xml`)
- `--parsable-style`: Enable parsable output based on the chosen style schema (default: `false`)
- `--compress`: Perform intelligent code extraction, focusing on essential function and class signatures while removing implementation details. For more details and examples, see [Code Compression Guide](code-compress).
- `--output-show-line-numbers`: Add line numbers (default: `false`)
- `--copy`: Copy to clipboard (default: `false`)
- `--no-file-summary`: Disable file summary (default: `true`)
- `--no-directory-structure`: Disable directory structure (default: `true`)
- `--no-files`: Disable files content output (metadata-only mode) (default: `true`)
- `--remove-comments`: Remove comments (default: `false`)
- `--remove-empty-lines`: Remove empty lines (default: `false`)
- `--truncate-base64`: Truncate base64 encoded data strings (default: `false`)
- `--stdin`: Read file paths from stdin instead of discovering files automatically
- `--copy`: Additionally copy generated output to system clipboard
- `--token-count-tree [threshold]`: Display file tree with token count summaries (optional: minimum token count threshold). Useful for identifying large files and optimizing token usage for AI context limits
- `--top-files-len <number>`: Number of top files to display in the summary

## Repomix Output Options
- `-o, --output <file>`: Specify the output file name
- `--style <style>`: Specify the output style (`xml`, `markdown`, `plain`)
- `--parsable-style`: Enable parsable output based on the chosen style schema. Note that this can increase token count.
- `--compress`: Perform intelligent code extraction, focusing on essential function and class signatures to reduce token count
- `--output-show-line-numbers`: Show line numbers in the output
- `--no-file-summary`: Disable file summary section output
- `--no-directory-structure`: Disable directory structure section output
- `--no-files`: Disable files content output (metadata-only mode)
- `--remove-comments`: Remove comments from supported file types
- `--remove-empty-lines`: Remove empty lines from the output
- `--truncate-base64`: Enable truncation of base64 data strings
- `--header-text <text>`: Custom text to include in the file header
- `--instruction-file-path <path>`: Path to a file containing detailed custom instructions
- `--include-empty-directories`: Include empty directories in the output (default: `false`)
- `--include-diffs`: Include git diffs in the output (includes both work tree and staged changes separately) (default: `false`)
- `--no-git-sort-by-changes`: Disable sorting files by git change count (default: `true`)
- `--include-empty-directories`: Include empty directories in the output
- `--include-diffs`: Include git diffs in the output (includes both work tree and staged changes separately)
- `--no-git-sort-by-changes`: Disable sorting files by git change count (enabled by default)

## Filter Options
- `--include <patterns>`: Include patterns (comma-separated)
- `-i, --ignore <patterns>`: Ignore patterns (comma-separated)
- `--stdin`: Read file paths from stdin instead of discovering files automatically
## File Selection Options
- `--include <patterns>`: List of include patterns (comma-separated)
- `-i, --ignore <patterns>`: Additional ignore patterns (comma-separated)
- `--no-gitignore`: Disable .gitignore file usage
- `--no-default-patterns`: Disable default patterns

Expand All @@ -43,7 +49,7 @@
- `--no-security-check`: Disable security check (default: `true`)

## Token Count Options
- `--token-count-encoding <encoding>`: Specify token count encoding (e.g., `o200k_base`, `cl100k_base`) (default: `o200k_base`)
- `--token-count-encoding <encoding>`: Specify token count encoding used by OpenAI's [tiktoken](https://github.com/openai/tiktoken) tokenizer (e.g., `o200k_base` for GPT-4o, `cl100k_base` for GPT-4/3.5). See [tiktoken model.py](https://github.com/openai/tiktoken/blob/main/tiktoken/model.py#L24) for encoding details.

## Other Options
- `--top-files-len <number>`: Number of top files to show (default: `5`)
Expand Down Expand Up @@ -83,5 +89,10 @@ repomix --remote user/repo
# Using stdin for file list
find src -name "*.ts" -type f | repomix --stdin
git ls-files "*.js" | repomix --stdin
echo -e "src/index.ts\nsrc/utils.ts" | repomix --stdin
echo -e "src/index.ts
src/utils.ts" | repomix --stdin
Comment thread
yamadashy marked this conversation as resolved.
Outdated

# Token count analysis
repomix --token-count-tree
repomix --token-count-tree 1000 # Only show files/directories with 1000+ tokens
```
34 changes: 34 additions & 0 deletions website/client/src/en/guide/usage.md
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,40 @@ repomix --compress
repomix --remote yamadashy/repomix --compress
```

### Token Count Optimization

Understanding your codebase's token distribution is crucial for optimizing AI interactions. Use the `--token-count-tree` option to visualize token usage across your project:

```bash
repomix --token-count-tree
```

This displays a hierarchical view of your codebase with token counts:

```
🔢 Token Count Tree:
────────────────────
└── src/ (70,925 tokens)
├── cli/ (12,714 tokens)
│ ├── actions/ (7,546 tokens)
│ └── reporters/ (990 tokens)
└── core/ (41,600 tokens)
├── file/ (10,098 tokens)
└── output/ (5,808 tokens)
```

You can also set a minimum token threshold to focus on larger files:

```bash
repomix --token-count-tree 1000 # Only show files/directories with 1000+ tokens
```

This helps you:
- **Identify token-heavy files** that might exceed AI context limits
- **Optimize file selection** using `--include` and `--ignore` patterns
- **Plan compression strategies** by targeting the largest contributors
- **Balance content vs. context** when preparing code for AI analysis

## Output Formats

### XML (Default)
Expand Down
Loading
Loading