dsh-coros-gui:在 DeepSeek Harness 對話裏接入 COROS 訓練數據

前言

在 DeepSeek Harness(DSH)裏做訓練相關的智能體時,常見做法是單獨跑 COROS 官方 CLI 或自建 MCP 服務,再在 Harness 裏掛 MCP 客戶端——OAuth 回調、令牌刷新和工具註冊都要自己接。dsh-coros-gui 是社區維護的 DSH 插件,把 COROS 官方 OAuth 與 MCP 工具橋接進 Harness:瀏覽器裏點一次登錄,對話裏即可按 coros_* 工具名調用活動、健康、負荷與訓練計劃等能力,並附帶設置頁與側欄面板管理連接狀態。

這是什麼

插件全名 dsh-coros-gui,倉庫 ppxinashin/dsh-coros-gui,維護者 ppxinashin,在 SkillHub 插件目錄 中歸類爲「聯網工具」。當前 package 版本爲 0.1.0,許可證 MIT。

一句話定位:在 DSH 對話中通過瀏覽器 OAuth 登錄 COROS 一次,之後 COROS MCP 工具以 coros_<tool> 形式註冊到 Harness,模型可直接調用;未登錄時仍可用少量引導與兜底工具。

核心功能

瀏覽器登錄與區域

  • 設置頁或側欄點「使用瀏覽器登錄」,插件向 COROS 官方授權服務申請一次性登錄會話,在瀏覽器完成授權後自動回調並保存令牌,無需手抄密碼或回調 URL。
  • 支持四個賬號區域:全球、中國大陸、歐洲、美國;OAuth 發現會對齊區域(默認「全球」並自動發現授權集羣)。
  • 訪問令牌到期前用刷新令牌自動續期;COROS 刷新令牌輪換已由插件處理。

對話內工具

登錄後,COROS MCP 工具目錄會註冊爲 coros_<name>(README 示例:coros_get_activities)。在 0.2.1-rc.3 上用真實 COROS 賬號驗證時,登錄後成功註冊並可用 34 個 COROS 工具。

未登錄時固定提供:

工具 說明
coros_status 連接狀態、區域、可用工具數量
coros_login 生成瀏覽器登錄鏈接並等待授權
coros_call_tool 用原始 MCP 工具名 + JSON 參數調用(兜底)

設置頁「COROS」可檢索工具目錄,展開可查看各工具參數的 JSON Schema。

原生 UI

遵循 DSH 插件規範:

  • 設置頁「COROS」:連接狀態、賬號區域、登錄/取消/退出、工具目錄;
  • 會話側欄快捷入口與浮層面板;
  • 會話頭部狀態 chip 顯示當前 COROS 連接狀態。

UI 使用 DSH 主題 token(--dsw-*),適配明暗主題。

隱私與本地存儲

令牌與客戶端註冊信息保存在 $DSH_HOME/coros-gui/state.json(默認 ~/.dsh/coros-gui/state.json),目錄權限 0700、文件 0600、原子寫入;不經過第三方服務器,請求直連 COROS 官方 OAuth / MCP 域名。退出登錄會清除本地令牌。

授權協議與 COROS 官方 coros-mcp CLI 一致(授權碼 + PKCE + 動態客戶端註冊 + CLI 登錄會話輪詢)。授權範圍:openid offline_access mcp.tools。

安裝與啓用

要求:DeepSeek Harness 0.2.x(package.json 中 engines.dsh 爲 >=0.2.0)。Node 需滿足 ^22.19.0 || >=24.0.0。

方式一:本地目錄(開發/自用)

桌面版可使用 app 內的 dsh-desktop-host/lib/cli.js 調用 DSH CLI:

dsh plugin --profile desktop add /path/to/dsh-coros-gui

安裝後 DSH 會熱加載插件;若無入口,重啓一次 DSH 即可。

方式二:從 GitHub 安裝

dsh plugin --profile <你的 profile> add github:ppxinashin/dsh-coros-gui

方式三:插件市場 / 插件管理器

插件包已聲明 dsh.bundle.patch 與 dsh.client,可被插件管理器直接識別。

啓用步驟:

  1. 打開側欄底部 COROS,或「設置 → COROS」。
  2. 選擇賬號區域,點 使用瀏覽器登錄。
  3. 在 COROS 授權頁完成登錄與授權,回到 DSH 後應顯示「已連接」。

典型用法

在對話中直接用自然語言即可,README 給出的示例包括:

用 COROS 查一下我最近 7 天的跑步記錄,按配速和心率幫我分析一下。

看看我這兩週的睡眠和 HRV 變化,和訓練量有什麼關係?

我 8 周後要跑半馬,基於我最近的訓練給我排一個訓練計劃。

需要精確調用時,可在登錄後讓模型使用已註冊的 coros_* 工具,或通過 coros_call_tool 傳入原始 MCP 工具名與 JSON 參數。

適用場景與注意

適合誰:已在 DSH 0.2.x 上開發或使用智能體、希望把 COROS 運動/健康/訓練計劃數據放進同一會話、且接受瀏覽器 OAuth 一次授權的用戶。

運行與權限:插件以當前 DSH 進程權限運行;安裝前建議閱讀倉庫源碼與 MIT 許可證,確認行爲符合預期。

兼容性:

  • 登錄 RPC 僅在本機 loopback 綁定的 DSH Host 上啓用;通過局域網或公網訪問 DSH 時會提示不可用。
  • 插件不實現 MCP Resources / Prompts,只橋接工具;COROS 側工具集合由官方 MCP 服務決定,插件負責發現、命名規範化與參數 schema 清洗。

SkillHub 等社區目錄爲獨立站點,與 DeepSeek / 幻方無官方從屬關係;DSH 生態理念是「一切皆插件」,本插件爲社區貢獻,非官方內置能力。

結尾

dsh-coros-gui 把 COROS 訓練數據、瀏覽器 OAuth 與 Harness 對話裏的 MCP 工具調用收成一條路徑:本地存令牌、對話裏查活動與健康、必要時在設置頁瀏覽完整工具目錄。

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

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

小夜