让 AI 帮忙写代码已成常态,但任务交给它之后,人们还是会不时地去检查终端:它还在跑吗?是不是等着我批准命令?Coucou 在 Mac 的刘海位置放了一个名叫 Mochi 的小同伴(Windows/Linux 则在屏幕上方),让你不用一直盯着终端,也能查看会话状态、文件修改,并处理审批请求。
它是桌面宠物的样子,但实际切入的是 Agent 工作流程中"等人接手"的环节。

可爱只是入口,重要的是别漏掉那次等待
Mochi 可以眨眼、随鼠标移动转动眼睛,还可以被点击造成短暂的眩晕。对程序员最实用的功能是:把 Claude Code 的读取、修改和执行状态展示在一个小窗口中,文件被改动时显示文件名和增减行数,点击后可看完整 diff。
这样做不是为了用动画替换终端,而是减少查看状态的成本。你可以继续做自己的事情,等到需要介入时再回来。
Claude Code 的权限申请有 Allow、Deny、Always 三种选项;遇到 AskUserQuestion 可在界面上选择答案,或回到终端处理。这不是自动通过,而是提供了人工判断的途径。
不是读屏幕内容,而是接收事件信息
macOS 端用原生 SwiftUI 和 AppKit 构建界面,Mochi 用 Canvas 绘制。小面板后面有一段 nb-hook 接收来自 Claude Code 的 hook 事件,通过 Unix socket 转发到应用程序中。Windows 和 Linux 使用 Tauri 2,Windows 的事件中继通过命名管道实现,Linux 用 Unix socket。
项目还支持 Codex、Cursor、OpenCode、Amp、Hermes 等工具,但各家接口和审批能力不同。尤其是 Hermes:展示状态不代表当前版本一定可以在 Coucou 中进行权限审批,接入前要查看对应平台文档。

离开 Mac,也不必让审批一直悬着
iPhone 端围绕 macOS 上运行的会话工作:查看状态、作答、发新命令,并且可以在锁屏实时活动中处理权限请求(需 Face ID)。手机返回的结果需要与正在等待中的请求指纹匹配(包含会话、工具、命令等信息),过时的决定不会直接使用。
手机只给出允许或禁止的选择,不支持 Always 选项。

会话同步使用用户自己的私有 CloudKit 数据库,项目名、命令等敏感信息用 iCloud 密钥加密;实时活动通知通过 Cloudflare Worker 实现。中继只能看到代理的名字和状态,不构成完全离线方案。
小部件也可以显示 Agent 和服务的状态(GitHub、Vercel、Stripe 等可选),并不需要用完所有服务才能使用会话面板。

聊天、监控、审批不能混为一谈
Coucou 也有聊天功能,可以向模型提问。云上模型需要 API Key;本地模型需连接 Ollama 或 LM Studio。平台功能有所不同,不能把 macOS 下的操作都搬到 Windows/Linux 上。

使用指南
- 获取方式:官方 Releases 获取适合版本。macOS 需 15+,Windows 支持 10/11(未数字签名,需核实来源和校验信息)
- 演示模式:Settings → General → Demo → Try demo mode,可体验会话流程、差异对比、审批、问答和服务卡片
- 接入 Claude Code:设置中安装 hooks(安装器会配置备份、合并 hooks 并显示差异)
- iPhone 联动条件:iOS 18+、Mac 端 Coucou 0.1.9+、两端登录同一 Apple Account
Coucou 更像是一个给现有工具增加轻量级入口的方式,而不是一个新的编程 Agent。模型、代码运行及主要工作仍由原有工具完成,Coucou 只把当前状态和需要你作出反应的时间段展现给你。
少盯几次终端,不等于少管几次权限。一个好的小入口应当使你能更好地介入,而不是让你更随意地放行。