dsh-TUI usually requires developers to stay in front of the terminal while executing long turns or handling manual approval. Once they leave, these critical states may be missed. The following introduces dsh-tui-webhook, which pushes long-turn completion and approval requests to Feishu, DingTalk, WeCom, or a generic webhook by configuring a local IM bot.
Plugin Positioning¶
This is a community plugin designed for dsh-TUI. Its core purpose is to push critical dsh-TUI events (such as long-turn completion and approval requests) to an IM bot, so you can receive reminders even when away from your computer. The configuration is stored in the local settings document and is not uploaded to any third party.
Core Features¶
- Event Pushing: Supports pushing dsh-TUI events to an IM bot.
- Multi-platform Support: Supports Feishu, DingTalk, WeCom, and any generic webhook.
- Key Notifications: Pushes long-turn completion notifications and tool approval request notifications.
- Session Statistics: Only counts turns in top-level sessions; sub-agents do not trigger duplicate pushes.
- Local Configuration: The URL and signature secret are stored in the local dsh settings document (webhook namespace).
Installation¶
This plugin has not yet been published to npm; it must be installed from source by creating a package. Run the following commands in your terminal:
git clone https://github.com/FUSU123fusu/dsh-tui-webhook.git
cd dsh-tui-webhook
npm pack
dsh plugin --profile <你的profile> add file:dsh-tui-webhook-0.1.0.tgz
Configuration and Usage¶
After installation, go to /settings → “Webhook Notifications” in dsh-TUI to configure it. Configuration items include the platform, webhook URL, signature secret, minimum turn duration (default 30 seconds), and the toggle. Changes take effect immediately after saving, without requiring a restart.
To check the configuration status:
/webhook
This command displays the current platform, the URL mask (only the first 30 characters are shown), and the toggle status.
To send a test message:
/webhook test
This command sends a test message and returns the HTTP status.
Platform Configuration Guide¶
Before configuring the URL and secret, you need to create a bot in the corresponding IM platform:
- Feishu: Group settings → Group bot → Custom, copy the webhook. After enabling “Signature verification”, enter the key into
secret. - DingTalk: Group settings → Bot → Custom, copy the webhook. Select “Signature” in security settings, then enter the key into
secret. - WeCom: Group settings → Group bot → Add, copy the webhook (signature is not supported).
- Generic: Any HTTP endpoint that accepts
POST {"text":"..."}.
Notes¶
- Privacy and Security: The configuration is stored locally and is not uploaded to third parties. On the
/webhookstatus page, the URL shows only the first 30 characters. - Statistics Scope: The plugin only counts turns in top-level sessions.
- License: The project uses the MIT license. Before installing, review the source code to ensure it fits your use case.
Project URL: https://github.com/FUSU123fusu/dsh-tui-webhook