Claude Pet
用桌面宠物实时呈现 Claude Code 状态,并提供项目记忆、仓库提醒与工间休息指导。
- Star 数
- ★ 14
- 最近更新
- 1 个月前
- License
- MIT
- 主语言
- Python
- FA 评分
- 64/100 · 存在缺口
30 秒速览
- 可在哪里用
- 平台专用Claude Code
- 开始前需要
- 典型场景
- 经常在 Claude Code 执行任务时切换到浏览器、Slack 或其他编辑器的开发者,可通过悬浮表情和声音判断任务正在思考、读写文件、运行命令、等待输入、完成或失败。
- 主要局限
- 核心事件来源和上下文注入都绑定 Claude Code hooks;没有记录 ChatGPT、Codex、Claude.ai 或模型 API 的原生适配路径。
- 源码审查
- 64/100 · 存在缺口
这个 Agent 能做什么,适合哪些场景?
Claude Pet 是面向 Claude Code 用户的本地桌面伴侣,而不是独立编写代码的通用代理。它通过 Claude Code hooks 接收会话、工具和失败等事件,由 `hook.py` 将事件发送至本机 `:5050` Flask 服务,再由 PySide6 透明悬浮窗口渲染情绪动画并播放声音。它还把项目决策、约定、修复和备注保存在本地 SQLite 图谱中,并在新会话开始时注入不超过 800 token 的排序上下文。点击宠物可打开包含 Projects、Graph、Skills、Stats、Ergo 和 GitHub 功能的 HUD;命令行则用于生命周期、记忆、人体工学提醒和仓库监控。应用可监测 GitHub 提交、PR、评审、发布、Actions、部署及议题,但私有仓库和较高限额需要个人访问令牌。它适合希望离开终端时仍掌握 Claude Code 状态、并接受本地记忆与桌面常驻进程的开发者。
安装器检查 Python 3.10+、安装 Cairo、创建虚拟环境、安装 claude-pet,并向 ~/.claude/settings.json 写入 Claude Code hooks。事件链路为 Claude Code event → hook.py → HTTP POST 到本机 :5050 → 宠物轮询状态并用 bot_svg.py 生成情绪动画;完成、待处理和失败事件会分别触发声音提示。app.py 提供 PySide6 无边框透明桌面窗口,server.py 保存当前状态,cli.py 暴露启动、诊断、更新、记忆、人体工学和 GitHub 子命令。记忆系统将各项目的决策、惯例、修复、问题点和用户备注写入 ~/.claude/claude-pet/memory.sqlite,可导入 .ua/knowledge-graph.json,并在 SessionStart 时按权重、时效和 FTS5 匹配生成上下文。重复至少两次的模式可晋升为 SKILL.md,写入 Claude Code 的技能发现路径。GitHub Repo Watcher 使用带 ETag 缓存的轮询读取仓库活动,去重后生成桌面反应和提醒;人体工学模块依据实际活动时间显示带动画、倒计时以及 Done/Skip 操作的休息浮层。
- 经常在 Claude Code 执行任务时切换到浏览器、Slack 或其他编辑器的开发者,可通过悬浮表情和声音判断任务正在思考、读写文件、运行命令、等待输入、完成或失败。
- 同时维护多个长期项目的个人开发者,可让本地 SQLite 记住各项目的决策、约定、修复和注意事项,并在下一次会话启动时自动提供相关上下文。
- 需要关注多个 GitHub 仓库的维护者,可在桌面接收新提交、PR 状态、评审、发布、CI、部署和新议题提醒,而无需部署 webhook 接收端。
- 长时间使用终端和编辑器的程序员,可启用活动感知的人体工学计时器,获得眼部休息、收下巴、手腕转动、伸展和饮水提示。
- 希望定制开发者桌面吉祥物的贡献者,可基于 PySide6、Flask、SVG 情绪生成器和 PyInstaller 构建脚本添加新表情、练习、仪表板标签或主题。
如何安装或部署这个 Agent?
需要 Python 3.10 或更新版本,以及 macOS 11+、Windows 10+,或带 X11/Wayland 的 Linux。安装过程还会安装 Cairo,并修改 ~/.claude/settings.json 以连接 Claude Code hooks。
macOS 或 Linux 可克隆并运行安装脚本:
git clone https://github.com/nikhilagrima/claude-pet.git ~/claude-pet && cd ~/claude-pet && bash install.shREADME 对 macOS 另行建议使用:
bash install.commandWindows PowerShell:
git clone https://github.com/nikhilagrima/claude-pet.git $HOME\claude-pet
cd $HOME\claude-pet
.\install.bat安装后可用以下命令进行首次前台启动,以便直接查看日志和宠物窗口:
claude-pet run监控公开 GitHub 仓库不强制要求凭据。私有仓库或 5000 次/小时的额度需要配置个人访问令牌:
claude-pet github token ghp_yourPAT如何使用这个 Agent?
在后台启动桌面宠物:
claude-pet start随后正常使用 Claude Code;安装的 hooks 会把事件送到本机服务。点击宠物打开 HUD,拖动可改变位置,右键可触发表情、立即休息、暂停提醒、切换人体工学功能、重置位置或退出。
检查并修复 hook 路径:
claude-pet doctor查看当前项目记忆、添加备注并检查下次会话会注入的内容:
claude-pet memory
claude-pet note "Working on the auth refactor, next step is JWT rotation"
claude-pet context添加并检查 GitHub 仓库监控:
claude-pet github watch facebook/react
claude-pet github list
claude-pet github check
claude-pet github events查看或即时触发人体工学休息:
claude-pet ergonomics status
claude-pet ergonomics break-now
claude-pet ergonomics stats更新或停止程序:
claude-pet update
claude-pet stop这个 Agent 有哪些优点和局限?
- 把 Claude Code 的思考、读写、命令、完成、失败和待用户处理状态映射为不同动画与声音,切出终端后仍能获知进度。
- 项目记忆完全保存在本地 SQLite,不使用云端、嵌入模型或向量数据库,并在落盘前使用 11 个敏感信息正则进行脱敏。
- GitHub 监控不要求公网 webhook;首次轮询静默、事件去重,并以 ETag 缓存降低静默仓库的 API 额度消耗。
- 人体工学提醒基于 Claude Code 活动而非单纯墙钟计时,空闲三分钟会暂停计时,并可延迟正在输入时触发的提醒。
- 提供 macOS、Windows 和 Linux 安装器及 PyInstaller 构建脚本,README 还声明有跨三平台的 112 项测试。
- 核心事件来源和上下文注入都绑定 Claude Code hooks;没有记录 ChatGPT、Codex、Claude.ai 或模型 API 的原生适配路径。
- 需要常驻本机的 PySide6 窗口和
:5050Flask 服务,并会写入用户的 Claude 配置、虚拟环境、SQLite 数据库及技能目录。 - 完整安装依赖 Python 3.10+ 和 Cairo;Linux 还需要 X11 或 Wayland,且二进制不能跨平台编译。
- GitHub 监控依赖网络轮询;无令牌时限额为每小时 60 次,私有仓库及较高额度需要保存个人访问令牌。
- 自动上下文注入和从重复模式生成技能会改变后续 Claude Code 会话的输入与技能发现内容,采用前应评估其记忆质量和本地数据策略。
- 人体工学功能仅是健康提示,不提供诊断或治疗;有疼痛的用户仍需咨询专业人士。
这个 Agent 与同类方案有什么区别?
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|
| Claude Pet 当前 | 64 · 存在缺口 | ★ 14 | 1 个月前 | Python | Claude Code |
| projectmem 编程记忆 | 74 · 存在缺口 | ★ 828 | 9 天前 | Python | Codex · Claude Code · Claude.ai |
| mex 项目记忆 | 71 · 存在缺口 | ★ 1.6k | 5 天前 | TypeScript | Codex · Claude Code |
| Citadel 编码代理运行层 | 60 · 存在缺口 | ★ 923 | 今天 | JavaScript | Codex · Claude Code |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
证据说明服务写端点使用本地令牌,记忆数据声明仅存本机,敏感模式会在落盘前脱敏;安装、GitHub 轮询、配置路径和主要外部副作用也有说明。扣分原因是安装器会安装系统组件、修改 Claude 设置并启动后台进程,自动记忆与上下文注入并非逐次确认;PAT 的权限范围、存储保护和日志脱敏细节未展示。依赖只有宽松下限、没有锁文件、安全扫描、哈希或更新审计;卸载和删除命令虽存在,但未说明完整清除配置、令牌及数据,也没有升级回滚。作者和 MIT 归属清楚,但人体工学来源仅列机构名称,没有可核验引用。
多平台 CI、明确的运行依赖以及针对鉴权、错误日志、上下文预算和事件冷却的回归测试,为普通使用提供了一定可靠性证据。扣分原因是 README 标称 v0.5.0,而包元数据为 v0.7.5,且“112 tests、全部通过”无法从所给片段独立确认。失败处理仅由日志测试、doctor 描述和少量 HTTP 状态测试体现,未提供完整错误信息、网络退避、数据库恢复或用户可见诊断实现。
目标用户、编码场景、CLI、桌面交互、记忆、人体工学和 GitHub 监控场景描述非常具体,因此受众与场景充分。能力边界包括本地存储、无云端、轮询而非 webhook、非医疗建议和不可跨平台编译等,但“100% local”等绝对表述与 GitHub 网络功能并存,令边界略显含混。事件映射、空闲阈值、延迟机制和冷却测试支持触发精度,但完整触发实现未提供。三大桌面平台及版本要求写明,不过 Linux 桌面差异、权限和无头环境限制说明不完整。
README 的安装、使用、CLI、架构、构建、更新和卸载组织清晰,安装说明覆盖三个平台并列出安装器副作用,因此信息架构和安装说明充分。命令命名总体稳定且示例丰富,但没有成体系 FAQ,故示例项未满分。已说明跨编译、平台、医学用途和速率限制等限制,但未系统列出安全、隐私和资源消耗限制。MIT 文本完整且元数据一致。版本表停在 v0.5.0,而 pyproject 为 v0.7.5,缺少对应变更记录。维护入口仅有仓库 Issues、贡献邀请和 Byteflow.bot 署名,未给出明确负责人、支持政策或响应周期。
所述桌面状态、声音提示、HUD、CLI 查询、记忆注入和事件提醒均可直接服务开发工作流,测试也覆盖部分关键行为,因此输出可用性和增量价值达到普通使用水平。扣分原因是核心应用实现和实际输出样本有限,无法静态确认整个体验;相较单纯终端状态,它整合了多种功能,但价值主张主要来自 README。项目说明了本地处理、ETag 和速率预算,却没有量化后台资源、通知干扰、安装复杂度或维护成本,因此成本收益未达到充分论证。
部分主张可追溯到 pyproject、CI 配置及针对预算、确定性、鉴权和冷却的测试,架构与数据路径也有明确陈述。扣分原因是大量核心源文件、安装脚本和完整测试清单未提供,截图与 README 不能交叉证明运行效果;“112 tests 全绿”、平台测试范围、医学研究依据及若干保证缺乏所给材料中的独立佐证。事实、设计说明和医学免责声明大体分开,但营销性绝对保证与可验证事实之间仍有混合。
- 安装会修改 ~/.claude/settings.json、创建虚拟环境、安装系统图形依赖并启动后台应用;使用前应审查安装脚本并备份现有 Claude 配置。
- GitHub PAT 的建议权限、文件权限、加密状态和日志处理未在证据中说明;应使用最小权限令牌,并核查其实际存储位置和保护方式。
- 自动记忆和上下文注入会处理项目活动与笔记;不要仅依赖所述 11 个正则表达式防止秘密落盘,启用前应检查脱敏实现和数据库内容。
- README 与包元数据版本不一致,且依赖未锁定;发布物、源代码和依赖解析结果可能不同,应固定修订与依赖后再部署。
- 人体工学功能不是医疗建议,所给材料未包含可核验研究引用;出现疼痛或疾病时应咨询专业人员。
常见问题
它会把项目记忆上传到云端吗?
~/.claude/claude-pet/memory.sqlite;README 明确说明它不使用云端、嵌入模型或向量数据库。GitHub 仓库监控本身仍需访问 GitHub 网络接口。使用 GitHub Repo Watcher 必须提供令牌吗?
它需要哪些本地权限或文件改动?
~/.claude/settings.json 中的 hooks,并在 ~/.claude/claude-pet/ 与 ~/.claude/skills/ 下保存配置、记忆或生成的技能。如果 Claude Code 没有触发正确的动画怎么办?
claude-pet doctor 诊断并自动修复损坏的 hook 路径;也可用 claude-pet run 在前台运行,以直接查看进程输出。卸载后会留下后台守护进程吗?
claude-pet stop、claude-pet uninstall-hooks 和 pip uninstall claude-pet,并声明不会留下 LaunchAgent、计划任务或守护进程。