欢迎光临
我们一直在努力

Windows 开机自启的 OpenClaw 重启失败?Telegram 报错?三步定位 + 五步复现(含完整命令)


在这里插入图片描述

Windows 开机自启的 OpenClaw 重启失败?Telegram 报错?三步定位 + 五步复现(含完整命令)

本文解决一个非常具体的问题:Windows 电脑重启后,OpenClaw(Gateway 模式)虽然“好像在跑”,但 Telegram 通道一直报错,或者你不知道它到底怎么启动的、怎么正确重启。
最终目标:把问题收敛成一条可复现的 SOP:定位开机自启入口 → 修正 Telegram Token 注入 → 按端口查 PID 并重启网关。


0)我遇到的现象(你可能和我一模一样)

我这边是 Windows 本机部署 OpenClaw,开机后会自动启动 Gateway,默认监听端口:

  • Gateway:18789
  • Browser control:18791

但重启电脑后经常出现:

  • 打开 OpenClaw “看起来失败 / Telegram 不可用”
  • 日志里 Telegram 一直刷:
    • deleteWebhook failed
    • setMyCommands failed
    • Network request failed
  • 我想重启,但发现:PID 每次都变,用旧 PID kill 会提示“找不到进程”

在这里插入图片描述


1)第一步:先搞清楚 OpenClaw 是怎么“开机自启”的(否则你永远不知道该重启谁)

1.1 用 PowerShell 直接查任务计划

在 PowerShell 执行:

schtasks /query /fo LIST /v | findstr /i openclaw

我查到的关键信息:

  • 任务名:\\OpenClaw Gateway
  • 执行脚本:C:\\Users\\Assert\\.openclaw\\gateway.cmd

结论: OpenClaw 是通过 Windows 任务计划程序开机自启的;真正启动入口不是你手动敲的某条命令,而是 gateway.cmd。

在这里插入图片描述


2)第二步:读懂 gateway.cmd(你要改什么、怎么改,答案都在这里)

gateway.cmd 本质是一个启动器,核心结构一般是:

  • 设置临时目录 TMPDIR
  • 重写 PATH(确保 node、python、mysql 等可执行文件可被找到)
  • 设置 Gateway 端口 OPENCLAW_GATEWAY_PORT=18789
  • 设置 Gateway 访问 token(重要,别泄露)
  • 最后一行用 Node 启动 OpenClaw Gateway,例如:

E:\\AIS\\App\\NOde\\node.exe E:\\AIS\\App\\NOde\\node_global\\node_modules\\openclaw\\dist\\index.js gateway –port 18789

补充说明:
这也解释了为什么你在命令行执行 where openclaw 可能找不到命令——因为我这套是 node 入口,不是 openclaw.exe 形式的 CLI。


3)第三步:定位 Telegram 报错的“第一原因”——Token 没对齐/没注入

日志里常见的 Telegram 报错长这样:

  • telegram deleteWebhook failed
  • telegram setMyCommands failed
  • Network request failed

我的经验是:先从最常见的 Token 问题排起(尤其是你重启后配置没加载、或者 token 被重置/写错)。

3.1 用 PowerShell 先验证 Telegram Bot API(最关键的 10 秒检查)

把 token 换成自己的:

$token = "xxxx:yyyy"
irm "https://api.telegram.org/bot$token/getMe"

  • 返回 ok=true → token 正常
  • 返回 401/404 或直接失败 → token 有问题(建议去 BotFather 重置)

安全提醒(强烈建议写进你的教程):token 一旦在截图/博客里泄露,等于机器人控制权公开。发现泄露:立刻去 BotFather 重置 token。


4)可实现目标(按官方思路拆成“动作 + 验收”)

我给自己定了一个 10 分钟内可完成、并且能稳定复现的目标:

✅ 目标:让 Telegram 私聊稳定可用(通过配对 + 能正常收发消息)

验收标准:

  • OpenClaw Gateway 启动后,日志不再持续刷 setMyCommands/deleteWebhook 的 Network failed
  • 你私聊 bot 发送任意消息,OpenClaw 能回复
  • 配对模式下,openclaw pairing approve telegram <CODE> 执行后,“access not configured”消失(或至少不阻止你使用)

  • 5)按步骤执行(含截图位置)

    Step 1:重置 Telegram bot token(如果你怀疑 token 失效/泄露)

    • 去 @BotFather → /token → 重置
    • 在本机 PowerShell 验证 token:

    $token="新token"
    irm "https://api.telegram.org/bot$token/getMe"

    在这里插入图片描述

    在这里插入图片描述


    Step 2:把 token 正确提供给 OpenClaw(两选一)

    官方通常提供两种方式:

    • 环境变量:TELEGRAM_BOT_TOKEN=…
    • 或配置:channels.telegram.botToken: "…"(配置优先)

    我这边最省事方案:直接改 gateway.cmd(因为它就是开机自启入口)
    在 gateway.cmd 里加一行(放在启动 node 之前):
    将gateway.cmd 重命名为txt格式,然后新增代码,再改回cmd格式

    set "TELEGRAM_BOT_TOKEN=你的新token"

    更长期更规范的做法:写到 ~/.openclaw/openclaw.json 的 channels.telegram.botToken,别写在 cmd 里。但你要先把配置文件位置确认好。

    在这里插入图片描述


    6)解决方案一(核心 SOP):先查再杀,再启动(不要写死 PID)

    关键点:PID 每次都会变化,所以你必须“按端口找 PID”,而不是写死 14576 这种旧值。


    第一步:先查 PID(按端口)

    netstat -ano | findstr :18789

    你会看到最后一列就是 PID(比如 19468)。

    在这里插入图片描述


    第二步:杀死旧进程(按 PID)

    taskkill /PID 19468 /F

    注意:这里的 19468 必须换成你刚刚查到的 PID。


    第三步:再次确认端口已经释放(验证你 kill 对了)

    netstat -ano | findstr :18789

    如果没有 LISTENING 输出,说明端口已释放。

    在这里插入图片描述


    第四步:重新启动任务计划(等于重启 OpenClaw)

    schtasks /run /tn "\\OpenClaw Gateway"


    第五步:验收(端口起来 + 日志正常)

    netstat -ano | findstr :18789

    18789 是 OpenClaw Gateway 监听端口,只要端口 LISTENING,就说明网关启动成功。

    成功演示:

    在这里插入图片描述

    最后,直接在 Telegram 跟它聊天:当它能回复、并且你在 OpenClaw 输出里能看到对应日志,说明整条链路有效。

    在这里插入图片描述


    7)常见坑总结

    • ❌ 在 PowerShell 里用 cmd 的 for /f 语法 → 会报 MissingOpenParenthesisAfterKeyword
    • ❌ taskkill 写 taskkill /PID <PID> /F → < > 在 PowerShell 里是重定向符号,会报错
      ✅ 正确是:把 <PID> 换成真实数字,或按端口先查出 PID
    • ❌ 写死 PID
      ✅ 永远按端口找 PID

    8)总结与思考

    Windows 开机自启的 OpenClaw,本质是任务计划执行 gateway.cmd。重启时不要写死 PID:用 netstat 按端口 18789 找 PID → taskkill 杀掉 → schtasks 重新运行任务计划 → 再用 netstat 验收端口 LISTENING。


    赞(0)
    未经允许不得转载:171主机测评 » Windows 开机自启的 OpenClaw 重启失败?Telegram 报错?三步定位 + 五步复现(含完整命令)
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址