Skip to content

编码代理联动 ​

Claude Code、Codex CLI、Gemini CLI、Cursor 这样的编码代理在工作时,伙伴会跟着一起有反应。只要复制一段设置粘贴进去就好,不需要 Node.js。

每位伙伴负责一个代理 0.1.0 起 ​

可以为每个代理指定接收状态的伙伴。在设置标签里,每个工具那一行都有负责的伙伴,选好后再点一次复制设置,粘贴进去就行。复制出来的设置里写着那位伙伴(--pet),所以可以分成 Claude Code 由 Clover 负责、Codex 由 Pip 负责这样。不指定时(“未指定 · 由第一位伙伴反应”)由第一位伙伴接收;把负责的伙伴送走后,也会回到第一位伙伴那里。让每位伙伴负责不同的代理,乐园就成了一块显示“现在谁在做什么”的状态板。

乐园里看得到的东西 0.1.0 起 ​

有负责代理的伙伴,名牌上会小小地标出代理的名字(Clover · Claude Code)。伙伴标签里名字下方的小标签上也能看到负责的代理。伙伴头上的小圆点是代理的状态:工作中是闪动的橙色,等待中是蓝色,完成是绿色,出了问题是红色。鼠标悬停上去会显示名字。完成和出问题的圆点 30 分钟后会消失,工作中和等待中会一直留到代理再次通知。伙伴标签里的状态胶囊也是代理的状态——聊天的回答显示在对话窗里。

会发生什么 0.1.0 起 ​

代理的每个步骤会变成伙伴的状态。状态显示在伙伴标签的名字旁边和乐园的名牌上,也会以气泡的形式浮在桌面上的伙伴头顶。

代理在做什么伙伴的状态
正在思考、正在使用工具(例:“正在使用 Bash”)工作中
等待确认或回答等待回答
完成了任务任务完成
出了错误出了点问题
会话结束休息中

伙伴最多记住 8 条最近的活动。在聊天里问它“刚才在做什么?”,它就会讲给你听。

复制设置并粘贴 0.1.0 起 ​

设置标签里的编码代理联动。每个工具都有一个复制设置按钮。
设置标签里的编码代理联动。每个工具都有一个复制设置按钮。
  1. 打开设置标签里的编码代理联动。
  2. 点你所用工具旁边的复制设置。会有提示告诉你要粘贴到哪个文件。
  3. 打开那个文件,粘贴并保存。重新启动代理后就立刻接上了。
工具粘贴到哪里行为
Claude Code(推荐)~/.claude/settings.json通过钩子(hook)每一步都通知
Codex CLI~/.codex/config.toml 的最上面任务结束时通知
Gemini CLI~/.gemini/settings.json通过钩子每一步都通知
Cursor~/.cursor/hooks.json通知编辑、命令和完成。只用观察用的钩子
其他 MCP 工具工具的 MCP 设置AI 用 set_pet_state、say、react、list_pets 工具直接发送状态和气泡

复制的那段设置里包含 PlayPets 可执行文件的路径。应用的可执行文件本身就是联动命令,所以不用另外安装任何东西。如果把应用移到了别处,请重新复制设置并粘贴。

如果文件里已经有 hooks 或 mcpServers 项,请把这段设置合并进那个项里。

直接在终端里 0.1.0 起 ​

同一个可执行文件也可以在终端里调用,跟伙伴说话。下面的 playpets 指的是应用的可执行文件(macOS 上是 /Applications/PlayPets.app/Contents/MacOS/playpets)。

playpets hook claude|gemini|cursor   # 钩子(stdin 传入 JSON,退出码始终为 0;对 Gemini、Cursor 输出 {})
playpets hook codex <json>      # Codex notify
playpets mcp                    # MCP stdio 服务器
playpets status <状态> [消息]   [--pet 名字|ID] [--bridge 文件]
playpets say <话>
playpets react <动作>
playpets pets
playpets run -- <命令>

常用的例子如下。

命令作用
playpets pets伙伴列表和当前状态
playpets say "测试通过"不改状态,只显示一个气泡
playpets status working "正在构建"更改状态。idle、working、waiting、done、error 之一
playpets react wave做一次反应。wave、jump、pet 之一
playpets run -- npm test命令运行期间是“工作中”,结束后变成“任务完成”或“出了点问题”

用 --pet 名字 或 --pet 伙伴ID 指定某位伙伴。不加的话会发给第一位伙伴。伙伴 ID 在伙伴设置窗口的底部。

安全 0.1.0 起 ​

  • 联动只在这台电脑内进行。应用会在 127.0.0.1 上打开一个随机端口,并对每个请求检查随机令牌。端口和令牌保存在数据文件夹的 bridge.json 里,每次重新启动应用都会更换。
  • 编码代理联动省略用户提示词和工具输入。本地桥接使用 127.0.0.1 和令牌认证。简短的完成或通知报告(包括截取的代理回复)可能包含工作细节,并可能随伙伴对话发送给所选 AI 服务。请检查通过终端或 MCP 发送的消息;需要将这些内容留在本机时,使用已下载的本地模型。
  • 钩子不会阻塞代理的工作。它会在 3 秒内安静地结束;即使应用没有打开,代理也照常运行。
  • 这和聊天用的 AI 连接是分开的。只做了联动,并不等于就能和伙伴聊天。

更详细的结构在开发者文档编码代理联动里。

Windows 上的注意事项 ​

  • 如果是用本地构建的试验性 MSIX 包安装的,可执行文件在 WindowsApps 下面,无法通过路径调用。这时复制出来的设置会指向执行别名 %LOCALAPPDATA%\Microsoft\WindowsApps\playpets.exe。
  • 用 npm 安装的 claude、codex 必须在 %APPDATA%\npm 里,应用才能找到。装在别处的话可能无法自动检测。

以 MIT 许可证开源。与 OpenAI 无关,Codex 是 OpenAI 的商标。