openclaw - 💡(How to fix) Fix Telegram plugin missing npm dependencies in v2026.4.4 [1 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
openclaw/openclaw#61363Fetched 2026-04-08 02:59:27
View on GitHub
Comments
0
Participants
1
Timeline
2
Reactions
0
Author
Participants
Timeline (top)
cross-referenced ×1subscribed ×1

After updating from v2026.3.27 to v2026.4.4 via git pull + npm ci, the Telegram channel plugin fails to start due to missing npm dependencies that are not listed in package.json but are required by the bundled build artifacts in dist/ and dist-runtime/.

Root Cause

After updating from v2026.3.27 to v2026.4.4 via git pull + npm ci, the Telegram channel plugin fails to start due to missing npm dependencies that are not listed in package.json but are required by the bundled build artifacts in dist/ and dist-runtime/.

Fix Action

Workaround

Manually install all missing deps:

npm install grammy @grammyjs/transformer-throttler @grammyjs/parse-mode @grammyjs/hydrate @grammyjs/files discord-api-types

Code Example

npm install grammy @grammyjs/transformer-throttler @grammyjs/parse-mode @grammyjs/hydrate @grammyjs/files discord-api-types

---

openclaw 2026.4.4 (0ef2932)
Node v25.8.2
npm 11.11.1
macOS Darwin 25.4.0 arm64
RAW_BUFFERClick to expand / collapse

Version: OpenClaw 2026.4.4 (0ef2932) OS: macOS (Darwin 25.4.0, arm64, M4 Mac mini) Node: v25.8.2

Summary

After updating from v2026.3.27 to v2026.4.4 via git pull + npm ci, the Telegram channel plugin fails to start due to missing npm dependencies that are not listed in package.json but are required by the bundled build artifacts in dist/ and dist-runtime/.

Steps to Reproduce

  1. Fresh git pull from v2026.3.27 to v2026.4.4
  2. npm ci (clean install from lock file)
  3. Start gateway
  4. Telegram plugin crashes in a retry loop

Missing Packages (discovered one by one)

The following packages are imported by dist/bot-Cxx_-JgZ.js and dist-runtime/extensions/telegram/index.js but not listed in package.json:

PackageRequired byIn package.json?
discord-api-typesdist-runtime/extensions/telegram/index.js❌ (only /v10 subpath used)
grammydist/send-D3eCvsDr.js
@grammyjs/runnerdist/bot-Cxx_-JgZ.js✅ (listed but npm ci didn't resolve it properly initially)
@grammyjs/transformer-throttlerdist/bot-Cxx_-JgZ.js
@grammyjs/parse-modeunknown (installed preemptively)
@grammyjs/hydrateunknown (installed preemptively)
@grammyjs/filesunknown (installed preemptively)

Additional Issues

Other bundled channels also fail to load (non-blocking if not configured):

  • Discord: Cannot find module '@buape/carbon'
  • Feishu: Cannot find module '@larksuiteoapi/node-sdk'
  • Slack: Cannot find module '@slack/web-api'
  • Google Chat: TypeError: Cannot read properties of undefined

Additional note: npm install removes ~479 packages each time

Running npm install <package> on this repo consistently removes ~479 packages as a side-effect. Only npm ci installs the full dependency tree correctly. This may indicate the package-lock.json and package.json are out of sync, or there's an .npmrc issue (node-linker warning appears on every npm command).

Current State

After manually installing the missing packages, the Telegram provider starts ([telegram] [default] starting provider) and does not crash. However, it does not process incoming messages — /start from a user triggers no pairing response or log entries. getMe and getWebhookInfo via the Telegram API confirm the bot is active and no webhook is set, but getUpdates returns empty (suggesting updates are consumed but silently dropped).

Workaround

Manually install all missing deps:

npm install grammy @grammyjs/transformer-throttler @grammyjs/parse-mode @grammyjs/hydrate @grammyjs/files discord-api-types

Expected Behavior

npm ci should install all required dependencies. The Telegram plugin should start and process messages without manually adding packages.

Environment

openclaw 2026.4.4 (0ef2932)
Node v25.8.2
npm 11.11.1
macOS Darwin 25.4.0 arm64

extent analysis

TL;DR

Manually installing missing dependencies using npm install may temporarily resolve the issue, but a more permanent solution involves ensuring package.json and package-lock.json are in sync.

Guidance

  1. Verify package.json and package-lock.json: Check if the missing packages are listed in package.json and if their versions match in package-lock.json. This can help identify any discrepancies.
  2. Run npm ci after updating package.json: If missing packages are added to package.json, run npm ci to ensure the correct dependencies are installed.
  3. Investigate .npmrc and node-linker warnings: The warnings about node-linker and the removal of ~479 packages during npm install suggest a potential issue with the npm configuration or the package-lock.json file.
  4. Check for updates to dependencies: Ensure that all dependencies, including grammy and @grammyjs/*, are up-to-date and compatible with the current version of Node and npm.

Example

No specific code snippet is provided as the issue seems to be related to npm and package management rather than code.

Notes

The issue might be related to the fact that npm ci is used, which installs dependencies from the package-lock.json file. If this file is not up-to-date or is missing dependencies, it could lead to the observed behavior. Additionally, the removal of a large number of packages during npm install suggests a potential issue with the npm configuration or the package-lock.json file.

Recommendation

Apply workaround: Manually install all missing dependencies using npm install as a temporary solution, and then investigate the discrepancies between package.json and package-lock.json to find a more permanent fix. This is because the root cause of the issue seems to be related to package management and configuration rather than a specific version of a dependency.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING