核心用法
strava-python 是一款面向 Strava 运动数据查询的 Python 技能,通过 OpenClaw 平台提供交互式数据获取能力。用户需先运行 setup.py 完成 Strava API 应用的创建与 OAuth 认证流程,凭据自动保存至本地 ~/.strava_credentials.json。核心功能通过 strava_control.py 实现,支持三类查询::recent 获取近期活动列表、、stats 输出周/月度统计、、last 查看最近一条运动记录。整个流程无需手动编辑 JSON 配置文件,降低了非技术用户的使用门槛。
显著优点
交互式配置体验:相比同类基于 curl 的技能需要手动配置 API 密钥,本技能提供完整的向导式 setup 脚本,自动引导用户完成 Strava 开发者应用注册、授权回调设置和令牌获取,显著降低配置错误率。
依赖成熟可靠:核心依赖 stravalib 是 Strava 官方认可的 Python SDK,社区维护活跃、文档完善,API 封装规范,避免了直接处理 HTTP 请求和 OAuth 流程的复杂性。
数据本地化存储:用户敏感凭据(access_token、refresh_token、client_secret)仅保存在用户主目录的本地 JSON 文件,无云端上传或第三方服务器交互,隐私可控性强。
权限申请透明:SKILL.md 明确声明所需权限范围(read、activity:read_all 等),与只读查询功能完全匹配,无过度授权风险。
潜在缺点与局限性
来源可信度限制:作为 openclaw 社区组织的 T3 级贡献,缺乏知名企业或基金会的背书,对来源可信度要求极高的企业环境可能不适用。
API 速率限制约束:Strava 官方限制 100 请求/15 分钟、1000 请求/天,无法满足大规模数据抓取或高频实时监控场景。
功能只读受限:当前仅支持查询操作,无法创建、修改或删除活动,对于需要数据回写的自动化工作流不适用。
Python 环境依赖:要求预装 Python 3.7+ 和 pip 包管理器,在部分精简环境或容器化部署中可能增加配置成本。
适合的目标群体
- 个人运动爱好者:希望快速通过自然语言查询自己的 Strava 数据,无需学习 API 文档
- 健身数据分析师:需要定期导出运动统计进行个人表现追踪
- OpenClaw/Claude 生态用户:寻求与 AI 助手集成的运动数据交互方案
- 轻量级开发者:需要基于 Strava 数据构建个人自动化工具,但不愿从零处理 OAuth 流程
使用风险
凭据泄露风险:~/.strava_credentials.json 包含完整 API 访问令牌,若文件权限配置不当或在共享环境使用,可能导致账户数据被未授权访问。建议手动设置 600 权限并避免版本控制提交。
令牌失效处理:Strava access_token 每 6 小时过期,依赖 refresh_token 自动续期。若长期未使用导致 refresh_token 失效,需重新运行 setup 流程。
外部依赖变更:stravalib 库若发布不兼容更新,可能影响功能稳定性。建议通过 requirements.txt 锁定版本。
网络可用性依赖:所有数据查询依赖 Strava 官方 API 服务可用性,无法离线使用。