Anthropic 官方开源:Claude 桌面宠物
(来源:磐创AI)
AI 硬件Anthropic 官方开源:Claude 桌面宠物,264 Star 的硬件玩具来了
基于 ESP32,支持蓝牙连接,18 种 ASCII 宠物 + 自定义 GIF,还能审批权限请求
如果你是 Claude 的忠实用户,一定想过:
要是 Claude 不只是在对话框里,而是有个实体小宠物就好了; 权限请求来了,能有个小设备提醒我; Claude 在思考的时候,能看到点什么……
现在,Anthropic 官方把这个功能做出来了。
anthropics/claude-desktop-buddy——Claude 桌面宠物项目,已经于 4 月中旬在 GitHub 开源。
这是一个基于 ESP32 的桌面小设备,通过蓝牙与 Claude 桌面应用连接,可以显示权限请求、会话状态,还能当电子宠物养。
目前已有264 Star,对于硬件项目来说,是个不错的开始。
01 这是什么:官方做的"桌面宠物"
用最简单的话说:
这是一个能跟 Claude 互动的硬件小玩具。
它长这样:
一个小屏幕设备,放在桌面上,通过蓝牙和你的 Mac/Windows 电脑连接。
它能做什么?
功能一:权限审批提醒
当 Claude 需要你批准某个操作时(比如访问文件、执行命令),设备会: - 屏幕显示提醒 - LED 灯闪烁 - 宠物动画变得"急躁"
你可以通过设备上的按钮直接批准或拒绝,不用看电脑屏幕。
功能二:会话状态显示
Claude 在工作的不同阶段,宠物会显示不同状态:
状态 | 触发条件 | 宠物表现 |
|---|---|---|
| sleep | 未连接 | 闭眼,缓慢呼吸 |
| idle | 已连接,无任务 | 眨眼,四处张望 |
| busy | 会话进行中 | 流汗,工作状 |
| attention | 有待审批 | 警惕,LED 闪烁 |
| celebrate | 每 5 万 token 升级 | 撒花,跳跃 |
| dizzy | 你摇了设备 | 螺旋眼,摇晃 |
| heart | 5 秒内批准 | 漂浮爱心 |
功能三:电子宠物
没事的时候,它就是个桌面宠物。
18 种 ASCII 宠物可选
支持自定义 GIF 角色
会根据你的使用习惯"升级"
这个项目不是纯软件,需要特定硬件。
官方支持的开发板
M5StickC Plus
这是一款基于 ESP32 的迷你开发板,特点: - 1.14 英寸彩色屏幕(135×240) - 内置蓝牙 + WiFi - 内置 IMU(加速度计 + 陀螺仪) - 两个可编程按钮 - 内置电池
价格:约 15-20 美元(国内约 100-150 元)
其他 ESP32 开发板能用吗?
可以,但需要修改代码。
官方固件依赖 M5StickC Plus 的库: - 屏幕驱动 - IMU 驱动 - 按钮驱动
如果你想用其他 ESP32 开发板,需要: 1. Fork 这个仓库 2. 修改 src/ 目录中的驱动代码 3. 适配你的引脚布局
适合人群:有 ESP32 开发经验的玩家。
03 如何烧录:三步上手
如果你已经有 M5StickC Plus,烧录过程很简单。
第一步:安装 PlatformIO
PlatformIO 是一个嵌入式开发 IDE。
# 使用 Python 安装 pip install platformio 或者访问 PlatformIO 官网 下载安装。
第二步:烧录固件
# 进入项目目录 cd claude-desktop-buddy # 擦除设备(如果是首次使用) pio run -t erase # 烧录固件 pio run -t upload 第三步:配对设备
- 1.
打开 Claude 桌面应用(macOS/Windows)
- 2.
启用开发者模式:Help → Troubleshooting → Enable Developer Mode
- 3.
打开硬件窗口:Developer → Open Hardware Buddy…
- 4.
点击 Connect,选择你的设备
- 5.
macOS 会请求蓝牙权限,点击允许
配对成功后,设备会自动重连。
04 控制方式:按钮 + 动作
设备有两个按钮(A 和 B)和一个电源键。
正常模式
操作 | 功能 |
|---|---|
| A (正面) | 切换屏幕 |
| B (右侧) | 滚动记录 |
| 长按 A | 菜单 |
| 电源短按 | 开关屏幕 |
| 电源长按 6 秒 | 强制关机 |
| 摇晃 | 眩晕效果 |
| 正面朝下 | 小睡(恢复能量) |
审批模式
操作 | 功能 |
|---|---|
| A | 批准 |
| B | 拒绝 |
屏幕管理
30 秒无操作自动关屏
有待审批时保持常亮
任意按钮唤醒
内置 18 种 ASCII 宠物,每种有 7 种动画:
动画 | 触发场景 |
|---|---|
| sleep | 未连接时 |
| idle | 待机时 |
| busy | Claude 工作时 |
| attention | 有待审批时 |
| celebrate | 升级时 |
| dizzy | 摇晃设备时 |
| heart | 快速批准时 |
切换宠物
菜单 → "next pet" 可切换宠物,带计数器。
选择会保存到 NVS(非易失存储),断电不丢失。
06 自定义 GIF:打造专属角色
如果你不满足于 ASCII 艺术,可以上传自定义 GIF 角色。
角色包结构
一个角色包是一个文件夹,包含:
my-character/ ├── manifest.json ├── sleep.gif ├── idle_0.gif ├── idle_1.gif ├── idle_2.gif ├── busy.gif ├── attention.gif ├── celebrate.gif ├── dizzy.gif └── heart.gif manifest.json 格式
{ "name": "bufo", "colors": { "body": "#6B8E23", "bg": "#000000", "text": "#FFFFFF", "textDim": "#808080", "ink": "#000000" }, "states": { "sleep": "sleep.gif", "idle": ["idle_0.gif", "idle_1.gif", "idle_2.gif"], "busy": "busy.gif", "attention": "attention.gif", "celebrate": "celebrate.gif", "dizzy": "dizzy.gif", "heart": "heart.gif" } } 上传方式
方式一:拖拽上传
- 1.
打开 Claude 桌面的 Hardware Buddy 窗口
- 2.
将角色包文件夹拖到投放区域
- 3.
应用会通过蓝牙推送到设备
方式二:直接烧录
python tools/flash_character.py characters/bufo pio run -t uploadfs GIF 规格要求
要求 | 说明 |
|---|---|
宽度 | 96px |
高度 | 约 140px(适应 135×240 屏幕) |
总大小 | <1.8MB |
压缩 | 推荐 gifsicle --lossy=80 -O3 --colors 64 |
注意:GIF 要紧凑裁剪,透明边距会浪费屏幕空间。
07 协议细节:给开发者的参考
如果你想自己开发兼容设备,Anthropic 提供了详细文档。
参考文档
REFERENCE.md 包含:
Nordic UART Service UUIDs
JSON Schema 定义
文件夹推送传输协议
核心协议
蓝牙服务:Nordic UART Service (NUS)
通信格式:JSON 行协议
示例:
{"type": "approval", "id": "123", "message": "Allow file access?"} {"type": "approve", "id": "123"} 文件夹推送
大文件(如 GIF 角色包)通过专用传输协议推送:
- 1.
发送 PUT
命令 - 2.
分块传输文件内容
- 3.
接收方校验并保存
src/ main.cpp — 主循环、状态机、UI 屏幕 buddy.cpp — ASCII 角色调度 + 渲染辅助 buddies/ — 每个物种一个文件,7 个动画函数 ble_bridge.cpp — Nordic UART 服务,行缓冲 TX/RX character.cpp — GIF 解码 + 渲染 data.h — 有线协议、JSON 解析 xfer.h — 文件夹推送接收器 stats.h — NVS 存储的统计、设置、所有者、物种选择 characters/ — GIF 角色包示例 tools/ — 生成器和转换工具 docs/ — 文档和图片 技术栈
技术 | 用途 |
|---|---|
C++ (90.6%) | 主逻辑、渲染 |
C (6.2%) | 底层驱动 |
Python (3.2%) | 工具脚本 |
框架
- ESP32 Arduino Framework
- M5StickC Plus 库
- PlatformIO
这个项目很有意思。
为什么有趣?
第一,这是官方第一次做硬件相关的东西。
之前的 Claude 都是纯软件,这是 Anthropic 第一次涉足硬件领域。
虽然只是参考实现,但信号很明显:
"我们对硬件生态感兴趣"
第二,这是"边界探索"式的产品。
官方博客说得很清楚:
"It's intended for makers and developers and isn't an officially supported product feature."
这是给开发者和创客玩的,不是正式产品功能。
这种定位很聪明: - 试水:看看用户对硬件集成的反应 - 低成本:开源代码,用户自己买硬件 - 可进退:受欢迎可以继续做,不受欢迎也不影响主线
第三,这是"情感化设计"的尝试。
让 AI 有"宠物"形态,这个想法不新,但官方做是第一次。
想想看: - 你的 AI 助手不再是抽象的对话框,而是一个有表情的小生物 - 它会在你工作时"流汗",在你批准时"开心",在你摇晃时"眩晕"
这种情感连接,可能是未来 AI 产品的方向。
10 适合人群:谁应该玩这个?
推荐人群
✅ ESP32 玩家:已经有 M5StickC 或其他 ESP32 开发板 ✅ 硬件爱好者:想做个桌面小玩具 ✅ Claude 重度用户:每天用 Claude,想要更有趣的体验 ✅ 创客教育:学校/培训机构的硬件课程项目
不推荐人群
❌ 纯软件开发者:不想碰硬件 ❌ 预算有限:不愿意花 100-200 元买硬件 ❌ 追求稳定:这是实验性功能,可能随时变化
11 下一步行动:如何开始?
如果你有兴趣
- 1.
购买硬件 - M5StickC Plus(淘宝/京东约 100-150 元) - 或现有 ESP32 开发板(需修改代码)
- 2.
Clone 仓库bash git clone https://github.com/anthropics/claude-desktop-buddy cd claude-desktop-buddy
- 3.
阅读文档 - README.md - REFERENCE.md
- 4.
烧录固件bash pio run -t erase pio run -t upload
- 5.
配对使用 - 启用 Claude 桌面开发者模式 - 连接设备
如果只想围观
访问 GitHub 仓库看看就行: https://github.com/anthropics/claude-desktop-buddy
写在最后
2024 年,AI 助手还是对话框里的文字。
2026 年,AI 助手可以是一个桌面小宠物。
这个变化看似微小,实则深远:
AI 正在从"工具"变成"伙伴"。
工具是用的,伙伴是相处的。
Claude Desktop Buddy 可能不会成为主流产品,但它代表了一个方向:
AI 不再只是屏幕里的抽象存在,而是有表情、有反应、有个性的实体。
如果你也对这个方向感兴趣,不妨试试这个项目。
说不定,下一个 AI 硬件爆款就从这里开始。
参考资料: - anthropics/claude-desktop-buddy GitHub 仓库 - REFERENCE.md 协议文档 - M5StickC Plus 产品页面