升级到 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赳赳老秦3 小时前
投标合规提效:用 OpenClaw 实现标书 / 合同自动审核、关键词校验、格式优化,降低废标风险
开发语言·前端·python·eclipse·emacs·deepseek·openclaw
前端不太难4 小时前
从失败到 87.5%:OpenClaw 的任务进化
状态模式·openclaw
jinanwuhuaguo5 小时前
(第三十三篇)五月的文明奠基:OpenClaw 2026.5.2版本的文明级解读
android·java·开发语言·人工智能·github·拓扑学·openclaw
ZC跨境爬虫12 小时前
跟着 MDN 学 HTML day_12:(HTML网页图片嵌入)
前端·javascript·css·ui·html
AI周红伟13 小时前
周红伟:DeepSeek官方教您如何部署Hermes Agent 和接入 DeepSeek-V4-Pro
人工智能·深度学习·学习·机器学习·copilot·openclaw
AI周红伟14 小时前
数字人,视频,图片用不过时
大数据·人工智能·搜索引擎·copilot·openclaw
七夜zippoe15 小时前
OpenClaw Subagent 深度实践
人工智能·ai·智能体·subagent·openclaw
alwaysrun16 小时前
Python之文档自动上传至飞书云盘
python·飞书·uploader·云盘
Joseph Cooper16 小时前
AI Agent 工具选型:OpenClaw、Hermes、Claude Code、Codex、Cursor、Copilot 怎么选
ai·copilot·cursor·codex·claude code·openclaw·hermes
ZC跨境爬虫16 小时前
跟着 MDN 学 HTML day_11:(语义化容器全站重构+独立CSS拆分+字体合规引入)
前端·css·ui·重构·html·edge浏览器