Introduction¶
DeepSeek Harness is responsible for “writing code,” while AstrBot handles “IM communication.” An HTTP ingress is needed between the two. This plugin serves as that ingress. It keeps AstrBot in the role of an IM gateway and delegates tasks to the local DeepSeek Harness for execution.
The plugin is named dsh-astrbot-ingress, is maintained by CCYellowStar2, and is released under the MIT license.
Installation and Activation¶
1. Installation on the DSH Side¶
Run the following command on the DSH Web side:
dsh plugin --profile web add github:CCYellowStar2/dsh-astrbot-ingress
After installation is complete, restart dsh web. The console should display a message indicating the listening port.
2. Installation on the AstrBot Side¶
The corresponding plugin astrbot_plugin_dsh needs to be installed on the AstrBot side. You can install it via the repository address on AstrBot’s WebUI Plugins page, or copy the astrbot_plugin_dsh directory into AstrBot’s data/plugins/ directory and reload it.
Core Features¶
- HTTP Ingress for AstrBot: Provides HTTP endpoints for AstrBot to call.
- Agent-Driven: Allows AstrBot to drive the local DeepSeek Harness agent.
- File Transfer: Inbound files are transferred via URL, while outbound files are retrieved via pull.
- Session Binding: Supports session binding and management.
- Progress Reporting: Provides three progress reporting modes: digest (summarized), full (complete), and minimal.
- Reasoning Mode: Supports disabling reasoning display, showing only the first line, or showing the full text.
- Protocol Support: Supports the OneBot protocol and official IM channels.
Typical Usage¶
The wake word defaults to /dsh (can be changed in AstrBot configuration). The following are common commands:
/dsh hello: Send a task/dsh status: View current status/dsh ws [n|path]: Switch or specify workspace/dsh ls: List files in the current session/dsh use <n|short-id>: Bind a session/dsh new: Create a new task/dsh end//dsh stop: End or stop a task/dsh steer <message>: Guide the conversation/dsh rename <title>: Rename a task/dsh model [n|provider/model] [effort]: Switch models/dsh perm [n|name]: Set permissions/dsh compact: Compact the context/dsh last [N]: Send the last N historical replies/dsh send <path>: Send a file
Notes¶
- Dual Plugin Dependencies: Both the DSH-side
dsh-astrbot-ingressand the AstrBot-sideastrbot_plugin_dshneed to be installed. - Token Mechanism: A Token must be provided in the configuration, unless AstrBot and DSH are running on the same machine (in this case, the plugin automatically reads the beacon file to obtain it).
- File Size Limit: Inbound files larger than 12MB are transferred via URL.
- Role Division: AstrBot acts as the IM gateway, while DSH executes the specific coding tasks.
- Deployment Flexibility: Supports deployment on the same machine, Docker deployment, and deployment across different workspaces. Configure it according to the actual environment.