360 Secure SkillHub
360 安全技能中心

Calorie Visualizer

一款本地饮食热量记录工具:通过命令行添加餐食的热量与蛋白质数值,或从本地食物库查询,数据写入本地 SQLite;每次写入后自动渲染并输出报告图片路径,便于在聊天中发送。支持设置每日目标、汇总与重新生成报告,可选 USDA 在线查询,渲染依赖系统 Chromium。

vintlin
vintlin
热度 93.70
最近更新 2026-05-11 17:26:03
分类:生活依赖:代码执行 / 读写文件 / 第三方 API / 联网浏览搜索应用场景:健康 / 报告撰写 / 数据处理 / 工作流

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add calorie-visualizer
Metadata
name
calorie-visualizer
description
Local calorie logging and visual reporting (auto-refreshes and returns report image after each log)
metadata
{"openclaw":{"emoji":"📊","os":["darwin","linux"],"requires":{"bins":["python3"]}}}

Calorie Visualizer

A local skill for meal logging and visual nutrition analysis.

Core Flow

  1. User sends meal text/photo (upstream extracts calorie/protein values or calls food-db lookup).
  2. add (or add-food) writes to calorie_data.db.
  3. After write, visual_renderer.py generates a fresh report image.
  4. CLI prints REPORT_IMAGE:<path> so the chat layer can send the image.

Daily Goal Priority

  1. config.daily_goal (manual override)
  2. TDEE derived from USER.md
  3. If user explicitly refuses profile data: logging only, no repeated prompting
  4. Fallback default in renderer: 2000 kcal

CLI Commands

# Add a meal with explicit nutrition values
python3 scripts/calorie_visualizer.py add "food name" 500 25 [--photo /path/to/image.jpg]

# Add from local food database (local-first, online fallback optional)
python3 scripts/calorie_visualizer.py add-food "Subway chicken sandwich" --multiplier 1.0
python3 scripts/calorie_visualizer.py add-food "rice" --offline

# Daily summary
python3 scripts/calorie_visualizer.py summary

# Regenerate report image
python3 scripts/calorie_visualizer.py report

# Config
python3 scripts/calorie_visualizer.py config daily_goal 2000
python3 scripts/calorie_visualizer.py config user_refused_profile True

Dependencies

cd skills/calorie-visualizer
python3 -m pip install -r requirements.txt
  • Python libs: html2image, Pillow
  • Online fallback: optional USDA API (USDA_API_KEY)
  • Database: SQLite (built into Python)
  • Rendering: requires system Chromium/Chrome (called by html2image)

Storage

  • calorie_data.db (local SQLite)
  • No automatic external sync