dsh-wechat-remote:用個人微信遙控與監視 DeepSeek Harness

前言

在 DeepSeek Harness(DSH)裏跑長任務時,助手可能要連續調用很多工具,桌面端會話裏信息是完整的,但人一旦離開電腦,手機上往往只能看到零星文字,很難區分「還在跑」和「已經停住」。若還要先綁定會話才能發指令,出門路上還要額外做一步設置。

下面介紹社區插件 dsh-wechat-remote(維護者 yin1895):通過騰訊官方 ClawBot(iLink)協議,把個人微信接到 DSH,用作遙控器與進展監視器。配對不走第三方 hook,也不是非官方微信客戶端。

這是什麼

插件倉庫:yin1895/dsh-wechat-remote。在 SkillHub 目錄中歸類爲客戶端插件。當前 package 版本爲 1.1.0,許可證 MIT。

一句話定位:手機上看長任務進展、發下一條指令、接管正在進行的對話;出站與入站經 iLink 長輪詢與發消息能力,與 DSH 的會話控制器、命令路由銜接。

數據流概覽(摘自 README):

微信 ──getupdates──▶ Runtime ──▶ CommandRouter ──▶ SessionAttach(prompt)
                       │                              │
                       │                     follow():助手文字
                       ▼                              ▼
                    Outbox ◀── ProgressPusher ◀── ProgressTracker
                       │        (session/event · 覆蓋每個會話)
                       ▼
                 sendmessage ──▶ 手機

它解決什麼問題

若只鏡像助手 prose,一個「想了 4 分鐘、跑了 20 個工具」的會話,在手機上可能和一個已經結束的會話看起來一樣。插件把原先擠在同一綁定變量上的三件事拆開:

概念 含義
currents 手機上直接發的文字,發給哪個會話
watches 哪些會話把進展推給這個手機
notify 哪些類別的通知要送達

進展采集來自全局會話事件流,因此每個會話都可見,包括從未在手機上打開過的會話。

核心功能

微信側命令

你發 會發生什麼
任意文字 發給當前會話(沒選過就自動接入正在跑的那個,並回一句說明)
/t 進度快照:跑了多久、最近做了什麼、最後一段輸出
/ls → /open 2 看會話列表、換一個會話
/watch [序號\|off] 訂閱/取消某個會話的進展推送
/new [標題]、/ws …、/close、/stop、/status、/notify …、/help 其他管理類命令

出門後的三種情況

  1. 在電腦上起了長任務然後出門 —— 不必先在手機上操作:正在運行的會話會自動推動作簡報。插件每 15 秒看一次,同一用戶最多每 45 秒收到一條;間隔裏攢下的動作會合並在下一條。
  2. 長時間沒有新事件 —— 超過 2 分鐘會推一條「還在運行」,避免誤判爲卡死。
  3. 跑完了 —— 推「✅ 會話名 完成了這一輪」並附最後一段輸出;若推送未顯示,下次說話時會補一次。

推送與拉取

iLink 出站消息掛在用戶自己那條消息打開的會話窗口上(context_token)。窗口不存在時消息會留存,下一句話到達時先回命令、再 📬 補發。主動發送可能被接受但用戶看不到,因此完成推送會記爲未確認,直到再次說話;面板顯示推送通道爲「就緒 / 等你先發一條微信消息」。拉取(/t、/status)不依賴窗口,始終可用。

安全與內容邊界

上手機的內容只有:助手文字、動作行(憑據類字符串在上手機前打碼)、通知。工具結果與原始參數不出本機。配對得到的 bot token 存在 <DSH_HOME>/wechat-remote/state.json,不在倉庫內。

安裝與啓用

插件無依賴、無構建步驟,把倉庫目錄作爲 bundle 安裝。README 給出的命令如下(路徑需換成你本機克隆或下載後的絕對路徑):

plugin_manager install_bundle  /本倉庫的絕對路徑

環境要求:Node >= 20.3(用到 AbortSignal.any)。

安裝後在 DSH 設置 → 插件 → 微信遙控 裏點「重新登錄」,用手機微信掃碼。面板上的「發一條測試消息到微信」可驗證推送是否能落到手機。桌面端只需關注這一頁:配對狀態、手動操作、當前上下文(發到哪個會話、進展推給誰、通道是否就緒)。

典型用法

  1. 在桌面 DSH 裏啓動一個會跑較久的 agent 會話。
  2. 安裝並掃碼配對後,若未手動選會話,直接在微信發文字即可注入當前或正在運行的會話(sessionController.prompt({ mode: 'queue' }) 排在當前 turn 之後,與桌面端串行)。
  3. 出門途中用 /t 拉快照;需要持續感知時用 /watch 訂閱,或依賴對運行中會話的自動進展推送。
  4. 用 /ls、/open 切換 currents;用 /notify 調整通知類別。

適用場景與注意

適合:需要在離開電腦後繼續下發指令、查看工具級進展摘要、接收完成/報錯/審批類通知的 DSH 用戶;接受個人微信單賬號、僅文字消息的場景。

限制(README 明確列出):

  • 僅支持文字;圖片/語音/文件會收到能力提示。
  • 電腦需保持開機。
  • 個人微信單賬號,羣聊不支持。
  • 主動推送盡力而爲並有留存補發;拉取可靠。

安裝前:插件以當前 DSH 進程權限運行,安裝前應自行閱讀倉庫源碼與 MIT 許可證。社區目錄 SkillHub 插件頁 爲獨立站點,與 DeepSeek / 幻方無官方從屬關係;DSH 生態理念是「一切皆插件」,本文介紹的是社區維護的 bundle,不是官方應用商店條目。

結尾

dsh-wechat-remote 把微信變成 DSH 的遙控與監視通道,並把「當前會話」「進展訂閱」「通知」拆開配置,同時用全局事件流渲染動作行與心跳,緩解「看不見是在跑還是已經停」的問題。配對走官方 iLink,推送側有隊列、節流與補發,拉取側用 /t 等命令保底。

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

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

小夜