你自己的搜索引擎
Hister 是一款针对你访问过的网页和保存的文件而设计的私有搜索引擎。它会索引这些内容的全文,让你可以通过网页界面、终端,或者通过 MCP(Model Context Protocol,模型上下文协议)接入的 AI 助手重新找到所需信息。

快速入门
-
从最新发布版本中下载适用于你操作系统的二进制文件,并将其重命名为
hister(Windows 下为hister.exe)。 -
在 Linux 或 macOS 上,为其添加可执行权限:
chmod +x hister -
在 Linux 或 macOS 上启动 Hister:
./hister listen在 Windows 上,请在 PowerShell 中运行
\hister.exe listen。在使用 Hister 期间,请保持该终端处于打开状态。服务器必须保持运行,才能索引网页并提供搜索功能。
-
在启用扩展的情况下访问任意网页,然后返回 Hister,搜索该页面中出现的某个短语,即可获得你的第一条索引结果。
对于本地个人使用场景,无需任何配置。如需选择 Hister 索引哪些内容,请参阅完整快速入门指南。
要搜索已有内容,可以导入浏览器历史记录、索引本地目录,或者导入文件。
其他安装方式包括 Homebrew(brew install hister)、Docker 和 Nix。详细说明请参阅安装指南。
功能特性
- 注重隐私:无任何遥测采集,也无需强制使用的云服务。Hister 可在本地运行,或部署在你自行掌控的基础设施上。
- 全文索引:可搜索已访问网页和本地文件的实际正文内容,而非仅限于标题和 URL。
- 浏览器自动索引:通过 Firefox 或 Chrome 扩展自动保存新访问的网页。
- 强大的查询能力:支持字段过滤、短语、通配符、排除、别名以及结果优先级设置。
- 可选的语义搜索:通过你自行配置的嵌入(embeddings)端点,按语义查找文档。
- 爬虫与浏览器导入:可索引整站网站,或导入已有的浏览器历史记录。
- 网页、终端与 MCP 客户端:支持通过浏览器、TUI(终端用户界面)、命令行或 AI 助手进行搜索。
- 多用户支持:在共享服务器上,每个用户的文档与搜索结果相互隔离。

隐私
默认情况下,Hister 不包含任何遥测功能,也未启用云同步。除下载页面网站图标(favicon)外,浏览器扩展仅将索引页面的内容发送至你所配置的 Hister 服务器。文档与搜索索引均存储在该服务器上。
可选的语义搜索功能会将文档文本发送至你指定的嵌入端点。在启用任何远程集成之前,请先阅读隐私概览与语义搜索配置说明。
为什么选择 Hister?
与传统搜索引擎不同,Hister 会基于你主动选择保留的网页与文件构建个人化的搜索索引。你的内容始终保存在你自己的 Hister 服务器上,让你在不依赖任何第三方搜索服务商的前提下,重新找到曾经遇到过的信息。
开发
开发所需环境:Go 1.26、npm,以及用于 CGO 依赖的 C 编译器。
git clone https://github.com/asciimoo/hister.git
cd hister
./manage.sh build
若要开发网页应用,并启用热重载与 Go 自动重新编译功能:
npm run serve:app
该命令会启动 Vite 开发服务器以及 Go 后端,并通过 air 实现自动重新编译。
社区与贡献
欢迎加入 IRCNet 上的 #hister 频道,或访问 Discord 社区。
提交改动之前,请先阅读 CONTRIBUTING.md。Bug 反馈与建议请提交至问题跟踪列表。安全相关的报告请参阅 SECURITY.md。
赞助者
许可证
AGPLv3 或任何更高版本