Repolode
zvec-ai

zvec-ai/zvec-grep

本地优先的命令行搜索工具,结合 ripgrep、BM25 和向量检索,供人和 AI 代理查找工作区内容。

Star
4,290
Fork
262
未关闭 Issue
90
最近提交
昨天

这是什么?

zg(zvec-grep)是一个在本地工作区文件上运行的搜索工具,基于 zvec 向量数据库构建。它把 ripgrep 的精确文本与正则匹配、BM25 关键词排序和向量语义检索结合起来:可以按含义找到相关段落,必要时再用精确文本或正则验证。项目以 Node.js 包形式发布,仓库中另有独立的 Rust 实现。

同一份索引既可以在终端通过 zg 命令行使用,也可以交给 AI 代理调用。项目支持与 Codex、Claude Code、Cursor、GitHub Copilot、VS Code、OpenCode 等代理集成,并提供 MCP 接入方式。它能索引源代码、文档和结构化数据,并保留来源位置,支持 macOS、Linux 和 Windows。文件、索引和本地嵌入模型都保存在本机,只有在用户授权时才会把数据发送给远程嵌入服务。

项目支持本地嵌入模型,包括 Potion/model2vec,以及 llama.cpp 和 Transformers.js 运行时,并提供索引并发数和 GPU 显存相关的配置项。索引数据保存在被索引项目根目录下的 .zvec-grep/ 目录中。

核心功能

  • 01将 ripgrep 的精确与正则搜索、BM25 关键词排序和向量语义检索结合在一起。
  • 02既可通过 zg 命令行使用,也可通过 MCP 等方式供 AI 代理调用。
  • 03索引源代码、文档和结构化数据,并保留内容的来源位置。
  • 04支持 macOS、Linux 和 Windows,npm 包需要 Node.js 22 或更高版本。
  • 05默认将文件、索引和本地模型保存在本机,远程嵌入需用户授权。

适用场景

  • 在大型代码仓库中,当不知道确切符号名时查找调用链和架构相关代码。
  • 让 AI 编程代理基于排序且带来源位置的结果搜索本地项目。
  • 按语义而非精确关键词搜索混合存放的文档和代码。
  • 在不把文件上传到远程服务的前提下进行私有化语义搜索。

快速上手

  1. 1

    从 npm 安装 zg 命令行工具(需要 Node.js 22 或更高版本)

    npm install -g @zvec/zvec-grep
  2. 2

    使用本地向量模型为工作区建立索引

    zg index --embedding local/potion-retrieval-32m
  3. 3

    在终端中运行搜索

    zg query --human "An unseen creature left a few marks. What did the detective infer?" --limit 3

使用前须知

  • 需要 Node.js 22 或更高版本。
  • 智能体示例依赖 OpenCode,且免费模型的可用性可能发生变化。

收录于专题

标签

常见问题

zvec-grep 是什么?
本地优先的命令行搜索工具,结合 ripgrep、BM25 和向量检索,供人和 AI 代理查找工作区内容。 zg(zvec-grep)是一个在本地工作区文件上运行的搜索工具,基于 zvec 向量数据库构建。它把 ripgrep 的精确文本与正则匹配、BM25 关键词排序和向量语义检索结合起来:可以按含义找到相关段落,必要时再用精确文本或正则验证。项目以 Node.js 包形式发布,仓库中另有独立的 Rust 实现。
zvec-grep 可以免费使用吗?用的什么许可证?
zvec-grep 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
zvec-grep 还在维护吗?
活跃维护中。zvec-grep 最近一次提交是在 2026年11月6日。
zvec-grep 适合用来做什么?
在大型代码仓库中,当不知道确切符号名时查找调用链和架构相关代码。 让 AI 编程代理基于排序且带来源位置的结果搜索本地项目。 按语义而非精确关键词搜索混合存放的文档和代码。 在不把文件上传到远程服务的前提下进行私有化语义搜索。
zvec-grep 怎么安装和运行?
从 npm 安装 zg 命令行工具(需要 Node.js 22 或更高版本): npm install -g @zvec/zvec-grep 使用本地向量模型为工作区建立索引: zg index --embedding local/potion-retrieval-32m 在终端中运行搜索: zg query --human "An unseen creature left a few marks. What did the detective infer?" --limit 3
在哪里获取 zvec-grep?
源代码和安装说明在 GitHub 上:https://github.com/zvec-ai/zvec-grep

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目