Hevy
/install hevy
Hevy CLI
CLI for the Hevy workout tracking API. Query workouts, routines, exercises, and track progress.
Setup
Requires Hevy Pro subscription for API access.
- Get API key from https://hevy.com/settings?developer
- Set environment variable:
export HEVY_API_KEY="your-key"
Commands
Status
# Check configuration and connection
hevy status
Workouts
# List recent workouts (default 5)
hevy workouts
hevy workouts --limit 10
# Fetch all workouts
hevy workouts --all
# Show detailed workout
hevy workout \x3Cworkout-id>
# JSON output
hevy workouts --json
hevy workout \x3Cid> --json
# Show weights in kg (default is lbs)
hevy workouts --kg
Routines
# List all routines
hevy routines
# Show detailed routine
hevy routine \x3Croutine-id>
# JSON output
hevy routines --json
Exercises
# List all exercise templates
hevy exercises
# Search by name
hevy exercises --search "bench press"
# Filter by muscle group
hevy exercises --muscle chest
# Show only custom exercises
hevy exercises --custom
# JSON output
hevy exercises --json
Exercise History
# Show history for specific exercise
hevy history \x3Cexercise-template-id>
hevy history \x3Cexercise-template-id> --limit 50
# JSON output
hevy history \x3Cexercise-template-id> --json
Creating Routines
# Create routine from JSON (stdin)
echo '{"routine": {...}}' | hevy create-routine
# Create routine from file
hevy create-routine --file routine.json
# Create a routine folder
hevy create-folder "Push Pull Legs"
# Update existing routine
echo '{"routine": {...}}' | hevy update-routine \x3Croutine-id>
# Create custom exercise (checks for duplicates first!)
hevy create-exercise --title "My Exercise" --muscle chest --type weight_reps
# Force create even if duplicate exists
hevy create-exercise --title "My Exercise" --muscle chest --force
⚠️ Duplicate Prevention: create-exercise checks if an exercise with the same name already exists and will error if found. Use --force to create anyway (not recommended).
Routine JSON format:
{
"routine": {
"title": "Push Day 💪",
"folder_id": null,
"notes": "Chest, shoulders, triceps",
"exercises": [
{
"exercise_template_id": "79D0BB3A",
"notes": "Focus on form",
"rest_seconds": 90,
"sets": [
{ "type": "warmup", "weight_kg": 20, "reps": 15 },
{ "type": "normal", "weight_kg": 60, "reps": 8 }
]
}
]
}
}
Other
# Total workout count
hevy count
# List routine folders
hevy folders
Usage Examples
User asks "What did I do at the gym?"
hevy workouts
User asks "Show me my last chest workout"
hevy workouts --limit 10 # Find relevant workout ID
hevy workout \x3Cid> # Get details
User asks "How am I progressing on bench press?"
hevy exercises --search "bench press" # Get exercise template ID
hevy history \x3Cexercise-id> # View progression
User asks "What routines do I have?"
hevy routines
hevy routine \x3Cid> # For details
User asks "Find leg exercises"
hevy exercises --muscle quadriceps
hevy exercises --muscle hamstrings
hevy exercises --muscle glutes
User asks "Create a push day routine"
# 1. Find exercise IDs
hevy exercises --search "bench press"
hevy exercises --search "shoulder press"
# 2. Create routine JSON with those IDs and pipe to create-routine
Notes
- Duplicate Prevention:
create-exercisechecks for existing exercises with the same name before creating. Use--forceto override (not recommended). - API Limitations: Hevy API does NOT support deleting or editing exercise templates - only creating. Delete exercises manually in the app.
- API Rate Limits: Be mindful when fetching all data (--all flag)
- Weights: Defaults to lbs, use --kg for kilograms
- Pagination: Most commands auto-paginate, but limit flags help reduce API calls
- IDs: Workout/routine/exercise IDs are UUIDs, shown in detailed views
API Reference
Full API docs: https://api.hevyapp.com/docs/
Available Endpoints
GET /v1/workouts- List workouts (paginated)GET /v1/workouts/{id}- Get single workoutGET /v1/workouts/count- Total workout countGET /v1/routines- List routinesGET /v1/routines/{id}- Get single routineGET /v1/exercise_templates- List exercisesGET /v1/exercise_templates/{id}- Get single exerciseGET /v1/exercise_history/{id}- Exercise historyGET /v1/routine_folders- List folders
Write Operations (supported but use carefully)
POST /v1/workouts- Create workoutPUT /v1/workouts/{id}- Update workoutPOST /v1/routines- Create routinePUT /v1/routines/{id}- Update routinePOST /v1/exercise_templates- Create custom exercisePOST /v1/routine_folders- Create folder
The CLI focuses on read operations. Write operations are available via the API client for programmatic use.
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install hevy - 安装完成后,直接呼叫该 Skill 的名称或使用
/hevy触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
Hevy 是什么?
Query workout data from Hevy including workouts, routines, exercises, and history. Use when user asks about their workouts, gym sessions, exercise progress, or fitness routines. 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 2614 次。
如何安装 Hevy?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install hevy」即可一键安装,无需额外配置。
Hevy 是免费的吗?
是的,Hevy 完全免费(开源免费),可自由下载、安装和使用。
Hevy 支持哪些平台?
Hevy 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 Hevy?
由 Matt Russell(@mjrussell)开发并维护,当前版本 v0.2.0。