O que é XERJ?
O XERJ é um mecanismo de busca local voltado para agentes de programação com IA. Aponte xerj autoindex para uma pasta e ele descobre o que é cada arquivo, processa o código com tree-sitter para que as funções cheguem com seus símbolos e números de linha e monta um índice por dataset que encontrar, abrangendo código, Markdown, PDFs, CSV, JSON, SQLite, arquivos do Office, e-mail e logs. Os agentes então o consultam em busca de trechos, em vez de ler arquivos inteiros, por meio de 20 a 23 ferramentas MCP ou da CLI. Ele também oferece busca vetorial e híbrida, uma API /_memory para memória de agentes e o Corpus Hub, um catálogo de índices prontos de projetos open source.
Por baixo, ele implementa a API REST do Elasticsearch, então o Kibana e os clientes oficiais se conectam sem mudanças; sua suíte de conformidade passa em 1.444 de 1.454 casos. O projeto começou em 30 de junho de 2026, é escrito em Rust sob Apache 2.0 e ainda é um release candidate: a v1.0.0-rc.100 saiu em 27 de outubro de 2026. Ele tem cerca de 18.800 estrelas no GitHub.
XERJ vale a pena?
O XERJ é a mais ambiciosa das ferramentas que dão a um agente de programação busca em vez de grep, e pede mais confiança que a maioria. A engenharia é séria. Um único binário estático indexa uma árvore de 25.000 arquivos em cerca de dois minutos e meio no exemplo do projeto, fala o bastante da API do Elasticsearch para passar em 1.444 de 1.454 casos de conformidade e, no confronto direto dos mantenedores com o Elasticsearch 8.13.4, registra 55 vitórias, 26 empates e 4 derrotas, com 1,72 vez a taxa de ingestão. As quatro derrotas são todas de latência de leitura sob escrita intensa, e o relatório diz isso.
O uso principal, que ele chama de reference coding, é mais bem medido que a maioria das alegações neste campo. No estudo de caso do projeto, com 8 tarefas em 4 linguagens e 16 execuções por braço, um agente usando o XERJ resolveu as 16 com 9.982 tokens de saída e US$ 1,58 de gasto, contra 26.477 tokens e US$ 3,27 de um agente guiado por grep. Os mantenedores acrescentam que o ganho desaparece, ou se inverte, em bibliotecas populares que o modelo já memorizou; ele ajuda mais em código privado, de nicho ou recente. Como o grepai, é uma camada de recuperação, e não um agente; diferente do grepai, ele também quer ser o seu armazenamento de logs e o seu banco de memória.
O porém está no llms.txt, o arquivo que o prompt de instalação manda o seu agente ler. Ele instrui os agentes a enviar automaticamente um relatório de campo após o uso, "sem precisar perguntar ao usuário": a CLI abre um pull request no GitHub, fazendo fork do repositório a partir da sua conta se necessário, ou publica em xerj.org. As ferramentas do Corpus Hub também enviam uma avaliação automática por semana por corpus. Os relatórios trazem a versão, o sistema operacional e o que foi indexado, e XERJ_DISABLE_FEEDBACK=true desativa isso, mas um padrão de opt-out para ações feitas sob a sua identidade no GitHub combina mal com uma ferramenta que lê código privado.
Duas ressalvas menores. Todos os comandos do quick start rodam o servidor com --insecure, o que desativa TLS e autenticação, de modo que qualquer processo local vira superusuário; o README explica isso com clareza, e um nó novo escuta só em 127.0.0.1. E o projeto tem quatro meses, ainda em release candidates, com quase todos os commits sob a conta da própria organização, então ainda há poucas evidências de uma base mais ampla de mantenedores.
Onde ele se destaca
Um engenheiro de backend em um monorepo privado de 5.000 arquivos
Fazer o Claude Code parar de ler arquivos inteiros para encontrar uma função
xerj init conecta o servidor MCP e a skill ao Claude Code; xerj autoindex indexa o repositório e reindexa só os arquivos alterados. Defina XERJ_DISABLE_FEEDBACK=true antes. Gratuito; a economia depende de quanto do código o modelo já conhece.
Uma consultora de segurança de aplicações
Auditar uma base de código desconhecida em busca de chamadas perigosas e segredos vazados
Indexe automaticamente a árvore alvo e consulte padrões de sinks em todos os tipos de arquivo de uma vez; a auditoria do núcleo do WordPress feita pelo projeto cobriu 1.492 arquivos PHP com cerca de 26.000 tokens do agente. Mantenha o nó em localhost ou ative a autenticação.
Uma equipe de plataforma que roda um pequeno cluster Elasticsearch para logs
Substituir um cluster de busca em JVM por uma única máquina sem mudar os clientes
Aponte os clientes Elasticsearch existentes ou o Kibana para a porta 9200. Rode com autenticação ativada e teste exportações pesadas com scroll, que têm limite, e a latência de leitura sob escrita intensa, seu único benchmark perdido.
Antes de decidir
- Configuração
- curl -fsSL https://xerj.org/get | sh (ou PowerShell, ou Nix), inicie o xerj com um diretório de dados fora da árvore indexada e depois xerj autoindex <folder>; xerj init o registra no Claude Code ou no Cursor.
- Integrações
- API REST e clientes do Elasticsearch, Kibana, um servidor MCP via stdio que lista 26 clientes (cinco testados), uma CLI e reranking opcional pelo Jev da TypeSafe.
- Dados e privacidade
- Roda localmente e escuta em 127.0.0.1 por padrão. O tráfego de saída vem dos relatórios de campo e das avaliações do Corpus Hub, ambos ativados por padrão para agentes e desativados com XERJ_DISABLE_FEEDBACK=true, e de downloads de reranking ou de embeddings neurais quando ativados. Contribuições além dos relatórios de campo exigem um CLA.
- Custo em escala
- Não há plano pago. O custo é disco e CPU na sua própria máquina; os mantenedores informam uma ocupação em disco 1,61 vez menor que a do Elasticsearch 8.13.4. O reranking com o Jev custou cerca de US$ 0,64 por 648 buscas no teste FiQA deles.
- Limites
- Release candidate (rc.100); o scroll é um snapshot limitado, recusado com um 400 acima do teto; o p99 de leitura sofre sob escritas concorrentes intensas; o embedder padrão é léxico, e embeddings neurais exigem um download de cerca de 90 MB.
O que é bom
- Um único binário; indexa automaticamente pastas mistas sem esquema
- API do Elasticsearch: passa em 1.444 de 1.454 casos de conformidade
- Estudo de caso medido, com limites honestos sobre bibliotecas memorizadas
- Servidor MCP e CLI para agentes; testado com Claude Code, Cline, OpenCode, Kimi e DeepSeek Harness
O que não é
- As instruções para agentes enviam relatórios automaticamente, a menos que você desative
- O quick start roda com autenticação e TLS desativados
- Ainda é release candidate após quatro meses
- A maioria dos clientes da sua tabela MCP não foi testada
Ideal para
Desenvolvedores cujos agentes trabalham em bases de código grandes, privadas ou desconhecidas e que vão definir XERJ_DISABLE_FEEDBACK antes do primeiro uso.
Alternativas ao XERJ
XERJ: perguntas frequentes
- XERJ vale a pena?
- Um mecanismo de busca local competente para agentes, embrulhado em instruções que mandam o seu agente enviar relatórios sobre você sem perguntar. Damos nota 3.6 de 5.
- Quanto custa XERJ?
- Gratuito e open source (Apache 2.0). O reranking opcional chama o serviço pago Jev da TypeSafe com a sua própria chave.
- Quais s ão as desvantagens de XERJ?
- As instruções para agentes enviam relatórios automaticamente, a menos que você desative; o quick start roda com autenticação e TLS desativados; ainda é release candidate após quatro meses; a maioria dos clientes da sua tabela MCP não foi testada.
- Para quem XERJ é indicado?
- Desenvolvedores cujos agentes trabalham em bases de código grandes, privadas ou desconhecidas e que vão definir XERJ_DISABLE_FEEDBACK antes do primeiro uso.
- Quanto custa XERJ para uma equipe ou em produção?
- Não há plano pago. O custo é disco e CPU na sua própria máquina; os mantenedores informam uma ocupação em disco 1,61 vez menor que a do Elasticsearch 8.13.4. O reranking com o Jev custou cerca de US$ 0,64 por 648 buscas no teste FiQA deles.
- XERJ é seguro para dados da empresa?
- Roda localmente e escuta em 127.0.0.1 por padrão. O tráfego de saída vem dos relatórios de campo e das avaliações do Corpus Hub, ambos ativados por padrão para agentes e desativados com XERJ_DISABLE_FEEDBACK=true, e de downloads de reranking ou de embeddings neurais quando ativados. Contribuições além dos relatórios de campo exigem um CLA.
- Quais são as melhores alternativas ao XERJ?
- As alternativas mais próximas que analisamos são grepai, Repomix e LanceDB.
Respostas verificadas em 2 de nov. de 2026.
