核心用法
tg 是一个基于 Node.js 的命令行 Telegram 客户端,封装了 MTProto 协议,提供完整的消息读写与群组管理能力。核心工作流围绕「阅读-搜索-发送」三环节展开:
消息处理:tg inbox 快速查看未读摘要,tg read 支持按时间范围(--since)或数量(-n)拉取历史,所有输出可转 JSON 供管道处理。
搜索能力:tg search 支持单聊检索与全局检索,关键词匹配消息内容,适合在海量对话中定位信息。
主动通信:tg send 与 tg reply 覆盖私信与群组场景,支持通过用户名(@username)或群组名定位目标。
群组管理:tg members/tg admins 提供成员与权限视图,--admin 筛选可管理群组,便于运营者批量盘点。
显著优点
- 纯 CLI 体验:无 GUI 依赖,适合服务器部署与自动化脚本
- 结构化输出:全命令支持
--json,易于与 jq/Python 整合 - 灵活时间过滤:
--since支持自然语言(1h/30m/7d),降低心智负担 - 模糊匹配:聊天名称支持部分匹配,减少精确记忆成本
潜在局限
用户
- 自建凭证门槛:需前往 my.telegram.org 申请 api_id/api_hash,流程繁琐且需手机号验证
- 会话管理风险:首次
tg auth生成本地 session,多设备同步与密钥保管责任在 - 功能边界:不支持语音/视频通话、文件传输、贴纸等富媒体交互
- 生态维护:npm 包
@cyberdrk/tg下载量与社区活跃度待观察,长期维护存疑
适合人群
- 需批量处理 Telegram 消息的开发者/数据分析师
- 运营多群组的管理员,需快速导出成员或统计活跃
- 偏好终端工作流、追求自动化效率的技术用户
常规风险
| 风险点 | 说明 |
|--------|------|
| API 密钥泄露 | api_id/hash 若硬编码或误提交,可被滥用导致账号封禁 |
| 本地会话文件 | 存储于用户目录的 session 文件需权限管控,避免横向移动 |
| 频率限制 | Telegram 服务端对 API 调用有速率限制,批量操作可能触发冷却 |
| 账号安全 | CLI 登录等价于独立客户端,若设备失窃需 revoke 会话 |