悦书阁 悦书阁
首页
学习笔记
技术文档
AI技术
更多
  • 分类
  • 标签
  • 归档

Felix

大道至简 知易行难
首页
学习笔记
技术文档
AI技术
更多
  • 分类
  • 标签
  • 归档
  • 入门指南

  • OpenClaw系列

  • Claude-Code系列

  • MCP与Skill

  • 开发资源

  • Hermes系列

    • Linux 安装 Hermes Agent
    • WSL 安装与常用命令
    • Telegram 机器人创建与接入指南
      • 前言
      • 第一部分:创建 Telegram 机器人
        • 1.1 通过 BotFather 创建
        • 1.2 获取 Chat ID
        • 1.3 BotFather 常用命令
        • 1.4 设置机器人命令
      • 第二部分:接入 OpenClaw
        • 2.1 OpenClaw Telegram 配置
        • 2.2 配置 Telegram Token
        • 2.3 配置 Authorized Senders
        • 2.4 完整配置示例
        • 2.5 启动 OpenClaw Gateway
        • 2.6 OpenClaw Telegram 特性
      • 第三部分:接入 Hermes Agent
        • 3.1 Hermes Gateway 配置
        • 3.2 手动配置 Telegram
        • 3.3 运行 Hermes Gateway
        • 3.4 Hermes Gateway 特性
        • 3.5 Hermes Telegram 高级功能
      • 第四部分:对比与选择
        • 4.1 OpenClaw vs Hermes Telegram 功能对比
        • 4.2 选择建议
      • 第五部分:常见问题
        • 5.1 机器人不回复
        • 5.2 群聊中机器人不回复
        • 5.3 Token 泄露怎么办
        • 5.4 多机器人管理
      • 第六部分:安全建议
        • 6.1 Token 安全
        • 6.2 用户限制
        • 6.3 命令权限
      • 附录:快速检查清单
        • Telegram Bot 检查
        • OpenClaw 检查
        • Hermes 检查
      • 相关链接
      • 总结
  • AI技术
  • Hermes系列
liufei379
2026-07-09
目录

Telegram 机器人创建与接入指南

# 前言

Telegram Bot 是接入 AI Agent(如 OpenClaw、Hermes)的重要渠道。本文将详细介绍:

  1. 如何通过 BotFather 创建 Telegram 机器人
  2. 如何将机器人接入 OpenClaw
  3. 如何将机器人接入 Hermes Agent

# 第一部分:创建 Telegram 机器人

# 1.1 通过 BotFather 创建

BotFather 是 Telegram 官方的机器人管理工具,所有 Telegram Bot 都必须通过它创建。

步骤:

  1. 打开 Telegram,搜索 @BotFather

    在 Telegram 搜索框输入 @BotFather,点击进入官方机器人。

  2. 发送创建命令

    /newbot
    
    1
  3. 设置机器人名称

    BotFather 会询问机器人名称(显示名),例如:

    墨隐助手
    
    1

    名称可以是任意语言,不需要唯一。

  4. 设置机器人用户名

    接下来设置用户名(Username),必须以 bot 结尾,例如:

    moyin_bot
    
    1

    用户名必须是唯一的、英文、以 bot 结尾。

  5. 获取 Token

    创建成功后,BotFather 会返回 Token:

    Done! Congratulations on your new bot...
    Use this token to access the HTTP API:
    1234567890:ABCdefGHIjklMNOpqrsTUVwxyz
    
    1
    2
    3

    ⚠️ 这个 Token 需要妥善保管,不要泄露!

# 1.2 获取 Chat ID

要让机器人发送消息,还需要知道 Chat ID(接收者的 ID)。

方法一:通过 @userinfobot

  1. 搜索 @userinfobot
  2. 点击 Start
  3. 它会返回你的 Chat ID

方法二:通过 API

# 先向机器人发一条消息
# 然后用 API 获取
curl "https://api.telegram.org/bot<TOKEN>/getUpdates"
1
2
3

返回结果中 chat.id 就是 Chat ID。

# 1.3 BotFather 常用命令

命令 说明
/newbot 创建新机器人
/mybots 查看我的所有机器人
/setname 设置机器人名称
/setdescription 设置描述
/setabouttext 设置简介
/setuserpic 设置头像
/setcommands 设置命令列表
/deletebot 删除机器人
/token 重新生成 Token

# 1.4 设置机器人命令

向 BotFather 发送 /setcommands,然后粘贴:

start - 开始对话
help - 获取帮助
status - 查看状态
model - 切换模型
tools - 工具设置
1
2
3
4
5

# 第二部分:接入 OpenClaw

# 2.1 OpenClaw Telegram 配置

OpenClaw 通过配置文件接入 Telegram,需要配置 bindings 和 messages 字段。

配置示例:

{
  "bindings": [
    {
      "agentId": "main",
      "match": {
        "channel": "telegram",
        "accountId": "moyin_bot"
      }
    }
  ],
  "messages": {
    "ackReactionScope": "group-mentions"
  }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14

# 2.2 配置 Telegram Token

OpenClaw 的 Token 通过环境变量设置:

# 在 ~/.openclaw/.env 文件中添加
TELEGRAM_BOT_TOKEN_<ACCOUNT_ID>=<TOKEN>
1
2

例如:

# Account ID 为 moyin_bot
TELEGRAM_BOT_TOKEN_MOYIN_BOT=1234567890:ABCdefGHIjklMNOpqrsTUVwxyz
1
2

提示

Account ID 可以自定义,但必须与 bindings 中的 accountId 对应。

# 2.3 配置 Authorized Senders

限制谁可以与机器人对话:

{
  "authorizedSenders": [8468181200]
}
1
2
3

只有这些用户才能使用机器人。

# 2.4 完整配置示例

{
  "agents": {
    "defaults": {
      "model": {
        "primary": "tencent-coding-plan/glm-5"
      },
      "workspace": "/root/.openclaw/moyin/workspace"
    },
    "list": [
      {
        "id": "main",
        "default": true,
        "workspace": "/root/.openclaw/moyin/workspace"
      }
    ]
  },
  "bindings": [
    {
      "agentId": "main",
      "match": {
        "channel": "telegram",
        "accountId": "moyin_bot"
      }
    }
  ],
  "messages": {
    "ackReactionScope": "group-mentions"
  },
  "authorizedSenders": [8468181200],
  "session": {
    "dmScope": "per-channel-peer"
  }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33

# 2.5 启动 OpenClaw Gateway

# 启动 Gateway 服务
openclaw gateway

# 或使用 systemd 管理
sudo systemctl start openclaw-gateway
1
2
3
4
5

# 2.6 OpenClaw Telegram 特性

特性 说明
私聊回复 直接向机器人发消息,自动回复
群聊触发 需要 @机器人名 或使用命令
Reaction 收到消息时自动点赞确认
Reply 回复特定消息([[reply_to_current]])
按钮交互 支持内联按钮

# 第三部分:接入 Hermes Agent

# 3.1 Hermes Gateway 配置

Hermes 使用交互式配置向导设置 Telegram:

# 启动 Gateway 配置向导
hermes gateway setup
1
2

按照提示:

  1. 选择 Telegram 渠道
  2. 输入 Bot Token
  3. 配置允许的用户/群组
  4. 保存配置

# 3.2 手动配置 Telegram

如果需要手动配置,编辑 ~/.hermes/config.yaml:

gateway:
  telegram:
    enabled: true
    token: "1234567890:ABCdefGHIjklMNOpqrsTUVwxyz"
    allowed_users:
      - 8468181200
    allowed_groups:
      - -1001234567890
1
2
3
4
5
6
7
8

# 3.3 运行 Hermes Gateway

# 直接运行
hermes gateway

# 安装为系统服务
hermes gateway install

# 使用 systemd 管理
sudo systemctl enable hermes-gateway
sudo systemctl start hermes-gateway
1
2
3
4
5
6
7
8
9

# 3.4 Hermes Gateway 特性

Hermes Gateway 支持多渠道统一接入:

渠道 说明
Telegram 最常用的渠道
Discord 游戏社区常用
Slack 团队协作
WhatsApp 国际通讯
Signal 安全通讯
Email 邮件渠道

所有渠道共享同一个 Agent:

  • 同样的记忆
  • 同样的技能
  • 同样的配置

# 3.5 Hermes Telegram 高级功能

自然语言 Cron:

# 在 Telegram 中发送
"提醒我每天早上9点吃药"

# Hermes 会自动创建 cron 任务
1
2
3
4

多模型切换:

# 在对话中切换模型
/model claude-3.5-sonnet
1
2

技能安装:

# 通过 Telegram 安装技能
/skill install weather
1
2

# 第四部分:对比与选择

# 4.1 OpenClaw vs Hermes Telegram 功能对比

功能 OpenClaw Hermes
配置方式 JSON 配置文件 交互式向导 + YAML
多渠道 Telegram + 飞书 Telegram/Discord/Slack/WhatsApp/Signal/Email
Reaction ✅ 支持 ✅ 支持
内联按钮 ✅ 支持 ✅ 支持
自然语言 Cron ❌ ✅
技能系统 Skill 文件 动态生成 + 市场
持久记忆 MEMORY.md 自动持久化
配置难度 中等(需手动编辑) 低(交互式向导)

# 4.2 选择建议

场景 推荐
只需要 Telegram OpenClaw 或 Hermes 均可
需要飞书集成 OpenClaw
需要多渠道 Hermes
需要自然语言 Cron Hermes
追求简单配置 Hermes
已有 OpenClaw 配置 继续用 OpenClaw

# 第五部分:常见问题

# 5.1 机器人不回复

检查项:

# 1. 检查 Token 是否正确
curl "https://api.telegram.org/bot<TOKEN>/getMe"

# 2. 检查是否收到消息
curl "https://api.telegram.org/bot<TOKEN>/getUpdates"

# 3. 检查 Gateway 是否运行
# OpenClaw
openclaw gateway --status

# Hermes
hermes gateway --status
1
2
3
4
5
6
7
8
9
10
11
12

# 5.2 群聊中机器人不回复

原因: 群聊需要 @机器人名 或使用命令

解决方案:

  • OpenClaw:配置 ackReactionScope
  • Hermes:确保机器人在群中有发言权限

# 5.3 Token 泄露怎么办

立即重新生成:

# 向 BotFather 发送
/token

# 会生成新的 Token
1
2
3
4

# 5.4 多机器人管理

OpenClaw:

{
  "bindings": [
    {
      "agentId": "main",
      "match": {
        "channel": "telegram",
        "accountId": "bot1"
      }
    },
    {
      "agentId": "moxi",
      "match": {
        "channel": "telegram",
        "accountId": "bot2"
      }
    }
  ]
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

Hermes: 使用 Profile 系统:

# 创建新 Profile
hermes profile create moxi

# 在新 Profile 中配置 Gateway
hermes gateway setup
1
2
3
4
5

# 第六部分:安全建议

# 6.1 Token 安全

  • ❌ 不要将 Token 写入博客、GitHub
  • ❌ 不要通过 HTTP 传输 Token
  • ✅ 使用环境变量存储
  • ✅ 定期更换 Token

# 6.2 用户限制

// OpenClaw
{
  "authorizedSenders": [8468181200]
}

// Hermes YAML
gateway:
  telegram:
    allowed_users:
      - 8468181200
1
2
3
4
5
6
7
8
9
10

# 6.3 命令权限

限制危险命令:

{
  "commands": {
    "native": "owner"
  }
}
1
2
3
4
5

# 附录:快速检查清单

# Telegram Bot 检查

  • [ ] BotFather 创建机器人
  • [ ] 获取 Token
  • [ ] 获取 Chat ID
  • [ ] 设置机器人头像、描述
  • [ ] 设置命令列表

# OpenClaw 检查

  • [ ] 配置 bindings
  • [ ] 设置环境变量 Token
  • [ ] 配置 authorizedSenders
  • [ ] 启动 Gateway
  • [ ] 测试私聊回复
  • [ ] 测试群聊触发

# Hermes 检查

  • [ ] 运行 hermes gateway setup
  • [ ] 输入 Telegram Token
  • [ ] 配置 allowed_users
  • [ ] 运行 hermes gateway
  • [ ] 测试各渠道
  • [ ] 测试 cron 功能

# 相关链接

  • Telegram Bot API:https://core.telegram.org/bots/api (opens new window)
  • BotFather 教程:https://core.telegram.org/bots/tutorial (opens new window)
  • OpenClaw 文档:https://docs.openclaw.ai (opens new window)
  • Hermes 文档:https://hermes-agent.nousresearch.com (opens new window)

# 总结

创建 Telegram Bot 只需几分钟,但接入 AI Agent 需要仔细配置。OpenClaw 适合已有配置体系的用户,Hermes 提供更简单的交互式向导和多渠道支持。根据需求选择合适的框架,让你的 AI Agent 随时随地为你服务。

#Telegram#Bot#OpenClaw#Hermes
WSL 安装与常用命令

← WSL 安装与常用命令

最近更新
01
WSL 安装与常用命令
07-09
02
Linux 安装 Hermes Agent
07-09
03
CodeGraph:为 AI 代理构建代码知识图谱
07-08
更多文章>
Theme by Vdoing | Copyright © 2022-2026 Felix
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式