dsh-sms-webhook:DeepSeek Harness 短信转发与存储插件

前言

DeepSeek Harness 的核心设计理念是“一切皆插件”,允许开发者通过插件扩展模型的能力边界。dsh-sms-webhook 是一个联网工具类插件,它解决了一个常见场景:本地运行的智能体或模型无法直接访问手机的短信数据。该插件在电脑上起一个本地 HTTP 服务,接收手机端短信转发 App 推送的消息,将其落盘存储,并暴露两个工具供模型查询。

插件简介

这个插件由用户 huaxiren6 维护,开源协议为 MIT。它本身不包含短信转发逻辑,而是作为服务器端点,用于接收和存储短信数据。通过它,DSH 环境内的模型可以获取手机短信内容,实现验证码自动识别、短信归档或特定关键词查询等操作。

核心功能

插件主要提供以下能力:

  1. sms_recent:获取最近收到的短信列表。支持通过 URL 参数 q 进行关键词过滤。
  2. sms_search:对已存储的短信进行全文搜索。
  3. OTP 自动提取:插件会自动扫描短信内容,提取第一个 4 到 8 位的连续数字作为 otp 字段。这对于处理验证码场景非常实用,模型可直接调用该字段。
  4. 持久化存储:数据以 JSONL(每行一个 JSON 对象)格式写入本地文件。重启服务后数据不丢失,但为了防止文件过大,存储上限为 5000 条,达到上限后自动裁剪旧数据。
  5. 关键词白名单:支持配置 keywords 配置项。如果配置了非空列表,只有包含这些关键词的短信才会被接收和存储。

安装

安装过程需要 DeepSeek Harness 环境已正确配置 Node.js 依赖。使用官方命令添加插件:

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

配置说明

插件在启动时读取配置文件,主要参数如下:

配置项 默认值 说明
host 0.0.0.0 监听地址。默认监听所有网络接口,意味着局域网内任何设备均可访问。
port 8899 HTTP 服务监听端口。
store $DSH_HOME/data/dsh-sms-webhook/messages.jsonl 短信数据落盘文件路径。
keywords [] 关键词白名单。非空时,只接收包含指定词的短信。

注意:由于默认监听地址为 0.0.0.0,任何能访问该 IP 和端口的设备都可以向其发送 POST 请求。建议仅在可信网络内使用,或在手机端的转发 App 中限制来源 IP。

使用方法

1. 手机端设置

使用任何支持 HTTP 转发的 App(如 SMS Forwarder、Tasker、iOS 快捷指令)配置转发目标:

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

发送的 JSON 数据需包含以下字段(支持常见别名):

{
  "from": "10086",
  "body": "您的验证码是 123456,5 分钟内有效。",
  "receivedAt": 1787180000000,
  "device": "Pixel 8"
}
  • from: 发送方号码(也可用 sender, number, phone)。
  • body: 短信内容(也可用 text, message, content)。
  • receivedAt: 接收时间戳(可选,省略则使用服务器当前时间)。

2. 模型查询接口

安装并运行后,插件会暴露 HTTP 接口和 DSH 工具:

  • 接收短信: POST http://<电脑IP>:8899/
    • 返回 200: 短信已成功存储。
    • 返回 202: 短信内容因关键词过滤未存储。
  • 查询最近短信: GET http://<电脑IP>:8899/?limit=20&q=验证码
    • limit: 返回条数。
    • q: 搜索关键词(可选)。
  • 存活探针: GET http://<电脑IP>:8899/health

适用场景

该插件适合需要将手机短信数据引入本地 LLM 流程的场景。典型应用包括:

  • 自动提取并读取收到的验证码。
  • 对特定来源(如银行、快递)的短信进行归档和检索。
  • 通过关键词白名单过滤无关广告短信。

结语

dsh-sms-webhook 通过简单的 HTTP 接口和文件存储,打通了手机短信与本地 DeepSeek Harness 之间的数据链路。其自动提取 OTP 的特性降低了验证码处理的门槛。更多技术细节和源码,可查看其 GitHub 仓库。

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

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

小夜