OpenClaw Telegram配置完全指南:15分钟打造你的私人AI机器人

从零开始配置OpenClaw Telegram机器人的完整教程,涵盖BotFather创建、配对机制、群组设置、Docker部署、LLM模型选择和安全最佳实践,15分钟搞定全流程。

Nano Banana Pro

4K图像官方2折

Google Gemini 3 Pro Image · AI图像生成

已服务 10万+ 开发者
$0.24/张
$0.05/张
限时特惠·企业级稳定·支付宝/微信支付
Gemini 3
原生模型
国内直连
20ms延迟
4K超清
2048px
30s出图
极速响应
AI技术博客
AI技术博客·

把Telegram变成你的私人AI指挥中心——这不是什么未来愿景,而是OpenClaw正在让数十万开发者实现的现实。OpenClaw是一个拥有超过171k GitHub Stars的开源AI助手框架,它能让你在自己掌控的服务器上运行AI模型,并通过Telegram随时随地进行对话交互。与直接使用ChatGPT或Claude的网页版不同,通过OpenClaw接入Telegram意味着你拥有完整的数据控制权、持久的对话记忆、以及跨设备的无缝访问体验。

本文将手把手带你完成OpenClaw Telegram机器人的全流程配置——从创建Bot Token到配对激活,从私聊策略到群组设置,从本地测试到VPS生产部署。整个过程在15分钟内即可完成,无需深厚的技术背景。即使你是第一次接触OpenClaw,跟着这篇指南也能顺利搭建起属于自己的AI Telegram机器人。

OpenClaw Telegram配置完全指南封面,展示从BotFather创建到AI对话的完整流程

前置准备:你需要什么

在开始配置之前,确认你已经准备好以下几个基本条件。Node.js 22或更高版本是OpenClaw运行的硬性要求,低于这个版本会导致安装直接失败——这是新手最常遇到的第一个坑。你可以通过运行node --version来检查当前版本。此外,你需要一个Telegram账号(安装好Telegram客户端),以及至少一个AI模型的API Key。如果你还没有Telegram账号,可以参考Telegram注册与验证指南快速完成注册。

关于AI模型的选择,OpenClaw支持多种主流LLM提供商。对于想要零成本入门的用户,Google Gemini 2.0 Flash提供了免费层,每天有大约100万Token的额度,足够日常对话使用。如果追求更高的对话质量,Claude Sonnet和GPT-4o是两个主流选择,月均API费用通常在$3-15之间,取决于你的使用频率。对于完全不想花钱且有足够硬件的用户,Ollama支持本地运行开源模型,但需要至少16GB内存。

硬件需求方面,OpenClaw本身非常轻量——500MB磁盘空间和512MB内存即可启动。但如果你计划使用浏览器自动化等高级功能,服务器配置需要更高。对于纯Telegram聊天场景,一台$4-6/月的基础VPS就绑绑有余。

第一步:通过BotFather创建Telegram机器人

创建Telegram机器人的过程完全在Telegram应用内完成,不需要任何编码。打开Telegram,在搜索栏输入@BotFather,注意认准带有蓝色认证对勾的官方账号——市面上有不少仿冒的BotFather,使用错误的账号可能导致Token泄露。

向BotFather发送/newbot命令,它会引导你通过对话式流程完成创建(详见Telegram Bot API官方文档)。首先需要输入机器人的显示名称(Display Name),这是用户在对话列表中看到的名字,可以包含中文和空格,比如"我的AI助手"。接着需要输入用户名(Username),这是机器人的唯一标识,必须以_botBot结尾,只能包含英文字母、数字和下划线,例如my_ai_assistant_bot

创建成功后,BotFather会返回一个API Token,格式类似于123456789:ABCdefGHIjklmnoPQRstuvWXYZ。这个Token是控制机器人的唯一凭证,相当于机器人的密码,必须立即复制并妥善保管。任何持有这个Token的人都可以以你的机器人的名义发送消息,因此绝对不要将它提交到公开的代码仓库、分享在社交媒体上,或者通过不加密的渠道传输。

在创建Bot之后,还有一个容易被忽略但对群组功能至关重要的设置:隐私模式。默认情况下,Telegram机器人在群组中只能接收到直接@提及它的消息,看不到群组中的其他对话。如果你希望机器人能够"听到"群组中的所有消息(用于上下文理解或关键词触发),需要在BotFather中发送/setprivacy命令,选择你的机器人,然后选择Disable(参考Telegram隐私模式说明)。修改隐私设置后,需要将机器人从群组中移除再重新添加才能生效。

第二步:安装OpenClaw并连接Telegram

OpenClaw的安装过程根据操作系统有所不同,但核心流程是一致的。在macOS和Linux上,使用官方安装脚本是最快的方式:

bash
curl -fsSL https://openclaw.ai/install.sh | bash
openclaw onboard --install-daemon

在Windows上,以管理员权限打开PowerShell,运行:

powershell
irm https://openclaw.ai/install.ps1 | iex
openclaw onboard --install-daemon

onboard命令会启动一个交互式配置向导,引导你完成初始设置。在配置过程中,需要注意几个关键选择。当向导询问是否安装命令补全(Shell Completion)时,建议选择No——根据社区反馈,这个功能在某些环境下会导致CPU负载异常升高。当向导询问要启用哪些Hooks时,仅选择session-memory即可,跳过boot-mdcommand-logger以保持系统轻量。

连接Telegram的核心是将Bot Token写入OpenClaw的配置中。在向导中选择Telegram (Bot API)作为通信渠道,粘贴之前从BotFather获取的Token。向导完成后,OpenClaw会自动以长轮询(Long Polling)模式连接Telegram服务器——这意味着你的服务器不需要公网IP或反向代理,OpenClaw会主动向Telegram拉取新消息。

如果你更倾向于手动编辑配置文件,OpenClaw的核心配置位于~/.openclaw/openclaw.json。Telegram相关的配置项位于channels.telegram节点下:

json
{
  "channels": {
    "telegram": {
      "enabled": true,
      "botToken": "123456789:ABCdefGHIjklmnoPQRstuvWXYZ",
      "dmPolicy": "pairing"
    }
  }
}

需要特别注意的是,Telegram在OpenClaw中的定位是内置渠道(Built-in Channel),而不是插件。这意味着你不需要额外安装任何东西,只需在配置文件中启用即可。环境变量TELEGRAM_BOT_TOKEN可以作为Token的备选来源,当配置文件中没有显式设置时会自动读取,但配置文件中的值始终优先于环境变量。

第三步:配对激活——安全的第一道防线

OpenClaw Telegram配对激活流程图,展示从首次消息到配对码审批的完整安全验证过程

当你第一次向新创建的机器人发送消息时,不会直接得到AI回复,而是收到一个配对码(Pairing Code)。这是OpenClaw的安全机制——防止互联网上的随机用户发现你的机器人并消耗你的API额度。配对码在生成后的1小时内有效,过期需要重新发起。

在服务器端执行以下命令来批准配对请求:

bash
openclaw pairing approve telegram <pairing-code>

配对成功后,再向机器人发送任意消息,这次你应该能收到一个真正由AI生成的回复。如果一切正常,恭喜——你的OpenClaw Telegram机器人已经就绪了。

OpenClaw提供了四种私聊策略(DM Policy),控制谁可以与你的机器人进行私聊:

策略行为适用场景
pairing(默认)新用户需要服务器端批准配对码个人使用,严格控制访问
allowlist只有预设白名单中的用户可以对话团队内部使用
open任何人都可以直接对话公开服务
disabled完全关闭私聊功能仅群组使用

对于个人使用场景,默认的pairing策略是最佳选择。它既保证了安全性(未授权用户无法使用),又不需要提前知道所有用户的Telegram ID。如果你需要在团队中共享机器人,allowlist策略更合适——通过allowFrom字段指定允许的用户ID列表。获取Telegram用户ID的方法是向@userinfobot发送消息,它会返回你的数字ID。

一个重要的安全细节:群组中的用户授权与私聊是独立的。即使一个用户通过了私聊的配对验证,在群组中是否有权限触发机器人仍然取决于群组策略的独立配置。这种设计确保了不同场景下的访问控制可以精细化管理。

第四步:群组配置——让AI服务整个团队

将OpenClaw机器人部署到Telegram群组,可以让整个团队共享AI能力。群组配置涉及几个核心参数,理解它们的作用和相互关系是避免"机器人在群里不说话"这类常见问题的关键。

群组策略groupPolicy)控制群组中谁可以触发机器人。默认值是allowlist,意味着只有白名单中的用户发送的消息才会被处理。如果你希望群组中的所有人都能使用机器人,将其改为opendisabled则完全关闭群组功能。

提及要求requireMention)决定机器人是否需要被@才会响应。默认为true,即用户必须在消息中@机器人名字才会触发回复。这在活跃的群组中非常有用,防止机器人对每条消息都自动回复造成刷屏。如果你的群组专门用于AI交互,可以将其设为false,让机器人响应所有消息。

群组的具体配置通过群组聊天ID来指定。获取群组ID的方法略有技巧——可以将机器人添加到群组后,通过Telegram Bot API的getUpdates接口查看最近的消息,其中会包含群组的chat ID(通常是负数,如-1001234567890)。配置示例:

json
{
  "channels": {
    "telegram": {
      "groupPolicy": "open",
      "groups": {
        "-1001234567890": {
          "requireMention": true,
          "agentId": "default"
        }
      }
    }
  }
}

OpenClaw还支持Telegram的论坛话题(Forum Topics)功能。在超级群组中启用论坛模式后,每个话题可以绑定不同的agentId,实现一个群组中多个AI代理各司其职的效果。例如,"技术支持"话题绑定一个专注于代码问题的代理,"日常闲聊"话题绑定一个轻松对话风格的代理。话题的session key格式为<chatId>:topic:<threadId>,可以在配置中精确控制每个话题的行为。

第五步:Docker生产部署与模型选择

对于需要长期稳定运行的场景,Docker Compose是最推荐的部署方式。它将OpenClaw及其所有依赖打包在隔离的容器中,避免了系统环境差异带来的兼容性问题,也让升级和回滚变得简单。

一个基础的docker-compose配置如下:

yaml
version: '3.8'
services:
  openclaw:
    image: openclaw/openclaw:latest
    container_name: openclaw
    restart: unless-stopped
    volumes:
      - ./openclaw-data:/root/.openclaw
    environment:
      - TELEGRAM_BOT_TOKEN=123456789:ABCdefGHIjklmnoPQRstuvWXYZ
      - ANTHROPIC_API_KEY=sk-ant-xxx
    ports:
      - "18789:18789"

在模型选择方面,不同的AI提供商各有优劣。Claude(Anthropic)以细腻的对话能力和强大的长上下文处理著称,是日常助手场景的首选,但需要注意一个重要的合规问题:使用个人Claude Pro订阅的API Key来驱动OpenClaw违反了Anthropic的服务条款,可能导致账号被封。必须使用pay-as-you-go的API密钥。GPT-4o在速度和多模态能力上表现出色,适合需要处理图片的场景。Gemini凭借免费层额度成为预算敏感用户的理想入门选择。

API费用是OpenClaw使用成本的主要组成部分。社区中有不少用户反馈过"账单惊吓"——当系统陷入重试循环或执行非预期操作时,API消耗可能在短时间内飙升至数百美元。强烈建议在AI提供商的后台设置月度消费上限($20-30/月是个合理的起点)。

对于国内开发者来说,直接访问Claude或GPT的API存在网络障碍。通过laozhang.ai等第三方API聚合平台可以解决这个问题——国内直连、支持支付宝微信付款、兼容标准API格式,只需修改OpenClaw配置中的API endpoint即可无缝接入。这种方式不仅解决了网络问题,通常还能获得比官方更优惠的价格。关于更多AI代理框架的对比分析,可以参考AI Agent自动化指南

高级功能:消息流控、命令菜单与Webhook

OpenClaw Telegram高级功能架构图,展示消息流控、原生命令菜单和Webhook配置的完整体系

当基本的对话功能跑通之后,OpenClaw的一系列高级特性可以大幅提升你的Telegram机器人的实用性和用户体验。

消息流式输出(Streaming)控制机器人如何展示AI正在生成的回复。OpenClaw提供四种模式:off(等待完整回复后一次性发送)、partial(默认值,分段发送)、block(按段落边界发送)和progress(显示进度指示)。对于长回复,partial模式可以让用户更早看到内容,提升交互体验。block模式在需要保持回复格式完整性时更为合适,它会在段落自然结束的位置才发送新的消息片段。

原生命令菜单是Telegram机器人的标准交互元素。通过将commands.native设为"auto",OpenClaw会自动将你定义的自定义命令注册到Telegram的命令菜单中——用户在输入框中输入/时就能看到可用命令的列表。自定义命令通过customCommands数组定义,每个命令包含名称、描述和触发的操作。

Webhook模式适用于对响应延迟要求更高的生产环境。与默认的长轮询模式不同,Webhook让Telegram主动将新消息推送到你的服务器,减少了轮询间隔带来的延迟。启用Webhook需要你的服务器拥有一个公网可达的HTTPS端点,配置项包括webhookUrl(公网地址)、webhookSecret(安全密钥)、webhookPort(默认8787)。对于大多数个人使用场景,长轮询已经足够快速且配置简单,Webhook更适合需要处理高并发消息的场景。如果你对浏览器自动化集成也感兴趣,可以参考OpenClaw Browser Relay完全配置指南中的Webhook相关设置,两者的配置逻辑非常相似。

OpenClaw还支持一些有趣的Telegram原生交互功能。表情回应(Reactions)可以通过配置channels.telegram.actions.react来启用,让机器人能够对用户消息进行表情回应。投票功能通过CLI命令创建:openclaw message poll --channel telegram --target <chatId> --poll-question "问题" --poll-option "选项1" --poll-option "选项2"贴纸识别功能在启用后会将贴纸的视觉描述缓存到本地(~/.openclaw/sticker-cache.json),让AI能理解用户发送的贴纸含义。

常见问题与故障排查

机器人创建成功但发消息没反应怎么办?

这是最常见的问题,通常有三个排查方向。首先运行openclaw status确认OpenClaw守护进程正在运行。其次检查是否完成了配对流程——首次消息应该会返回配对码,需要在服务器端执行openclaw pairing approve命令。最后检查Telegram Token格式是否正确,有效的Token只包含一个冒号,格式为数字:字母数字串

群组里机器人看不到消息怎么办?

这几乎必然是隐私模式的问题。在BotFather中对你的机器人执行/setprivacy并选择Disable,然后必须将机器人从群组中移除再重新添加。隐私模式的变更不会自动生效于已加入的群组,这是Telegram的设计特性而非bug。

VPS上连接Telegram不稳定怎么办?

部分VPS的IPv6网络配置存在问题,导致连接Telegram API时出现间歇性失败。在OpenClaw配置中添加"network": {"dnsResultOrder": "ipv4first"}"network": {"autoSelectFamily": false}可以强制使用IPv4连接。另外,选择海外地域(特别是东南亚或欧洲)的VPS可以获得更稳定的Telegram连接。如果你使用国内服务器,可能需要配置proxy参数来指定SOCKS或HTTP代理。

API费用失控怎么办?

立即在AI提供商的后台设置消费上限。然后排查是否有自动化任务陷入循环——检查OpenClaw的日志中是否有大量重复请求。对于日常使用,$20-30/月的上限足够覆盖正常对话量。如果你同时使用多个模型,可以为不同场景配置不同的模型——简单问答使用免费的Gemini Flash,复杂任务才调用Claude或GPT-4o。关于如何管理AI API成本,OpenClaw Browser Relay指南中也有相关的成本优化建议。

如何让多个人使用同一个机器人?

有两种方式。第一种是通过配对机制逐个审批——每个新用户发送首条消息后会获得配对码,你在服务器端逐一批准。第二种是使用allowlist策略,提前将所有授权用户的Telegram数字ID添加到allowFrom列表中。获取用户ID的方法是让每个人向@userinfobot发送消息。对于团队场景,第二种方式更可控。根据OpenClaw官方文档的说明,allowFrom中的条目必须是数字ID,使用@username格式需要通过openclaw doctor --fix命令来解析。

推荐阅读