DeepSeek Harness 插件

dsh-webhook

dsh webhook plugin: HTTP webhook -> fixed session delivery (async queue), for bank SMS auto-bookkeeping etc. Bearer token auth, per-hook workspace/session mapping.(英文原文)

跳到安装方式

来源信息

GitHub 仓库
fatatalia/dsh-webhook
最近更新
2026年8月21日
分类
远程与移动
GitHub stars
0
载体类型
plugin
目录证据
上游声明已找到 dsh.bundle
证据路径
package.json#dsh.bundle
核对版本
0.1.0-rc.8
上游核对日期
2026-08-20

该证据由上游目录提供。本站没有安装、运行或安全审核这个插件。

安装

默认先复制一段 Prompt,让 Agent 读 GitHub 仓库和源码;需要自己装时再切到命令。

复制这段 Prompt,发给 DSH、Codex 或其他 Agent,让它先读 GitHub 仓库和源码。

请先不要安装或执行任何命令。阅读这个插件的 GitHub 仓库、README 和关键源码,然后用清楚、直接的方式回答以下问题,帮助我判断它是否适合我的需求:

1. 这个插件是什么,解决什么问题;
2. 适合哪些用户和典型使用场景;
3. 安装后如何使用,并给出一个最小使用示例;
4. 有哪些已知限制,以及隐私、安全、兼容性或维护风险;
5. 给出“推荐 / 有条件推荐 / 不推荐”的明确建议和理由。

请区分仓库明确说明、根据源码推断和未知信息。证据不足时请明确说明,不要猜测或照抄 README。

GitHub:https://github.com/fatatalia/dsh-webhook
插件名:dsh-webhook
作者:fatatalia

检查来源文件

安装前先看这个插件目录里的 README 和其他文件。

文件资源管理器2 个文件
README.md来源说明 · 只读预览

dsh-webhook — Webhook 插件

提供 HTTP webhook 入口 POST /webhook/<hookId>,把外部请求转成消息投递到 dsh 的固定会话,由 agent 处理。随 dsh web 启停,零 dsh 框架改动。

功能

  • HTTP 入口POST /webhook/<hookId>,Bearer token 认证(常数时间比较,防时序攻击)
  • 异步队列:默认立即 202 返回,消息入队投递;同一 hook 串行处理(上一条未完成下一条排队),不同 hook 互不阻塞
  • 同步模式:hook 配置 sync: true 时,等待 agent 完成并随 HTTP 响应返回回复文本(200 {ok, reply})——适合小爱音箱等"发一句等一句"的交互场景
  • 固定会话:hookId 派生固定会话 id,上下文延续;支持 workspace / session / sessionMode(新/持久) / template 映射
  • 典型场景:手机把银行短信 POST 进来 → 固定会话 agent 用记账工具自动记账 → 完成后可调 iMessage 网关的全局 message 工具通知

目录

dsh-webhook/
├── index.js              # host 插件:webServer 路由 + Bearer 认证 + 配置 remote
├── client.js             # 浏览器 bundle:Settings → Webhook 配置页(hooks 表)
├── lib/webhook-core.mjs  # 队列 + 投递核心(固定会话 + preset mount + workspace 归属)
├── cordis.patch.yml      # bundle patch(插入 host 插件行)
└── package.json

挂载:web profile(~/.dsh/profiles/web/package.jsondependencies["dsh-webhook"] = "link:<project>/dsh-webhook",bundles 列表含 dsh-webhook

配置

$DSH_HOME/settings.yamlwebhook: 段(可在配置页编辑):

webhook:
  hooks:
    sms-forward:
      token: "<bearer-token>"                 # 必填;请求头 Authorization: Bearer <token>
      workspace: "/Users/<you>/dsh/default"   # 投递目标工作区
      session: ""                             # 可选;默认用 hookId 派生固定会话
      template: "请处理这条短信并记账:\n{{text}}"  # 消息模板,{{text}} 为请求体
    xiaoai:
      token: "<token>"
      workspace: "/Users/<you>/dsh/default"
      sessionMode: "persistent"               # "persistent" 固定会话 / "new" 一次性
      sync: true                              # 同步模式:等待回复并随 HTTP 返回
      template: "你是智能管家,简洁口语化回答:\n{{text}}"

调用方式:

curl -X POST https://<dsh-host>/webhook/sms-forward \
  -H "Authorization: Bearer <token>" \
  -d '您的账户入账 100.00 元'

开发要点

  • 新插件项目必须建依赖软链(否则 import @deepseek-ai/* 报 ERR_MODULE_NOT_FOUND):

``sh mkdir -p node_modules && ln -sfn /usr/local/lib/node_modules/@deepseek-ai/dsh/node_modules/@deepseek-ai node_modules/@deepseek-ai ``

  • 改代码后重启 web 生效(web profile 的 HMR 已禁用)