XERJ:为 Agent 自动索引本地数据并提供精确检索
一分钟看懂
XERJ 是用 Rust 编写的本地搜索引擎,可自动识别并索引代码、文档、日志、PDF、数据库和表格,让 Agent 直接检索相关片段,而不是逐文件读取。它兼容 Elasticsearch API,并提供 MCP 接口和长期记忆命名空间。
你可以用它做什么
- 为代码库建立带符号和行号的本地搜索索引。
- 对文档、日志、PDF、SQLite 和 CSV 等混合数据做检索与聚合。
- 为 RAG、安全审计、事件分析和 Agent 长期记忆提供数据层。
- 通过 Elasticsearch 客户端或 MCP 接入现有工具。
主要能力
autoindex自动识别文件类型并建立多个数据集索引。- 支持全文、向量和混合搜索,以及代码定义定位。
- 提供单一静态二进制,覆盖 Linux、macOS 和 Windows。
- 默认词法嵌入可离线使用,神经嵌入为可选功能。
适合哪些人
适合需要让 Agent 理解私有代码与内部资料的开发团队,以及建设本地 RAG、日志分析、安全搜索或项目记忆的用户。
怎么开始使用
按官方安装文档获取二进制,启动节点后运行 xerj autoindex <目录>。本地单用户测试可绑定回环地址;共享或远程环境应启用 API 密钥和 TLS,并按官方安全模型部署。
使用前需要知道
--insecure会关闭 TLS 和认证,任何能访问端口的调用者都拥有读写删除权限,只适合受控的本地开发机。- 索引可能包含源码、日志和个人数据,应限制数据目录、端口和密钥访问。
- 可选的外部重排服务会把搜索文本发送给第三方,启用前必须评估隐私。
- 官方测量的令牌节省取决于数据与任务,对模型已熟悉的公共库可能没有收益。
- 项目采用 Apache-2.0 许可证。