← 返回 Skills 市场
hisxo

withings-health

作者 hisxo · GitHub ↗ · v1.0.1
cross-platform ✓ 安全检测通过
2585
总下载
4
收藏
7
当前安装
2
版本数
在 OpenClaw 中安装
/install withings-health
功能描述
Fetches health data from the Withings API including weight, body composition (fat, muscle, bone, water), activity, and sleep. Use this skill when the user asks about their Withings data, weight history, body metrics, daily steps, sleep quality, or any health measurement from Withings devices.
使用说明 (SKILL.md)

This skill allows you to interact with the user's Withings account to retrieve comprehensive health metrics from Withings devices (smart scales, sleep analyzers, activity trackers, etc.).

When to Use This Skill

Use this skill when the user:

  • Asks about their weight or weight history
  • Wants to see their body composition (fat %, muscle mass, bone mass, hydration)
  • Requests their daily activity (steps, distance, calories burned)
  • Asks about their sleep data (duration, quality, deep sleep, REM)
  • Mentions "Withings" or any Withings device (Body+, Sleep Analyzer, ScanWatch, etc.)
  • Wants to track their health progress over time

Setup: Creating a Withings Developer App

Before using this skill, you need to create a free Withings developer application to get your API credentials.

Step 1: Create a Withings Developer Account

  1. Go to Withings Developer Portal
  2. Click Sign Up or Log In if you already have a Withings account
  3. Accept the Developer Terms of Service

Step 2: Create Your Application

  1. Navigate to My AppsCreate an Application
  2. Fill in the application details:
    • Application Name: Choose a name (e.g., "My Clawdbot Health")
    • Description: Brief description of your use case
    • Contact Email: Your email address
    • Callback URL: http://localhost:8080 (required for OAuth)
    • Application Type: Select "Personal Use" or appropriate type
  3. Submit the application

Step 3: Get Your Credentials

Once your application is created:

  1. Go to My Apps and select your application
  2. You'll find:
    • Client ID → Set as WITHINGS_CLIENT_ID environment variable
    • Client Secret → Set as WITHINGS_CLIENT_SECRET environment variable

Step 4: Configure Environment Variables

Add these to your Clawdbot environment:

export WITHINGS_CLIENT_ID="your_client_id_here"
export WITHINGS_CLIENT_SECRET="your_client_secret_here"

Or create a .env file in the skill directory (this file will be ignored by git):

WITHINGS_CLIENT_ID=your_client_id_here
WITHINGS_CLIENT_SECRET=your_client_secret_here

Configuration

The skill uses a wrapper.js script located in {baseDir}.

Before any data retrieval, check if the user is authenticated. If an error mentions "No token found", guide the user through the initial authentication process.

Available Commands

1. Authentication

First-time setup - generates the OAuth URL:

node {baseDir}/wrapper.js auth

After the user visits the URL and gets the authorization code:

node {baseDir}/wrapper.js auth YOUR_CODE_HERE

2. Get Weight

Retrieve the latest weight measurements:

node {baseDir}/wrapper.js weight

Returns the 5 most recent weight entries in JSON format.

Example output:

[
  { "date": "2026-01-17T08:30:00.000Z", "weight": "75.40 kg" },
  { "date": "2026-01-16T08:15:00.000Z", "weight": "75.65 kg" }
]

3. Get Body Composition

Retrieve comprehensive body metrics (fat, muscle, bone, water, BMI):

node {baseDir}/wrapper.js body

Returns the 5 most recent body composition measurements.

Example output:

[
  {
    "date": "2026-01-17T08:30:00.000Z",
    "weight": "75.40 kg",
    "fat_percent": "18.5%",
    "fat_mass": "13.95 kg",
    "muscle_mass": "35.20 kg",
    "bone_mass": "3.10 kg",
    "hydration": "55.2%"
  }
]

4. Get Activity

Retrieve daily activity data (steps, distance, calories):

node {baseDir}/wrapper.js activity

Optionally specify the number of days (default: 7):

node {baseDir}/wrapper.js activity 30

Example output:

[
  {
    "date": "2026-01-17",
    "steps": 8542,
    "distance": "6.23 km",
    "calories": 2150,
    "active_calories": 450,
    "soft_activity": "45 min",
    "moderate_activity": "22 min",
    "intense_activity": "8 min"
  }
]

5. Get Sleep

Retrieve sleep data and quality:

node {baseDir}/wrapper.js sleep

Optionally specify the number of days (default: 7):

node {baseDir}/wrapper.js sleep 14

Example output:

[
  {
    "date": "2026-01-17",
    "start": "23:15",
    "end": "07:30",
    "duration": "8h 15min",
    "deep_sleep": "1h 45min",
    "light_sleep": "4h 30min",
    "rem_sleep": "1h 30min",
    "awake": "30min",
    "sleep_score": 82
  }
]

Error Handling

Common errors and how to resolve them:

Error Cause Solution
"No token found" First time use, not authenticated Run node wrapper.js auth and follow the OAuth flow
"Failed to refresh token" Token expired and refresh failed Re-authenticate with node wrapper.js auth
"API Error Status: 401" Invalid or expired credentials Check your CLIENT_ID and CLIENT_SECRET, re-authenticate
"API Error Status: 503" Withings API temporarily unavailable Wait and retry later
Empty data No measurements in the requested period User needs to sync their Withings device

Notes

  • Tokens are automatically refreshed when they expire
  • Withings API scopes used: user.metrics, user.activity
  • Data availability depends on which Withings devices the user owns
  • Some metrics (like body composition) require a compatible smart scale
安全使用建议
This skill appears coherent for accessing Withings data: it needs your Withings client ID and secret and runs a local node script to perform OAuth and fetch metrics. Before installing or running it: 1) Inspect wrapper.js to confirm it only performs Withings API calls and to see where OAuth tokens are saved (disk location, permissions, encryption). 2) Keep your WITHINGS_CLIENT_SECRET private and do not commit a .env to version control. 3) Use the localhost OAuth callback as described and verify the app on Withings is configured correctly. 4) If you plan to let the AI model invoke skills autonomously, be aware the skill can use stored tokens to access your Withings data later — only proceed if you trust the code and token handling. If you are not comfortable reviewing the code, ask the publisher for a security summary of token storage and network destinations.
功能分析
Type: OpenClaw Skill Name: withings-health Version: 1.0.1 The skill bundle is benign. The `SKILL.md` provides clear instructions for the AI agent and user, without any prompt injection attempts or instructions for malicious actions. The `wrapper.js` script correctly implements the described functionality, handling OAuth authentication, token storage in `tokens.json`, and data retrieval from legitimate Withings API endpoints (`wbsapi.withings.net`, `account.withings.com`). It uses environment variables (`WITHINGS_CLIENT_ID`, `WITHINGS_CLIENT_SECRET`) for credentials and performs file operations only for its own configuration and token management, with no evidence of data exfiltration, malicious execution, or persistence mechanisms.
能力评估
Purpose & Capability
Name/description (Withings health data) align with required binaries (node) and required env vars (WITHINGS_CLIENT_ID, WITHINGS_CLIENT_SECRET). The commands in SKILL.md map to a local wrapper.js that would reasonably implement OAuth and API calls to Withings.
Instruction Scope
SKILL.md confines runtime actions to running wrapper.js for auth and data retrieval and explains the OAuth flow and expected outputs. It does not instruct reading unrelated files or asking for unrelated credentials. It suggests creating a local .env file and using localhost callback URL for OAuth, which is typical for developer apps.
Install Mechanism
There is no install spec (instruction-only) and the skill includes a local wrapper.js file; no external downloads or package installs are requested. Risk is limited to executing the provided JavaScript locally (node), so review of that file is recommended.
Credentials
Only WITHINGS_CLIENT_ID and WITHINGS_CLIENT_SECRET are required, which is proportionate for a Withings integration. The SKILL.md does not request unrelated secrets or multiple unrelated credentials. It does note token refresh behavior but does not specify where tokens are persisted — that should be verified in wrapper.js.
Persistence & Privilege
The skill is not marked always:true and has no OS restrictions. disable-model-invocation is not set (default model-invocable), which is normal for user-invoked integration skills. Confirm where and how tokens are stored (disk vs ephemeral) because persistent token storage could allow later access unless managed carefully.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install withings-health
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /withings-health 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.1
Expanded skill to support all major Withings health metrics and improved documentation. - Added support for retrieving body composition, activity, and sleep data in addition to weight. - Expanded documentation on when and how to use the skill, with detailed command examples and sample outputs. - Clarified error handling and troubleshooting steps. - Updated description to reflect broader capabilities (not just weight/activity). - Documented data formats and new command options for body metrics, activity period, and sleep history.
v1.0.0
Initial release of withings-health skill. - Fetch health data (weight, activity) from the Withings API using your own credentials. - Provides setup steps for creating a Withings developer app and environment variable configuration. - Supports OAuth authentication and token refresh. - Includes commands for authenticating and retrieving recent weight measurements. - Stores tokens locally in a private file.
元数据
Slug withings-health
版本 1.0.1
许可证
累计安装 7
当前安装数 7
历史版本数 2
常见问题

withings-health 是什么?

Fetches health data from the Withings API including weight, body composition (fat, muscle, bone, water), activity, and sleep. Use this skill when the user asks about their Withings data, weight history, body metrics, daily steps, sleep quality, or any health measurement from Withings devices. 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 2585 次。

如何安装 withings-health?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install withings-health」即可一键安装,无需额外配置。

withings-health 是免费的吗?

是的,withings-health 完全免费(开源免费),可自由下载、安装和使用。

withings-health 支持哪些平台?

withings-health 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 withings-health?

由 hisxo(@hisxo)开发并维护,当前版本 v1.0.1。

💬 留言讨论