数据与分析 telegram-exportfuzzy-searchvector-searchembeddingself-hosteddockerpglitepostgresql

Telegram Search

轻松导出、备份并模糊搜索你的 Telegram 聊天记录,支持向量语义搜索与 AI 摘要。

FollowAgents 评估 · FARS-2.1
不推荐
58/ 100 五分制 2.9 / 5
1 2 3 4 5 6
1信任安全16 / 29 · 2.8/5

证据显示 CLI 设计遵循最小权限原则:只申请所选会话类别,不申请联系人或文件导出权限;同步需显式 --takeout 且用户同意;stdout 只输出 JSON,日志走 stderr;导出不含媒体二进制、session、向量或密钥。但未提供代码级验证,且依赖安全仅靠 CI 和 provenance 检查,未提供依赖审计结果。外部效果方面,同步会写入本地 PGlite,但未提供回滚机制。来源归属仅通过 GitHub 仓库和许可证声明,发布者未验证。

2可靠稳定8 / 14 · 2.9/5

README 与 CLI 文档描述一致,package.json 脚本与文档命令匹配,但未提供失败消息的具体示例。依赖可用性方面,使用 pnpm 和 lockfile,CI 有构建测试,但未提供依赖可用性保证。

3适用触发12 / 18 · 3.3/5

面向个人用户和 Agent 使用场景,提供 CLI 和 Docker 部署,支持多种数据库和存储。能力边界清晰:只做导出和搜索,不执行 AI 总结(除非用户配置)。触发精度方面,CLI 命令明确,但未提供自动化触发机制。环境适配良好,支持多种部署方式。

4规范维护10 / 18 · 2.8/5

信息架构清晰,README 提供快速开始和详细文档链接。安装说明详细,包括 Docker Compose 和 Docker Image。命名稳定,版本号明确。示例和 FAQ 有提供,但已知限制未明确列出。许可证为 AGPL-3.0,完整文本存在。版本变更日志未提供,维护责任未明确。

5有效结果9 / 13 · 3.5/5

输出为 JSON 和 JSONL,便于程序处理。边际价值高,解决 Telegram 中文搜索痛点。成本效益合理,开源免费,但需自行部署。

6证据核验3 / 8 · 1.9/5

README 中的功能声明未提供测试证据,CI 有测试但未提供覆盖率报告。跨来源佐证有限,仅依赖仓库自身。事实与推断分离不明确,部分功能为路线图未实现。

证据充分度: 评估于 2026年8月11日 审查版本 54f6adced844
上游仓库在本次评估后已有新提交;当前评分仍对应所示审查版本,可能尚未覆盖最新改动。
使用前请注意
  • 发布者身份未验证,依赖供应链风险需自行评估。
  • 未提供依赖审计或漏洞扫描结果,建议部署前检查依赖安全。
  • 同步操作会写入本地数据库,但未提供回滚机制,操作前请备份。
  • 部分高级功能(如 AI 总结)需要用户自行配置 API,注意数据隐私。
评估证据 [1][2][3][4][5]
查看完整评分方法 →

这个 Agent 能做什么,适合哪些场景?

Telegram Search 是一个开源工具,用于导出、备份和搜索 Telegram 聊天记录。它提供 Web 界面、Telegram Bot 和本地优先的 CLI(Agent 模式)。消息导出时自动进行分词和向量嵌入,支持多语言模糊匹配和图片语义搜索。部署方式包括 Docker Compose 或纯浏览器模式。项目还提供 RAG 问答、未读消息摘要和基于 Bot 的搜索功能。

Telegram Search 通过 Telegram API 拉取用户授权的聊天记录,将消息持久化到 PGlite 或 PostgreSQL 数据库,并为每条消息生成向量嵌入和分词索引。它提供 Web 界面(默认端口 3333)让用户搜索、浏览和导出消息。CLI 工具支持 configure、login、chats list、sync 和 export 等命令,输出 JSON 格式结果。此外,还支持 Telegram Bot 交互搜索和 deep link 跳转,以及通过 AI 嵌入模型进行图片语义搜索。

  1. 经常在 Telegram 聊天中查找历史信息,但官方搜索不支持中文或功能不足的普通用户
  2. 需要备份 Telegram 聊天记录,并希望按日期范围导出 JSONL 文件的个人或团队
  3. 希望通过自然语言与 AI 对话,基于历史消息获得 RAG 问答答案的用户
  4. 需要一键汇总未读消息摘要,快速了解群聊或频道动态的活跃用户
  5. 希望将 Telegram 消息与向量数据库结合,构建知识图谱或进一步分析的开发者

这个 Agent 有哪些优点和局限?

优点
  • 支持 PGlite 和 PostgreSQL,部署灵活,数据库可迁移
  • 内置向量嵌入和模糊搜索,中文和英文等多语言检索准确
  • 提供 Web 界面、CLI 和 Telegram Bot 三种交互方式
  • 支持图片语义搜索,以文搜图
  • 具有未读消息摘要和 RAG 问答等 AI 功能
局限
  • 需要用户提供 Telegram API ID 和 Hash,涉及第三方凭据配置
  • 依赖外部 AI 嵌入模型和 LLM API,可能产生费用和隐私风险
  • 部署需要 Docker 或 Node.js 环境,有一定技术门槛
  • CLI 的同步操作严格限制,需要用户明确授权,流程复杂
  • 媒体存储依赖 MinIO,增加了基础设施管理成本

如何安装或部署这个 Agent?

  1. 克隆仓库:git clone https://github.com/groupultra/telegram-search.git;2. 安装依赖:pnpm install;3. 复制环境变量:cp .env.example .env;4. 使用 Docker Compose:curl -L ... 下载 docker-compose.yml 等文件,然后运行 docker compose up -d。或者使用 Docker 镜像:docker run -d --name telegram-search -p 3333:3333 ghcr.io/groupultra/telegram-search:latest。也可开发模式:pnpm run dev(纯浏览器)或 pnpm run server:devpnpm run web:dev(服务器模式)。

如何使用这个 Agent?

  1. 通过 Web 界面(如 http://localhost:3333)登录自己的 Telegram 账号(需要 API ID 和 Hash)。2. 在界面中授权并开始同步消息。3. 使用搜索框进行关键词或向量语义搜索。4. 若要使用 CLI,先构建包:pnpm run build:packages && pnpm -F @tg-search/cli build,然后执行 pnpm cli --profile work profile configure --apiId 123456 --apiHash abcdef 配置,再 pnpm cli --profile work auth login 登录,使用 chats listsync 命令同步数据,最后 export 导出。

常见问题

搜索能否支持中文?
是的,项目引言明确指出解决了 Telegram 无法搜索中文聊天记录的痛点,并支持多语言模糊检索。
使用需要付费吗?
本体开源免费,但 AI 嵌入和 LLM 功能需要用户在应用内配置 API 密钥,可能会产生第三方费用。
数据存储在哪里?
默认使用 PGlite(浏览器内数据库),也可配置为 PostgreSQL;媒体文件存储在 MinIO 或本地目录。所有数据都掌握在自己手中。
如何保证账号安全?
需要提供自己的 API 凭据,项目声明不会发行虚拟货币,且导出功能限制为个人合法用途。建议使用官方 API 并注意保护凭据。

相关 Agents