#New setup, version 2026.04.20

1 messages · Page 1 of 1 (latest)

quiet sky
#

Error: Cannot find module '@larksuiteoapi/node-sdk'
Require stack:

  • /home/brianna/.npm-global/lib/node_modules/openclaw/dist/extensions/feishu/client-yWGpoGkZ.js
cinder parrotBOT
vague atlasBOT
#

To help others find answers, you can mark your question as solved via Right click solution message -> Apps -> âś… Mark Solution

split plinthBOT
#

Can you paste the exact output of openclaw --version?

If it is 2026.4.20, this looks like a real packaging regression, not your config. I checked the published 2026.4.20 package, and the Feishu plugin expects @larksuiteoapi/node-sdk, but that dep is missing from the root install manifest, so npm never installs it.

Quick workaround for that exact case:

cd ~/.npm-global/lib/node_modules/openclaw
npm install --omit=dev --no-save @larksuiteoapi/node-sdk@^1.60.0
openclaw gateway restart

If you are not using Feishu/Lark at all, disabling channels.feishu.enabled is also a valid workaround.

Docs:

quiet sky
#
brianna@brianna-space:~$ openclaw --version
OpenClaw 2026.4.20 (115f05d)
quiet sky
# split plinth Can you paste the exact output of `openclaw --version`? If it is `2026.4.20`, t...
brianna@brianna-space:~/.npm-global/lib/node_modules/openclaw$ cd ~/.npm-global/lib/node_modules/openclaw
brianna@brianna-space:~/.npm-global/lib/node_modules/openclaw$ npm install --omit=dev --no-save @larksuiteoapi/node-sdk@^1.60.0
npm error code ERESOLVE
npm error ERESOLVE could not resolve
npm error
npm error While resolving: madge@8.0.0
npm error Found: typescript@6.0.3
npm error node_modules/typescript
npm error   dev typescript@"^6.0.3" from the root project
npm error   peerOptional typescript@"^5.0.0 || ^6.0.0" from tsdown@0.21.9
npm error   node_modules/tsdown
npm error     dev tsdown@"0.21.9" from the root project
npm error
npm error Could not resolve dependency:
npm error peerOptional typescript@"^5.4.4" from madge@8.0.0
npm error node_modules/madge
npm error   dev madge@"^8.0.0" from the root project
npm error
npm error Conflicting peer dependency: typescript@5.9.3
npm error node_modules/typescript
npm error   peerOptional typescript@"^5.4.4" from madge@8.0.0
npm error   node_modules/madge
npm error     dev madge@"^8.0.0" from the root project
npm error
npm error Fix the upstream dependency conflict, or retry
npm error this command with --force or --legacy-peer-deps
npm error to accept an incorrect (and potentially broken) dependency resolution.
npm error
npm error
npm error For a full report see:
npm error /home/brianna/.npm/_logs/2026-04-22T03_17_26_638Z-eresolve-report.txt
npm error A complete log of this run can be found in: /home/brianna/.npm/_logs/2026-04-22T03_17_26_638Z-debug-0.log
split plinthBOT
#

Yep, npm is getting distracted by the package’s dev peer deps. Annoying, but not the real problem.

Use this instead, it’s the safer targeted install:

cd /home/brianna/.npm-global/lib/node_modules/openclaw
npm install --omit=dev --no-save --package-lock=false --ignore-scripts --legacy-peer-deps @larksuiteoapi/node-sdk@^1.60.0
openclaw gateway restart

--legacy-peer-deps is the important bit here. --ignore-scripts also keeps it boring.

If that still fails, paste the new output. If it works, please mark the solution so it gets indexed on Answer Overflow.

quiet sky
#

brianna@brianna-space:~/.npm-global/lib/node_modules/openclaw$ npm install --omit=dev --no-save --package-lock=false --ignore-scripts --legacy-peer-deps @larksuiteoapi/node-sdk@^1.60.0

added 14 packages, and audited 468 packages in 13s

84 packages are looking for funding
run npm fund for details

found 0 vulnerabilities
brianna@brianna-space:~/.npm-global/lib/node_modules/openclaw$ openclaw gateway restart

🦞 OpenClaw 2026.4.20 (115f05d)
I run on caffeine, JSON5, and the audacity of "it worked on my machine."

Restarted systemd service: openclaw-gateway.service
Gateway restart failed after 13s: service stayed stopped and port 18789 stayed free.
Service runtime: status=stopped, state=failed, lastExit=78
Gateway port 18789 status: free.
Gateway restart failed after 13s: service stayed stopped and health checks never came up.
Tip: openclaw gateway status --deep
Tip: openclaw doctor
brianna@brianna-space:~/

split plinthBOT
#

Good, that means the missing module part is fixed 👍

This new failure is different. lastExit=78 is OpenClaw’s config/startup error exit code, so now the gateway is getting far enough to hit a real config problem.

Can you paste these two outputs next:

openclaw status --all
openclaw doctor

If you want the direct service view too:

openclaw gateway status --deep
#

I’m mostly looking for the log tail / config error line now. The missing @larksuiteoapi/node-sdk issue should be behind us.

quiet sky
#

What happened is that the onboard script itself closed before the gateway could be installed at all. I'm running it again. How can I skip the model selection flow?

split plinthBOT
#

Yes, but the clean way is to switch to non-interactive onboarding.

There is not really a separate interactive “skip model picker” flag. The supported bypass is:

openclaw onboard --non-interactive \
  --mode local \
  --auth-choice skip \
  --install-daemon \
  --accept-risk

If you just want it to write config / install bits without waiting on health checks too:

openclaw onboard --non-interactive \
#
  --mode local \
  --auth-choice skip \
  --install-daemon \
  --skip-health \
  --accept-risk

If you are starting truly from scratch, you may also need your normal gateway auth flags. Docs: https://docs.openclaw.ai/cli/onboard

So, short version: use --auth-choice skip in non-interactive mode.

quiet sky
#
â—‡  How do you want to provide the gateway token?
│  Generate/store plaintext token
│
â—‡  Gateway token (blank to generate)
│  
Error: Cannot find module 'nostr-tools'
Require stack:
- /home/brianna/.npm-global/lib/node_modules/openclaw/dist/extensions/nostr/setup-surface-d0cfZ0y8.js
split plinthBOT
#

Yep, same regression again, now it hit the Nostr setup surface.

I would stop doing interactive onboard on 2026.4.20, because this is turning into plugin-dep whack-a-mole.

Recommended path: bypass those setup surfaces entirely

openclaw onboard --non-interactive \
  --mode local \
  --auth-choice skip \
  --install-daemon \
  --skip-channels \
  --skip-search \
  --skip-skills \
  --skip-ui \
  --accept-risk
#

If you only want config + daemon install and do not want it waiting on health checks, add:

--skip-health

If you really want to keep pushing the interactive flow, the next manual patch is:

cd /home/brianna/.npm-global/lib/node_modules/openclaw
npm install --omit=dev --no-save --package-lock=false --ignore-scripts --legacy-peer-deps nostr-tools@^2.23.3

…but I honestly would not recommend that route now.

Docs: https://docs.openclaw.ai/cli/onboard

#

If you want, I can help you build the exact one-line onboard command for your case, minimal and boring.

quiet sky
#

What do you need to ask for in order to build the one-line onboarder?

split plinthBOT
#

Just send me these, one line each is fine:

mode: local or remote
daemon: install or skip
auth/model: skip for now, or provider you want
gateway auth: token or password
gateway token: auto-generate okay? yes/no
channels: skip for now, or list the ones you want
health check: wait for healthy, or skip-health
workspace: default, or custom path

For the fastest boring recovery path, you can also just reply:

#
mode: local
daemon: install
auth/model: skip
gateway auth: token
gateway token: auto-generate
channels: skip
health check: skip-health
workspace: default

And I’ll turn that into the exact one-liner.

quiet sky
#

mode: local
daemon: install
model: Kimi K2.6
gateway auth: token, auto-generated, override any existing tokens
channels: telegram
health check: wait for healthy
workspace: default
skills: gog, github, github-issues, openal-whisper

split plinthBOT
#

I can get you very close, but I need to correct two things first:

  1. I can’t verify Kimi K2.6 in the current docs. The Moonshot docs currently show moonshot/kimi-k2.5, so I used that.
  2. Telegram + specific skills are not first-class non-interactive onboard selections, so I chain Telegram setup after onboard, and I’m leaving skills out until we confirm exact skill slugs. Also openal-whisper looks like a typo, probably openai-whisper or openai-whisper-api.

Assuming MOONSHOT_API_KEY and TELEGRAM_BOT_TOKEN are already exported in your shell, this is the one-liner I’d use:

openclaw onboard --non-interactive --mode local --auth-choice moonshot-api-key --moonshot-api-key "$MOONSHOT_API_KEY" --gateway-auth token --gateway-token "$(openssl rand -hex 24)" --gateway-bind loopback --gateway-port 18789 --install-daemon --daemon-runtime node --skip-channels --skip-search --skip-skills --skip-ui --accept-risk && openclaw config set agents.defaults.model.primary "moonshot/kimi-k2.5" && openclaw channels add --channel telegram --token "$TELEGRAM_BOT_TOKEN" && openclaw gateway restart && openclaw channels status --probe

If you want, send me the exact ClawHub slugs for the skills, or tell me whether openal-whisper meant openai-whisper or openai-whisper-api, and I’ll append the skills part too.

quiet sky
#

This happens when I try to add Telegram:

:lobster: OpenClaw 2026.4.20 (115f05d)
   If it's repetitive, I'll automate it; if it's hard, I'll bring jokes and a rollback plan.

Error: Cannot find module 'grammy'
Require stack:
- /home/brianna/.npm-global/lib/node_modules/openclaw/dist/extensions/telegram/allowed-updates-BD2bJyzD.js
split plinthBOT
#

Yep, same 2026.4.20 packaging bug again, this time for Telegram.

Patch the Telegram runtime deps like this:

cd /home/brianna/.npm-global/lib/node_modules/openclaw
npm install --omit=dev --no-save --package-lock=false --ignore-scripts --legacy-peer-deps grammy@^1.42.0 @grammyjs/runner@^2.0.3 @grammyjs/transformer-throttler@^1.2.1

Then retry your Telegram add command.

At this point the pattern is pretty clear, 2026.4.20 is missing multiple bundled plugin deps, not just Feishu. I’d also file the bug with the errors you’ve hit so far: https://github.com/openclaw/openclaw/issues

If you want, I can also give you one bulk repair command for the common missing bundled deps you’re likely to hit next, so you don’t have to keep doing this one package at a time.

quiet sky
#

Sure, go ahead.

split plinthBOT
#

Here’s the pragmatic bulk patch for the exact missing bundled deps you’ve already hit, plus Telegram:

cd /home/brianna/.npm-global/lib/node_modules/openclaw && npm install --omit=dev --no-save --package-lock=false --ignore-scripts --legacy-peer-deps @larksuiteoapi/node-sdk@^1.60.0 nostr-tools@^2.23.3 grammy@^1.42.0 @grammyjs/runner@^2.0.3 @grammyjs/transformer-throttler@^1.2.1

Then retry the Telegram add.

I’m intentionally not dumping the full “install every missing bundled dep in 2026.4.20” command yet, because that gets ugly fast. This should cover the failures you’ve actually hit so far.

If this gets you unstuck, please mark the solution so Answer Overflow can index it. If another missing module pops up after this, paste it and I’ll extend the patch.

quiet sky
#

Telegram is configured. Let's move on to installing skills.

split plinthBOT
#

Nice, glad Telegram is up. 🎉

For skills, I’d do this:

openclaw skills install gog && openclaw skills install github && openclaw skills install openai-whisper && openclaw skills check

A couple notes:

  • I used openai-whisper because openal-whisper looked like a typo.
  • I did not include github-issues, because I can verify a github skill, but I couldn’t verify a separate exact github-issues slug. The github skill already covers issues via gh issue.
  • If you want the API-backed Whisper variant instead, swap:
    • openai-whisper → openai-whisper-api

If you want to search for a separate GitHub-issues skill first:

#
openclaw skills search github

Docs: https://docs.openclaw.ai/cli/skills

If you want, I can also give you the “safe next checks” after install, like skills list --eligible and a quick gh/Whisper sanity check.