DeepSeek Harness(DSH)採用插件化架構,旨在爲開發者提供靈活的功能擴展能力。dsh-dual-checkin 是一款工作流插件,由 G57651 維護(MIT 許可證),核心價值在於通過讀取本地登錄態,同時完成 Trae、WorkBuddy 與 Qoder 三個平臺的每日簽到,並在側邊欄提供統一的積分與狀態監控面板。
核心功能¶
該插件聚焦於簽到流程的自動化與狀態的可視化:
- 三平臺狀態卡:在主頁側邊欄新增「簽到」入口,點擊後打開全寬麪板,分別展示 Trae、WorkBuddy 與 Qoder 的簽到狀態(已籤/未籤)、24 小時制籤到時間及最近備註。
- 積分與到期跟蹤:常駐積分行顯示剩餘/已用/三天內到期的積分。當積分包臨近到期時,卡片內會出現醒目提醒。簽到後的積分變化通過
creditsBefore/creditsAfter暴露。 - 啓動自動簽到:僅隨 DSH 進程啓動自動執行,具有冪等性。當日已籤的平臺會自動跳過,插件內部無手動簽到入口。
- PAT 首次啓用錄入與到期提醒:在插件配置或
cordis.yml中填寫qoderPat(令牌)與qoderPatExpiresAt(到期時間)即可啓用 Qoder 簽到。剩餘時間 ≤ 7 天(默認)時面板顯示黃色警告,過期顯示紅色警告。 - 互不阻塞:使用
Promise.allSettled並行跑三個平臺,單一平臺的失敗、超時或未登錄狀態不會影響其他平臺的執行。 - 狀態面板可刷新:數據通過狀態路由
/plugins/dsh-dual-checkin/status提供支持。GET請求讀取快照(TTL 默認 5 分鐘),POST請求強制重查積分與狀態。
安裝¶
可以通過 CLI、Web UI 或本地克隆三種方式安裝:
CLI 從 GitHub 安裝
dsh plugin --profile desktop add github:G57651/dsh-dual-checkin
Web UI
在 Plugins 頁輸入 Git 地址 github:G57651/dsh-dual-checkin,或下載 Release / pnpm pack 產出的 tarball 後執行:
dsh plugin --profile desktop add dsh-dual-checkin-1.3.10.tgz
克隆後本地安裝
git clone https://github.com/G57651/dsh-dual-checkin.git
dsh plugin --profile desktop add ./dsh-dual-checkin
使用說明¶
配置 Qoder 憑據¶
Qoder 的簽到依賴於 PAT(Personal Access Token)。首次啓用時,需在插件配置(或 cordis.yml)中錄入:
qoderPat:令牌字符串。qoderPatExpiresAt:到期時間戳。qoderRegion:可選,切換cn或intl區域。
若未填寫 PAT,插件會回退讀取 DSH 憑據服務裏的 qoderCredentialRef(默認爲 QODER_MANAGED_CREDENTIAL)。插件內置了 PAT 有效性檢查,無效時會在備註中提示更新。
登錄態處理¶
插件嚴格遵循「只讀本地」原則,不讀取青龍環境變量或寫入敏感信息:
- Trae:讀取本地文件(如
~/Library/Application Support/TRAE SOLO CN/User/globalStorage/storage.json)或 CLI 的trae-jwt-token。 - WorkBuddy:讀取本地文件(如
~/Library/Application Support/CodeBuddyExtension/Data/Public/auth/workbuddy-desktop.info)。若需要解密WorkBuddy的加密數據,插件會拉起本機的WorkBuddy.app(Electron)獲取 AES-256-GCM 密鑰進行解密。 - Qoder:不讀取任何本機登錄文件,不訪問系統鑰匙串,零解密代碼,零子進程。所有憑據僅複用 DSH 已配置的 PAT,並在內存中通過
POST /api/v1/jobToken/exchange換取短期令牌。
數據與安全¶
數據文件¶
簽到結果與積分快照存儲在 ~/.dsh/ 目錄下,文件名帶 profile 維度(如 …-trae-<profile>.json):
~/.dsh/.dsh-dual-checkin-trae.json~/.dsh/.dsh-dual-checkin-workbuddy.json~/.dsh/.dsh-dual-checkin-qoder.json
升級後首次運行會優先按新名查找,找不到則回退讀取舊名,因此改名不會導致重複簽到。所有快照在寫入與讀回前都會剔除包含憑據的字段(token、pat 等)。
接口安全¶
狀態路由 /plugins/dsh-dual-checkin/status 帶有嚴格的訪問守衛:
- 來源校驗:只服務迴環地址(
127.0.0.0/8、::1)與迴環 Host。 - Host 校驗:拒絕非法 authority(含
@、/或非純數字端口)。 - 協議校驗:
Origin必須爲迴環或dsh-app:協議。 - 安全頭:響應包含
cache-control: no-store、x-content-type-options: nosniff、referrer-policy: no-referrer。
此外,WorkBuddy 登錄域名必須匹配 (^|\.)(workbuddy|codebuddy)\.cn$,且 URL 不得攜帶用戶名/密碼。所有平臺請求均顯式設置 redirect: 'error',不跟隨 3xx 跳轉。
注意事項¶
- 無設置頁:插件未註冊
settings.section,不支持通過 UI 手動配置或觸發簽到。 - 活動窗口:Qoder 活動窗口(每日 00:40 UTC+8 滾動)未開啓時,插件會按「未完成」處理,並在下次啓動時自動重試。
- 併發執行:Trae、WorkBuddy、Qoder 的簽到邏輯相互獨立,互不干擾。