dsh-wechat-transfer:從 DSH 把本地文件發到微信文件傳輸助手

前言

用 DeepSeek Harness(DSH)跑任務時,報告、截圖、導出文件往往落在運行 DSH 的那臺 Windows 電腦上。若你在手機上遠程連 DSH,或希望產物立刻出現在手機微信裏,常見做法是回到電腦前複製,或自己找網盤/郵件中轉。下面介紹的 dsh-wechat-transfer 是社區維護的 DSH 左側欄插件(維護者 le0522,分類:聯網工具),通過 Windows 版微信桌面客戶端,把指定本地路徑的文件送到指定聊天(默認「文件傳輸助手」),手機端微信即可收到並保存。

這是什麼

dsh-wechat-transfer 在 DSH 左側欄增加「微信傳輸」入口,並提供模型可調用的工具 wechat_send_file。它不替代微信客戶端,而是在本機啓動或喚起微信 4.x,用截屏與 Windows 自帶中文 OCR 校驗當前聊天與發送步驟,再通過微信原生的「選擇文件」對話框把文件放進輸入框;可選自動點擊發送。插件僅支持 Windows(依賴 Windows PowerShell 5.1 與中文 OCR 語言包),與 SkillHub 目錄頁簡介「Send local files to WeChat 文件傳輸助手 from DeepSeek Harness (Windows)」一致。

遠程場景下,DSH 面板可走 /remote 網關,手機瀏覽器上的同一面板也能觸發發送。

核心功能

面板與交付卡片

左側欄「微信傳輸」面板可填寫文件路徑、目標聊天、是否自動發送,並提供「登錄微信」「關閉微信」等操作。聊天裏每個 present 交付文件卡片旁會多一個「發微信」按鈕,點按即可把該文件發到默認或指定的聊天;成功或失敗會顯示在按鈕上。

模型工具

註冊工具 wechat_send_file 後,可在對話中直接要求把某個本地文件發到「文件傳輸助手」,由插件走同一套發送流程。

發送流程與安全策略

每次執行會置前微信主窗口(不按 Esc、不隨意關窗、不在正常發送路徑裏啓停進程),用 OCR 讀標題欄確認當前聊天爲目標聊天;不對則嘗試在會話列表中點開目標名,仍不對則中止。存在多個同名會話時返回 chat-ambiguous 並中止。確認聊天后,點擊輸入欄左側文件夾圖標,在原生「選擇文件」對話框的文件名框粘貼 "路徑1" "路徑2" 並確認,再 OCR 或像素方式校驗文件是否出現在輸入框;若 autoSend 爲 true,會在確認發送按鈕爲可發送狀態後點擊,並校驗消息是否進入聊天。默認 autoSend = false,文件只停留在輸入框,由人工確認後再發。

微信 4.x 爲 Qt Quick 自繪界面,無可用 UI Automation,插件採用「最小動作 + 逐步校驗」的設計;校驗依據的是聊天顯示名(OCR),不是微信內部會話 ID,同名聊天、OCR 誤判等邊界在 README 中已有說明。

登錄與微信進程

微信未運行時插件可啓動 Weixin.exe 並嘗試在登錄窗點擊「進入微信」;需要掃碼時返回 login-qr。面板「關閉微信」會先請求微信縮到托盤,必要時結束 Weixin.exe,返回 closed-wechat。

HTTP 路由(宿主側)

方法 路徑 用途
GET /dsh-wechat-transfer/status 引擎是否就緒、上次結果、截圖年齡
POST /dsh-wechat-transfer/send {paths, chat?, autoSend?} 發送文件
POST /dsh-wechat-transfer/login 處理登錄窗口
POST /dsh-wechat-transfer/close 關閉微信
POST /dsh-wechat-transfer/resolve 交付卡片路徑解析
GET /dsh-wechat-transfer/screenshot 最近一次校驗截圖

非本機訪問時,客戶端會在收到 403/404 後自動改用 /remote/dsh-wechat-transfer/... 重試。

安裝與啓用

從 npm 安裝(README 推薦):

dsh plugin --profile desktop add dsh-wechat-transfer

若需跟蹤源碼倉庫最新提交:

dsh plugin --profile desktop add github:le0522/dsh-wechat-transfer

也可從 GitHub Releases 取 zip/tgz 離線安裝,或 npm install dsh-wechat-transfer 裝進任意 DSH profile。安裝完成後重啓 DSH,左側欄應出現「微信傳輸」。資料中 package.json 標明版本 0.2.9、許可證 MIT、引擎要求 dsh >= 0.2.0-rc.1。

典型用法

  1. 在面板填寫本地絕對路徑,目標聊天留空則使用「文件傳輸助手」,按需勾選是否自動發送,執行發送。
  2. 在 DSH 聊天中讓模型調用 wechat_send_file,或點交付卡片旁的「發微信」。
  3. 遠程用手機瀏覽器打開 DSH 面板,同樣可發;發送過程中面板約每 1.5 秒輪詢 /status 顯示最新狀態與時間戳。

失敗時插件會返回明確 stage,例如 chat-not-open(未打開目標聊天且未粘貼)、paste-not-verified、send-not-verified、ocr-unavailable 等;成功時常見 staged(僅進輸入框)或 sent(已確認發送)。

適用場景與注意

適合:Windows 上已裝微信 4.x,希望 DSH 產物(尤其遠程/手機驅動 DSH 時)快速進手機微信;願意接受 OCR 校驗而非絕對零誤發的場景(敏感文件建議保持 autoSend 默認 false,人工點發送)。

前置:系統具備 zh-Hans OCR;目標聊天能在會話列表或全局搜索中被定位;窗口尺寸在 README 所述範圍內插件會自行 normalize,最大化或過小窗口時可能臨時調整尺寸並在發完後還原。

安全與權限:插件以當前 DSH 進程權限在本機操作微信窗口與文件路徑,安裝前請自行閱讀 GitHub 倉庫 源碼與 MIT 許可證。DSH 社區插件目錄(SkillHub)爲獨立站點,與 DeepSeek / 幻方無官方從屬關係。

結尾

dsh-wechat-transfer 把「DSH 桌面產物 → 微信文件傳輸助手 → 手機微信」收成面板一鍵、交付卡片一鍵和模型工具三條路徑,並圍繞微信 4.x 無自動化 API 的現實做了分步校驗。目錄頁:https://www.skillhub.cn/plugins/le0522/dsh-wechat-transfer;源碼與完整說明:https://github.com/le0522/dsh-wechat-transfer。

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

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

小夜