PeterBon/dsh-hooks
Config-driven lifecycle hooks: event→command declarations in cordis.patch.yml, with Feishu card notifications and a QR scan-to-create bot setup.
Config-driven lifecycle hooks for DeepSeek Harness, like Codex CLI / OpenCode hooks but for dsh: declare event -> command hooks directly in your profile's cordis.patch.yml — no plugin code required. One package ships the hook engine plus a Web GUI settings page. Events include turn/end (with optional when: completed), approval/asked, and tool/call (with field→regex matching, e.g. tool: '^(rm|git|ssh)'); each hook has a run command and an optional timeoutMs. The README ships examples like a Feishu notifier on turn end.
Install
dsh plugin --profile web add dsh-hooksnpm package dsh-hooks 0.7.0 (registry-verified 2026-08-28): dsh plugin --profile web add dsh-hooks (npm), or dsh plugin --profile web add github:PeterBon/dsh-hooks. Restart dsh web — the settings panel gains a 'Hooks' section.
Compatibility
DeepSeek Harness (dsh) web profile. Config-driven — declare event → command hooks in the profile's cordis.patch.yml; no plugin code required.
Details
- Repo: PeterBon/dsh-hooks
- Category: Notifications & Integrations
- Stars: 4
- Version: npm dsh-hooks 0.7.0 (registry-verified 2026-08-28)
- Last push: 2026-08-28
- First seen: 2026-08-15
Recent updates
event → command hooks (turn/end, approval/asked, tool/call); regex matching; Web GUI settings page; Feishu example.
FAQ
- Do I need to write plugin code?
- No — hooks are declared in cordis.patch.yml as event → command entries; the package provides the engine and the settings UI.
- Which events are supported?
- turn/end (optionally only completed turns), approval/asked, and tool/call with field→regex matching (e.g. rm/git/ssh).
- What happens on a slow hook?
- Each hook has a timeoutMs (default 10000) so a hanging command can't stall the loop.
Alternatives
610la/dsh-notification-center · dingyi222666/dsh-session-notification · ltao0829/dsh-task-notify