Communitygithub.com

eddmann/strava-cli

查询 Strava 健身数据,包括活动、运动员统计、路段、路线、俱乐部和装备。适用于用户询问骑行、跑步、游泳、锻炼、训练或 Strava 数据时。

strava-cli 是什么?

此技能通过 `strava` 命令行界面提供对 Strava 健身数据的全面查询和管理能力。它允许开发者或 AI 代理直接获取运动员资料、活动记录(如骑行、跑步、游泳)、路段探索与成绩、路线导出、俱乐部信息以及装备详情。该技能适用于任何支持 CLI 调用的平台,包括 Cursor、Codex 等,通过简单的命令即可集成到自动化工作流或智能对话中。技能依赖一个安装脚本和 OAuth 认证(需要配置 `STRAVA_CLIENT_ID` 和 `STRAVA_CLIENT_SECRET`),并提供 `context` 命令快速聚合核心数据(运动员统计、装备、俱乐部、近期活动)。此外,支持通过 `jq` 对返回的 JSON 数据进行过滤和计算,并返回标准化的数据单位(如距离为米、时间为秒)。

兼容平台~Claude Code~Codex CLI~Cursor
npx skills add eddmann/strava-cli

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

Strava CLI 技能

通过 strava CLI 查询和管理 Strava 数据。

前提条件

  • 安装 CLI:curl -fsSL https://raw.githubusercontent.com/eddmann/strava-cli/main/install.sh | sh
  • 认证:strava auth login(需要 STRAVA_CLIENT_ID、STRAVA_CLIENT_SECRET)

快速上下文

通过一次调用获取聚合的运动员数据:

strava context                          # 完整上下文:运动员、统计、装备、俱乐部、活动
strava context --activities 10          # 更多近期活动
strava context --focus stats,gear       # 仅特定部分

命令

运行 strava --help 或 strava <command> --help 查看所有选项。

活动

strava activities list [--after DATE] [--before DATE] [--limit N]
strava activities get <ID>
strava activities streams <ID> [--keys time,distance,heartrate,watts]
strava activities laps <ID>
strava activities zones <ID>
strava activities comments <ID>
strava activities kudos <ID>

运动员

strava athlete              # 个人资料
strava athlete stats        # 年度和累计总数
strava athlete zones        # 心率和功率区间

路段与成绩

strava segments get <ID>
strava segments starred
strava segments explore --bounds SW_LAT,SW_LNG,NE_LAT,NE_LNG
strava efforts get <ID>
strava efforts list --segment-id <ID>

路线、俱乐部、装备

strava routes list
strava routes get <ID>
strava routes streams <ID>
strava routes export <ID> --format gpx|tcx
strava clubs list
strava clubs get <ID>
strava clubs members <ID> [--limit N]
strava clubs activities <ID> [--limit N]
strava gear get <GEAR_ID>

数据单位

字段单位
distance米
moving_time, elapsed_time秒
average_speed, max_speed米/秒
elevation米
datesISO8601

常见模式

# 近期活动
strava activities list --limit 10

# 本月活动
strava activities list --after 2025-12-01

# 使用 jq 过滤
strava activities list | jq '[.[] | select(.sport_type=="Run")]'

# 总距离
strava activities list | jq '[.[].distance] | add'

认证状态

strava auth status    # 检查是否已认证
strava auth refresh   # 刷新令牌
strava auth logout    # 清除凭据

运动类型

Run, TrailRun, Walk, Hike, Ride, MountainBikeRide, GravelRide, EBikeRide, VirtualRide, VirtualRun, Swim, Workout, WeightTraining, Yoga, CrossFit, Rowing, Kayaking, Surf, Ski, Snowboard, IceSkate, Golf, Soccer, Tennis

退出码

  • 0 = 成功
  • 1 = 一般错误
  • 2 = 认证错误(请运行 strava auth login)

相关技能