{/* 此页面由 website/scripts/generate-skill-docs.py 从技能的 SKILL.md 自动生成。请编辑源文件 SKILL.md,而非此页面。 */}

健身营养

健身房训练计划与营养追踪。通过 wger 按肌肉、设备或分类搜索 690+ 种练习。通过 USDA FoodData Central 查询 380,000+ 种食物的宏量和热量。计算 BMI、TDEE、单次最大重量、宏量营养分配和体脂率 —— 纯 Python,无需 pip 安装。专为追求增肌、减脂或改善饮食的人设计。

技能元数据

来源可选 —— 使用 hermes skills install official/health/fitness-nutrition 安装
路径optional-skills/health/fitness-nutrition
版本1.0.0
许可证MIT
平台linux, macos, windows
标签health, fitness, nutrition, gym, workout, diet, exercise

参考:完整 SKILL.md

:::info 以下是 Hermes 在触发此技能时加载的完整技能定义。这是技能激活时代理所看到的指令。 :::

健身与营养

专业健身教练和运动营养师技能。两个数据源加离线计算器 —— 健身房爱好者所需的一切。

数据源(全部免费,无 pip 依赖):

离线计算器(纯标准库 Python):

  • BMI、TDEE(Mifflin-St Jeor)、单次最大重量(Epley/Brzycki/Lombardi)、宏量营养分配、体脂率(美国海军方法)

使用时机

当用户询问以下内容时触发此技能:

  • 练习、训练、健身流程、肌肉群、训练分化
  • 食物宏量、热量、蛋白质含量、膳食计划、热量计算
  • 身体成分:BMI、体脂、TDEE、热量盈余/赤字
  • 单次最大重量估算、训练百分比、渐进超负荷
  • 减脂、增肌或维持的宏量营养比例

操作步骤

练习查询(wger API)

所有 wger 公共端点返回 JSON,无需认证。练习查询始终添加 format=jsonlanguage=2(英语)。

第 1 步 —— 确定用户需求:

  • 按肌肉 → 使用 /api/v2/exercise/?muscles={id}&language=2&status=2&format=json
  • 按分类 → 使用 /api/v2/exercise/?category={id}&language=2&status=2&format=json
  • 按设备 → 使用 /api/v2/exercise/?equipment={id}&language=2&status=2&format=json
  • 按名称 → 使用 /api/v2/exercise/search/?term={查询}&language=english&format=json
  • 完整详情 → 使用 /api/v2/exerciseinfo/{exercise_id}/?format=json

第 2 步 —— 参考 ID:

练习分类:

ID分类
8手臂
9腿部
10腹部
11胸部
12背部
13肩部
14小腿
15有氧

肌肉:

ID肌肉ID肌肉
1肱二头肌2三角肌前束
3前锯肌4胸大肌
5腹外斜肌6腓肠肌
7腹直肌8臀大肌
9斜方肌10股四头肌
11股二头肌12背阔肌
13肱肌14肱三头肌
15比目鱼肌

设备:

ID设备
1杠铃
3哑铃
4健身垫
5瑞士球
6引体向上杆
7无(自重)
8卧推凳
9上斜凳
10壶铃

营养查询(USDA FoodData Central)

使用 USDA_API_KEY 环境变量(如已设置),否则回退到 DEMO_KEY。DEMO_KEY = 30 次请求/小时。免费注册密钥 = 1,000 次请求/小时。

离线计算器

使用 scripts/ 中的辅助脚本进行批量操作,或直接内联运行单一计算:

  • python3 scripts/body_calc.py bmi <体重_kg> <身高_cm>
  • python3 scripts/body_calc.py tdee <体重_kg> <身高_cm> <年龄> <M|F> <活动量 1-5>
  • python3 scripts/body_calc.py 1rm <重量> <次数>
  • python3 scripts/body_calc.py macros <tdee_kcal> <cut|maintain|bulk>
  • python3 scripts/body_calc.py bodyfat <M|F> <颈围_cm> <腰围_cm> [臀围_cm] <身高_cm>

参见 references/FORMULAS.md 了解每个公式背后的科学原理。


注意事项

  • wger 练习端点默认返回所有语言 —— 始终添加 language=2 获取英语
  • wger 包含未经验证的用户提交 —— 添加 status=2 仅获取已批准的练习
  • USDA DEMO_KEY30 次请求/小时限制 —— 批量请求间添加 sleep 2 或获取免费密钥
  • USDA 数据为每 100g —— 提醒用户按实际份量缩放
  • BMI 不区分肌肉和脂肪 —— 肌肉发达者的高 BMI 不一定不健康
  • 体脂公式为估算值(±3-5%)—— 建议使用 DEXA 扫描以获得精确值
  • 1RM 公式在超过 10 次时精度下降 —— 使用 3-5 次组获得最佳估算
  • wger 的 exercise/search 端点使用 term 而非 query 作为参数名称

验证

练习搜索后:确认结果包含练习名称、肌肉群和设备。 营养查询后:确认返回了每 100g 的宏量营养(热量、蛋白质、脂肪、碳水化合物)。 计算器后:对输出进行合理性检查(例如 TDEE 对大多数成年人应在 1500-3500 范围)。


快速参考

任务来源端点
按名称搜索练习wgerGET /api/v2/exercise/search/?term=&language=english
练习详情wgerGET /api/v2/exerciseinfo/{id}/
按肌肉筛选wgerGET /api/v2/exercise/?muscles={id}&language=2&status=2
按设备筛选wgerGET /api/v2/exercise/?equipment={id}&language=2&status=2
列出分类wgerGET /api/v2/exercisecategory/
列出肌肉wgerGET /api/v2/muscle/
搜索食物USDAGET /fdc/v1/foods/search?query=&dataType=Foundation,SR Legacy
食物详情USDAGET /fdc/v1/food/{fdcId}
BMI / TDEE / 1RM / 宏量离线python3 scripts/body_calc.py