Feishu Workspace Bridge: One-to-One Mapping Between DSH Workspaces and Feishu Groups

Preface

DSH (DeepSeek Harness), as a workspace environment, often needs to continue task progress through chat software. Traditional integration approaches usually require configuring a public callback address and often need to process large amounts of historical messages. Feishu Workspace Bridge solves this problem. It maps DSH workspaces to Feishu groups one-to-one and achieves real-time bidirectional message synchronization between DSH sessions and Feishu groups.

Plugin Introduction

Feishu Workspace Bridge is a network tool plugin maintained by bandianliancha. Its core logic is: bind a Feishu enterprise self-built application bot, create a Feishu private group on demand when the first message appears in a workspace, and synchronize messages bidirectionally between the DSH session and that group. The plugin does not read historical messages and does not require a public callback address.

Core Features

  • Real-time bidirectional message synchronization
  • On-demand creation of Feishu private groups
  • Markdown support
  • Message queue delivery
  • No historical message reading
  • Continue processing failed messages after process restart
  • Secure credential storage (system keychain or file)

Installation and Enablement

Install the plugin using the official command:

dsh plugin --profile web add dsh-plugin-feishu-workspace

After installation, you need to restart the DSH Web service:

dsh web --no-open

Configuration

After the restart, fill in the following information in the “Feishu Bot” section of DSH settings:
- App ID
- App Secret
- Your Feishu Open ID (format is ou_...)

Click “Save and Verify”. The plugin checks the bot, event subscriptions, and all required permissions before saving. If verification fails, the existing configuration will not be overwritten.

Feishu Open Platform Configuration

To use this plugin, you need to complete the following configuration in the Feishu Open Platform:

  1. Enable the bot capability.
  2. In “Events and Callbacks”, select “Use long-lived connection to receive events”, and subscribe to im.message.receive_v1 (local deployment does not require a public callback address).
  3. Enable the following permissions:
    • im:chat:create: Create group chats
    • im:chat: Retrieve and update group information
    • im:message:send_as_bot: Send messages as the application
    • im:message.group_msg: Receive group chat messages
    • im:message.reactions:write_only: Add message reaction replies
    • application:application:self_manage: Manage the application’s own information

Data and Security

  • Credential storage: On macOS, the App Secret is stored in the system keychain; on Linux, the App Secret is stored in a file with permissions set to 0600 (the path is usually ~/.dsh/feishu-workspace-bridge.secrets.json).
  • Database: The default location is ~/.dsh/feishu-workspace-bridge.sqlite.
  • Message processing: Inbound and outbound messages are deduplicated by message ID; delivered records are retained for 30 days and then automatically cleaned, while undelivered records are not periodically cleared.

Working Mechanism

  • Lifecycle: One workspace can be bound to at most one group. The group is created by the bot, defaults to a private group, and group information can only be modified by the group owner or administrators. After a workspace is renamed, the group name is synchronized automatically; after a workspace is deleted, the group is automatically dissolved.
  • Message queue: While DSH is processing a task, new messages from Feishu are queued using queue mode and do not interrupt the current task.
  • Reliability: The status of each message is recorded; transient failures are retried with exponential backoff, and processing continues after a process restart. Long messages are sent in segments and will not be silently truncated.

Notes

  • Node.js 20 or higher is required.
  • DeepSeek Harness (DSH) is required.
  • The DSH version must be 0.1.7-alpha.1 or higher.
  • DSH loads server-side plugins only at startup; after modifying code, you need to restart dsh web.

Summary

Feishu Workspace Bridge provides an DSH and Feiss integration solution that does not require a public callback address or read historical messages. Through private groups and a message queue mechanism, it ensures real-time and stable synchronization.

GitHub

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye