Preface¶
When developing DeepSeek Harness plugins or agents, a common requirement is not to build another chat interface, but to enable existing Harness sessions to initiate and continue directly from Feishu: creating bots via QR code, supporting multiple bots simultaneously, conducting multi-turn conversations within Feishu, while minimizing the maintenance of independent bridge services. The xmanrui/dsh-feishu plugin was developed to achieve this goal.
What is this¶
xmanrui/dsh-feishu is a DeepSeek Harness plugin, owned by xmanrui and licensed under MIT. It integrates one or more Feishu bots directly into DeepSeek Harness, allowing bots to be created individually by scanning QR codes within the Harness “Settings → Plugins → Feishu” section.
The plugin runs within the dsh web Host process, eliminating the need to maintain an independent bridge service. It is currently developed according to the plugin and Connection RPC interface of DeepSeek Harness 0.1.0-rc.6.
The README initially states “This project is no longer maintained” and recommends the alternative plugin dsh-im.
Core Features¶
- Add multiple bots by repeatedly scanning QR codes within Harness “Settings → Plugins → Feishu”, without manually copying App ID or App Secret.
- Each bot has independent credentials, Feishu long connection, authorized users, session mapping, and message deduplication state.
- A single bot disconnecting, reconnecting, or being removed does not interrupt other bots.
- The user who scans the QR code automatically becomes the first authorized user and can privately chat with the bot immediately after creation.
- Upon receiving a message, a “processing” reaction is added first, and the status is updated upon success or failure.
- Utilizes Feishu CardKit native streaming card output, safely falling back to plain text on failure.
- Each Feishu conversation maps to a persistent Harness session, supporting multi-turn context.
- By default, uses the Harness
standardagent preset, including tool capabilities like web search. - The App Secret is only stored in the DSH Host’s credential storage, not in the browser, QR code, or plugin configuration files.
Installation and Enabling¶
First, execute the installation command:
npx -y github:xmanrui/dsh-feishu install
After installation, restart dsh web. Open Harness “Settings → Plugins → Feishu”, click “Add Bot”, and then scan the QR code with Feishu to confirm.
To add more bots, click “Add Bot” again; scanning will only add new bots and will not overwrite existing ones. Once connected, find the newly created bot in Feishu and send a message to start interacting.
Each bot supports the following commands:
/new/status/help
Local Development¶
To verify from source, you can clone the repository first:
git clone https://github.com/xmanrui/dsh-feishu.git
After entering the repository directory, execute the following commands in sequence:
npm install
npm test
npm run build
node bin/dsh-feishu.mjs install --source .
This installs dependencies, runs tests, builds the plugin, and then installs it using the local source. The repository still retains the old independent bridge src/index.mjs and .env.example; the new installation prioritizes the Harness plugin mode.
Security and Default Behaviors¶
- RPC only allows access from the local Harness page.
- The browser cannot submit or read the App Secret.
- By default, only messages from Feishu users who created the bot via QR code are accepted.
- Bots use the
standardtoolset but do not automatically approve high-risk operations in Harness. - Removing a bot only stops its own long connection and clears its own plugin credentials, without affecting other bots.
- Scanning the same QR code for the same Feishu app will reuse the original bot record, preventing duplicate integrations.
Applicable Scenarios and Notes¶
This is suitable for developers who want to integrate Harness sessions into Feishu private chats, manage multiple bots via QR codes, and avoid maintaining an independent bridge service.
Before installation, note that the plugin runs with the permissions of the current dsh process; review the source code and MIT license before installing. The App Secret is only stored in the DSH Host’s credential storage, non-sensitive configuration is saved in $DSH_HOME/integrations/dsh-feishu/, and each bot’s session state is isolated from others.
Environment requirements: package.json declares Node >=20 and depends on @larksuiteoapi/node-sdk, dotenv, and qrcode. After updating Harness, it is recommended to run tests first and verify the settings page, QR code scanning, and the end-to-end message sending/receiving process.
Links¶
- GitHub: https://github.com/xmanrui/dsh-feishu
- Plugin Directory Page: https://www.skillhub.cn/plugins/xmanrui/dsh-feishu