install.sh + Feishu setup: duplicate plugin id warning spam and gateway health check failure
Summary
Running the installer (curl -fsSL https://openclaw.ai/install.sh | bash) and then enabling Feishu produced two problem signals:
- repeated config warnings about duplicate plugin id for
feishu
- health check failure because gateway was not reachable (
1006 abnormal closure)
The logs also show:
- systemd user services unavailable in this runtime
- service install skipped during onboarding step
Environment
- Install path style in report: global npm under
/usr/lib/node_modules/openclaw
- Runtime user in report:
root
- Setup path: install script + Feishu plugin install
- Channel selected: Feishu/Lark (飞书)
Reproduction
- Run installer:
curl -fsSL https://openclaw.ai/install.sh | bash
- Install/enable Feishu plugin in onboarding flow.
- Observe repeated warnings:
plugins.entries.feishu: plugin feishu: duplicate plugin id detected ...
- Observe systemd message:
Systemd user services are unavailable. Skipping lingering checks and service install.
- Health check later fails with:
gateway closed (1006 abnormal closure (no close frame))
Findings
- The duplicate id warning indicates two Feishu plugin sources are discoverable with the same id (
feishu).
- One warning path points to bundled plugin location:
/usr/lib/node_modules/openclaw/extensions/feishu/index.ts
- Repeated warning lines suggest the config/validation path emits the same warning multiple times in this flow.
- Gateway health check failure is likely operational (gateway not running/reachable) rather than plugin crash.
- The runtime explicitly reports systemd user services unavailable, which explains skipped service install and later gateway reachability issues.
Mitigation / Workaround
- Keep only one Feishu plugin source active (avoid duplicate id collision):
- Use bundled plugin or installed plugin under
~/.openclaw/extensions/feishu, not both.
- Set explicit plugin allowlist:
plugins.allow: ["feishu"]
- Start gateway with a mode that works on this host:
- supported user systemd service, or
- foreground/tmux mode when
systemctl --user is unavailable.
- Verify after changes:
openclaw gateway status
openclaw channels status --probe
openclaw logs --follow
Risk / Impact
- UX noise: repeated warnings make onboarding look broken.
- Config ambiguity: uncertain which plugin copy is active.
- Availability risk: channel setup appears complete while gateway health is down.
- Related local Lighthouse note:
- Solved workaround doc:
Next actions
References