Оплата
Все гайды
Обложка статьи «.cursorignore и индексация codebase в Cursor» — гайд по Cursor, категория «Продвинутое», NeiroCursor
Продвинутое

.cursorignore и индексация codebase в Cursor

Обновлено: 2026-07-30

Как настроить .cursorignore, ускорить индекс Cursor, убрать мусор из @codebase и не светить секреты агенту.

Коротко

.cursorignore — список путей, которые Cursor не должен тащить в индекс и контекст. Это ускоряет @codebase, снижает шум Tab/Agent и помогает не подсовывать секреты и дампы.

Похож на .gitignore, но решает задачу ИИ-контекста, а не git.

Зачем он нужен

  • node_modules / .venv раздувают индекс;
  • билд-артефакты путают поиск;
  • выгрузки клиентов и .env не должны попадать в чат;
  • монорепо: индексируем только активные пакеты.

См. также Privacy Mode.

Базовый шаблон

Создайте .cursorignore в корне:

# deps & envs
node_modules/
.venv/
venv/
__pycache__/

# build
.next/
dist/
build/
out/
coverage/
*.tsbuildinfo

# secrets & dumps
.env
.env.*
!.env.example
*.pem
*.sql
dump/
uploads/

# OS / IDE
.DS_Store
.idea/

Подправьте под стек: для Go — vendor/ по ситуации, для Python — .mypy_cache/, для мобилки — ios/Pods и т.д.

Связь с .gitignore

ФайлЗадача
.gitignoreчто не попадает в git
.cursorignoreчто не попадает в ИИ-индекс/контекст

Часто списки похожи, но не копируйте слепо: иногда в git есть fixtures/, которые агенту как раз нужны.

Как проверить, что сработало

  1. Сохраните .cursorignore.
  2. Подождите переиндексации или перезапустите Cursor.
  3. Спросите в чате: @codebase где node_modules/react — не должен находить содержимое зависимостей.
  4. Убедитесь, что @src/... ваши файлы по-прежнему находятся.

Монорепо

Пример политики:

  • индексируем apps/web и packages/ui;
  • игнорируем apps/legacy, тяжёлые testdata/, сгенерированные SDK.

Можно держать общий ignore + точечно не игнорировать нужное (!packages/ui/src).

Ошибки настройки

Слишком агрессивный ignore — Agent «не видит» исходники. Симптом: пустые ответы @codebase.

Забыли .env — риск утечки в чат. Держите и в gitignore, и в cursorignore.

Игнорируете package-lock без причины — иногда полезен для понимания версий; решать по вкусу.

Шаблоны под стеки

Next.js: .next/, node_modules/, coverage/.
Python: .venv/, __pycache__/, .pytest_cache/.
Data: *.parquet, data/raw/, notebooks/.ipynb_checkpoints/.
Mobile: build/, DerivedData/, Pods/.

Ревизия раз в месяц

Удалили модуль — уберите из ignore обратные исключения. Добавили датасет — сразу в ignore. Иначе @codebase деградирует незаметно.

Практический мини-кейс

  1. Возьмите реальный небольшой баг или задачу из вашего бэклога (30–60 минут работы руками).
  2. Сначала решите её без Agent — только Tab/Chat, чтобы почувствовать потолок.
  3. Затем откатите изменения в git и решите с Agent и явным @ контекстом.
  4. Сравните: время, качество diff, сколько usage ушло, сколько правок пришлось откатить.
  5. Зафиксируйте в Rules команды 2–3 правила, которые сэкономили больше всего времени.

Такой прогон один раз калибрует ожидания лучше любой теории.

FAQ

Это официальный формат?

Ориентируйтесь на актуальную доку Cursor / подсказки продукта. Смысл паттернов — как у gitignore.

Нужен ли ignore на маленьком pet-проекте?

Да, хотя бы node_modules и .env.

Почему индекс всё ещё тяжёлый?

Проверьте вложенные репозитории, большие public/videos, датасеты. Добавьте маски *.mp4, data/raw/.

Что дальше