DeepSeek Harness SMS Webhook 插件

在本地部署 DeepSeek Harness 智能体时,模型通常无法直接访问手机短信。要解决这个问题,需要一个本地 HTTP 服务来接收短信转发应用的数据,并将存储暴露给模型查询。huaxiren6/dsh-sms-webhook 正是这样一款插件。

是什么

这是 DeepSeek Harness 的短信转发 Webhook 插件,由用户 huaxiren6 维护。它接收手机端短信转发 App(如 SMS Forwarder)发送的推送,将短信内容落盘存储,并提供 sms_recent 和 sms_search 两个工具,供模型调用。

核心功能

  • 接收与存储:接收短信并落盘存储。
  • 模型工具:提供 sms_recent 工具查询最近短信,提供 sms_search 工具全文搜索。
  • 验证码提取:自动提取验证码(生成 otp 字段)。
  • 过滤机制:支持关键词白名单过滤。
  • 数据格式:JSONL 格式存储,支持自动裁剪(上限 5000 条)。

安装与启用

使用官方命令安装:

dsh plugin --profile web add dsh-sms-webhook

安装完成后,插件会监听本地端口,等待手机端发送的 POST 请求。

典型用法

手机端配置

使用任意支持「转发短信到 HTTP」的 App,例如 SMS Forwarder、Tasker 或 iOS 快捷指令。转发目标地址填:

POST http://<电脑IP>:8899/
Content-Type: application/json

发送的 JSON 数据支持常见别名:

{
  "from": "10086",
  "body": "您的验证码是 123456,5 分钟内有效。",
  "receivedAt": 1787180000000,
  "device": "Pixel 8"
}

字段 from 可写作 sender、number 或 phone,body 可写作 text、message 或 content。若未提供时间戳,服务器会使用当前时间。

HTTP 接口

方法/路径 用途
POST / 接收短信(200=已存储,202=被关键词过滤)
GET /?limit=20&q=验证码 查询最近短信(q 可选过滤)
GET /health 存活探针

配置说明

插件支持以下配置项(通常在配置文件中设置):

键 默认值 含义
host 0.0.0.0 监听地址
port 8899 监听端口
store $DSH_HOME/data/dsh-sms-webhook/messages.jsonl 存储文件路径
keywords [] 非空时只收含这些词的消息(如 ["验证码", "code"])

适用场景与注意

  • 使用场景:适合需要在本地模型中读取短信验证码或历史短信内容的开发者。
  • 安全注意:监听地址 0.0.0.0 意味着局域网内任何人都能发起 POST 请求。建议在手机 App 里限制来源,或仅在可信网络使用。
  • 存储限制:存储文件上限为 5000 条,超出后会自动裁剪旧数据。

该插件采用 MIT 许可证。

总结

该插件解决了本地智能体读取短信的痛点,通过简单的 Webhook 接口实现了短信的接收、存储和查询。对于需要处理验证码或短信信息的场景,这是一个直接可用的方案。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜