饮食记录

v1.0.0

饮食记录与营养分析助手。当用户提到"饮食记录"、"记下我吃了"、"营养分析"、"统计饮食"、"最近X天吃了什么"等关键词时触发。功能包括:(1) 解析用户输入的饮食内容并查询营养数据;(2) 计算并记录全部营养素(热量、宏量营养素、脂肪酸、矿物质、维生素);(3) 将饮食记录存入 meal_log.json;(4...

0· 78·0 current·0 all-time

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for sj13818161942/diet-log.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "饮食记录" (sj13818161942/diet-log) from ClawHub.
Skill page: https://clawhub.ai/sj13818161942/diet-log
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install diet-log

ClawHub CLI

Package manager switcher

npx clawhub@latest install diet-log
Security Scan
VirusTotalVirusTotal
Pending
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
名称与描述(饮食记录与营养分析)与所含脚本和说明一致:脚本仅需要本地的 references/food_data.json 并将记录写入 references/meal_log.json,所请求的功能(解析食物、计算营养、存储/统计)均由脚本实现。
Instruction Scope
SKILL.md 明确要求手动下载 food_data.json 并在技能目录下存放;运行流程只涉及读取该数据文件、匹配/计算营养素、向本地 meal_log.json 追加记录,以及在无法匹配时向用户提问。没有指示读取系统范围的凭据、环境变量或将数据发送到未声明的外部端点。
Install Mechanism
没有 install spec(instruction-only + 附带脚本),因此不会自动下载或执行外部二进制;唯一的网络建议是用户手动从 GitHub 下载 data 文件,这本身是可审计的。
Credentials
不要求任何环境变量、凭证或系统配置路径。所需的资源(本地 JSON 数据文件和技能目录)与技能目的直接相关且比例合适。
Persistence & Privilege
不设置 always:true,默认可被用户调用;唯一的持久性是创建/写入自身目录下的 references/meal_log.json,这是技能应有的行为,未修改其他技能或系统级配置。
Assessment
这是一个本地化的饮食记录与营养计算技能;在安装前请注意: - 手动从仓库(SKILL.md 提供的 GitHub 链接)下载 references/food_data.json 并检查来源与内容(JSON 文件可以打开审查)。注意仓库拥有者(sj13818161942)并非知名组织,若有疑虑请寻找原始数据源 LuckyHookin/foodwake 并核对一致性。 - 脚本不会联网也不请求凭据,但会在技能目录下创建/写入 references/meal_log.json(包含个人饮食数据);如果在共享设备上使用,请考虑文件权限和隐私备份/删除策略。 - 确认 Python3 可用(脚本使用标准库,无额外依赖);如需进一步放心,可在沙箱环境中先运行并查看生成的文件与输出。 - 数据为 2020 年快照且为估算值,不应作为医学诊断依据。若需要更权威/本地化的营养数据,替换 food_data.json 为可信来源或手动校验数值。

Like a lobster shell, security has layers — review code before you run it.

latestvk97cjg2rxy88y8bta7ezd1nv9h84tg3g
78downloads
0stars
1versions
Updated 2w ago
v1.0.0
MIT-0

饮食记录 (diet-log)

⚠️ 首次使用:下载食物营养数据

本 Skill 需要下载食物营养数据库文件(约 3.7MB),请在 GitHub 仓库中下载 references/food_data.json 放置到本 Skill 的 references/ 目录下:

下载后确保文件路径为:

diet-log/references/food_data.json

数据来源

  • 文件:references/food_data.json(1643条食物记录,需手动下载
  • 原始数据来自 foodwake.com,通过 LuckyHookin/foodwake 项目获取(Apache-2.0 授权)
  • 食物分类:谷类/薯类/豆类/蔬菜/菌类/藻类/水果/坚果/畜肉/禽肉/乳类/蛋类/河海鲜/茶类/酒类/油类/调味品类/零食饮料

食物匹配策略(三级)

当用户输入食物名称时,按以下顺序处理:

第一级:精确匹配

在数据库中搜索名字或别名包含用户输入的食物名称的记录,取第一条结果。

第二级:同类参考

若精确匹配无结果,在同一类别中查找最接近的食物作为参考,并在记录中标注「参考值」。

常见类别映射:

  • 用户说"鸡腿/鸡肉" → 参考数据库中畜肉/禽肉类的鸡肉数据
  • 用户说"猪肉/排骨" → 参考畜肉类
  • 用户说"河鱼/草鱼" → 参考河海鲜类

第三级:提问确认

若同类参考也无法找到(如罕见食材),向用户提问:

"我没有找到【XXX】的精确数据。请问它的类别是?例如:肉类/鱼类/蔬菜/豆制品/主食/其他?"或"你说的XXX是指YYY吗?"

营养分析维度(全字段)

分析并记录以下所有可用营养素(若数据缺失则记为0):

宏量营养素(核心)

字段说明单位
energy_kcal能量千卡 (kcal)
protein_g蛋白质克 (g)
fat_g脂肪克 (g)
carbs_g碳水化合物克 (g)
fiber_g粗纤维克 (g)

脂肪酸

字段说明
saturated_fat_g饱和脂肪酸
monounsaturated_fat_g单不饱和脂肪酸
polyunsaturated_fat_g多不饱和脂肪酸
trans_fat_g反式脂肪酸

矿物质

字段说明
calcium_mg钙 (mg)
magnesium_mg镁 (mg)
sodium_mg钠 (mg)
potassium_mg钾 (mg)
phosphorus_mg磷 (mg)
iron_mg铁 (mg)
zinc_mg锌 (mg)
selenium_mg硒 (mg)
copper_mg铜 (mg)
manganese_mg锰 (mg)

维生素

字段说明
vitamin_a_mcg维生素A (μg)
vitamin_c_mg维生素C (mg)
vitamin_d_mcg维生素D (μg)
vitamin_e_mg维生素E (mg)
vitamin_k_mcg维生素K (μg)
vitamin_b1_mg维生素B1 硫胺素 (mg)
vitamin_b2_mg维生素B2 核黄素 (mg)
vitamin_b3_mg维生素B3 烟酸 (mg)
vitamin_b5_mg维生素B5 泛酸 (mg)
vitamin_b6_mg维生素B6 (mg)
vitamin_b7_mcg维生素B7 生物素 (μg)
vitamin_b9_mcg维生素B9 叶酸 (μg)
vitamin_b12_mcg维生素B12 (μg)

工作流程

流程一:记录饮食 & 全营养分析

触发:用户输入饮食内容并请求记录或分析。

  1. 解析食物列表:从用户输入中提取所有食物名称和估计份量。
  2. 检查数据文件:确认 references/food_data.json 已存在,若缺失提示用户下载。
  3. 匹配食物数据:按三级匹配策略查询每种食物。
  4. 计算份量营养:将食物营养数据按用户估计的份量进行比例换算。
  5. 汇总全部营养素:分别求和各宏量、微量营养素的总和。
  6. 输出完整分析报告(格式见下方)。
  7. 保存记录:追加写入 references/meal_log.json

流程二:阶段性营养统计

触发:用户请求"最近N天"、"上周"、"本月"等时间段的统计。

  1. 确定日期范围:根据当前日期和用户指定周期。
  2. 读取记录:从 references/meal_log.json 筛选日期范围内所有记录。
  3. 计算周期总计+日均:对全部营养字段进行汇总。
  4. 与参考标准对比:给出偏离度评价。
  5. 输出统计报告

输出格式模板

单餐全营养分析

🍽️ 【{meal} · {date}】

食物列表:
• {food_name}({type},{weight})…… 能量 {energy}kcal
  蛋白 {protein}g | 脂肪 {fat}g | 碳水 {carbs}g | 纤维 {fiber}g
  维A {vitA}μg | 维C {vitC}mg | 铁 {iron}mg | 钙 {calcium}mg | ...
• ...

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
合计摄入(当日 {meal}):
⚡ 能量:{total_energy} kcal
💪 蛋白质:{total_protein} g
🧈 脂肪:{total_fat} g
🍞 碳水化合物:{total_carbs} g
🌾 膳食纤维:{total_fiber} g

🧪 矿物质:
钙 {calcium}mg | 铁 {iron}mg | 锌 {zinc}mg | 钾 {potassium}mg | 钠 {sodium}mg

💊 维生素:
维A {vitA}μg | 维C {vitC}mg | 维E {vitE}mg | 维B1 {vitB1}mg | 维B2 {vitB2}mg

💡 营养评估与建议:{基于各营养素平衡的专业建议}

阶段性统计报告(按营养类别分组)

📊 【{period} 全营养统计 · {start_date}~{end_date}】
总天数:{days} 天

━━━ 🔥 宏量营养素 ━━━
⚡ 能量:{total_energy} kcal(日均 {avg_energy} kcal)
💪 蛋白质:{total_protein} g(日均 {avg_protein} g)
🧈 脂肪:{total_fat} g(日均 {avg_fat} g)
🍞 碳水:{total_carbs} g(日均 {avg_carbs} g)

━━━ 🧪 关键矿物质 ━━━
钙 {calcium} mg | 铁 {iron} mg | 锌 {zinc} mg

━━━ 💊 关键维生素 ━━━
维A {vitA} μg | 维C {vitC} mg | 维E {vitE} mg

━━━ 📅 每日能量明细 ━━━
Day 1({date}):{energy} kcal
...

💡 综合评估:{对比参考标准的营养摄入评价与建议}

参考标准(成年人日常基础需求)

营养素日推荐量备注
能量1800~2400 kcal取决于性别、活动量
蛋白质50~80 g占总热量 15~20%
脂肪40~70 g占总热量 20~30%
碳水200~300 g占总热量 50~65%
800~1000 mg
12~20 mg女性高于男性
12~15 mg
维生素A700~800 μg
维生素C80~100 mg
维生素E14 mg

记录文件格式

references/meal_log.json 每条记录格式:

{
  "date": "2026-04-14",
  "meal": "breakfast",
  "foods": [
    {
      "name": "面条(富强粉)",
      "energy_kcal": 283, "protein_g": 8.5, "fat_g": 1.6, "carbs_g": 59.5,
      "fiber_g": 0.5, "calcium_mg": 13, "iron_mg": 2.6, "zinc_mg": 1.07,
      "vitamin_a_mcg": 0, "vitamin_c_mg": 0, "vitamin_e_mg": 0.47,
      "vitamin_b1_mg": 0.35, "vitamin_b2_mg": 0.1, ...
    }
  ],
  "total": {
    "energy_kcal": 678, "protein_g": 51.6, "fat_g": 24.2, "carbs_g": 62.4,
    "fiber_g": 3.1, "calcium_mg": 95, "iron_mg": 5.8, ...
  },
  "note": "鸡腿为参考估算值"
}

注意事项

  • 首次使用必须下载 food_data.json(太大无法嵌入到 ClawHub 包中)
  • 食物数据为 2020年快照,来自 foodwake.com,可能与中国最新食物成分表有差异
  • 营养计算为估算值,实际摄入因烹饪方式、食材产地等因素可能有偏差
  • 对于无匹配食物,必须向用户确认同类替代方案,不能擅自使用不相关数据
  • 数据授权为 Apache-2.0,可商用但需标注来源

Comments

Loading comments...