前言¶
DeepSeek Harness(DSH)把會話、工作區和插件 bundle 放在同一套本地工作臺裏。健身記錄若只靠聊天窗口裏的零散對話,事後很難按天、按動作做統計;若單獨再開一個 App 或表格,又和助手上下文脫節。下面介紹社區插件 dsh-fitness(維護者 hardlic):向 Agent 註冊 fitness_log 工具,並在網頁左側欄提供「健身」畫報面板,數據落在本機 SQLite,不聯網、無賬號。
這是什麼¶
dsh-fitness 是 DSH 生態裏的一個 bundle:裝進 DSH 後,接入 DSH 的模型可通過標準 JSON Schema 調用 fitness_log;可選安裝同倉庫的 ui/ 畫報包,在左側插件欄出現「健身」入口。分類上屬於社區目錄中的「記憶」類插件;訓練與計劃數據默認保存在 $DSH_HOME/dsh-fitness/fitness.sqlite($DSH_HOME 一般爲 ~/.dsh)。
核心功能¶
Agent 工具 fitness_log¶
同一工具通過 action 區分八種能力,返回結構化 JSON,便於助手轉述。
| action | 作用 |
|---|---|
log |
記錄一次訓練:動作、組數、每組次數、重量、日期、備註 |
today |
查看當天訓練記錄 |
history |
按動作或天數查歷史 |
stats |
週報:總組數、總容量(組數×次數×重量)、各動作容量榜 |
plan_add |
新建訓練計劃(計劃名、星期、動作列表) |
plan_list |
列出全部計劃 |
plan_remove |
刪除計劃 |
plan_today |
今天該練什麼,並對照完成度(還差幾組) |
左側欄健身畫報(ui/,README 標註 v0.3 形態)¶
畫報圍繞本地單機記錄設計,與 fitness_log 共用 fitness.sqlite;面板還提供 quick-log、check-item、unlog 等窄寫接口,便於在網頁裏快速記、打卡、撤銷,而不必每次開聊天。
主要能力包括:
- 周曆條:週一到週日、當天容量高亮;可點日期切換;支持前後翻周與「回今天」。
- 任意日期詳情:選中日的計劃對照與全部記錄;非當日可補錄(快速記錄帶日期);「打卡」按鈕僅在當天顯示。
- 連續打卡:從今天或昨天起向前統計連續有記錄的天數。
- 時間軸:計劃項與已記錄動作,支持一鍵打卡與撤銷單條記錄。
- 訓練流水:近 30 / 90 / 365 天按天分組,點一行跳到對應日期。
- 快速記錄:例如
4x8@60或12,10,8@40一行寫入。 - 本週概覽:訓練天數、總組數、總容量、本週打卡天數;瀏覽歷史周時統計對應該周。
- 訓練計劃、動作榜、健身建議:建議項包括訓練頻率、計劃完成度、動作休眠、部位平衡、容量趨勢等(基於本地數據生成)。
README 中 v0.1 階段曾說明面板以只讀聚合爲主、記錄優先走聊天工具;自 v0.2.0 起面板已支持直接記錄並與工具共用數據庫,安裝前請以當前倉庫 README 與版本爲準。當前 package 版本爲 0.3.1(見倉庫 package.json)。
安裝與啓用¶
前置條件:已安裝 DeepSeek Harness,並具備可用的 plugin_manager。
資料中的安裝步驟爲先取得倉庫目錄,再在 DSH 內安裝 bundle(任選其一):
git clone https://github.com/hardlic/dsh-fitness.git
plugin_manager install_bundle target=<克隆目錄>
或在 DSH 插件頁「添加插件」中選擇上述本地目錄。
畫報面板(可選,與主插件同倉庫的 ui/):
plugin_manager install_bundle target=<克隆目錄>/ui
npm 側:README 說明包名 dsh-fitness 已被佔用,發佈名爲 @hardlic/dsh-fitness;發佈後可用:
dsh plugin add @hardlic/dsh-fitness
(是否已發佈以 npm 與倉庫說明爲準。)
運行時要求:package.json 中 engines.node 爲 >=22.5;插件通過 cordis.patch.yml 注入 Loader,卸載 bundle 即移除對應行。
典型用法¶
- 練完後對助手說:「記一下,深蹲 4 組 8 次 80 公斤」——對應
fitness_log的log。 - 次日問:「今天該練什麼?」——對應
plan_today,按計劃與已完成組數回答。 - 打開網頁左側欄「健身」,查看周曆、流水、本週概覽與建議。
也可在面板內用快速記錄或計劃頁(v0.3.0 起支持在面板內新建、編輯、刪除計劃)操作,與聊天工具寫入同一數據庫。
數據、架構與適用注意¶
數據與隱私:表 sets(訓練記錄)、plans(訓練計劃);無遙測;刪除 fitness.sqlite 即清空插件數據。
架構要點(來自 README):根目錄 lib/index.js 以 Cordis 插件 apply(ctx) 註冊 fitness_log,使用 Node node:sqlite 的 DatabaseSync;ui/ 宿主側只讀連接聚合爲 HTTP(如 /fitness-panel/api/data),客戶端註冊 DSH 的 main 與 sidebar.panellist 插槽。
適用場景:希望在 DSH 內用自然語言記訓練、查歷史與週報,並可選可視化側欄的用戶;不適合需要手環三環、社交或雲端賬號同步的場景(README 明確不做這些)。
安全與信任:插件以當前 DSH 進程權限讀寫本機文件;安裝前應閱讀 源碼 與 MIT 許可證。社區目錄 skillhub.cn 爲獨立站點,與 DeepSeek / 幻方無官方從屬關係。
結尾¶
dsh-fitness 把「對話記訓練」和「本地可視化」收進同一個 DSH bundle:Agent 側八類 fitness_log 動作,Web 側可選畫報與 SQLite 持久化。需要細節與更新記錄時,以倉庫 README 爲準。