Skip to content

[Bug]: 2026.4.5 npm update/install can leave CLI broken with missing bundled plugin runtime deps #61686

@harleymdsavage

Description

@harleymdsavage

Summary

Updating OpenClaw to 2026.4.5 via the normal npm/package-manager path left the CLI partially broken on a global install. Core commands failed immediately because bundled plugin runtime dependencies were missing from the installed dependency tree.

What happened

After updating from 2026.4.2 to 2026.4.5, commands such as:

  • openclaw doctor
  • openclaw gateway status

failed with module resolution errors before normal doctor repair could run cleanly.

Initial failure:

Error: Cannot find module '@buape/carbon'
Require stack:
- .../openclaw/dist/ui-7MjYF8PY.js

After manually installing that package, the next failure surfaced:

Error: Cannot find module '@larksuiteoapi/node-sdk'
Require stack:
- .../openclaw/dist/probe-Y2l52Hc0.js

This suggests 2026.4.5 can install in a state where multiple bundled extension/plugin runtime deps are absent.

Recovery path that worked

Manual installs were needed before doctor could fully recover the install:

npm install -g @buape/carbon
npm install -g @buape/carbon @larksuiteoapi/node-sdk grammy @grammyjs/runner @grammyjs/transformer-throttler @whiskeysockets/baileys @slack/web-api @slack/bolt discord-api-types @discordjs/voice

Then running doctor succeeded and installed the remaining missing bundled plugin runtime deps.

Doctor reported missing bundled plugin deps including packages such as:

  • @buape/carbon (discord)
  • @larksuiteoapi/node-sdk (feishu)
  • grammy, @grammyjs/runner, @grammyjs/transformer-throttler (telegram)
  • @whiskeysockets/baileys (whatsapp)
  • @slack/web-api, @slack/bolt (slack)
  • discord-api-types, @discordjs/voice (discord)
  • plus additional bundled plugin deps

After the manual installs + openclaw doctor, the install became healthy again.

Expected behavior

A normal openclaw update / package-manager update to 2026.4.5 should not leave the CLI unable to load its own bundled plugin dependencies.

Either:

  1. the package should include/declare the required bundled runtime deps so commands work immediately after update, or
  2. the update/doctor flow should be robust enough to recover without requiring manual global npm installs first.

Environment

  • Install type reported by OpenClaw: pnpm
  • Actual global prefix path in use: standard npm-style global prefix
  • OpenClaw before update: 2026.4.2
  • OpenClaw after update: 2026.4.5
  • Node: v22.22.1
  • OS: Linux

I intentionally omitted personal paths / IDs / tokens, but can provide more sanitized detail if needed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions