Telegram Search

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

Star 数
★ 4.1k
最近更新
1 天前
License
AGPL-3.0
主语言
TypeScript

30 秒速览

运行形态
自托管服务命令行工具网页应用
可在哪里用
平台专用
费用
软件免费,模型调用费用自付
上手难度
中 · 需要几步配置
开始前需要
Node.jspnpmDockerDocker ComposeShell / 命令行网络访问本地文件系统
典型场景
经常在 Telegram 聊天中查找历史信息,但官方搜索不支持中文或功能不足的普通用户
不适合
  • 不愿申请 Telegram API ID 与 Hash 的用户
  • 不想维护 Docker、数据库或 MinIO 等基础设施的个人

这个 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?

  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:dev 和 pnpm 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 list 和 sync 命令同步数据,最后 export 导出。

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

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

这个 Agent 与同类方案有什么区别?

与相关度最高的同类 agent 并排比较关键指标。

Agent 源码审查 形态 / 费用 Star 最近更新 主语言 完整支持的平台
Telegram Search 当前 58 · 缺口较多 自托管服务免费 + 模型费 ★ 4.1k 1 天前 TypeScript —
Teable - 人工智能电子表格 53 · 缺口较多 自托管服务免费版 + 付费版 ★ 22k 3 天前 TypeScript —
CocoIndex 49 · 缺口较多 代码库 / SDK免费 + 模型费 ★ 12k 1 天前 Rust —
Mnemosyne 59 · 缺口较多 命令行工具免费 ★ 3.5k 今天 Python Codex · Claude Code

FollowAgents 如何评估这个 Agent?

FollowAgents 源码审查 · FARS-2.1
缺口较多
58/ 100 五分制 2.9 / 5
本评测基于 2026年8月11日 的源码;此后该项目发布了 6 个正式版本,尚未复审。分数与结论只代表评测时的版本。 最近版本 ↓
信任安全 16/29
可靠稳定 8/14
适用触发 12/18
规范维护 10/18
有效结果 9/13
证据核验 3/8
查看各维度的扣分理由
信任安全16 / 29 · 2.8/5

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

可靠稳定8 / 14 · 2.9/5

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

适用触发12 / 18 · 3.3/5

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

规范维护10 / 18 · 2.8/5

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

有效结果9 / 13 · 3.5/5

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

证据核验3 / 8 · 1.9/5

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

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

最近版本

来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。

  1. v1.6.0
    发布说明摘录
    What's Changed * chore(homebrew): update CLI to v1.5.0 by @luoling8192 in https://github.com/groupultra/telegram-search/pull/692 * feat(server): add scoped remote access control by @luoling8192 in https://github.com/groupultra/telegram-search/pull/681 Full Changelog: https://github.com/groupultra/telegram-search/compare/v1.5.0...v1.6.0
    在 GitHub 查看 ↗
  2. v1.5.0
    发布说明摘录
    Add short-lived attachment URLs for consumers that cannot send an Authorization header, including image analysis tools. - tg-search media url exchanges authenticated access to one attachment for an opaque URL that expires after five minutes. Anonymous GET/HEAD returns the original bytes; explicit local and Telegram sources are supported. - Tickets bind the account, attachment identity, size and byte budget. Bearer rotation invalidates issued links. Download capacity, deadlines and safe error responses bound resource use. …
    在 GitHub 查看 ↗
  3. v1.4.0
    发布说明摘录
    Distribution status CLI and Homebrew v1.4.0 are published and independently verified. The Docker v1.4.0 image is not published: the [multi-architecture workflow](https://github.com/groupultra/telegram-search/actions/runs/38889264635) reached its 15-minute limit during ARM64 Web compilation. This remains tracked in [#682](https://github.com/groupultra/telegram-search/issues/682). The Web deployment workflow succeeded; anonymous access from the verification environment returned HTTP 403, so authenticated business flows remain unverified. Upgrade notes …
    在 GitHub 查看 ↗

常见问题

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

相关 Agents