我做了一个会评判你 GitHub 活动的 Tamagotchi 🐾(而且它直言不讳)
Source: Dev.to
(请提供您希望翻译的文章正文内容,我将按照要求保留链接并将文本翻译为简体中文。)
Source: …
介绍
你有没有那种好几天没推代码时的罪恶感?想象一下,这种感觉有了一个脸——一个小小的 ASCII Octocat 正在你的终端盯着你,慢慢饿死。
cli‑pet 是一个居住在终端里的虚拟宠物,它的能量来源于你真实的 GitHub 活动。你的提交是食物,绿色的 CI 构建让它保持健康,合并的 PR 是纯粹的血清素,编码连击则像能量饮料。停下编码几天,你的宠物真的会枯萎;它的状态会实时衰减,ASCII 图像也会从欢快跳动的生物变成一只眼神凄凉、饥饿的 (;.;) 小怪。
我并没有打造一个生产力工具。我在提供情感操控即服务。说实话?它真的有效。我从未如此有动力去推代码。
你可以领养以下四种宠物之一:
- 🐱 Cat – 当你的 CI 通过时会呼噜
- 🐶 Dog – 为你抓取 GitHub 通知(懂了吗?)
- 🐉 Dragon – 在测试失败时喷出火焰
- 🐙 Octocat – 终极 GitHub 伴侣
如何使用 cli‑pet
统计
您的宠物有四项统计数据,每项对应真实的 GitHub 数据:
| 统计项 | 影响因素 | 当下降时会怎样 |
|---|---|---|
| 🍕 饥饿 | 您的提交 | 宠物会乞求您写代码 |
| ❤️ 健康 | CI/CD 成功率 | 流水线失败 → 宠物生病 |
| 😊 幸福 | 合并的 PR 与代码审查 | 宠物在协作中茁壮成长 |
| ⚡ 能量 | 编码连击天数 | 持之以恒是关键 |
统计会随时间衰减,所以一个周末不理会仓库,您的 ASCII 生物将会出现显著变化。
命令
cli-pet adopt # 🏠 选择您的宠物并命名
cli-pet status # 👀 查看小伙伴的状态
cli-pet feed # 🍕 获取 GitHub 数据并喂养宠物
cli-pet play # 🎮 一起玩数字猜谜游戏
cli-pet stats # 📊 查看完整的 GitHub 活动细分
cli-pet tips # 🧠 从宠物那里获取个性化的编码建议
小贴士功能
tips 命令是最受欢迎的功能。您的宠物会分析您的编码模式并提供相关建议:
- 最近没有审查任何 PR 吗?宠物会提醒您。
- CI 不稳定?它会建议使用 pre‑commit 钩子。
- 7 天连击?它会提醒您休息也是高效的。
仓库
🔗 GitHub 仓库:
安装
npx cli-pet
需要 Node.js 18+,并且需要 gh auth login 或 GITHUB_TOKEN 环境变量之一。
Development with Copilot CLI
Real talk: 说实话:如果没有 Copilot CLI,这个项目我会花更久的时间才能完成。
- Idea & Architecture – 我描述了一个“虚拟宠物但在 GitHub 上”的概念,Copilot 帮助把它拆分成模块:宠物状态机、GitHub 活动获取器、ASCII 艺术渲染器、CLI 命令。
- Stat Decay & Mood Math – 通过迭代不断完善每小时饥饿值下降的公式,并处理多天被忽视的情况。
- GitHub API Integration – Copilot 引导我使用 Octokit 获取推送事件、计算 CI 成功率,并根据活动日期计算编码连击。
- Streak Calculation – 实现了向后遍历日期以检测连续天数;Copilot 处理了棘手的日期运算。
- ASCII Art Generation – 生成了 4 种宠物 × 8 种情绪 = 32 种变体;Copilot 生成了基础艺术,我对不同情绪进行微调(例如,使用
(;.;)眼睛的悲伤猫)。 - Debugging – 在几秒钟内解决了 ESM 模块问题、Chalk 的 TypeScript 错误以及模块解析的怪异行为,得益于 Copilot 的上下文建议。
- Iterative Pair‑Programming – Copilot 读取文件、运行命令、发现错误并在整个代码库中应用修复,实际上以 3 倍速度充当了配对编程伙伴。
The result? 结果如何?一个功能完整的终端宠物,它将真实工作游戏化,却不会让人感觉像被强迫的任务。
结论
如果你还没有领养终端宠物,你还在等什么?运行 cli-pet adopt,为你的编码习惯配备一个应有的监督伙伴。🐾
如果你的宠物死了……那就是你的责任。我只是把它做出来而已。