XERJ Corpus Hub:用索引知识库为 AI Agent 装上「参考记忆」

分类: x-tips 来源: X 账号 @svpino 作者: Jay 更新日期: 2026-10-14 仓库: xerj-org/xerj 原帖: https://x.com/svpino/status/2110061831276609597


这是什么

XERJ 是一个开源的 AI 原生搜索引擎,以单个 Rust 二进制文件交付。它将 autoindex 能力注入 AI Agent,使 Agent 无需重训练即可「记住」大量结构化知识库:源码、工程规范、文档、日志、PDF 等均可被索引并通过自然语言查询。Santiago(@svpino)将其比喻为「送 Agent 上大学」——装上它,Agent 就能像领域专家一样从索引知识中提取答案,而不是靠记忆或逐文件穷读。

核心定位:Reference coding(参考编码)工具。Controlled study 数据显示,在同一 16/16 解决率下,XERJ 消耗的输出 token 数量比 grep 驱动的 Agent 少 2.7 倍(9,982 vs 26,477 tokens),比纯记忆方案少 26 倍($1.58 vs $11.18 成本)。

Corpus Hub(hub.xerj.org)是 XERJ 的公共注册表,托管预索引语料库。截至 2026-10-13,Hub 收录 515 个 live 语料库、11 个领域、累计 78.6 GB 文本,涵盖 SEC(安全漏洞 PoC)、API 设计、数据库、Ops/ SRE、AI、HEALTH、WEB、LAW、NET(网络协议)、CRYPTO(密码学)、WRITE 等领域。语料库通过 PR 提交(来自 corpus-hub 分支),每个条目经过许可证人工审查、提交 SHA 校验和 ed25519 签名。

许可证: Apache 2.0。


核验来源

信息 来源 链接
工具描述("like sending your agent to college") 原帖 Santiago @svpino https://x.com/svpino/status/2110061831276609597
XERJ 官方文档索引页(含 CLI 安装、用法、安全说明) xerj.org/llms.txt(官方 AI 索引文件) https://xerj.org/llms.txt
XERJ GitHub 仓库(含 benchmark 数据、field report 要求) xerj-org/xerj README https://github.com/xerj-org/xerj
Corpus Hub 语料库列表(515 live corpora,11 domains,78.6 GB) hub.xerj.org https://hub.xerj.org
Corpus Hub 机制说明(PR 提交、SHA + ed25519 签名、许可证审查) XERJ 官方博客 https://xerj.org/blog/the-corpus-hub
Corpus Hub 接入命令(xerj corpus add --from) xerj.org/docs/corpus-hub(Tavily 搜索摘要引述) https://xerj.org/docs/corpus-hub

未找到的内容:原帖 t.co 短链指向 Ivan Novikov(@d0znpp)的 XERJ 发布推文(https://x.com/d0znpp/status/2110038855047164404),该推提供了安装提示 Install XERJ (docs: xerj.org/llms.txt) 和 hub 接入 connect hub.xerj.org as reference memory hub。svpino 推文正文未包含具体命令用法,相关 CLI 细节来自 xerj.org/llms.txt 和 GitHub README,属二次官方文档引用,不是原帖直接内容。


上手步骤

1. 安装(单命令)

Linux / macOS:

curl -fsSL https://xerj.org/get | sh

Windows PowerShell:

irm https://xerj.org/get.ps1 | iex

安装脚本自动检测 OS/CPU,下载最新 GitHub release 并验 SHA-256(缺失或 mismatch 则中止安装)。二进制文件默认安装至 ~/.local/bin(Unix)或 %LOCALAPPDATA%\Programs\xerj(Windows,已加入 PATH)。可指定版本 XERJ_VERSION=vX.Y.Z 或目录 XERJ_INSTALL_DIR。

⚠️ 注意:安装脚本不修改 shell profile,新开 shell 时 ~/.local/bin 可能不在 PATH。用完整路径 $HOME/.local/bin/xerj 调用,或先 export PATH="$HOME/.local/bin:$PATH"。

2. 启动本地节点

xerj --insecure --data-dir ~/xerj-data
  • --insecure:关闭 TLS 和 API Key 认证,仅适合单用户开发机。全新节点默认绑定 127.0.0.1。
  • --data-dir 推荐放在待索引目录之外,避免节点把自身存储也索引进去(data/ 在内置忽略列表中,但显式指定子目录需谨慎)。
  • 如需后台运行:nohup xerj --insecure --data-dir ~/xerj-data &

3. 索引项目文件(零配置)

xerj autoindex <folder>

支持的格式:JSON/JSONL、CSV、SQLite、PDF、DOCX、PPTX、XLSX、EPUB、Jupyter notebooks、man pages、HTML、XML、YAML、纯文本、.eml、mbox 邮件归档、gzip 压缩变体,以及结构化日志和 SQL dumps。索引名称默认为 ax-<dataset-slug>,可用 --prefix 为不同语料指定独立前缀。

4. 初始化 Agent 集成(一键)

xerj init

该命令将 XERJ MCP server 注册到 .mcp.json,并为 Claude Code / Cursor 写入 10 行 skill 文件(有 .bak 备份)。Agent 即可通过 MCP 工具 xerj_search 发起查询。

5. 查询

自然语言搜索(在有 shell 的环境):

xerj search "flush epoch crash recovery"
# 输出: file:line + 相关段落,定义优先

符号跳转(已知函数名):

xerj def "euler_to_rotationmatrix"
# 输出: file:line + 函数签名

HTTP 直接查询(Agent 无 shell 时):

POST http://localhost:9200/ax-*/_search
{"query": {"match": {"body": "BuiltinPager"}}}

6. 使用预建语料库(Corpus Hub)

Hub 上的语料库通过三条命令接入:

xerj corpus add --from <corpus-id>   # 从 hub 下载 manifest
xerj corpus index xerj-storage         # 从 manifest 索引
xerj code xerj-storage "flush epoch crash recovery"  # 查询

Hub 语料库覆盖 11 个领域(SEC、API、DB、OPS、AI、HEALTH、WEB、LAW、NET、CRYPTO、WRITE),总规模 515 个 live 语料库 / 78.6 GB。

7. 提交 Field Report(必需)

XERJ 是免费开源的(Apache 2.0),项目方要求每个运行过 XERJ 的用户提交一份简短 field report,作为唯一的「会费」:

xerj feedback --open-pr \
  --agent "<your-model>" \
  --used-for "<what-you-did>" \
  --verdict "<what-worked / what-did-not>"

预览模式:xerj feedback --dry-run。无法使用 gh 的沙盒环境,用 --dry-run 生成报告后手动提交。负面报告也是好报告。


适用边界

适合: - 私有、内部、小众或训练截止后更新的代码库(模型没有记忆,XERJ 填补盲区) - 需要跨源码、文档、日志进行联合检索的场景 - 将领域知识(SEC 漏洞 PoC、API 规范、数据库内核文档)作为 Agent 参考记忆

不适合/注意事项:

  1. 默认嵌入是词法(lexical),不是神经(neural):semantic 查询和 memory recall 在默认模式下是词/子词重叠 + BM25,不是向量语义搜索。如需神经搜索,启动节点时须加 --embed-mode neural。

  2. Token 节省有条件:在模型已经熟悉的主流开源库上,XERJ 相对纯记忆方案无优势甚至有害——模型直接记忆比查索引更快。收益主要来自私有、内部、小众代码。

  3. 安全边界:--insecure 标志关闭了 TLS 和认证,任何能访问对应端口的进程都是超级用户,可读写所有索引包括 /_memory 命名空间。仅限本地开发使用。

  4. --data-dir 放置:数据目录不应放在待索引目录的子树内,否则节点会索引自身的存储文件(除非显式排除)。

  5. Field Report 是必需项:不是可选的贡献,而是使用协议的一部分。每个 Agent 运行 session 结束后都应提交报告。


快速参考

项目 值
官网 / 安装 https://xerj.org
官方 AI 索引文档 https://xerj.org/llms.txt
GitHub https://github.com/xerj-org/xerj
Corpus Hub https://hub.xerj.org
Corpus Hub 提交规范 https://xerj.org/docs/corpus-hub
许可证 Apache 2.0
Field Report PR 路径 user-feedback/16-agent-field-reports/(CLA 豁免)