Dateien ignorieren
Steuere, auf welche Dateien Bob Shell zugreifen kann, indem du eine `.bobignore`-Datei in deinem Projekt erstellst.
Übersicht
| Funktion | Beschreibung | Vorteil |
|---|---|---|
| Pfadausschluss | Bob Shell am Zugriff auf bestimmte Dateien oder Verzeichnisse hindern | Sensible Informationen schützen |
| Musterabgleich | Glob-Muster verwenden, um mehrere Dateien abzugleichen | Dateitypen effizient ausschließen |
| Negationsunterstützung | Ausschlüsse für bestimmte Dateien überschreiben | Feinkörnige Steuerung |
| Projektspezifisch | Jedes Projekt kann seine eigenen Ausschlussregeln haben | Auf Projektanforderungen zugeschnitten |
Warum .bobignore verwenden?
- Datenschutzschutz: Sensible Dateien wie API-Schlüssel und Anmeldedaten privat halten
- Leistungsverbesserung: Große binäre Dateien oder Verzeichnisse ausschließen, die Operationen verlangsamen
- Rauschreduzierung: Irrelevante Dateien aus Bobs Shell-Kontext entfernen
- Fokussteuerung: Bobs Aufmerksamkeit auf die relevantesten Teile deiner Codebasis lenken
Wie .bobignore funktioniert
Wenn du Pfade zu deiner .bobignore-Datei hinzufügst, schließen Bob Shell-Tools, die diese Datei berücksichtigen, automatisch übereinstimmende Dateien und Verzeichnisse aus ihren Operationen aus. Zum Beispiel werden beim Verwenden des Befehls read_many_files Pfade in deiner .bobignore-Datei übersprungen.
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ │ │ │ │ │
│ Your project │────▶│ .bobignore │────▶│ Files Bob Shell │
│ files │ │ filter │ │ can access │
│ │ │ │ │ │
└─────────────────┘ └─────────────────┘ └─────────────────┘Änderungen an deiner .bobignore-Datei erfordern einen Neustart deiner Bob Shell-Sitzung, damit sie wirksam werden.
Mustersyntax
Die .bobignore-Datei folgt derselben Mustersyntax wie .gitignore:
| Muster | Beschreibung | Beispiel |
|---|---|---|
file.txt | Stimmt mit einer bestimmten Datei überein | apikeys.txt |
*.ext | Stimmt mit allen Dateien mit der Erweiterung überein | *.log |
/dir/ | Stimmt mit einem Verzeichnis überein | /node_modules/ |
/path/to/file | Verankert den Pfad am Stamm | /src/config/secrets.json |
!pattern | Negiert ein vorheriges Muster | !important.md |
# | Kommentarzeile | # API credentials |
Erste Schritte
Eine .bobignore-Datei erstellen
- Erstelle eine Datei namens
.bobignoreim Stammverzeichnis deines Projekts - Füge Muster für Dateien und Verzeichnisse hinzu, die du ausschließen möchtest
- Speichere die Datei und starte deine Bob Shell-Sitzung neu
# Aus deinem Projektstammverzeichnis
touch .bobignore
echo "# Files to ignore" > .bobignore
echo "secrets/" >> .bobignoreHäufige Ausschlussmuster
Hier sind einige häufige Muster, die du zu deiner .bobignore-Datei hinzufügen möchtest:
# Sensitive information
.env
secrets/
*password*
*credential*
*apikey*
# Large directories
node_modules/
.git/
dist/
build/
# Binary and media files
*.zip
*.tar.gz
*.mp4
*.jpg
*.png
# Log files
*.log
logs/Musterbeispiele
Bestimmte Verzeichnisse ausschließen
Um gesamte Verzeichnisse und deren Inhalte auszuschließen:
# Exclude the packages directory and all its contents
/packages/
# Exclude all node_modules directories anywhere in the project
**/node_modules/
# Exclude the dist directory but only at the root level
/dist/Wildcards verwenden
Wildcards ermöglichen es dir, mehrere Dateien mit ähnlichen Mustern abzugleichen:
# Exclude all markdown files
*.md
# Exclude all JavaScript files in the src directory
/src/**/*.js
# Exclude all files with "test" in their name
*test*Negation verwenden
Du kannst Ausschlüsse für bestimmte Dateien überschreiben:
# Exclude all markdown files
*.md
# But include README.md
!README.md
# And include all markdown files in the docs directory
!docs/*.mdErweiterte Verwendung
Muster kombinieren
Du kannst ausgefeilte Ausschlussregeln durch Kombinieren von Mustern erstellen:
# Exclude all JavaScript files
*.js
# But include all files in the src directory
!src/**/*.js
# Except for test files in the src directory
src/**/*.test.jsDeine .bobignore-Datei debuggen
Wenn Bob Shell Dateien zu ignorieren scheint, auf die du zugreifen möchtest, oder auf Dateien zugreift, die du ignorieren möchtest:
- Überprüfe deine
.bobignore-Datei auf widersprüchliche Muster - Denke daran, dass spezifischere Muster (wie Negationen) nach allgemeinen Mustern stehen sollten
- Starte deine Bob Shell-Sitzung nach dem Vornehmen von Änderungen neu
- Verwende absolute Pfade, wenn relative Pfade nicht wie erwartet funktionieren
Best Practices
- Einfach beginnen: Starte mit einigen wesentlichen Mustern und füge bei Bedarf weitere hinzu
- Muster kommentieren: Füge Kommentare hinzu, um zu erklären, warum bestimmte Dateien ausgeschlossen werden
- Präzise sein: Verwende genaue Muster, um das versehentliche Ausschließen wichtiger Dateien zu vermeiden
- Sicherheit berücksichtigen: Schließe immer Dateien aus, die sensible Informationen enthalten
- Regelmäßig pflegen: Aktualisiere deine
.bobignore-Datei, wenn sich dein Projekt weiterentwickelt
Agent-Personas
Erstelle wiederverwendbare Persona-Dateien, die die Rolle, den Fokus und den Tool-Zugriff eines subagents festlegen. Definiere, worauf ein subagent achtet, wie er seine Ausgabe formatiert und was er nicht tun darf.
Telemetriedaten
Erfahren Sie mehr über die Telemetriedaten, die Bob Shell sammeln kann, wie sie zur Verbesserung des Produkts verwendet werden und wie Sie die Datenerfassung aktivieren oder deaktivieren können.