TopRank Skills

Official OpenClaw rules 54%

garmer

Extract health and fitness data from Garmin Connect including activities, sleep, heart rate, stress, steps, and body composition. Use when the user asks about their Garmin data, fitness metrics, sleep analysis, or health insights.

Stars

0

Installs

0

Status

ACTIVE

Visibility

PUBLIC

安装方式

直接复制以下提示词,发送给你的 AI 助手即可完成安装。

请先检查是否已安装 SkillHub 商店,若未安装,请根据 https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/skillhub.md 安装 SkillHub 商店,然后安装 garmer 技能。 若已安装,则直接安装 garmer 技能。

Overview

Skill Key
garrza/garmer
Author
garrza
Source Repo
openclaw/skills
Version
-
Source Path
skills/garrza/garmer
Latest Commit SHA
8b40289a649324fd9dbef4220b8888e7cfec8fd0

Extracted Content

SKILL.md excerpt

# Garmer - Garmin Data Extraction Skill

This skill enables extraction of health and fitness data from Garmin Connect for analysis and insights.

## Prerequisites

1. A Garmin Connect account with health data
2. The `garmer` CLI tool installed (see installation options in metadata)

## Authentication (One-Time Setup)

Before using garmer, authenticate with Garmin Connect:

```bash
garmer login
```

This will prompt for your Garmin Connect email and password. Tokens are saved to `~/.garmer/garmin_tokens` for future use.

To check authentication status:

```bash
garmer status
```

## Available Commands

### Daily Summary

Get today's health summary (steps, calories, heart rate, stress):

```bash
garmer summary
# For a specific date:
garmer summary --date 2025-01-15
# Include last night's sleep data:
garmer summary --with-sleep
garmer summary -s
# JSON output for programmatic use:
garmer summary --json
# Combine flags:
garmer summary --date 2025-01-15 --with-sleep --json
```

### Sleep Data

Get sleep analysis (duration, phases, score, HRV):

```bash
garmer sleep
# For a specific date:
garmer sleep --date 2025-01-15
```

### Activities

List recent fitness activities:

```bash
garmer activities
# Limit number of results:
garmer activities --limit 5
# Filter by specific date:
garmer activities --date 2025-01-15
# JSON output for programmatic use:
garmer activities --json
```

### Activity Detail

Get detailed information for a single activity:

```bash
# Latest activity:
garmer activity
# Specific activity by ID:
garmer activity 12345678
# Include lap data:
garmer activity --laps
# Include heart rate zone data:
garmer activity --zones
# JSON output:
garmer activity --json
# Combine flags:
garmer activity 12345678 --laps --zones --json
```

### Health Snapshot

Get comprehensive health data for a day:

```bash
garmer snapshot
# For a specific date:
garmer snapshot --date 2025-01-15
# As JSON for programmatic use:
garmer snapshot --json
```

### Export Data

Export multip...

README excerpt

# Garmer - Garmin Data Extraction Tool

A Python library for extracting health and fitness data from Garmin Connect, designed for integration with MoltBot and other health insight applications.

## Features

- **Comprehensive Data Extraction**: Access activities, sleep, heart rate, stress, steps, body composition, hydration, and more
- **Easy Authentication**: OAuth-based authentication with token persistence
- **MoltBot Integration Ready**: Designed for seamless integration with AI health assistants
- **CLI Tool**: Command-line interface for quick data access
- **Type-Safe Models**: Pydantic-based data models with full type hints
- **Flexible Export**: Export data in JSON format for analysis

## Installation

```bash
# Install from source
pip install -e .

# Or with development dependencies
pip install -e ".[dev]"
```

## Quick Start

### Command Line

```bash
# Login to Garmin Connect
garmer login

# Check authentication status
garmer status

# Get today's summary
garmer summary

# Get sleep data
garmer sleep

# Get recent activities
garmer activities

# Get full health snapshot
garmer snapshot --json

# Export data
garmer export --days 7 -o my_data.json
```

### Python API

```python
from garmer import GarminClient

# Login with credentials (tokens are saved automatically)
client = GarminClient.from_credentials(
    email="your-email@example.com",
    password="your-password",
)

# Or use saved tokens
client = GarminClient.from_saved_tokens()

# Get today's summary
summary = client.get_daily_summary()
print(f"Steps: {summary.total_steps}")

# Get sleep data
sleep = client.get_sleep()
print(f"Sleep: {sleep.total_sleep_hours:.1f} hours")

# Get recent activities
activities = client.get_recent_activities(limit=5)
for activity in activities:
    print(f"{activity.activity_name}: {activity.distance_km:.1f} km")

# Get comprehensive health snapshot
snapshot = client.get_health_snapshot()

# Get weekly report
report = client.get_weekly_health_report()
```

## Available...

Related Claw Skills