升级到 OpenClaw v2026.3.22 后常见问题:飞书插件与 Control UI 排障记录

将 OpenClaw CLI / 网关升级到 v2026.3.22 (例如通过 yarn global add openclaw@2026.3.22)后,可能出现两类典型故障:

  1. 执行 openclaw status 等命令时,飞书插件 openclaw-lark 加载失败 ,报错 Cannot find module 'openclaw/plugin-sdk'
  2. 浏览器打开 Control UI (如 http://127.0.0.1:18789/chat)时提示:Control UI assets not found ,并建议执行 pnpm ui:build

下文说明原因与可行修复方式(以 macOS、Yarn 全局安装、扩展目录在 ~/.openclaw/extensions 为例)。


问题一:飞书插件无法加载 ------ openclaw/plugin-sdk 找不到

现象

text 复制代码
openclaw-lark failed to load ... Error: Cannot find module 'openclaw/plugin-sdk'
PluginLoadFailureError: plugin load failed: openclaw-lark

原因简述

@larksuite/openclaw-lark 入口会 import ... from 'openclaw/plugin-sdk'。插件若安装在 ~/.openclaw/extensions/openclaw-lark 这类独立目录 (不在 OpenClaw 安装包内部的 extensions/ 树里),宿主在加载 .js 插件时往往走 Node 原生 ESM 解析 。此时 openclaw/plugin-sdk 必须能通过 node_modules 里的 openclaw (及其 package.jsonexports)解析;若插件目录下未安装 openclaw,就会报错。

若插件放在 OpenClaw 自带安装树 内的 extensions/... 下,宿主有机会通过内部别名解析 SDK;独立 extensions 目录则通常必须 在插件侧具备可解析的 openclaw 依赖。

处理办法

在插件根目录(例如 ~/.openclaw/extensions/openclaw-lark):

  1. package.jsondependencies 中增加与当前 CLI 同版本openclaw,例如:
    "openclaw": "2026.3.22"
  2. 在该目录执行:
    npm install(或 pnpm install / yarn,与项目锁文件一致)。

可选临时方案 :在插件目录的 node_modules 下,将 openclaw 符号链接 到本机已存在的 OpenClaw 安装路径(例如全局 Yarn 的 node_modules/openclaw)。长期仍建议写入 package.json 依赖,避免重装 node_modules 后问题复发。

注意 :若通过会覆盖 package.json 的方式升级官方插件包,需确认依赖是否仍在;若官方后续在包内声明了 openclawpeerDependencies / dependencies,可优先以官方为准。


问题二:Control UI 无法访问 ------ 静态资源缺失

现象

访问 http://127.0.0.1:18789/chat(或 Dashboard 相关路径)时返回说明大致为:

text 复制代码
Control UI assets not found. Build them with `pnpm ui:build` ...

原因简述

Control UI 需要 dist/control-ui/index.html 及配套静态资源。
Yarn / npm 发布的 openclaw 在部分环境下并不包含 已构建好的 dist/control-ui/(与仓库里 prepackpnpm ui:build 的完整发布流程可能不一致,或 tarball 未带上该目录)。

LaunchAgent / systemd 等将网关指向 全局安装:

~/.config/yarn/global/node_modules/openclaw/dist/index.js

则运行时会在该包的 dist/control-ui/ 下找资源;目录不存在即报错。

若本机另有 完整安装 (例如 ~/.openclaw/lib/node_modules/openclaw)且其中已有 dist/control-ui/,可直接复用 该构建产物,无需在全局目录里跑 pnpm ui:build(全局包内往往也没有 ui/ 源码)。

处理办法

将「有完整 UI 构建」的安装目录下的 control-ui 提供给全局包使用,例如符号链接(路径按你机器实际调整):

bash 复制代码
ln -sfn "$HOME/.openclaw/lib/node_modules/openclaw/dist/control-ui" \
  "$HOME/.config/yarn/global/node_modules/openclaw/dist/control-ui"

然后重启网关,例如 macOS:

bash 复制代码
launchctl kickstart -k "gui/$(id -u)/ai.openclaw.gateway"

再访问 /chat,应返回 200 与正常 HTML。

注意yarn global upgrade openclaw 可能重装全局目录,符号链接会被清掉 ,若问题复现,需重新执行上述 ln -sfn

更彻底的架构建议 :让 LaunchAgent(或服务配置)中的 node 入口直接指向 带完整 dist/control-ui 的那份 OpenClaw(例如 ~/.openclaw/lib/node_modules/openclaw/dist/index.js),与 CLI 版本对齐,减少对「全局包缺文件 + lib 有文件」的双轨依赖。


小结与升级检查清单

现象 根因(典型) 处理要点
openclaw/plugin-sdk 找不到 扩展在独立目录,未安装 openclaw 在插件目录为 openclaw 增加依赖并安装
Control UI 资源缺失 全局 npm 包无 dist/control-ui 从完整安装处链入或复制 control-ui,并重启网关

升级 v2026.3.22 后建议依次确认:

  1. openclaw status 无插件加载错误。
  2. ls 检查全局包下是否存在 dist/control-ui/index.html;若无则按上文补齐。
  3. curl -sS -o /dev/null -w '%{http_code}\n' http://127.0.0.1:18789/chat 期望 200
相关推荐
AC赳赳老秦4 小时前
CSDN 技术社区数据采集:OpenClaw 抓取公开技术热帖,生成领域技术热点周报
java·大数据·前端·数据库·python·php·openclaw
console.log('npc')6 小时前
OpenClaw 使用教程:开源 AI Agent 编排框架完全指南
人工智能·microsoft·ai编程·openclaw
极客猴子6 小时前
AI会议记录工具横评:科会通、通义听悟、飞书妙记的自动整理效果有什么区别?
人工智能·飞书
天天进步20158 小时前
UI-TARS 源码解析 #16:点击、双击、右键、悬停源码解析:GUI Agent 如何控制鼠标?
ui
栈溢出的浪漫17 小时前
技术速递|基于 OpenClaw、MCP 和 Azure Container Apps 构建自主 Microsoft Teams 智能体
mcp·openclaw·自主智能体·技术速递·azurecontainerapps
qq_3494479519 小时前
Windows系统安装openclaw(源码安装)
openclaw
小当家.1051 天前
Taste Skill:88KB 提示词如何让 AI 写的 UI 不再像流水线罐头
前端·人工智能·ui·skill
码云数智-大飞1 天前
iOS 卡顿排查指南:主线程阻塞与 UI 渲染优化实战
ui·ios
for_ever_love__1 天前
iOS:天气预报仿写总结
macos·ui·ios·objective-c·cocoa