Windows · 桌面悬浮球 · Claude Code

一只看得懂你在忙什么的桌宠

无边框真透明的悬浮球,实时反映 Claude Code CLI 的工作状态——思考、正在跑哪个工具、在等你输入、完成、待命、离线、异常。状态由 Claude Code hooks 事件驱动,变化即达,不靠轮询猜。赛博朋克 HUD。

真透明 无边框悬浮球 事件驱动 变化即达 用量可视 会话/今日/累计 token 6 套 主题一键切换 零依赖 无需安装运行时
正在响应 Claude 的工作状态
Features

不只是装饰,它真的在"看"

状态由 Claude Code hooks 直接告知,不再靠轮询转录文件猜——哪个工具在跑、回合何时结束、claude 何时在等你,服务端边推边算。

◉

被通知,不是猜

旧版每 500ms 扫一遍转录文件、靠时间阈值推断 claude 在干嘛。现在由 Claude Code hooks(PreToolUse / Stop / Notification)直接告知,再经 SSE 推送,变化即达。工作中会显示具体在跑哪个工具,而不是一律"工作中"。没装 hooks 也能用,会自动退回转录推断,只是精度下降。

运行命令 / 编辑文件 / 搜索代码 / 调用子代理…
▣

无边框真透明宿主

WinForms + WebView2,DWM 玻璃透明、始终置顶、无标题栏。WebView2 运行时 Windows 10/11 自带。

真正的透明窗口 · 不挡操作
◇

零外部依赖

Node.js 内置模块 HTTP 服务 + 系统自带 PowerShell + WebView2 运行时,无任何 npm 包。

✦

赛博朋克 HUD

Cascadia Code + 霓虹扫描线,状态文字与界面随主题换色。

◈

置顶 + 记忆位置

窗口位置/大小/透明度/主题/字号全部持久化,重开自动恢复。面板也可拖动——标题栏与状态区就是拖拽手柄,和球共用一套。

◐

看得见"在等你"

claude 卡在权限确认、或停下来等你开口时,桌宠变琥珀色并提示——这是最该被提醒的时刻,旧版从状态里根本看不出来。

Usage

看得见"烧了多少"

按「本次会话 / 今日 / 累计」三档统计 token 用量、缓存命中率与上下文占用,接近上限时弹聊天软件式告警气泡。不做金额换算——模型名与单价因代理 / 第三方网关而异,猜一个数字不如不给。数据直接来自转录里每条 assistant 行的 usage,不联网、不调 API。

▦

本次 / 今日 / 累计 三个页签

点用量瘦条或标题行的 ▤ 切到用量页,页签切换统计范围;网格展开 输入(含缓存)/ 输出 / 缓存命中 / API 调用次数 / 上下文占用。面板上还有一条常驻用量瘦条与近 7 日 sparkline,不看详情也能一眼扫过。

本次 / 今日 / 累计
▁

缓存命中率 + 上下文占用

常驻瘦条显示 ↑输入 ↓输出 CTX%,CTX 逼近上限时转琥珀 / 红。命中率偏低或上下文快满,都是同一份事实的另一面。

↑输入 ↓输出 CTX%
◬

6 条告警规则

上下文将满 / 上下文偏满 / 单回合输出偏大 / 缓存命中偏低 / 今日用量偏高 / 用量激增。由服务端边沿触发并带冷却——只在越过阈值的那一下弹一次,回落后重新武装,不会条件一直成立就一直响。

边沿触发 · 带冷却
▢

告警气泡

球上出现红点未读徽标,展开后弹出聊天气泡式提醒,最多 3 条。点卡片或一键已读即清掉红点;同一条规则再次触发才会重新点亮——红点表示"还没看过",不是"条件还成立"。

未读红点 → 展开气泡 → 一键已读

一个状态,一个表情

桌宠用不同的动画 Gif 与文字,告诉你 Claude 此刻在做什么。

THINKING

模型在生成(还没有工具在跑)

thinking.gif
WORKING

有工具在执行(面板显示工具名)

working.gif
WORKING LONG

工作中(超过 30s 的长任务)

workinglong.gif
AWAITING

claude 在等你(权限确认 / 等你开口)

offlineandidle.gif
DONE

一次任务刚完成(闪 5s)

done.gif
IDLE

安静待命

offlineandidle.gif
OFFLINE

未检测到 claude 进程

offlineandidle.gif
ERROR

最近 30s 内工具报错

errorandwaityou.gif
Themes

6 套主题,一键循环切换

点「主题」按钮或按 T 循环切换,自动保存。

赛博霓虹

cyber · 默认

极简白

paper

终端绿

matrix

暗金 OLED

gold

落日橙

sunset

深海蓝

ocean

安装即用,三步开始

环境要求:Windows 10 / 11 · Node.js ≥ 18 · Claude Code CLI · WebView2 运行时(随 Edge 自带,Win10/11 无需另装)

1

双击 ClaudePet-Setup.exe

运行安装向导。向导会自动检测 Node 与 Claude,缺失会弹窗提示,并可手动指定路径。

2

完成向导

写入 app\runtime.ini(PATH 无关),创建桌面与开始菜单快捷方式,并挂载 hooks。

3

双击桌面「Claude Pet」

终端里启动 claude,右下角出现桌宠悬浮球。关闭终端后桌宠在数秒内自动退出,不留后台进程。

注意:hooks 生效需要重启一次 claude 会话。
开发者方式:也可双击 install.bat(自检 + 复制到 %LOCALAPPDATA%\ClaudePet + 建快捷方式 + 挂载 hooks);或从源码跑:node app/server.js 启动服务,再 host\build.bat 构建悬浮球宿主(WinForms + WebView2,系统自带 csc 编译)。

交互一览

桌面上的小窗口,操作都在直觉里。

拖动悬浮球

移动桌宠位置,自动记住

拖动面板

标题栏与状态区都是拖拽手柄,移到别处,自动记住

左键 / 悬停 ~1s

球 → 展开全面板;「收起」回球

右键球

弹出中心对称透明气泡菜单(主题 / 终端 / 置顶 / 透明度± / 退出)

T / − +

循环切换主题;缩放字号与 UI(0.85–1.35)

点击告警气泡 / 红点

查看未读告警并一键已读(红点表示还没看过,不是条件还成立)

双击面板桌宠

聚焦 claude 终端

配置全部记住

关闭前自动保存,重开一切照旧。

❖

主题 + 字号

服务端 app\config.json 是唯一真相(含告警阈值),GET / 直接注入首屏,无闪烁

▤

窗口状态

位置 / 大小 / 透明度 / 置顶,存于宿主 host.json

⇲

退出即保存

beforeunload 自动再存一次,重开全部恢复;token 账本单独存在 app\usage.json,删掉会自动从转录重建

从源码运行: 在仓库目录执行 node app/server.js 启动服务,再运行 host\build.bat 构建悬浮球宿主(WinForms + WebView2,系统自带 csc 编译),详见仓库 docs/。