Локальный CLI-поисковик для заметок в Markdown, расшифровок встреч и документации: объединяет BM25, векторный поиск и переранжирование с помощью LLM.
xerj-org/xerj
Локальный AI-поисковик на Rust, который автоматически индексирует любые папки — с кодом, документацией, логами и PDF — и поддерживает Elasticsearch API.
Open source альтернатива:Elasticsearch
- Звёзды
- 8,758
- Форки
- 470
- Открытые issues
- 86
- Последний коммит
- вчера
Что это?
XERJ — это единый бинарный файл на Rust, который индексирует папку одной командой: `xerj autoindex <folder>`. Он самостоятельно определяет типы файлов и создаёт отдельный индекс для каждого набора данных. Поддерживаются исходный код (разбирается с помощью tree-sitter, поэтому сохраняются символы и номера строк), CSV, JSON, YAML, SQLite, PDF, документы Office, электронная почта и лог-файлы — без необходимости писать схему или pipeline.
Проект предназначен для того, чтобы coding agents и RAG-пайплайны могли находить точные фрагменты, а не читать файлы целиком. Поиск поддерживает полнотекстовый BM25, векторный kNN и гибридные запросы через Elasticsearch REST API, поэтому существующие клиенты Elasticsearch и Kibana могут подключаться напрямую. MCP-сервер предоставляет инструменты поиска, памяти и графов клиентам с поддержкой MCP, например Claude Code и Cursor.
По умолчанию используется лексический embedder, работающий офлайн; нейросетевой embedder можно включить отдельно, предварительно скачав файлы модели. Режим разработки `--insecure` отключает TLS и аутентификацию, поэтому он рассчитан на одного пользователя и локальную машину.
Ключевые возможности
- 01Автоматически индексирует папку одной командой, определяет типы файлов и создаёт индекс для каждого набора данных.
- 02Разбирает исходный код с помощью tree-sitter, сохраняя символы и номера строк.
- 03Поддерживает совместимый с Elasticsearch REST API, поэтому существующие клиенты и Kibana могут подключаться напрямую.
- 04Поддерживает полнотекстовый BM25, векторный kNN-поиск и гибридный поиск в одном движке.
- 05Включает MCP-сервер для агентов, например Claude Code и Cursor.
- 06Поставляется в виде одного статического бинарного файла без JVM для Linux, macOS и Windows.
Сценарии использования
- Помогает coding agent находить в кодовой базе нужные функции, не читая файлы целиком.
- Позволяет создавать RAG-системы или системы вопросов и ответов по кодовой базе на основе локальных документов, не используя отдельную векторную базу данных.
- Позволяет проводить аудит безопасности, выполняя поиск по шаблонам sink-функций или секретам во всём дереве исходного кода.
- Заменяет самостоятельно развёрнутый Elasticsearch для анализа логов на одной машине.
Быстрый старт
- 1
Скачайте и установите бинарный файл
Установите по официальной инструкции из README - 2
Запустите сервер для локальной разработки (без TLS и аутентификации)
xerj --insecure --data-dir ./data & - 3
Индексируйте любую выбранную папку
xerj autoindex ~/my-project - 4
Выполните поисковый запрос по проиндексированной папке
xerj search "how do we rotate the WAL segment"
Что важно знать
- Флаг --insecure отключает TLS и аутентификацию по API-ключу, поэтому его безопасно использовать только одному человеку на машине для разработки.
- Режим нейросетевых эмбеддингов включается по желанию и загружает около 90 МБ файлов модели.
Темы
Частые вопросы
- Что такое xerj?
- Локальный AI-поисковик на Rust, который автоматически индексирует любые папки — с кодом, документацией, логами и PDF — и поддерживает Elasticsearch API. XERJ — это единый бинарный файл на Rust, который индексирует папку одной командой: `xerj autoindex <folder>`. Он самостоятельно определяет типы файлов и создаёт отдельный индекс для каждого набора данных. Поддерживаются исходный код (разбирается с помощью tree-sitter, поэтому сохраняются символы и номера строк), CSV, JSON, YAML, SQLite, PDF, документы Office, электронная почта и лог-файлы — без необходимости писать схему или pipeline.
- xerj можно использовать бесплатно? Какая у него лицензия?
- xerj распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- xerj всё ещё поддерживается?
- Активно поддерживается. Последний коммит в xerj — 19 окт. 2026 г..
- Для чего можно использовать xerj?
- Помогает coding agent находить в кодовой базе нужные функции, не читая файлы целиком. Позволяет создавать RAG-системы или системы вопросов и ответов по кодовой базе на основе локальных документов, не используя отдельную векторную базу данных. Позволяет проводить аудит безопасности, выполняя поиск по шаблонам sink-функций или секретам во всём дереве исходного кода. Заменяет самостоятельно развёрнутый Elasticsearch для анализа логов на одной машине.
- Как установить xerj?
- Скачайте и установите бинарный файл Запустите сервер для локальной разработки (без TLS и аутентификации): xerj --insecure --data-dir ./data & Индексируйте любую выбранную папку: xerj autoindex ~/my-project Выполните поисковый запрос по проиндексированной папке: xerj search "how do we rotate the WAL segment"
- Где скачать xerj?
- Исходный код и инструкции по установке — на GitHub: https://github.com/xerj-org/xerj
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Постоянная память для ИИ-агентов, пишущих код: сохраняет действия в сессиях, сжимает их с помощью ИИ и добавляет релевантный контекст в новые сессии.
Открытая векторная база данных для AI-приложений: хранит документы и векторы для семантического, гибридного и полнотекстового поиска.
Локальный поиск по истории сессий Claude и Codex: поисковое ядро на Rust, JSON CLI и десктопное приложение.
Распределённая RESTful-система поиска и аналитики, которая также служит масштабируемым хранилищем данных и векторной базой данных.
Встраиваемая в приложения векторная база данных с открытым исходным кодом для быстрого поиска по сходству без отдельного сервера.