Archivo de exclusión
Cursor lee la base de código de tu proyecto para habilitar sus funciones. Controla a qué directorios y archivos puede acceder Cursor mediante un archivo .cursorignore en el directorio raíz.
Cursor bloquea el acceso a los archivos incluidos en .cursorignore desde:
- Código accesible desde Agent, Tab e Inline Edit
- Código accesible mediante referencias con @
Las herramientas de terminal y de servidor MCP que usa Agent no pueden bloquear el acceso al código
regulado por .cursorignore
¿Por qué ignorar archivos?
Seguridad: Restringe el acceso a claves de API, credenciales y secretos. Aunque Cursor bloquea los archivos ignorados, no se puede garantizar una protección total debido a la imprevisibilidad de los LLM.
Rendimiento: En bases de código grandes o monorepositorios, excluye las partes irrelevantes para mejorar la detección de archivos.
Configurar .cursorignore
Crea un archivo .cursorignore en el directorio raíz con la sintaxis de .gitignore.
Sintaxis de patrones
*coincide con cualquier carácter excepto/**coincide con cualquier carácter, incluido/?coincide con un solo carácter!niega un patrón (deja de ignorar una ruta ignorada previamente)- Las líneas que empiezan por
#son comentarios - Los espacios finales se ignoran, salvo que se escapen con
\
Ejemplos de patrones
config.json # Archivo específicodist/ # Directorio*.log # Extensión de archivo**/logs # Directorios anidados!app/ # Excluir de la lista de ignore (negar)Ignoración jerárquica
Activa Cursor Settings > Features > Editor > Hierarchical Cursor Ignore para buscar archivos .cursorignore en directorios superiores.
A partir de Cursor 3.11, este ajuste se traslada a Cursor Settings > Indexing > Ignore Files > Hierarchical Cursor Ignore.
Archivos de exclusión global
Establece patrones de exclusión para todos los proyectos en los ajustes de usuario y así excluir archivos confidenciales sin tener que configurar cada proyecto. La lista de exclusión global está vacía de forma predeterminada.
Patrones comunes que puedes añadir:
- Archivos de entorno:
**/.env,**/.env.* - Credenciales:
**/credentials.json,**/secrets.json - Claves:
**/*.key,**/*.pem,**/id_rsa
Archivos ignorados de forma predeterminada
Cursor ignora automáticamente los archivos incluidos en .gitignore y en la lista de exclusión predeterminada a continuación. Para anularlo, usa el prefijo ! en .cursorignore.
Estos archivos se ignoran además de los incluidos en .gitignore y .cursorignore:
package-lock.jsonpnpm-lock.yamlyarn.lockcomposer.lockGemfile.lockbun.lockb.env*.git/.svn/.hg/*.lock*.bak*.tmp*.bin*.exe*.dll*.so*.lockb*.qwoff*.isl*.csv*.pdf*.doc*.doc*.xls*.xlsx*.ppt*.pptx*.odt*.ods*.odp*.odg*.odf*.sxw*.sxc*.sxi*.sxd*.sdc*.jpg*.jpeg*.png*.gif*.bmp*.tif*.mp3*.wav*.wma*.ogg*.flac*.aac*.mp4*.mov*.wmv*.flv*.avi*.zip*.tar*.gz*.7z*.rar*.tgz*.dmg*.iso*.cue*.mdf*.mds*.vcd*.toast*.img*.apk*.msi*.cab*.tar.gz*.tar.xz*.tar.bz2*.tar.lzma*.tar.Z*.tar.sz*.lzma*.ttf*.otf*.pak*.woff*.woff2*.eot*.webp*.vsix*.rmeta*.rlib*.parquet*.svg.egg-info/.venv/node_modules/__pycache__/.next/.nuxt/.cache/.sass-cache/.gradle/.DS_Store/.ipynb_checkpoints/.pytest_cache/.mypy_cache/.tox/.git/.hg/.svn/.bzr/.lock-wscript/.Python/.jupyter/.history/.yarn/.yarn-cache/.eslintcache/.parcel-cache/.cache-loader/.nyc_output/.node_repl_history/.pnp.js/.pnp/Limitaciones de los patrones de negación
Al usar patrones de negación (con el prefijo !), no puedes volver a incluir un archivo si se ha excluido un directorio superior mediante *.
# Ignorar todos los archivos de la carpeta publicpublic/*# Esto funciona, ya que el archivo está en el nivel superior!public/index.html# Esto no funciona: no se pueden volver a incluir archivos de directorios anidados!public/assets/style.cssSolución alternativa: Excluye explícitamente los directorios anidados:
public/assets/*!public/assets/style.css # Ahora se puede acceder a este archivoLos directorios excluidos no se recorren para mejorar el rendimiento, por lo que los patrones de los archivos que contienen no surten efecto. Esto coincide con la implementación de .gitignore para los patrones de negación en directorios anidados. Para más información, consulta la documentación oficial de Git sobre patrones de gitignore.
Solución de problemas
Comprueba los patrones con git check-ignore -v [file].