# dsh-notify English | [简体中文](README.md) [![Awesome DSH Plugin](https://awesome-dsh-plugin.com/badge.svg)](https://awesome-dsh-plugin.com) HTTP webhook plugin for DeepSeek Harness. When a root agent **finishes a turn** or **needs you** (question / approval), it POSTs: ```json { "content": "任务完成:…", "receiver": "", "auth": "" } ``` `content` is filled by the plugin. Configure url / method / headers / `receiver` / `auth` in **Settings → 通知**. The per-session **通知** switch lives in the session ⋯ menu and overrides the global default. This is not [aokamoaki/dsh-notify](https://github.com/aokamoaki/dsh-notify) (Windows toast). This repo sends your HTTP webhook. ## Install ```bash dsh plugin --profile web add link:/ABS/PATH/dsh-notify ``` After the GitHub repo has the `dsh-plugin` topic: ```bash dsh plugin --profile web add github:OWNER/dsh-notify ``` Restart `dsh web`. ## Usage 1. Open **Settings**, then **通知** (below Agent presets). Fill url / method / headers / receiver / auth. Optionally enable the global default. **测试** sends `通知测试:连通性检查` so you can check the webhook. 2. Each session's ⋯ menu has a **通知** switch: on notifies this session; off silences it. Unset sessions follow the global default. Config file: `$DSH_HOME/dsh-notify.json` (default `~/.dsh/dsh-notify.json`). ## Triggers | When | content | |---|---| | Root agent `running` → `idle` | `任务完成:…` | | `agent/error` | `任务出错:…` | | `ask_user_question` | `需要回答:…` | | `approval/asked` | `等待审批:…` | Subagents and same-session events within 5 seconds are skipped. Failed HTTP calls are logged only. Completion follows current DSH: no global `turn/end`; poll `agents.list()` phases. ## Develop ```bash npm test npm run check ``` For [awesome-dsh-plugin](https://github.com/awesome-dsh-plugin/awesome-dsh-plugin) use category `notify`. The repo must declare `dsh.bundle`, carry the `dsh-plugin` topic, and be ≥1 day old with ≥10 commits. Draft entry: `data/awesome-dsh-plugin.yml`. ## License [MIT](./LICENSE)