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

- 来源：歸藏(guizang.ai) (@op7418)
- 发布时间：2026-05-22 18:52
- AIHOT 分数：73
- AIHOT 链接：https://aihot.virxact.com/items/cmpgu99nj0ipcsljwhbviuqjd
- 原文链接：https://x.com/op7418/status/2057776589027594406

## AI 摘要

AI Desk Card 是一款 4.7 寸磁吸墨水屏，结合 AI Agent（如 Claude Code），通过预置模板与数据填充，动态显示日历、待办、GitHub PR 队列、天气等内容。它解决了传统便签纸的静态限制，实现内容自适应和场景切换（如夜间变为电子名片）。核心理念是将硬件从固定功能中解放，使显示能力由 AI 可获取的信息动态定义，从而提升效率并减少手动配置。

## 正文

http://x.com/i/article/2057775296712196096

# 开源一个 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，没装就自动装

1. 检测你有没有插 USB，没插就提示你插

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

1. 问你 Wi-Fi 密码，写进设备

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

1. 推第一个 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 发一个这样的请求：

服务端用 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

如果你觉得这次的内容对你有帮助，可以帮我点个赞或者转发给需要的朋友。
