| name | squat |
| description | Performs bodyweight squats by bending both hips and knees and dropping the body, then standing back up for reps. Use when the command mentions squat, squats, do squats, air squat, or knee bends for exercise. |
| category | exercise |
| disable-model-invocation | true |
| subskills | ["bend-knees","move-leg","move-arm","balance-and-posture"] |
Squat
Repeated down-and-up squats: flex both hips/knees together, drop root.y, then
return to standing. A looping sequence gives several reps.
How
- Down:
LeftUpLeg/RightUpLeg:[55,0,0], LeftLeg/RightLeg:[70,0,0] (Z goes to 0
when the hip flexes), lean the chest slightly forward (Spine:[15,0,0]) and
reach the arms forward (*UpperArm:[90,0,0]) for counterbalance. Drop
root.y:-0.3 so the feet stay planted.
- Up: legs back to rest (
*UpLeg:[0,0,180], *Leg:[0,0,0]), root.y:0.
- Keep it symmetric; deeper squat = bigger angles + lower
root.y (see
deep-squat).
Example
- "do some squats" ->
{"durationMs":3000,"say":"Feel the burn!","sequence":{"loop":3,"frames":[{"t":0,"pose":{"LeftUpLeg":[0,0,180],"LeftLeg":[0,0,0],"RightUpLeg":[0,0,180],"RightLeg":[0,0,0],"Spine":[0,0,0],"LeftUpperArm":[0,0,90],"RightUpperArm":[0,0,-90]},"root":{"y":0}},{"t":0.5,"pose":{"LeftUpLeg":[55,0,0],"LeftLeg":[70,0,0],"RightUpLeg":[55,0,0],"RightLeg":[70,0,0],"Spine":[15,0,0],"LeftUpperArm":[90,0,0],"RightUpperArm":[90,0,0]},"root":{"y":-0.3}},{"t":1,"pose":{"LeftUpLeg":[0,0,180],"LeftLeg":[0,0,0],"RightUpLeg":[0,0,180],"RightLeg":[0,0,0],"Spine":[0,0,0],"LeftUpperArm":[0,0,90],"RightUpperArm":[0,0,-90]},"root":{"y":0}}]}}