核心功能
FatSecret Skill 提供与 FatSecret 官方营养数据库的完整集成,涵盖两大核心场景:只读数据查询(OAuth2)和完整日记功能(OAuth1)。
主要能力包括:
- 食物搜索与营养查询:通过自然语言搜索数百万种食物,获取卡路里、宏量营养素及微量营养素详情
- 条码扫描:支持商品条码直接查询,快速获取包装食品营养信息
- 食谱检索:搜索健康食谱及其详细营养构成
- 饮食日记记录:OAuth1 授权后可向用户 FatSecret 账户添加餐食记录
技术实现特点
该 Skill 采用双认证架构设计,灵活适配不同场景:
- OAuth2(客户端凭证):无需用户登录,适合纯查询场景,支持食物搜索、条码查找、食谱检索
- OAuth1(三-legged):需一次性用户授权(PIN码),授予完整日记读写权限
显著优点
1. 数据源权威:直接对接 FatSecret 官方数据库,营养数据覆盖全球食品,更新及时
2. 双模式灵活:根据需求选择免登录查询或完整日记功能,避免过度授权
3. 本地化凭证管理:支持自定义配置目录(FATSECRET_CONFIG_DIR),适配容器化部署
4. 备选数据源:内置 Open Food Facts 客户端,欧洲产品可免认证查询
5. 完善的 CLI 工具:提供 Bash 封装脚本,降低使用门槛
潜在局限与风险
- 认证复杂度:OAuth1 流程需用户手动访问授权页面、输入 PIN,对自动化场景不够友好
- 单位参数易混淆:
grams_or_ml参数为实际数值而非倍数,文档特别强调易出错(如输入 1.56 而非 156 会导致严重记录偏差) - OAuth1 令牌持久性:令牌长期有效,若泄露需手动撤销,存在一定安全隐患
- IP 限制:部分 FatSecret 套餐需 IP 白名单,可能需配置 SOCKS5 代理
适合人群
- 健身用户、营养师需精确追踪饮食摄入
- 健康类应用开发者需集成权威食品数据库
- 个人用户希望自动化记录餐食至现有 FatSecret 账户
常规风险提示
凭证默认存储于本地 ~/.config/fatsecret/,容器环境需显式配置持久化路径;OAuth1 授权后 Skill 获得用户日记完整读写权限,建议在可信环境使用,卸载时同步删除本地配置并撤销应用授权。