中文EN

dsh-notify-skill

notifynpmMIT

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

下载量 / Downloads
671

安装

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

沙箱测试

这个插件还没测过。提交测试 →

README

dsh-notify-skill

[English](README.md) | 中文

你不在电脑前时,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.json 为 config.json 并填写:

   {
     "email": {
       "smtpHost": "",
       "smtpPort": 465,
       "useSsl": true,
       "from": "your-address@qq.com",
       "authCode": "16位授权码",
       "to": "recipient@example.com"
     }
   }

smtpHost 可留空,按地址自动推断(@qq.com → smtp.qq.com,@163.com → smtp.163.com,465 SSL)。

3. 测试:让 agent 发一条测试通知即可(发送器由它自己实现)。

其他 agent(Claude Code、Codex 等)

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

安全

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

License

[MIT](LICENSE)

以上内容来自 npm 上的 README,我们只做格式化,不改内容。

版本

npm 上共发布:1,最后更新 2026-08-15

链接

GitHub · Homepage · npm

同类插件