Индексирование
Kodik строит локальный семантический индекс вашего рабочего пространства. Инструмент codebase_search использует этот индекс для поиска кода по смыслу, а не только по точному совпадению текста.
Как работает индексирование
Заголовок раздела «Как работает индексирование»При запуске Kodik разбивает текстовые файлы рабочего пространства на перекрывающиеся фрагменты (до 80 строк каждый), вычисляет векторные встраивания с помощью API встраиваний и сохраняет результаты в локальной базе данных SQLite в пользовательских данных Kodik для этого рабочего пространства. Когда агент вызывает codebase_search, запрос преобразуется в тот же вектор и сопоставляется с сохранёнными встраиваниями.
Индекс хранится локально вне папки проекта, поэтому он не появляется в Git и не требует правила в .gitignore. Данные сохраняются между сессиями, поэтому при повторном открытии рабочего пространства повторная индексация не требуется.
Для рабочего пространства Remote SSH «локально» означает на удалённом сервере VS Code: Kodik обходит и отслеживает файлы на SSH-хосте и хранит SQLite-кэш рабочего пространства в пользовательских данных удалённого сервера. На локальном компьютере не требуется копия проекта по тому же пути.
Автоматическое обновление
Заголовок раздела «Автоматическое обновление»Индексирование начинается автоматически при открытии рабочего пространства, если вы вошли в аккаунт Kodik (встраивания вычисляются через Kodik API). Если рабочее пространство открыто без входа, индексирование запустится сразу после входа в аккаунт — перезапуск не нужен. Kodik отслеживает изменения файлов и обновляет индекс инкрементально, обрабатывая только изменённые файлы.
| Изменение | Действие |
|---|---|
| Новые файлы | Автоматически добавляются в индекс |
| Изменённые файлы | Старые встраивания удаляются, создаются новые |
| Удалённые файлы | Удаляются из индекса |
Частичная синхронизация дебаунсируется, чтобы не мешать редактированию. Изменения .gitignore или .kodikignore немедленно запускают полную переиндексацию.
Если индексирование прерывается (например, при закрытии IDE), сохранённая контрольная точка позволяет возобновить его с того места, где оно остановилось.
Что индексируется
Заголовок раздела «Что индексируется»По умолчанию Kodik индексирует все текстовые файлы, за исключением:
- файлов, перечисленных в
.kodikignoreили.gitignore— см. Файлы игнорирования - стандартных директорий сборки и зависимостей (
node_modules,dist,build,.git,.kodikи др.) - двоичных файлов и медиафайлов (изображений, аудио, видео, архивов, скомпилированных артефактов)
- файлов размером более 512 КБ или пустых файлов
Индекс ограничен 50 000 фрагментами и 32 МБ суммарного текста, что достаточно для большинства репозиториев. Файлы, выходящие за этот бюджет, пропускаются.
Конфигурация
Заголовок раздела «Конфигурация»Проверьте статус индексирования или запустите переиндексацию из Настройки Kodik → Настройки индексации. Там же можно:
- приостановить или возобновить автоматическую синхронизацию;
- отключить учёт
.kodikignoreили.gitignore; - очистить индекс.
Пауза (и очистка индекса) действует только на текущее рабочее пространство — остальные проекты продолжают индексироваться как обычно. При остановке активной индексации Kodik локально сохраняет прогресс по уже обработанным файлам, а последний полностью готовый индекс остаётся доступным для поиска. Кнопка Синхронизация продолжает работу с этой контрольной точки без сброса до 0%; файлы, изменённые, добавленные или удалённые во время паузы, согласуются до замены предыдущего индекса. Удалить индекс также удаляет сохранённую контрольную точку.

Приватность и безопасность
Заголовок раздела «Приватность и безопасность»Индекс хранится локально на вашем компьютере в пользовательских данных Kodik, а не внутри рабочего пространства. Содержимое файлов используется только для вычисления встраиваний через API; исходный код не сохраняется на серверах Kodik в читаемом виде. Чтобы исключить из индекса чувствительные файлы, добавьте их в файлы игнорирования.
