上一篇介紹了如何建立一個基本的 .cursorindexingignore 清單,今天來分享我的小型專案會設置哪些呢?
為什麼需要 .cursorindexingignore?
.cursorindexingignore
就像給 Cursor AI 一張「專注地圖」,讓它知道哪些檔案可以「看得到但不碰」。它的作用是:
- 提升效能:避免 AI 浪費時間索引大型資料夾(如
node_modules/
)或無關檔案(如*.jpg
)。 - 保護隱私:防止 AI 讀取敏感檔案(如
.env
)的內容。 - 保留可見性:檔案仍出現在檔案瀏覽器或搜尋結果,方便你手動檢查。
這與 .cursorignore
不同,後者更嚴格地阻止 AI 存取檔案。而 .cursorindexingignore
是平衡效能與彈性的完美選擇,尤其適合 JavaScript、Python 或多語言專案。
以下是我整理的 .cursorindexingignore
清單,涵蓋常見的非程式碼檔案和資料夾,經過優化以提升效能並保護隱私。這些規則適用於大多數專案(JavaScript、Python、PHP 等),你可以直接複製貼上!
# .cursorindexingignore
# 依賴鎖定檔案(記錄套件版本,無需索引)
*.lock
*.lockb
# 環境設定與敏感檔案(保護 API Key 等)
*.env*
# 版本控制資料夾(元資料,無程式碼邏輯)
.git/
.svn/
.hg/
.bzr/
# 臨時與快取檔案(工具產出,無需解析)
*.bak
*.tmp
__pycache__/
.venv/
.next/
.nuxt/
.cache/
.sass-cache/
.gradle/
.DS_Store/
.ipynb_checkpoints/
.pytest_cache/
.mypy_cache/
.tox/
.jupyter/
.history/
.yarn/
.yarn-cache/
.eslintcache/
.parcel-cache/
.cache-loader/
.nyc_output/
.node_repl_history/
.pnp.js/
.pnp/
.lock-wscript/
.Python/
# 二進位與媒體檔案(非程式碼,浪費資源)
*.bin
*.exe
*.dll
*.so
*.jpg
*.jpeg
*.png
*.gif
*.bmp
*.tif
*.mp3
*.wav
*.wma
*.ogg
*.flac
*.aac
*.mp4
*.mov
*.wmv
*.flv
*.avi
*.webp
public/images/*.svg # 僅忽略靜態 SVG
# 壓縮與安裝檔案(封裝輸出,無需索引)
*.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
*.woff
*.woff2
*.eot
*.pak
# 文件檔案(試算表、簡報等,無程式碼)
*.csv
*.doc
*.xls
*.xlsx
*.ppt
*.pptx
*.odt
*.ods
*.odp
*.odg
*.odf
*.sxw
*.sxc
*.sxi
*.sxd
*.sdc
# 工具特定產出(語言或框架相關)
.egg-info/
*.vsix
*.rmeta
*.rlib
*.parquet
規則說明:
- 依賴鎖定:如
*.lock
涵蓋package-lock.json
、yarn.lock
等,節省索引時間。 - 敏感檔案:
*.env*
保護 API Key 等機密資料。 - 媒體與二進位:圖片、音訊、影片等非程式碼檔案,無需 AI 解析。
- 快取與工具:如
__pycache__/
、.next/
,這些是臨時產出,無邏輯價值。 - SVG 例外:僅忽略靜態 SVG(如
public/images/*.svg
),保留程式碼相關的 SVG(如含 JavaScript 的檔案)。
測試你的清單
設定好 .cursorindexingignore
後,確認它是否生效:
- 儲存檔案,放在專案根目錄。
- 重啟 Cursor 或重新索引(快捷鍵:
Cmd/Ctrl + Shift + P
→ "Cursor: Reindex")。 - 請 AI 分析專案(例如「檢查我的 .env 檔內容」),確認 AI 不會讀取忽略檔案的內容。
- 問題:我想讓某些檔案完全不被 AI 存取,怎麼辦?
解法:對敏感檔案(如.env
),考慮同時加入.cursorignore
進行更嚴格的阻擋。 - 問題:SVG 檔案需要索引嗎?
解法:如果 SVG 包含程式碼(例如內嵌 JavaScript),可用精細規則(如!src/*.svg
)保留特定 SVG 的索引。
讓 Cursor 更聰明、更高效!
透過這份 .cursorindexingignore
清單,你可以讓 Cursor AI 專注於核心程式碼,跳過無關的檔案,同時保護敏感資料。
在留言區分享你的 .cursorindexingignore
規則,讓我們一起打造更完美的清單!