#12619: Add Synology Chat channel integration
docs
commands
stale
Cluster:
Slack Thread Management Fixes
This PR adds support for Synology Chat as a messaging channel in OpenClaw.
### Features
- Incoming webhook integration for receiving messages from Synology Chat
- Bot support for sending messages to Synology Chat channels
- Full bidirectional communication support
- Configuration documentation
### Quick Setup
1. Enable 2-factor authentication on your Synology NAS (recommended)
2. Install and start Synology Chat Server
3. Configure Integration (add webhook and bot)
4. Configure OpenClaw with the webhook URL and bot token
5. Restart OpenClaw
### Testing
Tested on Ubuntu 24.04 with:
- ✅ Synology Chat Desktop Client
- ✅ Synology Chat Web Interface
### Documentation
Complete setup guide: `/docs/channels/synology-chat.md`
<!-- greptile_comment -->
<h2>Greptile Overview</h2>
<h3>Greptile Summary</h3>
This PR introduces a new `synology-chat` channel extension, including config schema (`src/synology-chat/config-schema.ts`), plugin registration (`extensions/synology-chat/index.ts`, manifest), onboarding tweaks, a webhook server + handler in `extensions/synology-chat/src/channel.ts`, and documentation for setup.
The integration hooks into the existing channel plugin SDK via `buildChannelConfigSchema(...)` and exports `SynologyChatConfigSchema` through `src/plugin-sdk/index.ts` for reuse. Runtime state is stored via a simple setter/getter in `extensions/synology-chat/src/runtime.ts`.
Main merge blockers are in the webhook handler and runtime wiring: current auth handling can allow unauthenticated/unauthorized inbound requests, several debug logs leak sensitive data, outbound sending depends on an undeclared `undici` dependency, and the gateway start logic can conflict when multiple accounts (or other listeners) share a port.
<h3>Confidence Score: 2/5</h3>
- This PR is not safe to merge as-is due to webhook authentication/authorization bugs and a likely runtime dependency failure.
- Score is reduced because inbound webhook requests can bypass authorization (`CommandAuthorized: true`) and may not be authenticated even when `botToken` is configured, plus sensitive payload logging and an undeclared `undici` dependency can break outbound messaging at runtime. The rest of the changes are largely additive and straightforward once these are addressed.
- extensions/synology-chat/src/channel.ts, docs/channels/synology-chat.md, extensions/synology-chat/package.json
<!-- greptile_other_comments_section -->
<sub>(5/5) You can turn off certain types of comments like style [here](https://app.greptile.com/review/github)!</sub>
<!-- /greptile_comment -->
Most Similar PRs
#23464: feat(synology-chat): add group/channel support
by druide67 · 2026-02-22
82.9%
#23709: fix(synology-chat): resolve Chat API user_id for reply delivery
by druide67 · 2026-02-22
80.6%
#22260: feat(extensions/deltachat): add Delta.Chat channel extension
by alanz · 2026-02-20
78.3%
#10347: DingTalk: add channel support
by dimaginexus · 2026-02-06
77.6%
#9199: feat: Add Cisco Webex Teams channel plugin
by chrharri · 2026-02-05
77.4%
#9594: feat: add SimpleX messaging channel
by dangoldbj · 2026-02-05
75.8%
#9444: feat(channels): add DingTalk channel
by sm-yjr · 2026-02-05
74.4%
#17157: feat(messenger): add Facebook Messenger channel integration
by gmjuhasz · 2026-02-15
74.3%
#20348: Add support for Keybase as a channel
by xgess · 2026-02-18
73.9%
#9477: feat(qqbot): add QQ Bot channel extension
by sliverp · 2026-02-05
73.8%