📄 文章总结:《开源Bugu,解决胡彦斌的vibe coding困境》
公众号: 卡尔的AI沃茨 | 作者: 卡尔 | 分类: vibe coding | 收录日期: 2026-08-10 原链接: https://mp.weixin.qq.com/s/hzZ87HG_qiZRYUs8ZIzm1Q
一、痛点:Vibe coding 时电脑合盖还是不合盖
作者长时间 vibe coding 时被一个问题困扰:不合盖吧,一手捏着 3 斤重的电脑像举哑铃,太吸眼球;合盖吧,虽然能用 Amphetamine 精确控制 Codex/Claude 运行时合盖不休眠,但合盖后总有点忐忑——不知道程序到底还在不在跑。
为了消除这种未知感带来的焦虑,他 vibe coding 出了一个 macOS 菜单栏应用:Bugu(布谷),已开源在 github.com/LearnPrompt/bugu。
二、Bugu 是什么
「盒盖之后,声音就是我们唯一界面。」——作者最重视的功能是音效。给 Codex/Claude 用 Goal 布置一跑几小时甚至一天的任务,中间带电脑出门时,希望不打开电脑也能确认任务状态。
主界面用法很简单: - Keep Mac awake:防止 Agent 工作时电脑休眠(故意做成简单开关,不做 Amphetamine 那套复杂触发器) - Watch coding agents:监听 Agent 对话,显示运行时间、输入提示语,可点击跳转到具体对话框 - 选心跳间隔(建议 5 分钟)+ 音效包(System 苹果自带音 / Bugu Pack 游戏音)
Bugu 像布谷鸟一样,任务正常运行时每隔 5-10 分钟叫一声,通过声音确认 Agent 的 5 种状态: 1. Accept — 接收任务(手机发新任务到 Mac,听音效确认有没有收到) 2. Running — 固定间隔的正常运行提示 3. Done — 任务成功 4. Interrupted — 任务意外中断 5. Permission — 需要授权
对话列表里运行中的对话变绿色,可点击直接跳转。
三、开发过程中的波折:OpenAI 额度烧太快
按作者以往经验,这种 App 用 Codex 开 Goal 一晚上就能搓个七七八八。但最近 OpenAI 像在 24 小时偷额度——他一个 Pro,28 号就把下个月 6 号之前的额度全用完了,「比便宜十倍的 Claude Pro 还不耐用」。
于是把 Codex 从高速度模式(1.5 倍速/2.5 倍积分)切回慢速,又给 Codex 找了一个六倍速的 coding 搭子:Kimi Code 来从零搭建原型: - Kimi 刚发 Kimi K2.7 Code Highspeed:性能不变、速度提升 6 倍,中等长度编码任务 180 token/s,短上下文 260 token/s - 有 goal 模式和多 Agent 能力,还能把 Claude Code 和 Codex 的 skill、MCP 都导入进来,不用从零教协作方式 - 第一个任务就是接手 Codex 开发了一半的 Bugu
四、作者的信息搜索技巧与产品决策
- 搜索技巧:在提示语末尾加「用浏览器自动化去我的 X 上用 Grok 补充搜索」——X 帖子时效性强但 API 贵,这成了他测 Agent 的标准 case
- 产品调研:用 superpower 的头脑风暴、office hour、鲁班 skill、last 30 day 四个 skill「饱和式」搜索
- 发布平台决策:最终选 GitHub 而不是 App Store——因为 App Store 沙箱机制不允许 App 扫描系统进程(Bugu 靠扫描运行进程判断有没有 Agent 在跑),上架会被要求删掉对话跳转功能
五、Goal 的正确用法(作者经验)
不需要开头第一句就给它打磨十几分钟的指令——「预计让它开发一两天的指令,大概率跑十几分钟就结束了」。正确姿势:在长期对话中明确开发方向、积累足够上下文后,再从对话里输出一个长时间任务。比如把几个印象深刻的 UI 界面发给 Kimi Code 让它设计 Bugu 整体页面。
六、开发中最久的坑:进程识别与窗口跳转
怎么识别 Agent 进程、精准跳到对话界面占了开发大头: - Mac 同时开着好几个终端/Codex App/Claude App,Bugu 要知道在哪个窗口、然后切过去 - 想用 macOS 脚本查「终端现在开着吗」,结果一问它就直接拉了个新窗口出来 - 最终方案:在对应 Agent 里加一个 hook(钩子),对话激活时第一时间收到输入、运行时间和状态
七、做 Bugu 的动机:电梯社死事件
之前用 Amphetamine 设了很多触发器,直到一次 Claude Code 打开没关、也没调音量,有人打电话时铃声自动接到了电脑扬声器上——他当时正在电梯里,「那是我今年最漫长的 10 秒钟,也是打开电脑最快的 10 秒」。于是下定决心做一个专门为 Agent 设计的提醒工具:不打开盖子也能知道 Agent 状态、声音可单独调、行为可预期、不会在电梯里社死。
八、作者的思考:鸡蛋不能放一个篮子里
这次用 Kimi Code 接手 Codex 开发一半的项目让他想清楚一件事:鸡蛋还真不能放在一个篮子里。「Fable 5 现在都需要我们有美国护照才能用了,别提还有我们看得见摸不着的 GPT-5.6」——既然有些过程能被国产模型和国产 Agent 框架代替,为什么不呢?Kimi Code 可能不是主力开发 Agent,但在 Claude Code 只能省着用、Codex 额度不耐用的当下,它是一个非常好的补充位:能导入各种 skill、能跑 goal、还有六倍速。
🎯 Friday 提炼
- Bugu(布谷):macOS 菜单栏应用,合盖后靠音效播报 Agent 状态(接收/运行/完成/中断/需授权),防休眠做成简单开关,已开源
github.com/LearnPrompt/bugu - 核心场景:给 Codex/Claude 挂长任务后合盖出门,不用开电脑也知道任务跑没跑完——「声音是唯一界面」
- 额度焦虑:OpenAI Pro 额度 28 号就烧完下月额度,作者转向 Kimi Code(K2.7 Highspeed,6 倍速) 当补充位,能导入 Codex/Claude 的 skill 和 MCP
- 技术亮点:进程识别用 hook 方案;Goal 要在对话积累上下文后再派发,不是上来就丢长指令;发布平台避开 App Store 沙箱限制
- 💡 这篇文章本身就是个不错的 vibe coding 产品案例——真实痛点、AI 开发、开源发布一条龙
一句话: AI 开发者用 vibe coding 造了个「合盖也能听见 Agent 心跳」的 macOS 小应用 Bugu,过程中被 OpenAI 额度逼着换 Kimi Code 当六倍速搭子,顺带验证了国产 Agent 框架完全能接手真实项目。