Überblick

Cursor liest und indexiert den Code deiner Projektcodebasis, um seine Features bereitzustellen. Steuere, auf welche Verzeichnisse und Dateien Cursor zugreifen kann, indem du eine .cursorignore-Datei in deinem Projektwurzelverzeichnis verwendest. Cursor blockiert den Zugriff auf in .cursorignore aufgeführte Dateien für:
Vom Agent initiierte Tool-Aufrufe, wie Terminal- und MCP-Server, können den Zugriff auf Code, der durch .cursorignore geregelt ist, nicht verhindern

Warum Dateien ignorieren?

Sicherheit: Den Zugriff auf API-Schlüssel, Zugangsdaten und Secrets einschränken. Auch wenn Cursor ignorierte Dateien blockiert, ist vollständiger Schutz wegen der Unvorhersehbarkeit von LLMs nicht garantiert. Performance: In großen Codebases oder Monorepos irrelevante Bereiche ausschließen, damit das Indexieren schneller wird und Dateien genauer gefunden werden.

Globale Ignore-Dateien

Stell in den Benutzereinstellungen projektübergreifende Ignore-Muster ein, um sensible Dateien auszuschließen – ganz ohne separate Projektkonfiguration.
Globale Cursor-Ignore-Liste
Standardmäßig enthalten:
  • Umgebungsdateien: **/.env, **/.env.*
  • Zugangsdaten: **/credentials.json, **/secrets.json
  • Schlüssel: **/*.key, **/*.pem, **/id_rsa

Konfigurieren von .cursorignore

Erstell in deinem Root-Verzeichnis eine .cursorignore-Datei mit .gitignore-Syntax.

Musterbeispiele

config.json      # Konkrete Datei
dist/            # Verzeichnis
*.log            # Dateiendung
**/logs          # Verschachtelte Verzeichnisse
!app/            # Von der Ignorierliste ausnehmen (Negation)

Hierarchisches Ignorieren

Aktiviere Cursor Settings > Features > Editor > Hierarchical Cursor Ignore, um übergeordnete Verzeichnisse nach .cursorignore-Dateien zu durchsuchen. Hinweise: Kommentare beginnen mit #. Spätere Muster überschreiben frühere. Muster sind relativ zum Speicherort der Datei.

Indexierung mit .cursorindexingignore einschränken

Verwende .cursorindexingignore, um Dateien ausschließlich von der Indexierung auszuschließen. Diese Dateien bleiben für KI-Features zugänglich, erscheinen aber nicht in Codebase-Suchen.

Standardmäßig ignorierte Dateien

Cursor ignoriert automatisch Dateien in deiner .gitignore sowie in der untenstehenden Standard-Ignore-Liste. Du kannst das mit dem Präfix ! in .cursorignore überschreiben.

Einschränkungen von Negationsmustern

Wenn du Negationsmuster verwendest (mit ! vorangestellt), kannst du eine Datei nicht wieder einbeziehen, wenn ein übergeordnetes Verzeichnis per * ausgeschlossen wurde.
# Alle Dateien im Ordner public ignorieren
public/*

# ✅ Das funktioniert, da die Datei auf oberster Ebene liegt
!public/index.html

# ❌ Das funktioniert nicht – Dateien aus verschachtelten Verzeichnissen können nicht wieder einbezogen werden
!public/assets/style.css
Workaround: Verschachtelte Verzeichnisse explizit ausschließen:
public/assets/*
!public/assets/style.css # Diese Datei ist jetzt zugänglich
Ausgeschlossene Verzeichnisse werden aus Performance-Gründen nicht traversiert, daher haben Muster für enthaltene Dateien keine Wirkung. Das entspricht der .gitignore-Implementierung für Negationsmuster in verschachtelten Verzeichnissen. Weitere Details findest du in der offiziellen Git-Dokumentation zu gitignore-Mustern.

Fehlerbehebung

Teste Muster mit git check-ignore -v [file].