2026-05-22 19:05

开源一个Skill,让AI 接管你屏幕边那张便签纸

author_path 歸藏的AI工具箱©
头图

本文来自微信公众号: 歸藏的AI工具箱 ,作者:歸藏的 AI 工具箱,原文标题:《开源一个 Skill,让 AI 接管你屏幕边那张便签纸》


上个月我做了M5 Paper Buddy,把一块墨水屏接到Claude Code上,监控AI在干什么、需要审批什么。


当时挺兴奋的,物理按键审批操作那个仪式感很好。


但用了几周之后我发现,它放在桌上的时间,远比我看它的时间长。


AI跑得稳的时候根本不需要监控,需要审批的时候我大概率人就在电脑前。它解决的是一个边缘问题。



真正的场景藏在屏幕边框上


后来我注意到一个很普遍的现象:很多人会在屏幕边框上贴便签纸,甚至有很多这种便签纸在卖。


写着今天要做什么、几点开会、某个项目的下一步动作。


便签纸的存在不是因为它好用,而是因为人需要"抬头就能看见"的提醒,不想为了看一眼日历切窗口、解锁手机。



但便签能记的东西非常有限,写完就静止了。


日程变了,便签不会变。任务做完,便签还在那。它是一个被时间冻住的物件。


而现在,我们手边有了AI。它有Memory,有Agent,能读我的日历、看我的GitHub、跟我对话。


如果让AI来决定屏幕边框上应该贴什么、什么时候撕掉、什么时候换新的,那就是另一个东西了。


这就是AI Desk Card Skill想做的事。


形态上是一块4.7寸的墨水屏,带磁吸(类似MagSafe),可以直接贴在显示器旁边。


背后是一个Skill——装到Claude Code或者Codex这类AI Agent里,AI接管所有事:


决定推什么、什么时候推、息屏时显示什么。


Github:https://github.com/op7418/ai-desk-card


下面我把它实际怎么用、能解决什么问题讲清楚。


案例一:日程和待办自己会更新


我把top-left槽位设成日历,middle槽位设成todo。


早上坐到电脑前,屏上已经是当天的完整安排:上午的会、下午健身、晚上要交的稿子。


这些数据来自飞书日历,AI Agent通过飞书CLI直接读取。


下午跟一个朋友约了周四的咖啡。


我跟AI说"周四下午加一个咖啡,3点",AI一边把日程写进飞书日历,一边把屏上的卡片刷新了一下。


新的日程出现在todo槽位里。


更舒服的是反向同步。我做完AIGC Weekly的初稿,跟AI说"周刊写完了",屏上对应的那一行就被划掉了。


便签纸做不到这件事。便签纸只能记录某个瞬间的快照,而日程的本质是一个不断变化的状态流。


当显示设备和你的Memory联通之后他会直接展示你和你的上下文当下的状态。


案例二:息屏的时候,它是你的名片


这是我做完之后最喜欢的一个功能。


墨水屏有个物理特性:断电之后画面会保留。


我专门为这个特性加了一个Quiet Hours模式——到了晚上11点,或者你长按"睡眠"按钮,屏幕会自动切换到一张电子名片,然后进入深度休眠。


名片上是你的头像、介绍、二维码。整张屏黑白分明,墨水屏特有的纸质感。


这块屏从那一刻起就完全不耗电了,但画面一直在。


它带磁吸,从显示器边上摘下来揣进包里,重量很轻。


下次跟新朋友吃饭,从包里掏出来递过去:黑白名片+二维码,加完好友放回口袋。


整个过程没有插电、没有开机、没有打开App翻二维码的尴尬。


而早上你坐到桌前,它又会被AI唤醒,自动切回工作模式——日程、todo、PR队列回来了。


墨水屏的限制(不发光、刷新慢、断电保留)在大多数场景下都是缺点,但当你不去硬刚这些限制,反而顺着它去设计场景,会发现它有些屏幕做不到的事。


案例三:GitHub的动态我不再错过了


我维护CodePilot这种开源项目,最大的负担是看不见—不打开GitHub就不知道有没有新PR、新Issue。


但每隔十分钟打开一次GitHub是非常糟糕的工作节奏,注意力会被切碎。


现在AI Desk Card的bottom槽位常驻一个pr-queue widget。


CodePilot仓库有新PR、有人在Issue里at我、CI挂了,AI都会把它推上去。


数字小不打扰,但抬头扫一眼就知道有没有要处理的事。等我手头这段写完,再统一去看。



更进一步的玩法是,AI知道我在做什么。


我现在专注写AIGC Weekly的时候,它会自动把PR队列降级,只在出现critical标签的Issue时才推上来。


等我切到CodePilot的开发,PR队列又会回到主位。


屏幕上显示什么,本质上是一个调度问题,不是一个配置问题。


传统dashboard让你配widget,配完一周内还行,之后就变成一面没人看的墙。


AI主动决策是因为它知道你正在做什么、它能换。


案例四:天气、休息、所有那些"该有但你想不起来配"的东西


最让我自己意外的一类widget是break-reminder。


我经常一坐就是三四个小时不动。


这个widget会在一段时间没有按键活动之后,在某个槽位上轻轻推一句"该起来走走了"。


墨水屏不发光,不会弹窗、不会响、不会震动,但你抬头看到一行字,自然会停一下。


它和番茄钟最大的区别是:没有强制性。它只是存在,不打扰你。


如果你正在跑代码、写文章的状态里,那一行字会被你忽略;


如果你已经累了、状态浮的时候,看到那行字会真的去倒杯水。



天气也是一样。


我不会专门去查今天会不会下雨,但顶部widget静静显示"下午有雨"几个字之后,下楼前我会把雨伞拿上。


这种"低优先级但有用"的信息,过去只能靠你自己记得去查,现在它们待在视野边缘,需要的时候被你扫到。


它是怎么装上的:AI全程引导


整个安装流程没有App,没有蓝牙配对页面,没有手机扫码。你跟AI说:


"帮我把ai-desk-card装上:https://github.com/op7418/ai-desk-card"


接下来发生的事:


1.


AI检测你电脑上有没有PlatformIO,没装就自动装


2.


检测你有没有插USB,没插就提示你插


3.


自动编译固件、烧录到M5Paper,1分钟左右


4.


问你Wi-Fi密码,写进设备


5.


问你"想看哪些卡片、多久刷一次"


6.

推第一个widget上去



整个过程你只回答Wi-Fi密码和"想看什么"两个问题。


之后设置定时任务也是一句话:"让卡片每30分钟刷新天气和未读邮件,工作日8点到22点。"


AI自己去写cron、自己去注册loop、自己去调度。


定时任务跑的时候,AI会读取你的Memory来决定推什么内容。


比如我让它每天早上9点更新一次,它会去看我Memory里最近活跃的项目(CodePilot、AIGC Weekly等),按重要度安排槽位。


这里没有"App工程师做的设置页面",因为AI就是设置页面。


你过去要点十下才能调好的设置,现在一句话就行。


一个跟传统硬件相反的设计:组件预置,AI只填数据


讲到这里需要单独说一下实现思路,这是AI Desk Card跟传统IoT设备最大的不同。


通常做一个智能硬件,组件是写死在固件里的:


时钟样式、天气图标、字体大小,都是固件工程师在出厂前定好的。要加新功能,要发新固件/OTA/重新认证一遍。这是为什么99%的智能硬件买回来三个月就跟刚拆封时长得一样。


AI Desk Card走的是反方向:16种widget模板预置在服务端,AI Agent只负责往里面塞JSON数据。


举个例子,pr-queue这个widget的视觉布局(一个标题区、4行PR信息、每行带状态图标)是渲染端写好的。


AI不需要画图、不需要排版、不需要选字号。它只要往daemon发一个这样的请求:


JSON


{"slot":"bottom","type":"pr-queue","data":{"items":[{"repo":"codepilot","title":"Fix scroll jitter","status":"review"},...]}}


服务端用Python+Pillow把这个JSON渲染成一张540×280的像素图,推到墨水屏上。



这个思路其实来自我们在CodePilot桌面端做的生成式UI。


那边走的是相反的极端:模型实时生成HTML/SVG,渲染成可交互的widget。


两个方向看起来截然相反,但精神是一致的——


UI由AI决策,不由用户配置。


为什么墨水屏要反着来?因为约束不一样。


浏览器能跑任意代码、有强大的字体引擎、可以加载CDN,所以让AI生成UI本身没问题。


墨水屏渲染受限,全屏GC16刷新要2秒、中文字体一套就要几兆、像素精度不能算错,AI直接生成UI太重了。


所以反过来:UI提前准备好,AI只决定填什么、放哪个槽位、什么时候换。


这个组件库还在不断扩。硬件本身基本不变,能力却在持续生长。


写在最后:AI Agent把硬件从内置功能里解放了出来


聊点更大的事。


传统硬件公司的护城河是"我设备里能做什么"。


CPU、传感器、操作系统、内置App,决定了它的能力上限。一旦造好出厂,能力就基本封顶。


AI Desk Card这种思路下,硬件的能力来源被换掉了。


它本身只是一块墨水屏+ESP32,能做什么取决于AI Agent能拿到什么信息。


日历来自飞书CLI、PR来自GitHub CLI、天气来自任意API、Memory来自你的Obsidian仓库——这些信息源全都在Agent那边,不在硬件里。


当AI Agent成为信息中枢之后,硬件可以做得很薄、很专用。


它不需要内置一百个功能,只需要做好一件事——在AI决定推送的时候,把内容显示出来。



这件事的成本也降到了很低的水平。M5Paper V1.1大概600块,未来类似的开源开发板会更便宜,三四百块就能买到。墨水屏、彩色墨水屏、TFT小屏、甚至Kindle、墨水屏阅读器,理论上都可以适配同一套Skill。


后面我还想做几件事:



适配M5Paper S3和Inkplate/Waveshare等其他墨水屏开发板



尝试给老Kindle写一个适配层,把闲置的阅读器变成桌面副屏



跟Home Assistant联动,把智能家居状态推到桌面卡上——客厅温度、门锁状态、扫地机器人位置



探索彩色墨水屏的可能性,开放更多widget类型


每多支持一种硬件,就多一种AI触达物理世界的方式。这些设备不需要变聪明,它们只是AI Agent的物理出口。


真正在变聪明的是你桌上那个AI,


而它聪明的速度,比硬件迭代快得多。


GitHub:https://github.com/op7418/ai-desk-card

本内容由作者授权发布,观点仅代表作者本人,不代表虎嗅立场。
如对本稿件有异议或投诉,请联系 tougao@huxiu.com。