openclaw 网盘下载
OpenClaw

技能详情(站内镜像,无评论)

首页 > 技能库 > Nori Health

Query your personal health data from wearables and nutrition logs and get AI coaching on sleep, workouts, heart rate, recovery, and health insights.

开发与 DevOps

作者:Dan Murphy @danmurphy1217

许可证:MIT-0

MIT-0 ·免费使用、修改和重新分发。无需归因。

版本:v1.0.6

统计:⭐ 2 · 377 · 0 current installs · 0 all-time installs

2

安装量(当前) 0

🛡 VirusTotal :良性 · OpenClaw :良性

Package:danmurphy1217/nori-health

安全扫描(ClawHub)

  • VirusTotal :良性
  • OpenClaw :良性

OpenClaw 评估

The skill is internally consistent with its stated purpose (relaying user health queries to the Nori API) and requires a single Nori API key; the primary residual risk is privacy of sensitive health data and a minor metadata mismatch in the registry.

目的

The name/description (health coaching from wearables/nutrition) matches the runtime instructions: messages are POSTed to https://api.nori.health with a Bearer NORI_API_KEY. The requirement for curl/jq and an API key is appropriate. Note: the registry metadata supplied earlier stated no required env vars, but SKILL.md declares NORI_API_KEY and required bins (curl, jq) — this mismatch may cause runtime confusion or deployment errors.

说明范围

SKILL.md limits behavior to forwarding the user's message verbatim to Nori and returning Nori's reply verbatim. It does not instruct reading unrelated files or other credentials. Important privacy note: forwarding verbatim health data to an external service is expected for the skill but is inherently sensitive — the instructions also suggest storing the API key in ~/.openclaw/openclaw.json (plaintext), which raises local-secret storage risk.

安装机制

Instruction-only skill with no install spec and no code files — nothing is written to disk by the skill itself. This is a low-installation-risk configuration.

证书

The only credential the instructions require is NORI_API_KEY, which is proportional to the stated API-forwarding purpose. The declared dependency on curl and jq is reasonable. However, the registry-level metadata earlier indicated no required env vars while the SKILL.md requires NORI_API_KEY — this inconsistency should be resolved before install. Also consider that the API key and sensitive health data are being transmitted to a third party, w…

持久

The skill does not request always:true or any elevated persistence or system-wide configuration changes. It only suggests storing a key in the agent's config (its own config), which is normal for API-based skills.

综合结论

This skill appears to do what it says: it relays your health-related messages to Nori's API and returns Nori's reply. Before installing: 1) Be sure you trust Nori (https://nori.health) and read its privacy policy — you're sending sensitive health data to an external service. 2) Verify the skill's source/owner if possible (registry shows an owner ID but no homepage in the top-level metadata); unknown source reduces trust. 3) Note the registry m…

安装(复制给龙虾 AI)

将下方整段复制到龙虾中文库对话中,由龙虾按 SKILL.md 完成安装。

请把本段交给龙虾中文库(龙虾 AI)执行:为本机安装 OpenClaw 技能「Nori Health」。简介:Query your personal health data from wearables and nutrition logs and get AI co…。
请 fetch 以下地址读取 SKILL.md 并按文档完成安装:https://raw.githubusercontent.com/openclaw/skills/refs/heads/main/skills/danmurphy1217/nori-health/SKILL.md
(来源:yingzhi8.cn 技能库)

SKILL.md

打开原始 SKILL.md(GitHub raw)

---
name: nori-health
description: Query your personal health data and get coaching from Nori, your AI health coach. Use when the user asks about sleep, workouts, nutrition, weight, heart rate, HRV, or wants health insights. NOT for: medical diagnosis, prescriptions, or emergency health situations.
homepage: https://nori.health
metadata: {"openclaw":{"emoji":"🌿","requires":{"env":["NORI_API_KEY"],"bins":["curl","jq"]},"primaryEnv":"NORI_API_KEY"}}
---

# Nori Health Coach

Send health questions to Nori and return the response. Nori analyzes data from wearables (Apple Watch, Oura, Garmin, Whoop, etc.), meals, workouts, weight, and lab results.

## Setup

1. Install the Nori iOS app and connect your wearables
2. In the Nori app, go to Settings > Integrations > OpenClaw
3. Generate an API key (starts with `nori_`)
4. Set the environment variable:
   ```bash
   export NORI_API_KEY="nori_your_key_here"
   ```
   Or add to `~/.openclaw/openclaw.json`:
   ```json
   {
     "skills": {
       "entries": {
         "nori-health": {
           "apiKey": "nori_your_key_here"
         }
       }
     }
   }
   ```

## When to Use

- "Compare my sleep on days I work out vs rest days"
- "What should I eat to hit my protein goal today?"
- "Show me my resting heart rate trend this month"
- "How's my recovery looking after yesterday's run?"
- "I had two eggs and toast with avocado for breakfast"
- "I did 30 minutes of strength training"
- "What patterns do you see between my sleep and HRV?"

## Usage

Send the user's message to Nori via the chat endpoint. Always forward the user's exact words.

Use `jq -n` to safely escape the user's message into valid JSON, and capture the HTTP status code to handle errors:

```bash
RESPONSE=$(curl -s -w "n%{http_code}" -X POST "https://api.nori.health/api/v1/openclaw/chat" 
  -H "Authorization: Bearer $NORI_API_KEY" 
  -H "Content-Type: application/json" 
  -d "$(jq -n --arg msg "USER_MESSAGE_HERE" '{message: $msg}')")
HTTP_CODE=$(echo "$RESPONSE" | tail -1)
BODY=$(echo "$RESPONSE" | sed '$d')

if [ "$HTTP_CODE" -eq 200 ]; then
  echo "$BODY" | jq -r '.reply'
elif [ "$HTTP_CODE" -eq 401 ]; then
  echo "Your Nori API key is invalid. Please regenerate it in the Nori app under Settings > Integrations > OpenClaw."
elif [ "$HTTP_CODE" -eq 429 ]; then
  echo "Rate limited. Wait a moment and try again."
else
  echo "Something went wrong connecting to Nori (HTTP $HTTP_CODE)."
fi
```

## Response Handling

- On success (200): return the `.reply` field directly to the user as plain text. Do not add markdown formatting, bullet points, or other decoration.
- On 401: tell the user their Nori API key is invalid and to regenerate it in the Nori app.
- On 429: tell the user to wait a moment and try again.
- On other errors: tell the user something went wrong connecting to Nori, including the HTTP status code.

## Important

- Forward the user's message verbatim. Do not rephrase, summarize, or add context.
- Return Nori's reply verbatim. Do not reformat, summarize, or add commentary.
- Nori handles all health data analysis, logging, and coaching. Your job is just to relay messages.
- Nori is not a medical service. If the user asks for medical diagnosis or emergency help, direct them to a doctor or emergency services instead.