逛逛GitHub公众号文章

我用 Codex 破解了家里这个设备,还能语音遥控。。。

逛逛GitHub

公众号 · 29 篇文章

我家的投影仪遥控器,经常找不到。

找到之后,也是开机、打开腾讯视频找到播放记录,继续看上次没看完的综艺或者电视剧。

图片

想看电影的时候也纠结。饭都吃到一半了,电影还没选好。

后来我就想,我电脑就在客厅,能不能直接把我的投影仪直接到 Codex,然后我直接通过语音来控制它?

于是,我我让 Codex 研究了 1 小时,实现了下面这个效果:

已关注
关注
重播 分享 赞
观看更多
    逛逛GitHub

    0/0

    00:00/02:47
    进度条,百分之0
    00:00
    /
    02:47
    02:47
    全屏

    倍速播放中
    您的浏览器不支持 video 标签

    继续观看

    我用 Codex 破解了家里这个设备,还能语音遥控。。。

    原创
    ,
    我用 Codex 破解了家里这个设备,还能语音遥控。。。
    逛逛GitHub
    已同步到看一看写下你的评论

    最终实现的效果是:

    我的 MacBook 放在我客厅的桌子上,我在沙发上说:“小C,请你打开我的投影仪,然后打开腾讯视频找到我之前看的综艺,帮我点开”。

    然后就看着投影仪自己打开,Agent 去操纵完成了这个任务。后面想关投影仪,直接喊一声:“小 C,关掉我的投影仪。”

    这个文章分享一下整个流程,包括:

    ① 用 Codex 控制家的投影仪,支持开关机和复刻遥控器上的操作

    ② 支持让 Codex 看到目前投影仪的实时画面,实现  我给一个指令 -> Agent 读取投影仪画面 -> 决策下一步点击 -> 执行操作 -> 再读取投影仪画面 -> 评估是否完成我的诉求。

    ③ 同时搞了一个语音助手,能时刻监听我。我说 小C 唤醒它,把我的话实时转成文本,同步给 Codex 去执行。

    图片

    01

    先把遥控器接到电脑上

    一开始,我给 Codex 的任务很简单:看看能不能用我的 Mac 控制投影仪。

    具体就是弄清楚投影仪通过 Wi-Fi 接收什么指令,再让电脑用同样的方式控制它。

    其实这一步并不需要最近很火的热 REA 逆向工具,现在模型能力很强了。

    直接口喷说你的诉求就行了。

    先让电脑和投影仪连上同一个 Wi-Fi,然后告诉 Codex 你投影仪的型号、IP 地址。

    让它自己研究怎么控制。

    大概等了 5 分钟,Codex 真就控制投影仪选中框真的往右挪了一格。

    图片
    图片

    后面的关机、方向键、确认、返回、主页和音量,也就可以逐个接起来。

    到了开机这里,确实有点麻烦。折腾了好几轮。

    后面是 Codex 让我用 iPhone 上的官方极米 App 开机,同时把手机放在 Mac 附近。Codex 配合本机程序采样它发出的蓝牙信号,再尝试由 Mac 发送。

    终于有一轮,我没碰手机,也没碰遥控器,只让 Mac 发了一次广播,投影仪自己亮了。

    图片

    随后,Codex 把这些操作做成了一个 Mac 小应用,常驻右上角菜单栏。

    打开之后,就是方向键、确认、返回、音量和开关机这些常用按钮。

    图片

    也让它沉淀成一个 Skill,方便 Agent 调用。

    到这一步,我已经有了一个电脑上的遥控器。

    02

    让 Codex 看见投影仪画面

    如果每一步都要我告诉它向左、向右、确认,那打开腾讯视频、找播放记录,还是得由我来判断。

    所以第二个目标,就是让 Codex 看见投影仪当前的画面。

    后面发现,电脑通过同一个局域网,就能拿到投影仪当前画面的截图。

    图片

    当我在 Codex 的 Agent Loop 中看到我投影仪界面的截图时。

    我还是被震撼到了。。。 就感觉太神奇了,还真能走通。。。。

    这样,Codex 就可以看一眼屏幕,决定下一步按什么,操作后再看一眼。

    遇到首页、弹窗或者不同的选中位置,也可以根据实际画面调整。

    我把 Vibe Coding 的这个 Mac 上的极米 Z7X 投影仪控制 App 和对应 Skill 开源了。

    感兴趣的自取。

    图片
    开源地址:https://github.com/Wechat-ggGitHub/xgimi-agent

    03

    喊名字唤起的 Codex 干活

    这时候我就想,能不能直接通过语音操纵 Codex 。

    然后 Codex 再用我这个投影仪操纵 Skill 来去控制我的投影仪呢?

    还真行,我做了一个 Mac App,叫小 C。

    图片

    我希望它平时在后台等着,喊一声 小 C,它就响一下表示听到了。

    接着我说出指令,说完稍微停顿,它就把语音转成文字,发给 Codex。

    这里我特意要求了一点:每次都要发到同一个专用会话。

    图片

    这样,后面的指令就能接着前面的上下文继续聊。

    比如刚刚操作过投影仪,下一次再让它返回或者关机,不用每次重新交代背景。

    这条链路做出来之后,我又让 Codex 加上自动朗读。

    任务完成后,Codex 在会话里回复,小 C 再把回复朗读出来。

    这样我不盯着电脑,也能听到结果。

    图片
    图片
    图片
    图片

    我已经通过这个语音入口发过投影仪关机指令。

    唤醒、把文字发到 Codex 固定会话,以及 Codex 干完活自动朗读播报,也都支持了。

    这个语音 App 我也整理开源了,项目叫 Voice Control Agent,应用里还是叫小 C。

    顺便说一下,平时等待唤醒是在 Mac 本机完成的,唤醒后的指令音频才会交给语音识别服务。

    语音识别需要配置自己的服务账号。

    使用在线声音朗读时,回复文字也会发给对应的语音服务。

    图片
    开源地址:https://github.com/Wechat-ggGitHub/voice-control-agent

    04

    接入Agent,智能家具真的变“智能”了

    家里的设备,可以慢慢交给一个 Agent

    这次只接了一台投影仪,但它让我对后面的家庭设备有了更多想法。

    如果灯、空调、窗帘这些设备的控制方式,也能逐个被接通,Agent 就可以根据我的需求,协调它们一起工作。

    比如吃完饭想看电影,跟它说一声。

    它去打开投影仪,调整灯光,再找到想看的内容。

    或者出门的时候,告诉它把家里该关的设备检查一下。

    哪些已经关了,哪些还需要处理,它再告诉我。

    但从这次实际做出来的东西看,我觉得半年内,就会有越来越多这种能用起来的家庭 Agent 出现。

    电脑或者家里的某个常驻设备作为一个大脑,我每天跟它说话,它去理解需求,再调用相应的工具操作设备。

    搞这个玩意的时候,我还想到另一个场景:家里的老人看电视。

    现在有些电视界面,我自己进去都要找一会儿。

    找应用、找节目、找播放记录,中间还夹着各种推荐和会员入口。

    对不熟悉这些界面的人来说,想看个电视剧,操作成本实在有点高。

    如果 Agent 能看懂当前画面,又能操作设备,老人就可以说:接着放昨天那个电视剧。或者:我想看以前看过的那个老电影。

    信息不够,Agent 就问一句,再去帮他找。

    我觉得这个场景挺不错的。期望后面都能落地普世化吧。

    05

    点击下方卡片,关注逛逛 GitHub

    这个公众号历史发布过很多有趣的开源项目,如果你懒得翻文章一个个找,你直接关注微信公众号:逛逛 GitHub ,后台对话聊天就行了:

    图片

    前往微信阅读全文

    内容来自公众号,可前往微信查看原文。

    查看作者的更多文章 →订阅更新、RSS 与阅读指南 →