- name
- exercise-reference
- description
- 根据天气、空气质量、身体状态和历史运动评分记录,判断当天是否适合运动并给出百分制评分。用于用户用中文询问今天是否适合运动、要求运动建议、或提供 information 信息需要评分时。
# 运动参考
本 skill 主要面向中文交互。回答用户时使用中文,结论要直接:给出分数、适合程度、建议,以及最关键的扣分原因。
## 工作流程
1. 收集用户给出的信息;如果用户没有给位置或天气信息,可先根据当前上下文自行整理已有信息,不要为了非关键字段反复追问。
2. 如需参考历史,读取 `references/exercise-history.md`。重点看最近几次的分数、身体状态、扣分原因和建议,作为判断训练负荷与恢复状态的参考。
3. 将可用信息整理成 JSON 对象,调用 `scripts/score.py` 评分。
4. 默认让脚本把本次推荐、输入信息、计算过程和日期追加到 `references/exercise-history.md`,供下次查询参考。
5. 回复用户时,不要逐字转储 JSON;用自然中文总结结果。
## 输入字段
字段可以不完整,缺失字段会按中性处理。支持中文和英文键名。
- `temperature` / `temp` / `温度` / `气温`:摄氏温度
- `humidity` / `湿度`:百分比
- `aqi` / `air_quality_index` / `空气质量指数`
- `pm25` / `pm2_5` / `pm2.5` / `PM2.5`
- `precipitation` / `rain` / `rain_probability` / `降水概率` / `降雨` / `降水`
- `wind_speed` / `wind` / `风速` / `风力`
- `uv_index` / `uv` / `紫外线` / `紫外线指数`
- `weather` / `condition` / `天气` / `天气状况`
- `sleep_hours` / `sleep` / `睡眠时长` / `睡眠`
- `fatigue` / `tiredness` / `疲劳` / `疲劳感`:建议 0-10
- `soreness` / `muscle_soreness` / `酸痛` / `肌肉酸痛`:建议 0-10
- `resting_heart_rate` / `resting_hr` / `静息心率`
- `stress` / `压力`:建议 0-10
- `sick` / `illness` / `生病` / `身体不适`
- `fever` / `发烧` / `发热`
- `injured` / `injury` / `受伤` / `伤病`
## 调用方式
在 PowerShell 中运行:
```powershell
python .agents/skills/exercise-reference/scripts/score.py '{"温度":22,"空气质量指数":45,"睡眠时长":7.5}'
```
如果本机使用 Windows Python 启动器,可将 `python` 替换为 `py`。
如只想测试评分、不写入历史记录,添加 `--no-record`:
```powershell
python .agents/skills/exercise-reference/scripts/score.py '{"温度":22,"空气质量指数":45}' --no-record
```
## 输出字段
脚本返回 JSON:
- `score`:0-100 分
- `suitable`:是否适合正常运动
- `level`:适合程度
- `recommendation`:中文运动建议
- `reasons`:主要扣分或封顶原因
- `calculation`:完整计算过程
- `history_path`:写入历史记录的路径;使用 `--no-record` 时没有该字段
## 回复模板
优先使用这种简洁结构:
```text
今天运动适合度:<score>/100,<level>。
建议:<recommendation>
主要原因:<挑 1-3 条 reasons>。
已把这次计算过程记录到 references/exercise-history.md,后续可以作为恢复状态参考。
```
Ver no GitHub