DeepSeek Harness IMAP 郵件讀取插件

前言

DeepSeek Harness 的核心設計理念是“一切皆插件”。在構建需要調用外部數據的智能體時,郵件系統是高頻場景之一。然而,微軟從 2024 年 9 月起停止了對個人 Outlook.com 賬號的 IMAP 基本認證(用戶名+密碼),僅接受 OAuth2。市面上多數郵件插件(包括市場版 dsh-email)仍依賴密碼登錄,導致開發者無法通過這些插件讀取 Outlook 郵件。DSH-EmailReader 旨在補齊這一缺口,爲 DSH 提供原生支持 OAuth2 的郵件讀取能力。

簡介

DSH-EmailReader 是 DeepSeek Harness IMAP 郵件讀取插件(OAuth2 版)。該項目由 huaxiren6 維護,分類爲聯網工具,採用 MIT 許可證。插件基於 imapflow 庫連接任意 IMAP 郵箱,讓模型具備讀郵件的能力。

核心功能

插件提供三個核心工具,全部以 ol_email_ 爲前綴註冊,確保與市場版插件不衝突:

  1. ol_email_list:列出收件箱最近郵件。返回信息包括髮件人、主題、時間、旗標。
  2. ol_email_read:讀取單封郵件全文。支持自動解析 MIME,兼容 Outlook 服務器。
  3. ol_email_search:服務端 IMAP 全文搜索。搜索結果按最新優先排序。

其他特性包括支持多賬號、OAuth2 認證、HTTP/SOCKS 代理,以及統一返回 { ok, ... } 格式,絕不拋異常。

安裝

使用官方命令安裝:

dsh plugin --profile web add dsh-email-reader

配置

插件支持 OAuth2 和密碼兩種認證方式,並提供環境變量配置選項。

OAuth2 認證(推薦)

適用於微軟等強制 OAuth 的郵箱。配置需包含 refreshToken、clientId 和 tokenUrl。

- insert:
    - id: email-reader
      name: dsh-email-reader
      config:
        accounts:
          - id: outlook
            host: outlook.office365.com
            port: 993
            user: you@outlook.com
            refreshToken: "從 OAuth 授權流程獲取"
            clientId: "你的應用 Client ID"
            tokenUrl: "https://login.microsoftonline.com/common/oauth2/v2.0/token"
            mailbox: INBOX

密碼認證

適用於仍支持密碼登錄的 IMAP 服務器。

- insert:
    - id: email-reader
      name: dsh-email-reader
      config:
        host: imap.example.com
        port: 993
        user: you@example.com
        pass: your-app-password
        tls: true
        mailbox: INBOX

代理設置

遇到網絡限制(如教育網訪問 Gmail)時,可配置代理。

- insert:
    - id: email-reader
      name: dsh-email-reader
      config:
        accounts:
          - id: gmail
            host: imap.gmail.com
            port: 993
            user: you@gmail.com
            pass: your-app-password
            proxy: "http://127.0.0.1:7892"
            mailbox: INBOX

環境變量

若需憑據不落盤,可使用環境變量:
DSH_IMAP_HOST、DSH_IMAP_PORT、DSH_IMAP_USER、DSH_IMAP_PASS、DSH_IMAP_TLS、DSH_IMAP_MAILBOX、DSH_IMAP_OAUTH_REFRESH、DSH_IMAP_CLIENT_ID、DSH_IMAP_TOKEN_URL、DSH_IMAP_PROXY。

使用示例

在 DSH 中調用以下工具即可完成郵件操作:

  1. 查看郵件列表:調用 ol_email_list。
  2. 讀取郵件內容:調用 ol_email_read。
  3. 搜索郵件:調用 ol_email_search。

注意事項

  • 插件與市場版 dsh-email 共存,工具名前綴爲 ol_email_*,避免命名衝突。
  • 適用於微軟自 2024 年 9 月後強制 OAuth 的場景。
  • 插件運行時使用當前 DSH 進程的權限,安裝前建議檢查源碼與許可證。

總結

該插件解決了 OAuth2 時代的郵件訪問問題,爲開發者提供了穩定、兼容的郵件讀取能力。完整文檔與源碼可參考項目目錄與 GitHub 倉庫。

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

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

小夜