OA0 = Omni AI 0
OA0 是一个探索 AI 的论坛
现在注册
已注册用户请  登录
OA0  ›  技能包  ›  calorie-counter:追踪每日热量和蛋白质摄入,设置目标并记录

calorie-counter:追踪每日热量和蛋白质摄入,设置目标并记录

 
  encryption ·  2026-02-05 06:39:08 · 3 次点击  · 0 条评论  

名称: calorie-counter
描述: 追踪每日卡路里和蛋白质摄入量,设定目标并记录体重。当用户提及所吃食物、想知道剩余卡路里或需要记录体重时使用。数据存储在 SQLite 中,自动计算每日总计。
元数据: { "openclaw": { "emoji": "🍎", "requires": { "python": ">=3.7" } } }


卡路里计数器

基于 SQLite 数据库的简单、可靠的卡路里与蛋白质追踪工具。

功能特性

  • 手动录入:添加食物及其卡路里和蛋白质含量
  • 蛋白质追踪:监控每日蛋白质摄入量
  • 每日目标:设定自定义卡路里目标
  • 体重追踪:以磅为单位记录体重
  • 即时反馈:添加食物后立即查看总计
  • 历史记录:查看过往日期及趋势

使用方法

添加食物

python scripts/calorie_tracker.py add "鸡胸肉" 165 31
python scripts/calorie_tracker.py add "香蕉" 100 1

命令执行后会立即显示今日总计及剩余卡路里。

查看今日摘要

python scripts/calorie_tracker.py summary

显示内容:
- 今日所有条目
- 已摄入的总卡路里和蛋白质
- 每日目标及剩余卡路里
- 目标完成百分比

设定目标

python scripts/calorie_tracker.py goal 2000

设定每日卡路里目标(永久保存)。

记录体重

python scripts/calorie_tracker.py weight 175
python scripts/calorie_tracker.py weight-history

体重单位为磅(支持小数:175.5)。

查看历史记录

# 最近 7 天
python scripts/calorie_tracker.py history

# 最近 30 天
python scripts/calorie_tracker.py history 30

删除条目

# 列出条目以获取 ID
python scripts/calorie_tracker.py list

# 根据 ID 删除
python scripts/calorie_tracker.py delete 42

数据库

SQLite 数据库:calorie_data.db

数据表

entries - 食物日志
- id (INTEGER) - 自增
- date (TEXT) - 格式 YYYY-MM-DD
- food_name (TEXT) - 食物名称
- calories (INTEGER) - 卡路里
- protein (INTEGER) - 蛋白质(克)
- created_at (TIMESTAMP) - 自动生成

daily_goal - 每日卡路里目标(单条记录)
- id (INTEGER) - 固定为 1
- calorie_goal (INTEGER) - 目标卡路里值

weight_log - 体重记录
- id (INTEGER) - 自增
- date (TEXT) - 格式 YYYY-MM-DD
- weight_lbs (REAL) - 体重(磅,支持小数)
- created_at (TIMESTAMP) - 自动生成

智能体操作指南

重要提示: 此技能位于智能体工作空间的 workspace/calorie-counter/ 目录下。所有命令均需使用此路径前缀。

当用户提及食物时:

  1. 提取食物名称、卡路里和蛋白质含量(若未提供则估算)
  2. 运行:python3 workspace/calorie-counter/scripts/calorie_tracker.py add "食物" 卡路里 蛋白质
  3. 命令会输出即时总计(无需单独运行摘要命令)

示例:
- 用户:"我午餐吃了一个鸡胸肉,大约 165 卡路里"
- 估算蛋白质(鸡肉约每 165 卡含 30 克蛋白质)
- 运行:python3 workspace/calorie-counter/scripts/calorie_tracker.py add "鸡胸肉" 165 30

当用户想知道剩余卡路里时:

  1. 运行:python3 workspace/calorie-counter/scripts/calorie_tracker.py summary

当用户设定目标时:

  1. 运行:python3 workspace/calorie-counter/scripts/calorie_tracker.py goal 卡路里数

当用户记录体重时:

  1. 如需转换单位(1 千克 ≈ 2.205 磅)
  2. 运行:python3 workspace/calorie-counter/scripts/calorie_tracker.py weight 磅数

当用户想删除条目时:

  1. 运行:python3 workspace/calorie-counter/scripts/calorie_tracker.py list 以显示条目 ID
  2. 运行:python3 workspace/calorie-counter/scripts/calorie_tracker.py delete ID

蛋白质估算指南

若用户未指定蛋白质含量,可根据食物类型估算(单位:克蛋白质/卡路里):
- 瘦肉(鸡肉、火鸡肉):约 0.30
- 鱼类:约 0.25
- 红肉:约 0.20
- 鸡蛋:约 0.12(1 个鸡蛋 ≈ 70 卡,6 克蛋白质)
- 希腊酸奶:约 0.10
- 坚果:约 0.04
- 面包/意面:约 0.03
- 水果:约 0.01 或更低
- 蔬菜:约 0.02 - 0.04

若不确定,请保守估算或询问用户。

注意事项

  • 卡路里和蛋白质值为整数(不支持小数)
  • 体重单位为磅(支持小数)
  • 首次使用时自动创建数据库
  • 所有时间均为本地时区
  • 日期格式为 YYYY-MM-DD
  • 列表中的时间来自 created_at 时间戳(格式 HH:MM)

使用示例

# 设定目标
$ python scripts/calorie_tracker.py goal 2000
✓ 已设定每日目标:2000 卡

# 添加早餐
$ python scripts/calorie_tracker.py add "燕麦片" 150 5
✓ 已添加:燕麦片 (150 卡, 5g 蛋白质)
  条目 ID:1
  今日:150 / 2000 卡 (剩余:1850) | 今日蛋白质:5g | 条目数:1

# 添加午餐
$ python scripts/calorie_tracker.py add "烤鸡沙拉" 350 45
✓ 已添加:烤鸡沙拉 (350 卡, 45g 蛋白质)
  条目 ID:2
  今日:500 / 2000 卡 (剩余:1500) | 今日蛋白质:50g | 条目数:2

# 查看摘要
$ python scripts/calorie_tracker.py summary
============================================================
每日摘要 - 2026-02-05
============================================================
条目数:2
总计摄入:500 卡 | 50g 蛋白质
每日目标:2000 卡
剩余:1500 卡
  目标完成度:25.0%
============================================================

# 记录体重
$ python scripts/calorie_tracker.py weight 175.5
✓ 已记录体重:175.5 磅
3 次点击  ∙  0 人收藏  
登录后收藏  
0 条回复
About   ·   Help   ·    
OA0 - Omni AI 0 一个探索 AI 的社区
沪ICP备2024103595号-2
Developed with Cursor