首页龙虾技能列表 › Diet Tracker — 技能工具

Diet Tracker — 技能工具

v1.2.0

[自动翻译] Tracks daily diet and calculates nutrition information to help achieve weight loss goals. Use when user provides meal information, asks about calorie ...

5· 2,624·6 当前·6 累计
by @yonghaozhao722 (Yonghao Zhao)·MIT-0
下载技能包
License
MIT-0
最后更新
2026/4/10
安全扫描
VirusTotal
可疑
查看报告
OpenClaw
可疑
high confidence
The skill mostly does what it says (track food and calculate nutrition) but the included scripts silently persist logs to disk, sync to an Obsidian vault, and attempt to git push changes — behavior not disclosed in SKILL.md and capable of uploading personal data using whatever Git credentials exist on the host.
评估建议
Before installing or enabling this skill: (1) Inspect or run the included Python scripts yourself—pay special attention to update_memory.py lines that copy files and call git. (2) If you do not want your logs uploaded, remove or disable the git subprocess calls and the obsidian-vault copy. (3) Be aware the scripts read /root/clawd/USER.md (contains personal info) and write /root/clawd/memory/*.md; ensure those paths and contents are acceptable. (4) If the host has Git credentials configured, the...
详细分析 ▾
用途与能力
Name/description match the core functionality (logging diet, calculating nutrition). However, the shipped code performs additional actions (copying logs to an Obsidian vault and attempting to push the vault to GitHub) that are not documented in SKILL.md and are not necessary for the stated purpose. The code also hardcodes absolute paths under /root/clawd which may be unexpected.
指令范围
SKILL.md describes reading USER.md and updating daily memory files (expected). The runtime scripts in the package read/write files at /root/clawd/..., copy to an obsidian-vault path, and run git add/commit/push — these network/persistence steps are not described in SKILL.md (scope creep). The scripts also call an external nutrition API (api.nal.usda.gov) which is reasonable but not fully documented (demo API key used).
安装机制
No install spec or remote downloads; this is an instruction-and-scripts package only. No additional packages are installed by the skill itself. Risk from install mechanism is low.
凭证需求
The skill declares no required environment variables or credentials, but the code will use any existing Git configuration/credentials on the host to push data to a remote repository. It also reads USER.md (personal profile data) and will persist logs to disk. Requesting no credentials while attempting network pushes is a mismatch and can lead to unintended data exfiltration via existing host credentials.
持久化与权限
The scripts persist data under /root/clawd/memory and copy files into /root/clawd/obsidian-vault. They then attempt to commit and push the obsidian-vault to the remote 'origin' branch — this gives the skill the ability to transmit recorded personal data to a remote Git host whenever git credentials are available. The skill does not request explicit user approval for these actions in SKILL.md.
安全有层次,运行前请审查代码。

License

MIT-0

可自由使用、修改和再分发,无需署名。

运行时依赖

无特殊依赖

版本

latestv1.2.02026/1/27

- Added _meta.json file for improved metadata management. - Updated SKILL.md: replaced all Chinese instructional text with English for broader accessibility. - No changes to skill logic or functionality.

● 可疑

安装命令 点击复制

官方npx clawhub@latest install diet-tracker
镜像加速npx clawhub@latest install diet-tracker --registry https://cn.clawhub-mirror.com

技能文档

This skill helps track daily diet and achieve weight loss goals with automated meal reminders.

Trigger Conditions

User might say:

  • "I had [food] for lunch/dinner"
  • "What's my remaining calorie budget?"
  • "How many calories have I eaten today?"
  • "Log my meal"
  • "Check my diet progress"

Or automatically triggered by cron job for meal reminders.

Cron Job Integration

This skill works with automated cron jobs:

  • Lunch reminder: ~12:30 (checks if lunch logged, sends reminder if not)
  • Dinner reminder: ~18:00 (checks if dinner logged, sends reminder if not)

Cron job system event: 饮食记录检查:午餐 or 饮食记录检查:晚餐

User Profile (Required)

The skill reads from USER.md:

  • Daily calorie target (default: 1650 kcal)
  • Macronutrient targets (protein/carbs/fat)
  • Height, weight, age, gender, activity level (for TDEE calculation)

Activity levels:

  • Sedentary (little or no exercise)
  • Lightly active (light exercise 1-3 days/week)
  • Moderately active (moderate exercise 3-5 days/week)
  • Very active (hard exercise 6-7 days/week)
  • Extra active (very hard exercise + physical job)

Workflow

When User Logs a Meal:

  • Identify food items from user's description
  • Fetch nutrition data via scripts/get_food_nutrition.py
- MUST GET: calories(kcal), protein(g), carbs(g), fat(g) - Searches web for calorie/protein/carbs/fat info - Falls back to references/food_database.json if needed - If complete nutrition data cannot be found, MUST clearly inform user of estimated values
  • Update daily log via scripts/update_memory.py
- Saves to memory/YYYY-MM-DD.md - RECORD FORMAT: Food Name - XX kcal (P: XXg, C: XXg, F: XXg) - Calculates meal totals - Updates daily running totals
  • Report to user:
- MUST REPORT: calories + protein/carbs/fat grams - Today's consumed / remaining calories - MUST REPORT: Remaining macronutrient budgets - Predicted weight change based on deficit/surplus

When User Asks for Status:

  • Read current day's memory file
  • Calculate totals consumed
  • Report:
- Remaining calorie budget - Remaining protein/carbs/fat (if targets set) - Weight change prediction

Scripts

  • scripts/get_food_nutrition.py: Fetches nutrition info + calculates TDEE
  • scripts/update_memory.py: Updates daily memory file with meal data
  • references/food_database.json: Fallback database of common foods

Error Handling

Common Issues

Issue: "Cannot read USER.md" or missing user data

  • Cause: User profile not configured
  • Solution: Ask user for height, weight, age, gender, activity level, and calorie target

Issue: Nutrition lookup fails for uncommon foods

  • Cause: Food not found in online databases
  • Solution: Ask user for approximate calorie count or use similar food from database

Issue: Multiple food items in one meal

  • Cause: User says "I had pizza, salad, and coke"
  • Solution: Process each item separately, sum the nutrition values

Data Format

Daily Memory Entry (memory/YYYY-MM-DD.md)

REQUIRED FORMAT — Must include calories + macronutrients:

## Diet Log

Breakfast: [food] - [X] kcal (P: [X]g, C: [X]g, F: [X]g) Lunch: [food] - [X] kcal (P: [X]g, C: [X]g, F: [X]g) Dinner: [food] - [X] kcal (P: [X]g, C: [X]g, F: [X]g)

Daily Total: [X] / [target] kcal

  • Protein: [X] / [target]g (remaining: [X]g)
  • Carbs: [X] / [target]g (remaining: [X]g)
  • Fat: [X] / [target]g (remaining: [X]g)
Predicted weight change: [-/+ X] kg

⚠️ Strictly prohibited to record only calories while omitting macronutrient grams!

Progressive Disclosure

  • Level 1 (frontmatter): Skill activation criteria
  • Level 2 (SKILL.md): Full workflow instructions (this file)
  • Level 3 (references/): Food database and nutrition guidelines
数据来源:ClawHub ↗ · 中文优化:龙虾技能库
OpenClaw 技能定制 / 插件定制 / 私有工作流定制

免费技能或插件可能存在安全风险,如需更匹配、更安全的方案,建议联系付费定制

了解定制服务