Introduction¶
Herdr is a terminal workspace manager. By default, it only recognizes Agents detected by the built-in detectors (such as opencode, claude, codex, etc.). dsh/cc-tui/ is not in the default list, so DSH panes in Herdr appear as ordinary terminal processes, with no status and no support for pane jumping or --wait.
The dsh-herdr-site plugin uses Herdr’s official custom integration protocol to report dsh agent status (working/idle/blocked) to Herdr, enabling it to manage DSH panes just like other Agents.
What Is This?¶
dsh-herdr-site is a DSH plugin maintained by WuJiaoJue. It synchronizes agent status from dsh/cc-tui/ to Herdr so that Herdr can recognize DSH panes and provide pane jumping and --wait support.
Core Features¶
- Status reporting: Reports agent status (working/idle/blocked) through Herdr’s
pane report-agent/pane release-agentprotocol. - Pane jumping and waiting: Enables Herdr’s pane jumping feature and
--waitsupport. - Multi-profile support: Compatible with both
cc-tuianddsh-tuiprofiles. - Protocol integration: Uses Herdr’s official custom integration protocol.
- Session event handling: Handles the session event stream (
ask_user_questiontool calls and results). - Blocked message: Supports an optional
blockMessageto display the specific reason the Agent is waiting.
Installation and Activation¶
Installing this plugin requires a working DSH installation with either the dsh-cc-tui or dsh-base profile.
Install from npm (recommended, prebuilt, no approval required):
dsh plugin --profile cc-tui add dsh-herdr-site
Install from GitHub:
dsh plugin --profile cc-tui add github:WuJiaoJue/dsh-herdr-site
Verify installation:
dsh --profile cc-tui --dump-config | grep -A2 herdr-site
Typical Usage¶
After installation, DSH panes in Herdr will display the correct status. To customize the message shown when blocked, set blockMessage in the configuration file.
Configuration example (in cordis.patch.yml):
# 在 profile 的 cordis.patch.yml 中,或作为 --patch 覆盖
- id: herdr-site
config:
blockMessage: '模型等待你的回答'
Use Cases and Notes¶
- Process recognition: Herdr’s automatic process detection mechanism still cannot directly recognize dsh processes as Agents (this requires updates to Herdr’s built-in detectors). This plugin resolves the issue via the custom integration protocol, providing correct status, pane jumping, and waiting functionality.
- dsh-tui limitation: The
dsh-tuiprofile does not include theask_user_questiontool, so theblockedstate is never triggered under this profile (working/idlestates are unaffected). - Fixed label: The Agent label reported to Herdr is fixed as
cc-tui. - Session ID: The optional
--agent-session-idreference feature is not connected yet, so Herdr’s pane/agent API cannot directly expose the associated dsh session id. - Prerequisites: The plugin depends on packages provided by the host profile (such as
@deepseek-ai/cordis,dsh-session,dsh-agent); ensure the host environment is installed correctly.
Brief Conclusion¶
By reporting status to Herdr, this plugin elevates the DSH experience from an ordinary terminal into a manageable Agent pane. For more details, please refer to the catalog or GitHub.