Prerequisites
- A DingTalk account with enterprise admin access
- A LemonClaw instance:
- Hosted: create a Claw instance
- Self-hosted: install LemonClaw
Setup Guide
Create a DingTalk App
- Go to DingTalk Open Platform
- Click Application Development → Enterprise Internal Development
- Click Create Application
- Enter an app name and description
- Click Confirm
Enable Robot Capability
- In your app, go to App Features → Robot
- Enable the robot configuration
- Select Stream Mode (recommended — no public URL needed)
- Click Publish
Publish the App
- Go to Version Management
- Create a new version (at minimum a test version)
- Set the visible range (which users/departments can see the bot)
- Submit and publish
Open the LemonClaw WebUI
- If you’re using hosted Claw, go to your Claw Dashboard and click Open WebUI
- If you’re self-hosting LemonClaw, open your own WebUI (for example
http://your-ip:18789) and sign in with your token - In the WebUI, navigate to Settings → Channels
- Expand the DingTalk section
- Paste your AppKey and AppSecret
- Click Save
Group Behavior
Current LemonClaw DingTalk support is not a full group workbench integration yet.
- Group messages only enter the AI flow when they @mention the bot
- Replies prefer the original
sessionWebhookconversation when available - Full group policy / allowlist / thread semantics are not available yet
Troubleshooting
Current LemonClaw DingTalk support is not a full group workbench integration yet. Group messages only enter the AI flow when they @mention the bot, and replies prefer the original session webhook.
Bot doesn't respond
Bot doesn't respond
- Verify AppKey and AppSecret are correct
- Check that the app is published (at least test version)
- Make sure Stream mode is selected in the robot configuration
- Verify the bot is visible to your user account
Connection drops frequently
Connection drops frequently
- Stream mode maintains a persistent WebSocket connection
- Brief disconnections are normal — the bot will auto-reconnect
- If persistent, try restarting the instance from the dashboard