前言¶
DeepSeek Harness (DSH) 采用插件化架构。处理邮件通常需要调用第三方 API 或编写脚本。zhengjy01/dsh-qqmail 插件将 IMAP/SMTP 协议能力直接集成到 DSH 中,让智能体可以直接读写邮箱,无需额外的中间层。
插件介绍¶
这是一个为 QQ Mail(以及任何 IMAP/SMTP 邮箱)设计的 DSH 插件。它提供 qqmail_* 代理工具、qqmail 命令行工具、qqmail-mcp stdio MCP 服务器和 Web 设置面板。认证使用 QQ 邮箱授权码(无 OAuth,无 2FA 重定向)。
核心功能¶
插件提供完整的 IMAP/SMTP 邮箱操作能力,分为只读和读写两类工具:
- 只读工具:
status(状态检查)、config(配置)、folders(文件夹列表)、list(邮件列表)、search(搜索)、read(读取全文)、attachment(下载附件)。 - 读写工具:
send(发送)、reply(回复)、mark(标记/加星)、move(移动)、delete(删除)。 - 附加组件:Web 设置面板、终端 CLI、MCP stdio 服务器。
安装与配置¶
通过官方 CLI 安装插件:
dsh plugin --profile web add github:zhengjy01/dsh-qqmail
安装完成后,重启 dsh web,在设置中即可看到 QQ 邮箱 卡片。
配置邮箱需要先在 QQ 邮箱网页端开启 IMAP/SMTP 服务,获取 16 位授权码。然后使用配置工具设置:
qqmail_config email: "someone@qq.com" authCode: "<16位授权码>"
验证连接是否成功:
qqmail status --probe
使用方式¶
插件提供三种使用入口:
1. DSH 代理工具¶
在 DSH 的系统提示词中,智能体会自动识别 qqmail_* 工具。智能体可以执行搜索、读取、标记等操作。
2. 终端 CLI¶
使用 qqmail 命令行工具进行交互:
# 检查状态
qqmail status --probe
# 列出未读邮件
qqmail list --mailbox INBOX --limit 20 --unseen
# 搜索邮件
qqmail search --from finance --since 2026-09-01
# 发送邮件
qqmail send --to a@b.com --subject "Hi" --text "Body" --attach ./report.pdf
# 回复邮件
qqmail reply 12345 --text "收到"
# 标记与移动
qqmail mark 12345 --seen --flag
qqmail move 12345 --to "Archive"
# 永久删除(默认是移入回收站)
qqmail delete 12345 --permanent true
3. MCP stdio 服务器¶
为不支持 DSH 插件的 Agent 提供接口,配置如下:
{
"mcpServers": {
"qqmail": {
"command": "npx",
"args": ["-y", "@zhengjunyao/dsh-qqmail", "qqmail-mcp"]
}
}
}
行为与配置¶
配置文件存储在 <DSH_HOME>/dsh-qqmail.json,文件权限为 0600。
- 只读模式:默认
readOnly: true,此时不会注册任何写入工具,防止智能体误操作。 - 删除策略:默认将邮件移入回收站。如需永久删除,需在调用
delete时指定permanent: true。 - 安全性:授权码以 0600 模式存储,且仅在 Web 面板和工具结果中显示掩码,不会暴露给模型或记录在日志中。TLS 证书强制验证。
适用场景与注意¶
- 适用场景:需要智能体处理内部邮件通知、自动回复或归档邮件的 DSH 用户。
- 权限注意:插件以当前 DSH 进程的权限运行,请确保在安装前检查源码与许可证(MIT)。