← Back to Skills Marketplace
ernestyu

ClawHealth Garmin

by Ernestyu · GitHub ↗ · v0.1.8 · MIT-0
cross-platform ✓ Security Clean
221
Downloads
0
Stars
1
Active Installs
9
Versions
Install in OpenClaw
/install clawhealth-garmin
Description
Lightweight Garmin Connect skill that uses the clawhealth Python package to sync health data into local SQLite and expose JSON-friendly commands for OpenClaw.
README (SKILL.md)

\r \r

clawhealth-garmin (OpenClaw Skill)\r

\r Sync your Garmin Connect health data into a local SQLite database\r and expose it as structured JSON for OpenClaw agents.\r \r Your agent can then query things like:\r \r

  • "How did I sleep yesterday?"\r
  • "What is my HRV trend this week?"\r
  • "Am I overtraining?"\r \r This is a thin wrapper skill around the published clawhealth\r Python package / CLI; it no longer fetches source code itself.\r \r

What It Does\r

\r

  • Login with username/password (MFA supported)\r
  • Sync daily health summaries into SQLite (stage 1)\r
  • Fetch HRV + training metrics via separate commands (stage 2)\r
  • Fetch sleep stages + sleep score (stage 2)\r
  • Fetch body composition (stage 2)\r
  • Fetch activity lists and full activity details (stage 2)\r
  • Fetch menstrual day view and calendar range if supported by garminconnect (experimental)\r
  • Provide --json outputs for agent workflows\r
  • Persist raw JSON payloads for later analysis\r \r

Prerequisites\r

\r

  • Python 3.10+\r
  • Network access to Garmin Connect\r
  • Garmin account (may require MFA)\r \r If you run OpenClaw in Docker, you may prefer a prepatched image that already\r includes the required Python dependencies:\r \r
  • ernestyu/openclaw-patched\r \r

Setup\r

\r

  1. Create {baseDir}/.env (see {baseDir}/ENV_EXAMPLE.md).\r \r Recommended: use CLAWHEALTH_GARMIN_PASSWORD_FILE (password file) rather than\r CLAWHEALTH_GARMIN_PASSWORD (plaintext env var).\r \r Note: relative paths in env vars (like ./garmin_pass.txt) are resolved relative\r to the skill directory by run_clawhealth.py.\r \r
  2. Install the clawhealth package into a local .venv (if needed):\r \r
python {baseDir}/bootstrap_deps.py\r
```\r
\r
3) Run the skill entrypoint via OpenClaw, which will invoke `run_clawhealth.py`.\r
\r
See `README.md` / `README_zh.md` in this directory and the root repo for\r
more details.\r
Usage Guidance
This skill appears to do what it says: it will create a local .venv, install the published 'clawhealth' package from PyPI, and run the clawhealth CLI to sync Garmin data into a SQLite DB under the skill folder. Before installing, verify you trust the clawhealth package on PyPI / the linked GitHub repo, and prefer using a password file (CLAWHEALTH_GARMIN_PASSWORD_FILE) with restricted permissions. Run the skill in an isolated environment if you want to limit risk (e.g., a container), don't commit .env/password/db files to source control, and be aware the skill needs network access for Garmin and pip. Also note small doc inconsistencies (README mentions GitHub fetch) — if you need higher assurance, inspect the installed clawhealth package contents after bootstrap_deps.py runs or ask the author which upstream source will actually be used at runtime.
Capability Analysis
Type: OpenClaw Skill Name: clawhealth-garmin Version: 0.1.8 The clawhealth-garmin skill is a legitimate wrapper for the 'clawhealth' Python package, designed to sync Garmin Connect health data to a local SQLite database. The code follows standard practices, using bootstrap_deps.py to manage dependencies via pip and run_clawhealth.py to delegate commands to the installed CLI. While it handles sensitive Garmin credentials, the documentation (README.md) emphasizes local storage and security best practices, such as using password files instead of plaintext environment variables, and there is no evidence of data exfiltration or malicious intent.
Capability Assessment
Purpose & Capability
The name/description (Garmin → local SQLite, expose JSON commands) align with the required binaries (python) and env vars (Garmin username, password file, DB, config dir). Requiring network access is expected for Garmin logins and pip installs. One minor inconsistency: README claims runtime fetching from GitHub, but bootstrap_deps.py installs the published clawhealth package from PyPI into a local .venv (SKILL.md and bootstrap_deps.py reflect the latter).
Instruction Scope
SKILL.md and run_clawhealth.py describe only scoped actions: load a local .env, set skill-local defaults, resolve relative paths to the skill directory, and invoke the installed 'clawhealth' CLI. The code does not read arbitrary system files or transmit data to unknown endpoints; network use is limited to Garmin and Python package installation. The script delegates credential handling to the clawhealth CLI (which will read the password file), so review of the published clawhealth package is recommended.
Install Mechanism
There is no registry install spec, but the package includes bootstrap_deps.py which creates a .venv and runs pip install clawhealth>=0.1.1. Installing from PyPI into a local venv is a standard approach and expected here, but it requires network access to PyPI. No obscure URLs or archive extraction are used.
Credentials
Requested env vars (CLAWHEALTH_GARMIN_USERNAME, CLAWHEALTH_GARMIN_PASSWORD_FILE, CLAWHEALTH_DB, CLAWHEALTH_CONFIG_DIR) match the skill's purpose (authenticate to Garmin, locate DB and config). The README's recommendation to use a password file is appropriate. Minor metadata inconsistency: the registry summary listed 'Primary credential: none' while SKILL.md metadata names CLAWHEALTH_GARMIN_PASSWORD_FILE as primary; this is a documentation mismatch but not a functional risk.
Persistence & Privilege
The skill does not request 'always: true' and is user-invocable. It writes a .venv, config, and data files under the skill directory (expected behavior). It does not modify other skills or system-wide agent settings.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install clawhealth-garmin
  3. After installation, invoke the skill by name or use /clawhealth-garmin
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v0.1.8
clawhealth-garmin v0.1.8 - Updated version to 0.1.8. - Improved documentation and internal metadata. - Removed outdated ENV_EXAMPLE.md file.
v0.1.7
**Summary: Migrates from fetching source to using the published `clawhealth` PyPI package.** - Now uses the `clawhealth` package from PyPI instead of downloading source from GitHub. - Removed fetch_src.py and other source-fetching logic/files. - Updated install and bootstrap steps to install dependencies from PyPI via `bootstrap_deps.py`. - Simplified skill metadata and installation instructions. - Updated and shortened documentation in SKILL.md to match the new usage.
v0.1.6
clawhealth-garmin 0.1.6 - Version bump to 0.1.6. - Documentation refreshed in SKILL.md with no functional or structural changes.
v0.1.5
clawhealth-garmin v0.1.5 - Added install instructions and a shell setup script to the manifest for easier onboarding and automated setup. - Updated required environment variables: removed several that are no longer needed, keeping only the essentials. - Documentation in SKILL.md simplified and installation process clarified.
v0.1.4
clawhealth-garmin 0.1.4 - Updated version to 0.1.4. - No user-facing changes to documentation, commands, or features. - Minor internal or metadata updates only.
v0.1.3
- Updated primary environment variable to CLAWHEALTH_GARMIN_PASSWORD_FILE for improved security. - Simplified and clarified documentation in SKILL.md and README files. - Removed the Chinese SKILL_zh.md file; only English documentation is now maintained. - No changes to the core code or functionality.
v0.1.2
- Added ENV_EXAMPLE.md file for environment variable setup guidance. - Expanded and clarified metadata in SKILL.md, specifying required binaries and environment variables. - Added version field and primary environment variable to SKILL.md. - Improved setup instructions to reference ENV_EXAMPLE.md and clarified behavior of auto-fetch and auto-bootstrap environment variables. - No breaking changes to core logic or commands.
v0.1.1
clawhealth-garmin v0.1.1 - Introduced a lightweight Garmin Connect skill that fetches the `clawhealth` source from GitHub at install/runtime. - Syncs health data from Garmin into a local SQLite database. - Exposes JSON-friendly CLI commands for OpenClaw agent use, including daily summaries, HRV, training metrics, sleep data, body composition, activity, and experimental menstrual data fetches. - Supports login with Garmin credentials (including MFA) and includes diagnostics/trend analysis commands. - Offers configuration flexibility via environment variables and prioritizes local data storage and credential security. - Activity and advanced metrics are currently stored as raw JSON; endpoint/device support varies.
v0.1.0
Initial public release
Metadata
Slug clawhealth-garmin
Version 0.1.8
License MIT-0
All-time Installs 1
Active Installs 1
Total Versions 9
Frequently Asked Questions

What is ClawHealth Garmin?

Lightweight Garmin Connect skill that uses the clawhealth Python package to sync health data into local SQLite and expose JSON-friendly commands for OpenClaw. It is an AI Agent Skill for Claude Code / OpenClaw, with 221 downloads so far.

How do I install ClawHealth Garmin?

Run "/install clawhealth-garmin" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is ClawHealth Garmin free?

Yes, ClawHealth Garmin is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does ClawHealth Garmin support?

ClawHealth Garmin is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created ClawHealth Garmin?

It is built and maintained by Ernestyu (@ernestyu); the current version is v0.1.8.

💬 Comments