升级到 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赳赳老秦1 天前
OpenClaw email技能:批量发送邮件、自动回复,高效处理工作邮件
运维·人工智能·python·django·自动化·deepseek·openclaw
竹之却1 天前
【Agent-阿程】OpenClaw智能体架构深度解析与实战应用
架构·大模型应用·ai框架·openclaw
萧逸才1 天前
【learn-claude-code-4j】S14FeiShu - 飞书群聊智能体
java·人工智能·ai·飞书
hitgavin1 天前
cursor配置飞书MCP(lark-mcp)
飞书·cursor·mcp
七夜zippoe1 天前
OpenClaw 子代理(Subagent)机制详解
大数据·人工智能·subagent·openclaw·子代理
yuzhucu1 天前
OpenClaw + Trae 集成配置指南
trae·openclaw
小手智联老徐1 天前
OpenClaw 2026.4.11 :记忆导入革命、视频生成升级与多平台体验优化
音视频·ai写作·openclaw
星辰即远方1 天前
UI学习2
学习·ui
for_ever_love__1 天前
Objective-C学习UI 的初步了解(2)
学习·ui·objective-c
岳小哥AI1 天前
WorkBuddy:从“我是谁”到“帮我干活”
ai·openclaw·workbuddy