# `.cursorignore` Guide (Indexing Efficiency)

**Last Updated:** 2026-04-04

**Indexing review:** `.cursorignore` keeps `docs/`, `.cursor/rules/`, `.cursor/skills/`, and targeted `v2/` paths available; `AGENTS.md` (repo root) is not ignored. `.cursorindexingignore` trims per-post blog `data/` and bulk `docs/data/*.json` while guides stay indexed—see file headers for rationale.

## Goal

Keep semantic indexing focused on active engineering/docs workflows while excluding high-noise generated or archival data.

## Defaults

1. Keep routing-critical paths indexed:
- `docs/**` (except heavy generated/archive zones)
- `.cursor/rules/**`
- `.cursor/skills/**`
- active `v2/` code paths

2. Exclude heavy/noise paths by default:
- archives and audits under `docs/`
- generated validation/inventory reports
- dependency/vendor/build/cache directories
- large binary assets

## Temporary Unignore Procedure

When a deep investigation needs excluded data:

1. Add the smallest possible temporary `!path` override in `.cursorignore`.
2. Run the needed investigation.
3. Remove the temporary override in the same branch before merge.
4. Re-run `make cursorignore-audit`.

## Audit

Use:

```bash
make cursorignore-audit
```

This checks required high-value exclusions to avoid accidental index bloat.

