dsh-PEC:用手机远程接管本机 DeepSeek Harness 会话

前言

DeepSeek Harness(DSH)的日常使用通常綁在桌面端:會話、審批、終端和文件都在電腦前完成。人離開工位時,輕則無法及時點選工具審批,重則連「接着聊」都要先遠程回到桌面。社區裏也有各類遠程桌面方案,但它們搬走的是整塊屏幕,而不是 DSH 裏那套會話、模型路由和沙箱策略語義。

下面介紹維護者 huajikano 發佈的客戶端類插件 dsh-PEC(npm 包名 dsh-pec,倉庫 huajikano/dsh-PEC)。它在電腦上的 DSH 進程裏起一個帶鑑權的手機網關,再配合約 25 KB 的 Android 外殼(APK),讓手機通過同一 Wi-Fi 或 Tailscale 訪問你這臺機器上已經跑着的 DSH——模型配置、工作區文件和會話狀態仍落在本機,不是另一套雲端後端。

這是什麼

一句話:dsh-PEC 是「電腦端插件 + Android APK」的手機網關,手機只與插件通信;插件以進程內 owner 身份調用 DSH 的 Host 服務,無需反向解析 DSH 私有協議,也不維護第二套後端。

  • 插件側(dsh-pec):監聽 HTTP(默認 0.0.0.0:7317,佔用時隨機換端口並在日誌打印實際地址),提供鑑權、SSE 流式推送和手機版網頁界面。
  • 手機側(dsh-pec-<版本>.apk):負責配對、保存設備信任、用 WebView 承載界面。

項目在 DSH desktop 0.2.1-rc.5 上開發並驗證;若 DSH Host 服務簽名發生較大變化,插件可能需要隨之調整。當前 Release 包版本爲 2.0.0(package.json 與 GitHub Releases 一致)。

目錄頁:SkillHub — huajikano/dsh-PEC。

核心功能

會話與對話

  • 會話列表支持搜索、運行狀態、子代理過濾,以及新建、重命名、歸檔;新建會落在真實工作區,而非 DSH 的 profile 目錄。
  • 完整歷史、逐字流式輸出、思考過程與工具調用的摺疊卡片;回答按 Markdown 渲染,支持複製與朗讀。
  • 「加載更早」翻頁時保持閱讀位置;斷流重連不會沖掉已加載的舊消息。
  • 圖片以氣泡展示;每輪迴答左下角顯示本輪用時、token 用量、緩存命中率(口徑與桌面端一致)。
  • 輸入框草稿按會話持久化,切換頁面或刷新不丟草稿。

不離電腦也能做的控制面

  • 模型與推理等級:按供應商列出可路由模型,切換寫入當前會話;每個模型下可選推理等級(off / low / medium / high / max)。
  • 模式與權限:Agent 預設(如 standard、ptc、minimal、cordis 等);只讀、僅工作區、完全訪問等權限預設,直接改該會話的沙箱與審批策略。
  • 審批與提問:「接管 30 分鐘」期間,工具調用推到手機可允許或拒絕;ask_user_question 在手機上以單選、多選、自定義回答、跳過等形式出現。分安全模式(電腦端在線時優先交給電腦)與強制模式(外出時由手機決定)。
  • 終端:PTY + xterm.js,支持彩色輸出、行編輯、Ctrl-C、全屏 TUI;無 PTY 時降級爲持久 shell。
  • 文件:按會話工作目錄瀏覽;文本可預覽(大於 2 MB 或二進制拒絕)。
  • 設置:可讀改 DSH 各設置組中的 volatile 字段;模型供應商可在手機上增刪改,並一鍵拉取端點模型列表(與桌面「獲取模型」同源)。
  • 目標與計劃任務、插件開關:與桌面能力對齊,開關即時生效。

連接與安全

兩種連法:同一 Wi-Fi 下局域網直連(可自動發現),或 Tailscale 使用 100.x.y.z:7317。首次在私有網段配對可免 6 位碼;之後新設備必須輸入電腦上顯示的配對碼(6 位、10 分鐘輪換、一次有效)。每臺手機使用 32 字節隨機設備令牌,電腦只存 SHA-256。局域網爲明文 HTTP,文檔建議僅在個人 Wi-Fi 或 Tailscale 內使用,且不建議將 7317 映射到公網。

安裝與啓用

Release 中需準備兩個文件(見 GitHub Releases):

文件 用途
cc-dsh-plugin-<版本>.zip 解壓得 plugin-ccdsh/,在 DSH 插件管理裏「安裝本地目錄」指向該目錄
dsh-pec-<版本>.apk 安裝到 Android 手機

電腦端插件推薦以下方式之一(摘自官方 README):

# 方式一:本地目錄(推薦,不受 pnpm 鎖文件漂移影響)
# 解壓 cc-dsh-plugin-<版本>.zip 後,在 DSH 裏選中 plugin-ccdsh/ 目錄

# 方式二:npm 包名(發佈後可用)
dsh plugin add dsh-pec

# 方式三:GitHub 來源必須釘到 tag
dsh plugin add huajikano/dsh-PEC#v2.0.0

從 1.x 升到 2.0.0 時包名由 cc-dsh 改爲 dsh-pec,需先卸載舊插件再裝新插件;配對數據會從 %DSH_HOME%\cc-dsh\ 複製到 %DSH_HOME%\dsh-pec\,手機一般無需重新配對。更細的校驗、端口與卸載步驟見倉庫內 docs/INSTALL-plugin.md。

手機端:安裝 Release 中的 dsh-pec-<版本>.apk(2.0.0 僅改顯示名,包名仍爲 com.ccdsh.app,可覆蓋安裝)。

典型用法

1. 首次配對(同一 Wi-Fi)

  1. 電腦上裝好 dsh-pec 插件並確認網關已監聽(默認 7317)。
  2. 手機打開 App,點「在同一 Wi-Fi 下自動查找」,或手動填寫 電腦IP:7317。
  3. 第一次配對碼留空,點「連接」。

2. 電腦端查看配對碼與設備

DSH 設置 → 手機連接:查看 6 位配對碼、局域網 / Tailscale 地址、已配對設備(可重命名、移除)。

3. 不在家時走 Tailscale

手機和電腦加入同一 Tailscale 網絡後,用 100.x.y.z:7317 訪問。Windows 防火牆與排障見 docs/tailscale.md。

4. DSH 升級後自檢

curl.exe -sS http://127.0.0.1:7317/api/health

返回 ok: true 且 missing: [] 表示正常;missing 非空時相關功能會被禁用,不影響 DSH 其它部分。

適用場景與注意

適合誰:需要在不坐電腦前時繼續同一套 DSH 會話、及時處理審批或終端輸出;或希望用手機快速切模型、改權限預設、瀏覽工作區文件的開發者。

權限與信任:插件在 DSH 進程內以 owner 身份調用 Host 服務,手機配對成功後相當於持有本機 DSH 的執行面。安裝前應閱讀源碼與許可證,僅在可信網絡(家庭 Wi-Fi 或 Tailscale)中使用;勿在公共 Wi-Fi 上明文暴露 7317。

已知限制(摘自 README):文件僅能在線預覽文本,不能下載到手機;除圖片外暫不支持把手機文件上傳到電腦。設置面板只開放 volatile 字段。審批強制模式可能在電腦端留下待處理彈窗,回電腦前需自行處理。

生態上,DSH 奉行「一切皆插件」;SkillHub 等社區目錄爲獨立站點,與 DeepSeek / 幻方無官方從屬關係。

結尾

dsh-PEC 把「正在本機跑的 DSH」拆成穩定的手機網關:會話、模型、終端、文件與設置仍走 Host 服務,不復制第二份狀態。若你的痛點是「人走開但 Harness 不能停」,可按 Release 安裝插件與 APK,先在局域網完成首次免碼配對,再按需配置 Tailscale。

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

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

小夜