Ikhtisar

Cursor membaca dan mengindeks codebase proyek lo untuk menjalankan fiturnya. Kontrol direktori dan file mana yang bisa diakses Cursor pakai file .cursorignore di direktori root lo. Cursor ngeblokir akses ke file yang tercantum di .cursorignore dari:
Panggilan tool yang dipicu Agent, kayak terminal dan server MCP, nggak bisa ngeblokir akses ke kode yang diatur oleh .cursorignore

Kenapa mengabaikan file?

Keamanan: Batasi akses ke API key, kredensial, dan secret. Walaupun Cursor memblokir file yang diabaikan, perlindungan penuh tetap nggak bisa dijamin karena ketidakpastian LLM. Performa: Di codebase besar atau monorepo, kecualikan bagian yang nggak relevan biar pengindeksan lebih cepat dan penemuan file lebih akurat.

File ignore global

Setel pola ignore untuk semua proyek di pengaturan pengguna biar file sensitif dikecualikan tanpa perlu konfigurasi per proyek.
Daftar Ignore Global Cursor
Pola default termasuk:
  • File environment: **/.env, **/.env.*
  • Kredensial: **/credentials.json, **/secrets.json
  • Kunci: **/*.key, **/*.pem, **/id_rsa

Mengonfigurasi .cursorignore

Buat file .cursorignore di direktori root kamu dengan sintaks .gitignore.

Contoh pola

config.json      # File tertentu
dist/            # Direktori
*.log            # Ekstensi file
**/logs          # Direktori bertingkat
!app/            # Keluarkan dari daftar abaikan (negasi)

Pengabaian hierarkis

Aktifkan Cursor Settings > Features > Editor > Hierarchical Cursor Ignore untuk mencari file .cursorignore di direktori induk. Catatan: Komentar diawali dengan #. Pola yang muncul belakangan menimpa yang lebih awal. Pola bersifat relatif terhadap lokasi file.

Batasi pengindeksan dengan .cursorindexingignore

Gunakan .cursorindexingignore buat ngecualiin file dari pengindeksan doang. File-file ini tetap bisa diakses sama fitur AI, tapi nggak akan muncul di pencarian codebase.

File yang diabaikan secara default

Cursor otomatis mengabaikan file di .gitignore dan daftar abaikan default di bawah. Kamu bisa override dengan awalan ! di .cursorignore.

Batasan pola negasi

Saat pakai pola negasi (dengan awalan !), kamu nggak bisa menyertakan ulang file kalau direktori induknya dikecualikan via *.
# Abaikan semua file di folder public
public/*

# ✅ Ini berfungsi, karena file ada di level teratas
!public/index.html

# ❌ Ini tidak berfungsi - nggak bisa menyertakan ulang file dari direktori bertingkat
!public/assets/style.css
Solusi: Kecualikan direktori bertingkat secara eksplisit:
public/assets/*
!public/assets/style.css # File ini sekarang bisa diakses
Direktori yang dikecualikan tidak ditelusuri demi performa, jadi pola pada file di dalamnya tidak berpengaruh. Ini sesuai dengan implementasi .gitignore untuk pola negasi di direktori bertingkat. Untuk detail lebih lanjut, lihat dokumentasi resmi Git tentang pola gitignore: https://git-scm.com/docs/gitignore.

Pemecahan Masalah

Uji pola dengan git check-ignore -v [file].