The architecture of DSH (DeepSeek Harness) is based on “everything is a plugin”. To run agents on platforms such as QQ, a dedicated channel plugin is required. dsh-onebot provides a OneBot 11-compliant client that directly connects to existing QQ bot implementations (such as go-cqhttp and NapCat) and forwards messages to DSH agents for processing.
What It Is¶
This is a QQ channel plugin for DeepSeek Harness. It follows the OneBot 11 standard, connects as a client to a forward WebSocket service, receives events, and sends messages via the HTTP API. Each session corresponds to a DSH agent.
- Maintainer: JackZo400
- License: MIT
- Stars: 1
- Core: Zero dependencies, using only Node.js built-in modules (
fetch/WebSocket/node:crypto).
Core Features¶
- Message Sending and Receiving: Supports group chat and private chat messages.
- Message Segment Support: Supports
text/at/image/record/reply/facesegments. - Format Parsing: Supports both CQ code strings and segment arrays.
- Session Management: Supports session isolation (group ID or private chat ID as the key), with one message generating one reply and processed serially.
- Context and Details: Supports quote expansion (local cache + API fallback), echo filtering, group member roster, and exponential backoff reconnection after disconnection.
- API Support: Supports APIs such as
get_login_info,send_group_msg,send_private_msg, andget_msg.
Installation and Enabling¶
Run the following command in the DSH CLI to install it:
dsh plugin --profile web add github:JackZo400/dsh-onebot
After installation, you need to configure the connection parameters in cordis.patch.yml. Configuration items typically include the WebSocket address, accessToken, group whitelist, and private chat switch.
Typical Usage¶
The integration process is divided into three steps:
- Run an OneBot Implementation: Run a OneBot client locally (such as go-cqhttp or NapCat) and enable its forward WebSocket service.
- Configure the Connection: Set the WebSocket address, authentication Token, and message filtering rules in the configuration file (for example, process only messages that @-mention the bot).
- Verify the Connection: Restart the profile and check whether the log contains the message
[dsh-onebot] connected to the OneBot service.
Known Limitations¶
- Reverse Connections Not Supported: Does not support reverse WebSocket or HTTP event reporting.
- Media Content Limitations: Image/audio/video content is displayed only as a placeholder in the current version (such as “(Image)”), and the direct link feature must be enabled by setting
imageLinks: true. - Unsupported Features: Merged forwarded chat records, streaming/segmented replies.
- UI: No UI, all configuration is completed in configuration files.