Feishu QuickStart install warns: plugins.allow is empty and non-bundled plugins may auto-load
Summary
During QuickStart onboarding with Feishu/Lark, plugin install succeeds but startup prints a security warning:
[plugins] plugins.allow is empty; discovered non-bundled plugins may auto-load: feishu (...) Set plugins.allow to explicit trusted ids.
This is not a plugin crash. It is a trust-boundary warning that can confuse first-time users.
Environment
- OpenClaw flow:
openclaw onboard (QuickStart)
- Selected channel: Feishu/Lark (飞书)
- Plugin:
@openclaw/feishu installed to ~/.openclaw/extensions/feishu
- Runtime user in report:
root
Reproduction
- Run onboarding and select Feishu/Lark.
- Choose plugin install from npm (
@openclaw/feishu).
- Let installer download/extract/install dependencies.
- Observe startup logs.
Expected vs actual
- Expected:
- Plugin installs cleanly with clear “ready” status.
- Actual:
- Install succeeds, but startup warns that
plugins.allow is empty and non-bundled plugins can auto-load.
Findings
- This appears to be an intentional hardening warning, not a runtime failure.
- Warning is triggered when plugin discovery can find non-bundled plugins and no explicit allowlist is set.
- Feishu can still work, but security posture is less strict than explicit plugin pinning.
Mitigation / Workaround
Pin trusted plugin ids explicitly.
Option A (recommended): set allowlist in config:
{
"plugins": {
"allow": ["feishu"],
"entries": {
"feishu": { "enabled": true }
}
}
}
Option B (CLI helper, if preferred):
openclaw config set plugins.allow '["feishu"]'
Then restart gateway.
Risk / Impact
- Security risk: wider plugin auto-load surface when
plugins.allow is unset.
- UX risk: users may interpret warning as install failure.
- Ops risk: inconsistent plugin set across hosts if discovery differs.
- No upstream issue linked yet for this specific onboarding warning report.
Next actions
References