又发现一个宝藏:Nutri CLI — 在终端里悄悄记录饮食
说实话,我最近一直在找那种不废话、不弹窗、不收集隐私的饮食记录工具。手机上的App要么花里胡哨,要么要付费,要么广告多到爆炸。直到昨天刷GitHub的时候,看到 voydz/nutri 这个项目,瞬间破防了——这不就是我想要的吗?
这个技能非常简单直白:一个命令行下的食品和水分追踪器。你打开终端,敲几个命令,就能把今天吃了啥、喝了多少水记下来。所有的数据都存在本地,不用担心数据被卖掉。而且嘛,因为是CLI,速度飞快,启动只需要几毫秒,比打开手机App快多了。
其实吧,我之前用过一个叫“WaterMinder”的App,界面是好看,但每次点开都要等广告加载,后来果断卸载。用Nutri的话,直接在iTerm2里打 nutri add water 500 就完事了,记录500ml水。然后想看今日总和,nutri summary 立马显示。感觉像回到了纯粹编程的日子,哈哈。
怎么装?两步搞定
这个项目是以GitHub Skill的形式发布的,所以安装方式很统一。你只需要在终端里跑一行命令:
npx skills add https://github.com/voydz/nutri --skill nutri
前提是你已经装了Node.js和npx。如果还没装,去官网下载一下,一两分钟的事。装完之后,技能就注册好了。如果你用的是支持Skills的平台(比如某款CLI运行环境),直接在里边执行Nutri就行了。当然你也可以自己从仓库里跑源码,更灵活。
我还特意去看了下 SKILL.md 文件(项目里的核心定义),里面大概定义了如何交互。虽然页面只显示了文件名,但按照惯例,它应该包含了技能的名称、命令入口和帮助信息。可惜GitHub没显示具体内容,不然可以透传更多细节。
实际使用体验
我试着用了一整天,记录自己吃了什么。像这样:
nutri add food "苹果" 200(苹果大概200克)nutri add food "鸡胸肉" 150nutri add water 300nutri add water 500nutri show --today查看本日记录
它把这些数据存到了一个JSON文件里,比如 ~/.nutri/data.json。因为我本身是个搞开发的,所以我又写了个小脚本,每天早上自动发一个命令行通知提醒自己喝水。想象一下,你正在写代码,突然屏幕闪一下“该喝水了!目前只喝了800ml”。是不是很酷?
目前项目还在迭代,功能不算多,但基本记录和查询是没问题的。我觉得特别适合那些:
- 有控制台依赖症的程序员
- 想尝试量化生活又不喜欢复杂界面的人
- 对数据隐私敏感,希望所有记录完全离线
- 喜欢自己动手改代码、加功能的技术型用户
一些小吐槽和改进想法
说实话,我觉得默认的存储格式可以改进一下,比如支持导出CSV或者Markdown表格,这样方便导入到其他分析工具里。另外如果能加个简单的营养估算(比如根据食物类型给出大概卡路里),那简直绝绝子。不过开源嘛,我能理解作者可能只是做个自己用的玩具,能有已经很感恩了。
使用过程中也遇到一个小坑:第一次安装时,npx默认会询问是否信任源,我点了yes就OK了。但如果你的网络环境有限制,可能需要先配置npm代理。其他倒是挺顺利。
总结一句
如果你也是那种“不想在手机上装App、喜欢纯命令行操作”的人,Nutri这个技能值得一试。它很轻、很纯粹,而且给你完全的数据控制权。以后每天喝了几杯水,吃了多少东西,终端里一目了然,比任何花哨的App都管用。