DeepSeek Harness 插件

PAKIKNOWLEDGE/dsh-notify-skill

Star 数 ★ 0 分类 技能包 收录于 2026-08-15 npm dsh-notify-skill

你不在电脑前时由 agent 邮件提醒你:goal 完成、阻塞、向你提问决策前、长任务节点时触发,自带零依赖 Node SMTP 发送器。

安装

# npm 包(预构建)

dsh plugin --profile web add dsh-notify-skill

# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)

dsh plugin --profile web add github:PAKIKNOWLEDGE/dsh-notify-skill

装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本。请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。

README

English | 中文

你不在电脑前时,agent 用邮件提醒你回来。

你在 DSH(或其他 AI 编码 agent)里派一个长任务 goal,然后离开电脑。当 agent 完成、卡住、或需要你决策时,它发一封邮件到你手机邮箱——你看到就回来。单向通知,不做远程指挥。

设计理念:自带发送器,教会兜底实现

本 skill 打包一个零依赖实现——sender.mjs(约 70 行,只用 Node 内置 tls/net),让 agent 在每个正常 DSH 会话里都能确定地发信(DSH 本身就跑在 Node 上)。SKILL.md 仍然承载完整契约:

  • 何时通知(goal 完成 / 阻塞 / 提问决策前 / 长任务节点),
  • 写什么(具体、用你的语言、简短),
  • 配置契约config.json:发件邮箱、SMTP 授权码、收件邮箱;QQ/163 邮箱自动推断服务器),
  • 配置缺失时如何引导用户获取 SMTP 授权码,
  • 故障处理与安全规则。

万一 Node 真的不可用(极少见),skill 指令会告诉 agent 自己实现那 ~15 行 SMTP 调用——环境里有什么用什么:Python smtplib、curl、mail…… 这样 skill 依然跨平台(Windows/Linux/macOS)且不过时。

触发时机

时机 建议标记
goal 完成 done
goal 阻塞/卡住 block
即将向你提问决策时 question
长任务关键节点 info

agent 通过自带的发送器发信:

node sender.mjs "标题" "正文"          # 读取旁边的 config.json

经验备注(Windows):.NET SmtpClient 在 465 隐式 TLS 上有已知挂起问题——自带发送器改用 node:tls,无此问题。

安装(DSH)

插件安装(推荐) —— 本 skill 以 DSH 插件形式发布,自动注册到 ctx.skills

dsh plugin --profile web add dsh-notify-skill

或用 GitHub 源:dsh plugin --profile web add github:PAKIKNOWLEDGE/dsh-notify-skill。装完重启一次 dsh web,会话 skill 目录里就会出现它。

手动安装(不装插件) —— DSH 也会从 <dshHome>/skills/<name>/SKILL.md 发现 skill(默认 ~/.dsh/skills),文件监视器热加载:

git clone https://github.com/PAKIKNOWLEDGE/dsh-notify-skill.git "$HOME/.dsh/skills/notify"

也可以手动把文件夹复制到 ~/.dsh/skills/notify/。新会话立即生效。

配置(一次性,约 5 分钟)

直接让 agent 用这个 skill,它也会引导你完成。

  1. 获取 SMTP 授权码(不是登录密码):
    • QQ 邮箱:网页版 → 设置 → 账户 → 开启「POP3/SMTP 服务」→ 生成 16 位授权码
    • 163 邮箱:网页版 → 设置 → POP3/SMTP/IMAP/SMTP → 开启 → 新增授权码
  2. 复制 config.example.jsonconfig.json 并填写:
    {
      "email": {
        "smtpHost": "",
        "smtpPort": 465,
        "useSsl": true,
        "from": "your-address@qq.com",
        "authCode": "16位授权码",
        "to": "recipient@example.com"
      }
    }
    
    smtpHost 可留空,按地址自动推断(@qq.comsmtp.qq.com@163.comsmtp.163.com,465 SSL)。
  3. 测试:让 agent 发一条测试通知即可(发送器由它自己实现)。

其他 agent(Claude Code、Codex 等)

无需任何兼容工作——现在的 agent 很聪明,把 SKILL.md 和配置契约指给它,它自己就会实现发送器。

安全

  • config.json(含你的 SMTP 授权码)和 notify.loggitignore——绝不要强推入库。授权码泄露等于别人能用你的邮箱发信。
  • skill 指令要求 agent 绝不打印或提交授权码。

License

MIT

内容来自项目 README(GitHub)↗

链接

同类插件

查看整个分类 →