Cangjier/dsh-mail-notify ↗★ 0

dsh-mail-notify

DeepSeek Harness 插件:agent 每结束一轮回答,就发一封通知邮件。零依赖,只用 Node 内置模块。 适合需要离线或后台运行任务,并在完成后接收即时邮件提醒的用户。

패키지
dsh-mail-notify
호환성
미검증
버전
0.1.0
최근 업데이트
2026. 9. 30.

설치

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:Cangjier/dsh-mail-notify

第 3 步:填个人配置并启用

本包的 cordis.patch.yml 里只有占位地址(you@example.com),真实邮箱写在 profile 自己的覆盖层 %USERPROFILE%\.dsh\profiles\desktop\cordis.patch.yml 里, 这样公开仓库不会留下你的地址:

- id: mail-notify
  name: 'dsh-mail-notify'
  config:
    enabled: true
    smtp:
      user: 你的账号@qq.com
      from: 你的账号@qq.com
    to:
      - 收件人@qq.com

patch 是整体替换 config,不是深合并,所以这段会覆盖本包的默认值——从 enabled 开始写全。 host / port / secure 会按发件域名自动推断,不必手写;其余字段都有代码默认值。

example.com 故意不在内置端点表里:如果只把 enabled 改成 true 而不填真实地址, 会得到一条明确的配置错误日志,而不是静默失败。

配置

字段默认值说明
enabledfalse出厂就是关的。false 时不注册监听器、不发信
smtp.user必填SMTP 登录账号(发件邮箱)
smtp.from同 user信头里的发件地址
smtp.host按发件域名推断认不出的域名必须手填,否则只记错误日志、保持不发信
smtp.port推断值隐式 TLS 默认 465,STARTTLS 默认 587
smtp.secure推断值true = 465 隐式 TLS,false = EHLO 后 STARTTLS
to必填收件人数组;每人单独投递,互相看不到地址
subjectDSH 任务完成标题固定前缀;非正常结束时自动补后缀,如「(已取消)」「(出错)」
subjectSummarytrue标题是否带本轮回答的摘要:「前缀(结束原因)|摘要」
subjectSummaryChars40摘要最多几个字,按字符截断并加省略号
authCode无内联授权码,不推荐
authCodeEnvQQ_SMTP_AUTH_CODE授权码环境变量名
authCodeFile本目录 secret.txt授权码文件路径,相对路径以本目录为基准
skipSubagentSessionstrue跳过子代理会话,避免一次任务刷出一堆邮件
mergeStepsfalsefalse 只发最后一条助手消息;true 拼接整轮所有步骤
maxBodyChars20000正文超长时截断并注明原长度
includeSessionInfofalse正文末尾附会话 id、工作目录、结束原因、时间
dryRunfalsetrue 时只记日志不连服务器,用于试配置
timeoutMs30000单步读写超时

内置端点:qq.com / vip.qq.com / foxmail.com → smtp.qq.com:465; 163.com / 126.com / yeah.net → 各自 :465;sina.com / 139.com / aliyun.com → 各自 :465; gmail.com → smtp.gmail.com:465;outlook.com / hotmail.com / live.com → smtp.office365.com:587 STARTTLS; icloud.com / me.com → smtp.mail.me.com:587 STARTTLS。其他域名请显式写全 smtp.host/port/secure。

标题里的摘要

摘要是本地推断出来的,不调模型、不联网、不额外花钱:跳过代码块,优先取回答里第一个 Markdown 标题,没有标题就取第一行;首选内容短于 8 个字就往后接一行(最多三条候选行), 让「好的」这种标题能自解释;最后按 subjectSummaryChars 个字符截断并加省略号。 Markdown 标记(#、列表符、**、链接、表格竖线)都会被剥掉。

DSH 任务完成|邮件标题已带摘要
DSH 任务完成(出错)|沙箱拒绝了这次写入
DSH 任务完成|路径已改成 C:/tmp

结束原因后缀排在摘要之前,所以出错、被取消这类结果在收件箱里一眼可见。 不想要摘要就把 subjectSummary 设成 false,标题回到只有前缀加结束原因。