前言¶
DeepSeek Harness(DSH)通過插件化架構擴展功能。dsh-weixin-web 是一個插件,爲 DSH Web 提供微信 iLink 通道。它將微信消息接入獨立的 DSH 會話,並在 DSH Web 側邊欄提供掃碼登錄和原生管理面板。
核心功能¶
- 多機器人管理:在 Web 側邊欄綁定多個微信機器人,支持改名、暫停、恢復、重新登錄或解綁。
- 會話隔離:每個微信聯繫人使用獨立的 DSH 會話,統一歸入「微信」工作區。
- 機器人配置:可爲每個機器人設置人設、指定模型或恢復默認模型、配置預設。
- 多媒體支持:支持文字、圖片、多圖、文件、視頻、語音轉寫和引用消息。
- 主動交互:支持主動推送、廣播,以及向微信聯繫人發送圖片、視頻和文件。
- 數據持久化:自動保存機器人憑據、會話映射、消息預覽和接收游標。
- 數據遷移:從 0.1.x 升級時自動遷移舊版機器人和會話數據。
安裝與啓用¶
確保系統已安裝 Node.js 20.3 或更高版本,且 DSH Web profile 可以正常運行。
- 執行安裝命令:
dsh plugin --profile web add github:agi-redtea/dsh-weixin-web
- 處理 pnpm 10 兼容性問題:pnpm 10 或更高版本可能會阻止 Git 依賴執行構建腳本,導致
ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED錯誤。
- 解決方案一:在 DSH 插件安裝界面選擇“允許這些腳本並重試”。
- 解決方案二:在 Web profile 的pnpm-workspace.yaml中加入以下配置,然後重新執行安裝命令:
allowBuilds:
dsh-weixin-web: true
- 安裝完成後,啓動或重啓 DSH:
dsh web --port 3080
使用說明¶
- 登錄微信:打開 DSH Web,點擊左側欄的 微信,點擊添加機器人並使用手機微信掃碼。登錄成功後,微信聯繫人發送的消息會自動進入對應的 DSH 會話。
- 設置機器人:在微信面板中打開機器人卡片的 設置:
- 人設:追加專屬系統提示。
- 模型:指定該機器人的會話使用哪個模型;選擇“跟隨 DSH 默認”可恢復默認模型。
- 預設:應用於之後創建的新對話。
- 開始新對話:爲指定聯繫人新建會話,舊會話仍保留在「微信」工作區。 - 調用發送功能:
- 模型可調用send_weixin_file向當前微信聯繫人發送圖片、視頻或文件。
- 調用push_weixin可主動發送文字;指定file參數時可以同時發送一個文件。
配置項¶
在 Web profile 的 cordis.patch.yml 中覆蓋插件配置:
- insert:
- id: weixin
name: dsh-weixin-web
config:
replyMode: full
maxChunk: 1500
maxMediaBytes: 20971520
常用配置說明:
- stateDir:默認爲 $DSH_HOME/dsh-weixin-web,用於存儲憑據和會話狀態。
- cwd:默認爲 stateDir/workspace,微信會話工作目錄。
- replyMode:默認爲 full,full 回發整輪文本,last 只回最後一條。
- replyTimeoutMs:默認爲 900000,單輪迴復超時時間(毫秒)。
- approvalPolicy:默認爲 never,微信會話的工具審批策略。
- maxChunk:默認爲 1500,單條微信消息最大字符數。
- sendIntervalMs:默認爲 2000,兩條發送之間的最小間隔(毫秒)。
- maxMediaBytes:默認爲 20971520,單個媒體文件的大小上限(20MB)。