Telegram MTPROTO CLI

基于MTProto的只读Telegram CLI。可列出聊天、获取消息、下载媒体及管理本地账号/会话,不支持发送消息或修改Telegram。

安装

概览

tg 是一款基于 MTProto 协议的只读型 Telegram CLI 工具,专为开发者和技术用户设计,用于直接通过 Telegram 官方协议访问和读取聊天数据。与依赖 Bot API 的第三方客户端不同,tg 不经过中间层,能够绕过速率限制,实现更灵活的数据提取操作。该工具无需创建机器人账号,而是使用标准的 Telegram 用户身份进行认证,支持多账户管理和本地会话存储。所有敏感凭证如 api_id 和 api_hash 会被安全地保存在系统密钥链中,确保安全性。tg 的核心定位是‘只读’,这意味着它无法发送消息、修改群组设置或执行任何写入 Telegram 的操作,仅允许从服务器拉取信息并在本地处理。这使得 tg 成为日志分析、内容归档和数据挖掘等场景的理想选择。

核心功能特点

  1. 基于原生 MTProto 协议,无需 Bot API,绕过速率限制
  2. 支持列出聊天、获取历史消息、下载媒体文件等只读操作
  3. 内置多账户管理功能,可切换默认账号并使用别名引用
  4. 所有命令均支持 JSON 输出格式,便于脚本集成与自动化处理
  5. 自动将 api_id 和 api_hash 存入系统密钥链,保障凭证安全
  6. 提供论坛主题(topics)支持,可精准读取特定讨论区内容

适用场景

tg 特别适合需要批量获取 Telegram 聊天记录的自动化场景。例如,运营团队可以通过 `tg messages` 结合 `–after` 参数提取某频道自指定日期以来的全部文本消息,再配合 `jq` 过滤出关键词或导出为结构化数据,用于舆情监控或内容复盘。对于媒体从业者而言,利用 `tg download` 命令批量下载群聊中的图片或视频附件,能高效完成素材采集工作,而无需手动逐个保存。在开发调试环境中,开发者可通过 `–json` 模式将消息流实时导入分析管道,快速验证数据处理逻辑。此外,由于 tg 支持按别名管理多个账号(如个人和工作号),用户可在不切换应用的情况下并行操作不同身份的数据源,提升工作效率。需要注意的是,尽管功能强大,tg 明确禁止发送消息或变更群组配置,因此不适合用作日常通讯工具,而是定位于后端数据抓取与本地处理的命令行解决方案。