Cursor начали делать локальные индексы для regex-поиска прямо в IDE

Wait 5 sec.

Классический ripgrep работает быстро, но всё равно читает каждый файл. В крупных монорепо это стоит 15+ секунд на один вызов, а агент делает их десятками.Решение взяли из 1993 года: тригрaмный инвертированный индекс. Любой текст разбивается на все возможные 3-символьные последовательности, они становятся ключами в словаре, значения — список файлов. Regex-запрос декомпозируется в набор тригрaм, пересечение posting lists даёт кандидатов, и уже по ним запускается grep. Вместо тысячи файлов — десяток. Читать далее