果壳有意思
在一个难眠的深夜,我的洗衣机忽然泛起绿光对我说话……

作为一名(自测的)ADHD 患者,我一直想做一个“硬提醒”,帮助我减轻病情合理安排一天的待办。比方说,洗衣机里衣服别等到发臭才想起来;在编辑提刀来之前,把稿子交了;在工位上瘫坐俩小时,就起来活动活动。

我知道即便设 800 个手机通知,也起不到一点作用。不知道你们记不记得,Apple Watch 有个广告,在介绍定时站立提醒的时候,手表强行“拉着”演员站起来了。

对,我要的就是这种效果。

因为最近使用 Codex 比较多。开始我有个大致思路,将 Codex 对接 Home Assistant,通过 Codex 创建一些自动化程序控制我的智能家居设备,在“必要时”起到强提醒的作用。

其实很多智能体都能做类似的事情,我也不想折腾安装、选模型、再对接聊天应用,Codex 装个 Mac 应用就行了。Codex 要连接我的 Home Assistant 也很方便。GitHub 上有个叫 ha-mcp 的项目,在 Codex 设置里填写对应参数,就能对接到我的 Home Assistant里。

是升降桌先动手的

为了致敬 Apple Watch 广告,我的第一个想法是将升降桌改造成自动升降桌,每隔一段时间,强制自己站立,休息。

改造方案比较“邪修”,适合预算有限但喜欢动手的朋友。

我在桌板底部安装了一个红外测距传感器,测量桌板到地面的实时高度。我用 ESP 芯片的 GPIO(输入/输出)引脚连接到升降桌控制面板的按钮上。通过编程输出 3V 左右的电压,模拟按键点击的效果。然后将实时高度数据通过 ESP 芯片发送给 Home Assistant。

红外距离传感器

同时,我将座椅压力传感器连接到 Home Assistant 上,当程序判断人在工位上,再开始后续的“强制升桌”的自动化。

我给 Codex 的想要实现的大致逻辑是:

· 一旦 Home Assistant 读取压力传感器触发超过两个小时,就在 Mac 上发个提醒通知(轻提醒)。30秒后,Home Assistant 将自动把升降桌升起来。这时候我有一次机会按下“桌面旋钮开关”,打断桌面自动升起。

· 但是在打断桌面自动升起后的30分钟后,再提醒我一次,然后自动升桌。不过,我仍然可以选择关掉。旋钮打断后,自动化不会整条退出,而是继续接下来程序。

· 超过3小时,则通过小爱音箱发送语音魔咒(重提醒),桌面自动升起不可被打断。

Codex 将我的需求理顺,帮我写了一个 Home Assistant 自动化。

从上面的需求可以看出,我仍然希望有两类提醒,有轻重之分,因为小爱音箱还是太打断状态了。

Home Assistant 可以判断久坐时长、智能音箱提醒和控制升降桌。它没发给 Mac 发通知。因此,Codex 做了自动化轮询 Home Assistant 状态并在 Codex/Mac 侧给我一个悄悄的提醒。

这一切做完的时候,我又想到一个问题。工位座椅不是永远固定的。当我没在工作时,就不需要强制休息了。

于是我给 Codex 新增了两个条件,我在工位处设了一个“人在传感器”和“智能插座”统计设备功率。同时检测出人在工位,插着电脑,久坐不动。

在被 AI 如此一丝不苟地规训了一段时间后,我更加“理直气壮”,拖稿不是我本意,而是被打断了心流(bushi。

刚洗过的衣服又臭了

我之前非常不能忍受自己洗完衣服忘记晾,然后衣服就又变得臭烘烘。于是我按照上面的思路做了个类似的。

还是让 Codex 做个自动化,洗衣机洗好后,如果我一直没去拿衣服,就用一盏状态灯和智能音箱一直给我发提醒,直到我把衣服拿出拿来。

智能洗衣机实现方式会简单些。因为可联网,就能用插件(比如我用的是小米官方集成插件 Xiaomi Home)接入 Home Assistant 直接获取到洗衣机数据,比如当下的工作状态、舱门开关状态等。

三分钟,Codex 写好了一个 Home Assistant 自动化“洗衣机晾衣提醒”。

· 洗衣机上报状态(xiaomi home 本身有一个 MQTT 的上报机制,不需要轮询)

· 如果洗衣机在开机运行,Home Assistant 则开始监测洗衣机的状态

· 洗衣机洗好,但舱门未被打开时,就将室内的一盏状态灯设置为绿色,同时触发小爱发送语音,“赶紧晾衣服啦!”

· 接着隔20分钟检查一次,直到衣服拿出来为止

当然很多人家里使用的是普通洗衣机。如果也想做一个类似的提醒,可以在电源插座上增加一个智能插座检测功率,在舱门上粘一个门窗传感器检测开合。

我在测试的时候发现,插座如果官方没有提供集成,需要通过第三方集成接入 Home Assistant。如果集成的开发者用轮询的方式同步数据,用户一般需要自定义轮询时间。当洗衣机洗完衣服电机停转,整体功率会有明显下降,这时候就是洗完了。而门窗传感器则可以检测洗衣机的舱门有没有打开,进而实现检测有没有收衣服。

做完自动化之后,Codex 自己跑了一遍,确认没问题才给我反馈。它发现我写自动化的时间是半夜两点多,甚至还自己优化了一下逻辑,“系统时间晚上 11 点之后,不主动试播小爱,免得半夜催你取衣服。”(做自动化帮我省 token,知道半夜别打扰我睡觉......这才是智能家居好吗!)

第二天这个晾衣提醒就发挥了作用,黑暗中幽幽绿光伴随着一声声“晾衣服啦!”

但你知道 ADHD 怎么只会拖延晾衣服呢?他会事事拖延。

所以我让 Codex 直接介入我的待办。我用 Obsidian 来记录我的待办,没有用 Mac 自带的提醒应用,是因为 Codex 没法读取,而 Obsidian 本质上就是一个基于 Markdown(.md)格式的纯文本编辑器。

在 Codex 问我要了路径和读取文件之后,我让它创建一个自动化,读取我目前的“工作类”待办——然后找到目前离 ddl 最近的项目——根据截止时间,调整蘑菇灯颜色。

Codex 检查了 todo.md,调用了 Home Assistant MCP 。发现都能顺利读取之后,便写好了一个自动化。

距离最近 deadline 还有四小时,Home Assistant 打开蘑菇灯调成蓝色,随着距离越来越近,调成紫色,红色这种逐渐惊悚的颜色.....直到我从文档里划掉待办。

我是一个喜欢昼夜颠倒的人,说实话,夜深人静时,有这样一盏夺命蘑菇灯陪伴,还挺......提神的。

不仅智能,还有个性

我是一个很喜欢倒腾“智能家居”的人。但是所谓的“智能”都只是依靠单一的“如果……就……”的判断条件。

可是人类的行为是灵活的,没法用一两个条件就判断完所有情况。于是自动化的逻辑越加越多,我脑子很快就处理不过来了……

智能体可以用来自动执行重复性任务。同时可以集成应用和服务,让这些割裂的,分布在线上的、真实世界里的需求和实现条件连起来。设置自动化不用再自己思考实现的逻辑,只要把你想要的效果用自然语言描述一下,它就能自己帮你搞定。

这是我折腾了十年智能家居之后,第一次觉得它有一只脚终于迈进了“智能”的大门。

作者:宛潼

编辑:沈知涵

点个“小爱心”吧
The End

发布于2026-06-10, 本文版权属于果壳网(guokr.com),禁止转载。如有需要,请联系果壳 。

举报这篇文章