前言¶
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 为准。