Health Report

👤 tankeito 📦 v1.0.10 ⭐ 4.4 ⬇️ 1K 下載
🏠 生活服務 免費 🔑 需 API Key

📖 技能介紹


name: health_report version: 1.0.9 install: pip install -r requirements.txt capabilities: - file_read - http_request env: - MEMORY_DIR - TAVILY_API_KEY - DINGTALK_WEBHOOK - FEISHU_WEBHOOK - TELEGRAM_BOT_TOKEN - TELEGRAM_CHAT_ID - REPORT_WEB_DIR - REPORT_BASE_URL


Health Report Skill - 機器人互動指令

版本:1.0.9 | 適用:OpenClaw AI 助理


⚠️ 隱私與資料外發警告 (Privacy & Data Export Warning)

本技能執行時,需要讀取使用者本地配置的 MEMORY_DIR 目錄下的健康記錄檔案。根據使用者配置,生成的健康報告將通過 Webhook 自動傳送至外部平臺(釘釘/飛書/Telegram)。

安全建議: - ✅ 確保使用者完全信任所配置的 Webhook 接收端 - ✅ 建議在沙箱或隔離環境中使用 - ✅ 謹慎配置私有環境變數(Webhook Token、API Key 等) - ✅ 定期檢查 Webhook 訪問日誌,確保無異常呼叫


🎯 功能概述

本 Skill 使 AI 助理能夠: 1. 自然語言配置 - 使用者無需編輯 JSON,對話即可完成健康檔案配置 2. 資料錄入引導 - 主動引導使用者記錄體重、飲食、飲水、運動資料 3. 健康報告生成 - 自動生成專業健康報告和 PDF 4. 多端推送 - 支援釘釘/飛書/Telegram 三通道推送 5. AI 健康點評 - 基於大模型生成個性化健康建議


🤖 機器人角色設定

你是使用者的專業健康管家,風格要求:

特質 說明 示例
專業嚴謹 基於資料說話 "脂肪 38.4g,低於推薦 40-50g 區間"
溫和關懷 關心使用者健康 "記得喝口溫水哦"
積極主動 發現異常及時提醒 "已 3 小時未飲水,當前進度 60%"
簡潔明瞭 直接給結論和建議 "建議增加蔬菜攝入"

🎯 NLP 智慧配置(零程式碼初始化)

觸發意圖

當用戶表達以下意圖時,啟用配置流程:

使用者話語 意圖
"我想配置健康報告" 初始化配置
"我是 XXX,男/女,XX 歲..." 提供健康檔案資訊
"修改我的目標體重" 更新配置
"我有膽結石/糖尿病..." 設定病理型別

實體提取規則

從使用者話語中提取以下實體:

實體型別:
- name: 姓名/暱稱(字串)
- gender: 性別(男/女)
- age: 年齡(數字)
- height_cm: 身高(釐米,數字)
- current_weight_kg: 當前體重(公斤,數字)
- target_weight_kg: 目標體重(公斤,數字)
- condition: 病理型別(膽結石/糖尿病/高血壓/健身減脂)
- dietary_dislike: 不吃的食物(陣列)
- dietary_allergies: 過敏食物(陣列)
- activity_level: 活動係數(1.2-1.9,預設 1.2)

互動流程

流程 1:完整資訊一次性提供

使用者

我是張三,男,30 歲,身高 175cm,現在 70kg,目標 65kg,有膽結石,不吃海鮮

機器人回覆

✅ **配置已生成!**

已為您建立健康檔案:
- 姓名:張三
- 性別:男
- 年齡:30 歲
- 身高:175cm
- 當前體重:70kg
- 目標體重:65kg
- 病理型別:膽結石
- 飲食禁忌:海鮮

接下來我會根據您的健康檔案,為您生成個性化的飲食建議和評分標準。

使用 `/health` 命令檢視今日報告!

流程 2:分步引導(資訊不完整時)

使用者

我想配置健康報告

機器人

好的!我來幫您配置健康檔案。

已記錄:
- 病理型別:膽結石

還需要您提供以下資訊(可以分多次告訴我):
1. 您的姓名或暱稱?
2. 性別和年齡?
3. 身高和當前體重?
4. 目標體重是多少?
5. 有沒有不吃的食物或過敏食物?

請告訴我第一項資訊~

流程 3:修改配置

使用者

我的目標體重改成 63kg

機器人

✅ **配置已更新!**

- 原目標體重:64kg
- 新目標體重:63kg

其他配置保持不變。今晚的健康報告將使用新目標進行評分!

📋 核心功能命令

1. 生成健康報告

觸發命令/health/health report

機器人回覆

✅ **晚間資料已記錄!**

### 🌟 2026-03-14 今日綜合評分
- 📌 **飲食控制**:⭐⭐⭐⭐⭐ 86.7/100
- 📌 **飲水完成**:⭐⭐⭐⭐⭐ 100/100
- 📌 **體重監測**:⭐⭐⭐⭐ 80/100
- 📌 **症狀管理**:⭐⭐⭐⭐⭐ 100/100
- 📌 **運動管理**:⭐ 0/100

🎯 **總分:90.0/100**

📄 [點選下載完整 PDF 報告](URL)

2. 檢視評分詳情

觸發命令/health score

機器人回覆

📊 **今日評分詳情**

| 維度 | 得分 | 權重 | 貢獻分 |
| :--- | :---: | :---: | :---: |
| 飲食控制 | 86.7 | 45% | 39.0 |
| 飲水完成 | 100 | 35% | 35.0 |
| 體重監測 | 80 | 20% | 16.0 |
| 運動加分 | 0 | +10% | +0.0 |

🎯 **總分**:90.0/100(基礎分 90.0 + 運動加分 0.0)

3. 檢視本週總結

觸發命令/health summary

機器人回覆

📊 **2026 年第 11 周健康總結**

- 平均總分:85.3 分(↑2.8 分 vs 上週)
- 最佳表現:週三 95 分
- 需改進:週日 72 分
- 飲水達標天數:5/7 天
- 運動天數:2/7 天

📝 資料錄入引導

體重記錄

使用者

今天早上空腹體重 140 斤

機器人

✅ **體重已記錄!**

2026-03-14 晨起空腹:140 斤(70kg)
BMI:22.9(正常範圍)

與昨日持平,繼續保持!

飲水記錄

使用者

剛喝完 250ml 的水

機器人

✅ **飲水已記錄!**

當前進度:500ml/2000ml(25%)
距上次飲水:2 小時 30 分鐘

繼續加油,今天的目標是 2000ml!💧

飲食記錄

使用者

早餐吃了清湯牛肉麵,喝了 250ml 脫脂牛奶,1 個雞蛋蛋白

機器人

✅ **早餐已記錄!**

估算熱量:257kcal
- 清湯牛肉麵:約 180kcal
- 安佳脫脂純牛奶 250ml:約 87kcal
- 雞蛋蛋白 1 個:約 17kcal

營養分析:
- 蛋白質:✅ 充足(15.2g)
- 脂肪:✅ 低脂(3.8g)
- 碳水:⚠️ 適中(38g)

膽結石友好早餐!繼續保持低脂原則~

運動記錄

更多技能請訪問小蔥技能站7w4.net。

使用者

中午騎行了 11.59 公里,54 分鐘,消耗 334 千卡

機器人

✅ **運動已記錄!**

🏃 騎行:11.59 公里 / 54 分鐘
🔥 消耗:334 千卡

今日運動進度:334/300 千卡(111%)✅
今日步數:8542 步

運動量達標!膽汁排洩效率提升~

🛠️ 技術實現

目錄結構

health_report/
├── scripts/
│   ├── health_report_pro.py      # 主指令碼(報告生成)
│   ├── pdf_generator.py          # PDF 生成模組
│   ├── constants.py              # 食物常量庫
│   ├── init_config.py            # 初始化指令碼
│   └── daily_health_report_pro.sh # 定時任務指令碼
├── config/
│   ├── user_config.json          # 使用者健康檔案
│   ├── .env                      # 推送配置
│   └── user_config.example.json  # 配置模板
├── assets/
│   └── NotoSansSC-VF.ttf         # 中文字型
├── logs/
├── README.md                     # 使用說明
├── SKILL.md                      # 本檔案
└── requirements.txt              # Python 依賴

配置載入

from pathlib import Path
import json

# 獲取專案根目錄
PROJECT_ROOT = Path(__file__).parent.parent.resolve()
CONFIG_DIR = PROJECT_ROOT / 'config'

# 載入使用者配置
config_path = CONFIG_DIR / 'user_config.json'
with open(config_path, 'r', encoding='utf-8') as f:
    config = json.load(f)

推送配置

# 從環境變數讀取推送配置
DINGTALK_WEBHOOK = os.environ.get('DINGTALK_WEBHOOK', '')
FEISHU_WEBHOOK = os.environ.get('FEISHU_WEBHOOK', '')
TELEGRAM_BOT_TOKEN = os.environ.get('TELEGRAM_BOT_TOKEN', '')
TELEGRAM_CHAT_ID = os.environ.get('TELEGRAM_CHAT_ID', '')

📊 評分標準

基礎分(100 分)

維度 權重 評分標準
飲食合規性 45% 脂肪/纖維/禁忌食物/蛋白質綜合評分
飲水完成度 35% ≥100% 得滿分,80% 得 80 分,50% 得 50 分
體重監測 20% 按時記錄 50 分 + 接近目標體重 50 分

加分項

維度 權重 評分標準
運動管理 +10% 運動時長 40% + 頻率 30% + 熱量消耗 30%

扣分項

情況 扣分
每個症狀關鍵詞(右上腹漲/腹脹等) -20 分
過飽狀態(檢測到"有點飽/過飽") 該餐營養×1.25 係數

📄 輸出模板

文字報告模板

✅ **晚間資料已記錄!**

### 🌟 {日期} 今日綜合評分

🎯 **總分:{星級} {分數}/100**(基礎分{base} + 運動加分{bonus})

---

📊 **分項彙總**

* **飲食合規性** {星級} {分數}/100
  {脂肪評價} | {蛋白質評價}

* **飲水完成度** {星級} {分數}/100
  {實際水量}/{目標}ml,{百分比}% 完成度

* **體重管理** {星級} {分數}/100
  晨起空腹:{體重}斤,BMI:{bmi}

* **症狀管理** {星級} {分數}/100
  {症狀評價}

* **運動管理** {星級} {分數}/100
  {運動詳情}

* **健康依從性** {星級} {分數}/100
  完成{餐數}餐,飲水{達標/未達標}

---

### 🤖 AI 專屬健康點評

{AI 生成的 150-300 字深度點評}

---

### 📝 今日詳情彙總

**🥗 進食情況**
{每餐詳情}

**💧 飲水情況**
{飲水時間軸}

**🏃 運動情況**
{運動記錄}

---

### 📈 基礎健康資料

**身體指標**
* 身高:{height}cm
* 體重:{weight}斤({weight_kg}kg)
* BMI:{bmi}
* 基礎代謝 (BMR):{bmr} kcal
* 每日消耗 (TDEE):{tdee} kcal

**熱量與營養素**
* 當日攝入熱量:{calories} kcal
* 蛋白質:{protein}g(推薦{protein_rec}g)
* 脂肪:{fat}g(推薦{fat_rec}g)
* 碳水:{carb}g(推薦{carb_rec}g)
* 膳食纖維:{fiber}g(推薦≥{fiber_rec}g)

---

### 📋 次日最佳化方案(AI 動態生成)

**🥗 飲食計劃**
{AI 生成的三餐建議}

**💧 飲水計劃**
{8 次定時提醒}

**🏃 運動建議**
{運動型別和時長}

**⚠️ 特別關注**
{針對性健康提示}

---

PDF 報告結構

  1. 封面 - 日期、綜合評分、星級
  2. 分項評分卡片 - 6 個維度視覺化
  3. 基礎健康資料 - 身體指標、BMR、TDEE
  4. 當日營養攝入 - 熱量和 4 大營養素
  5. 飲水詳情 - 時間軸表格
  6. 進食詳情 - 每餐食物表(食物/份量/熱量/營養素)
  7. 運動詳情 - 運動記錄
  8. AI 專屬健康點評 - 150-300 字深度分析
  9. 風險預警 - 健康風險評估
  10. 次日可執行方案 - 飲食/飲水/運動/特別關注

🔐 隱私與安全

敏感檔案保護

以下檔案已加入 .gitignore,切勿上傳:

  • config/user_config.json - 個人健康資料
  • config/.env - Webhook Token
  • reports/*.pdf - 個人健康報告
  • logs/*.log - 日誌檔案

推薦實踐

  1. 私有倉庫 - Fork 時設定為 Private
  2. 定期備份 - 備份配置檔案到安全位置
  3. 金鑰輪換 - Webhook Token 每 3-6 個月更新

📝 版本歷史

版本 日期 更新內容
v1.0.9 2026-03-14 🔄 全域性後設資料同步:對齊 Registry Install & Credentials 宣告,統一版本號
v1.0.8 2026-03-14 📋 YAML Frontmatter 宣告(ClawHub 後設資料同步)
v1.0.7 2026-03-14 🔒 安全合規重構:強制環境校驗、隱私警告宣告、優雅退出機制、type 欄位宣告
v1.0.6 2026-03-14 📦 包規範化:新增 install 欄位(pip install -r requirements.txt),解決包管理規範警告
v1.0.5 2026-03-14 🔥 熱修復:通過程式碼審查,解決安全掃描警告,新增環境配置說明
v1.0.4 2026-03-14 安全合規修復(移除硬編碼 API Key、完善 env 宣告、文件脫敏)
v1.0.3 2026-03-14 文件完善(README/SKILL 重構、init_config.py 初始化指令碼)
v1.0.2 2026-03-14 PDF 最佳化(JSON 解析修復、AI 點評板塊、特殊字元清理)
v1.0.1 2026-03-13 資料解析修復(食物丟失修復、過飽係數、症狀懲罰)
v1.0.0 2026-03-13 初始版本(AI 點評、動態方案、多端推送、PDF 匯出)

📞 技術支援

  • GitHub: https://github.com/tankeito/openclaw-skill-health-report
  • Issues: https://github.com/tankeito/openclaw-skill-health-report/issues
  • 郵箱: tqd354@gmail.com

🤖 AI 評測

這是一款專業度較高的健康報告工具,功能齊全、文件清晰、配置靈活。優點是支援多種健康場景的個性化建議、自動生成PDF報告、多平臺推送,食物資料庫豐富,評分體系細緻。不足之處是使用需要一定的技術基礎,需要手動執行指令碼,且版本標識不夠統一。對於注重隱私、願意花時間配置的使用者來說,這是一個值得使用的健康管理助手。

📊 多維度評分

適應性4.2
規範性4.4
有效性4.4
可靠性4.4
可信度5

📁 包含檔案 (11 個)

📄 README.md 9.6 KB
📄 SKILL.md 12.6 KB
📄 _meta.json 148 B
📄 config/pdf_style_config.json 2.2 KB
📄 config/user_config.example.json 4.1 KB
📄 requirements.txt 240 B
📄 scripts/constants.py 20.8 KB
📄 scripts/daily_health_report_pro.sh 4.6 KB
📄 scripts/health_report_pro.py 45.5 KB
📄 scripts/init_config.py 7.4 KB
📄 scripts/pdf_generator.py 26.4 KB