dsh-mys-checkin:在 DSH 裏完成米遊社多遊戲每日簽到

前言

跑 DeepSeek Harness(DSH)做智能體或自動化時,米遊社 BBS 的每日簽到往往仍是單獨腳本或瀏覽器插件在管:要維護 cookie、要跟客戶端版本走,還不能跟 dsh 的調度與工具面統一。社區插件 dsh-mys-checkin(維護者 Nico-2222)以 Cordis bundle 形式接入 dsh,用二維碼登錄、按遊戲勾選、定時簽到,並暴露給 Agent 的工具接口。下面介紹它定位什麼、能做什麼、怎麼裝怎麼用,以及使用時的邊界與安全注意。

這是什麼

dsh-mys-checkin 是面向 DeepSeek Harness 的聯網類插件:對賬號下已綁定的角色,在國服米遊社側執行每日遊戲簽到,覆蓋原神、崩壞:星穹鐵道、絕區零、崩壞3、未定事件簿、崩壞學園2。插件自帶 Web 面板與 YAML 可覆蓋配置,狀態落在本地 state.json;包內不預置賬號或令牌,憑證僅在你掃碼後出現。

在 SkillHub 插件目錄 中歸類爲「聯網工具」;源碼與說明見 GitHub:Nico-2222/dsh-mys-checkin(許可證 MIT,當前 package 版本 0.1.0)。

核心功能

README 中列出的能力均可對照實現覈對,主要包括:

  1. 二維碼登錄:米遊社 App 掃一次碼,插件自行用 ticket 換取長期憑證,無需瀏覽器 cookie jar,也不保存明文密碼。
  2. 按遊戲啓用:在面板或配置裏勾選玩的遊戲;賬號下各服已綁定角色會按啓用列表簽到。
  3. 每日調度:默認東八區 00:30,可加 0–120 分鐘隨機抖動;支持啓動時補籤(catchUp)。簽到冪等,返回碼 -5003 表示當日已籤,按成功處理。
  4. Agent 工具:mys_checkin_status、mys_checkin_now、mys_checkin_games、mys_checkin_schedule,便於在對話或自動化裏查狀態、立即簽到、改遊戲列表或看調度。
  5. 審計記錄:按角色記錄結果、累計天數與當日獎勵名稱,保留最近 14 次運行。

侷限寫在官方 README:僅國服;不做米遊幣社區任務、雲遊戲簽到或商城兌換;調度依賴 dsh 進程常駐,關機錯過時刻靠啓動補籤彌補。

安裝與啓用

官方安裝命令如下(勿自行拼接 github:owner/repo 形式):

dsh plugin --profile <profile> add dsh-mys-checkin

本地開發時,可將插件目錄複製到該 profile 的 node_modules,並在 profile 的 package.json 裏把包名寫入 dsh.profile.bundles。

重啓 dsh 後,在瀏覽器打開面板(端口以你 profile 爲準):

http://127.0.0.1:<port>/mys-checkin

運行時要求 Node >= 22.19,並依賴 Cordis 生態中的 @deepseek-ai/cordis、cordis-plugin-timer、dsh-tools 等 peer 包(見倉庫 package.json)。插件以當前 dsh 進程權限聯網訪問 *.mihoyo.com;安裝前建議瀏覽源碼與 MIT 許可證,確認符合你的使用與合規要求。

配置說明

多數用戶只需在面板選遊戲、登錄即可。若要在 profile 的 cordis.patch.yml 裏覆蓋,可參考 README 示例:

- id: mys-checkin
  name: dsh-mys-checkin
  config:
    games: [genshin, starrail, zzz]
    signTime: "00:30"
    jitterMinutes: 10
    autoSign: true
    catchUp: true
    panelPath: /mys-checkin
配置項 默認值 含義
games [] 啓用的遊戲;空表示尚未在面板選擇
signTime 00:30 每日 wall-clock,Asia/Shanghai
jitterMinutes 10 隨機延遲上限(0–120)
autoSign true 是否啓用定時器
catchUp true 啓動時若當日無記錄則補跑
panelPath /mys-checkin 面板路由
dataPath 空 狀態文件路徑;空則 $DSH_HOME/data/mys-checkin/state.json

典型用法

面板流程:重啓後訪問 /mys-checkin → 掃碼登錄 → 勾選要簽到的遊戲 → 依賴默認定時或手動在面板/工具觸發。

YAML 流程:在 cordis.patch.yml 寫好 games 與 signTime 等 → 重啓 → 面板補全未選項。

Agent 流程:在已掛載該 bundle 的 profile 中調用工具,例如:

  • mys_checkin_now:立即執行簽到;
  • mys_checkin_status:查看近期運行與角色結果;
  • mys_checkin_games / mys_checkin_schedule:調整遊戲列表或查看調度。

憑證與歷史寫在 state.json(默認模式 0600)。退出登錄可在面板點「退出登錄」,或刪除狀態文件;一狀態文件對應一賬號,第二賬號需另建 profile 並指定獨立 dataPath。

安全、隱私與運維注意

  • 令牌不出現在日誌與工具明文輸出中;面板 API 僅回顯掩碼後的 UID。
  • 面板與 API 走 dsh 本機迴環端口,無獨立鑑權:不要將 dsh 端口暴露到公網或掛在公網反代後。
  • 常見返回碼:0 簽到成功;-5003 已籤;-100 / -1001 憑證過期(會嘗試用 stoken 刷新一次,否則需重新掃碼);-500001 多與 signgame 或 DS salt 過期有關;10001 可能與 act_id 陳舊有關(README 指向更新 lib/games.js)。
  • miHoYo 客戶端大版本更新後,BBS_VERSION / WEB_SALT 可能需要維護者或自行 bump,症狀多爲 -500001。
  • 免責聲明:個人低頻自用自動化,與 miHoYo 無隸屬關係;批量或商用可能致賬號受限。

DSH 生態是「一切皆插件」;SkillHub 等爲社區目錄站點,與 DeepSeek / 幻方無官方從屬關係,本文亦不將其描述爲官方應用商店。

結尾

若你希望把米遊社六款遊戲的每日簽到收進 dsh 調度,並與 Agent 工具共用同一套狀態與審計,dsh-mys-checkin 提供從掃碼、配置到補籤的完整路徑。進一步信息:

  • 目錄頁:https://www.skillhub.cn/plugins/Nico-2222/dsh-mys-checkin
  • 源碼與 README:https://github.com/Nico-2222/dsh-mys-checkin
羽毛球分组比赛记分
小程序二维码

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

小夜