[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f3qitqyg9fyp88":3},{"code":4,"message":5,"data":6,"timestamp":46},10000,"success",{"full_name":7,"position":8,"description":9,"language":10,"stars":11,"forks":12,"stars_gained":13,"age_days":14,"hn_threads":15,"one_liner":16,"summary_md":17,"topic":18,"github_topics":21,"license":42,"homepage":43,"updated_at":44,"history":45},"xerj-org\u002Fxerj",8,"Local-first search engine and MCP server for AI agents. One Rust binary indexes code, docs, logs, JSONL\u002FCSV and PDFs for BM25 full-text, vector and hybrid search, code search without grep, agent memory and RAG. Elasticsearch-compatible API; Corpus Hub serves hundreds of reference memory corpora.","Rust",15237,1055,12285,116,[],"本地优先的 Rust 搜索引擎与 MCP 服务端，让编程 Agent 检索带引用的片段，而不是 grep 整个文件。","## 解决什么问题\n\n编程 Agent 现在找代码的方式基本还是人肉 grep：匹配一个模式，把整个文件塞进上下文，再靠阅读定位答案。代码库一大、依赖一陌生，大量 token 就花在了模型根本不需要的代码上。XERJ 把代码、文档、日志、CSV\u002FJSONL 和 PDF 一次性索引进本地节点，通过 MCP 返回排好序的片段和 `file:line` 引用，Agent 问一句就能拿到那一小段，而不是整个文件。\n\n## 有什么不同\n\n常见做法是 grep 类工具、托管搜索服务，或者手动贴上下文。XERJ 的赌注在打包方式：一个静态二进制里同时有 BM25、向量与混合检索、Elasticsearch 兼容 API 和 MCP 服务端，不需要 JVM，也不用另起服务。默认 embedder 是离线的词法方案，神经向量需要手动开启。另一个有辨识度的做法是 \"reference coding\"——把与任务相近的开源仓库克隆并索引，让 Agent 先复用别人的解法。这是一种思路而非功能，会改变你对\"索引里该放什么\"的判断。README 中 2.7 倍 token 下降的研究是自发布的、只有 8 个任务，应视为待验证的假设而非基准。\n\n## 适合谁\n\n在笔记本上用 Claude Code 或 Cursor 的个人开发者，以及希望搜索留在本地、又不想维护 Elasticsearch 的小团队。最适合有稳定且体量可观的语料：monorepo、文档集或日志归档。如果你需要多租户、带鉴权地服务很多用户，就不合适——快速上手用的 `--insecure` 模式会关闭 TLS 和 API key 鉴权，加固方案只是指向文档页。已经重度投入托管向量数据库的团队收益也有限。\n\n## 上手成本\n\nREADME 给出的安装方式是管道脚本：\n\n```sh\ncurl -fsSL https:\u002F\u002Fxerj.org\u002Fget | sh\n```\n\n然后用一个数据目录、`xerj init` 把 MCP 接进 Agent、`xerj autoindex` 建索引。Apache-2.0，Rust，单二进制，无 JVM。真正的成本在运维细节：数据目录不能放在随后要索引的目录树里（README 明确警告节点会把自己的存储也索引进去），要决定用哪种 embedder（神经方案约 90 MB 下载），以及在绑定非 localhost 前先读安全模型。项目还要求提交一份 field report PR 作为\"会员卡\"，这种做法不常见，投入前值得知道。\n\n## 点评\n\nXERJ 很年轻——2026 年 6 月创建，按这些信号时约四个月——但已积累约 1.5 万 star，且在 HotRepo 的 Rust 榜上冲得很猛：周榜 #2（+7,783）、月榜 #8（+12,285）。这种近期、由榜单驱动的快速增长，加上 Hacker News 上没有任何讨论，更像乘着 Agent 工具浪潮的一次飙升，而不是沉淀已久的项目。架构选择是自洽的，Elasticsearch 兼容这个角度也确有差异，但自报的基准测试、以及以 `--insecure` 起头的安全模型，都说明应该先在一个临时语料上试用，再决定是否让它进入日常工作流的关键路径。",{"slug":19,"name":20},"ai-engineering","AI 工程",[22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41],"agent-memory","ai-agents","bm25","claude-code","cli","code-search","cursor","elasticsearch","elasticsearch-alternative","full-text-search","hybrid-search","jsonl","local-first","mcp","mcp-server","model-context-protocol","rag","rust","search-engine","vector-search","Apache-2.0","https:\u002F\u002Fxerj.org","2026-10-24T14:36:58Z",[],1792867720]