O Indexing Engine é o serviço de entendimento da base de código do Windsurf que alimenta:
  • Chat com conhecimento da base de código
  • Autocompletar com conhecimento da base de código
Em comparação com o Autocompletar e o Chat comuns com reconhecimento de contexto, o Indexing Engine consegue recuperar contexto de toda a base de código, não apenas de arquivos com os quais você interagiu recentemente. Isso melhora significativamente a qualidade das respostas de Autocompletar e Chat.
A Indexação Local vem habilitada por padrão para todos os usuários do Plugin e está sempre habilitada para usuários do Windsurf.

Como funciona

O Indexing Engine funciona, em parte, gerando embeddings do seu repositório de código que capturam o significado subjacente. Esses embeddings podem ser consultados usando tanto linguagem natural quanto trechos de código relacionados. O Windsurf Indexing envia trechos de código para um servidor remoto para gerar embeddings. No entanto, nenhum código ou embedding é armazenado remotamente — todos os seus dados ficam no seu próprio dispositivo.

Como alternar o mecanismo de indexação

Para alternar o mecanismo de indexação no VS Code, vá até a página “Settings (UI)” e pesquise por “Windsurf Search”. Você verá uma opção para ativar a pesquisa e definir o “Max Workspace Size”.Em seguida, reinicie seu IDE para que a alteração seja aplicada.
Você pode verificar se seu workspace foi indexado conferindo o painel “Context” no “Chat”. Se houver um ponto verde ao lado do seu workspace, ele está indexado e pesquisável.

WindsurfIgnore

Por padrão, o Windsurf Indexing ignora:
  • Caminhos especificados em gitignore
  • Arquivos em node_modules
  • Caminhos ocultos (que começam com ”.”)
Quando um arquivo é ignorado, ele não é indexado e também não conta para o limite de arquivos do Indexing Max Workspace Size. Se quiser configurar mais arquivos que o Windsurf Indexing deve ignorar, adicione um arquivo .codeiumignore à raiz do repositório, usando a mesma sintaxe do .gitignore.

.codeiumignore global

Para clientes Enterprise que gerenciam vários repositórios, é possível impor regras de exclusão em todos eles colocando um arquivo .codeiumignore global na pasta ~/.codeium/. Essa configuração global será aplicada a todos os workspaces do Windsurf no seu sistema. O arquivo .codeiumignore global usa a mesma sintaxe do .gitignore e funciona em conjunto com quaisquer arquivos .codeiumignore específicos de repositório.

Requisitos do sistema

Quando ativado pela primeira vez, o Windsurf consumirá uma fração da CPU enquanto indexa o workspace. Dependendo do tamanho do seu workspace, isso deve levar de 5 a 10 minutos e só precisa acontecer uma vez por workspace. O uso de CPU voltará ao normal automaticamente. A indexação do Windsurf também requer RAM (~300 MB para um workspace com 5.000 arquivos). A configuração “Max Workspace Size (File Count)” determina o maior workspace para o qual a indexação do Windsurf tentará indexar um workspace/módulo específico. Se o seu workspace não parecer ter sido indexado, tente aumentar esse número. Para usuários com ~10 GB de RAM, recomendamos definir isso em, no máximo, 10.000 arquivos.