项目介绍
xBloom Studio 冲煮助手是一个开源的 Agent Skill。用户发来豆袋照片或豆子信息,助手结合口味偏好和设备限制给出完整配方;用户可以手动填进 App,也可以在支持的本地环境中,确认后连接机器冲煮。喝完觉得偏苦、偏酸,还能接着调整下一杯。
我想解决的是使用咖啡机时连续遇到的三个问题:这支豆怎么冲、方案怎么落到机器上、味道不合适时先改什么。它们连起来,才构成一次完整的使用过程。
把咖啡建议变成能执行的方案
一句「浅烘用高水温、研磨细一点」还不够。用户最终要填写研磨档位、转速、每段水量、水温和注水方式;这些参数也必须在机器支持的范围内。
我把方案生成分成两层:AI 根据豆子和口味提出建议,确定的设备规则负责校验。缺少的信息就说明缺少,参数超范围就修改提案并解释原因,不能在执行时偷偷取整或改变水量。
从豆袋信息开始,只问影响这一杯的问题
助手先复述照片里能辨认的豆子信息,再补问热饮还是冰饮、偏清爽果香还是醇厚低酸。看不清的烘焙程度和日期不猜,水质未知时也不套用特定水质的补偿建议。
对已有手冲经验的人,保留熟悉的参照。例如用户说平时用 C40 的 30 格,可以先换算成约 xBloom 50 档,再结合豆子和口味调整。这是起点,不保证两台磨豆机的效果完全一致。
一次给齐参数,解释保持简短
方案先写清是哪支豆、本杯豆量、总注水量和口味方向,再给完整分段参数。用户不用从几轮聊天里拼配方,也不用先读一大段冲煮理论。
图中是一份具体豆子的公开示例,用来展示方案如何表达;实际使用会重新生成并校验,不把它当作所有豆子的默认配方。
从方案走到真机,保留用户的控制权
配方生成不依赖蓝牙。只想要方案的人可以直接手动填写 App;需要直连时,再引导连接机器、核对身份和准备器具。云端聊天环境不能访问用户电脑的蓝牙时,就停在手动路线,不承诺能远程冲煮。
图表源码
flowchart TB
A[豆子信息与口味偏好] --> B[生成并校验完整方案]
B --> C[手动填写 App]
B --> D["核对机器与本杯准备<br/>用户明确开始后冲煮"]
C --> E[品尝后反馈]
D --> E
E --> F["每次只改一个变量<br/>生成下一杯方案"]
确认方案和允许启动,是两件事
方案确认码用于核对将要执行的具体配方;豆量或水量改了,旧确认码就不能继续使用。它不能代替用户确认现场已准备好,也不能代替「开始」的授权。
首次连接要让用户核对机器身份,多台机器时不按扫描顺序猜。启动前,把本杯豆量和注水量带进提示,确认豆子已放入、滤杯滤纸已装好、空分享杯已就位、水源够用。准备清楚后合并问一次,用户明确说开始才执行;过去某一杯的确认不能沿用到这一杯。
遇到异常,先让用户知道机器可能还在运行
错误的参数、重复启动或中途恢复不当,都可能影响现场安全。因此,参数校验交给确定规则,启动结果不明时不自动重试。直连也只开放有协议依据的固件,其他环境保留手动路线。
只有收到有效的机器结束事件,才报告「机器已结束」,并提醒等滴滤结束再取杯。断连、缺水、超时都不算完成:先引导查看屏幕和实物,必要时使用实体停止键,处理好现场后再决定下一步。注水量也不能直接写成杯中咖啡液的重量。
下一杯怎么改,让反馈有用
用户说「偏苦」时,助手先查看上一杯的真实参数,再提出一个最相关的改法。例如先调整研磨,而不是同时改研磨、水温和注水方式,否则下一杯即使变好了,也不知道是哪项起作用。
反馈不要求填写长问卷,用户愿意描述口感就继续。新方案展示改了什么、为什么改,再重新校验和确认。配方与口味反馈保存在本机,缺少上一杯记录时直接说明,不凭聊天印象补一份。
项目结果
已跑通 xBloom Studio 真机完整冲煮,并实际出杯。 项目已经跑通了从 AI 方案到机器实际执行的端到端流程。
截至 2026 年 10 月 27 日,项目已开源,当前版本为 1.4.0-rc.2,已有成果包括:
| 环节 | 已有结果 |
|---|---|
| 完整冲煮 | 已跑通真机完整冲煮,并实际出杯 |
| 连接与只装载 | macOS + Studio V12.0D.400 已验证身份核对、模式恢复和只装载,支持先装载方案、准备好后再启动 |
| 独立功能 | 空仓研磨、称重和常温小量放水均已有现场验证结果 |
| 配方与执行保护 | 已完成离线规则、模拟设备和发行包检查 |
后续仍需验证其他操作系统与固件、新用户独立首杯及更多异常恢复场景。称重和出水尚未做精度标定,研磨计时修订尚待真机复测;口味建议则继续通过实际冲煮调整。
可迁移的判断
- AI 给出的建议要落到用户能直接执行的完整方案,设备能确定的规则交给程序校验。
- 连接真实硬件时,确认配方、确认现场准备和授权启动各有作用,不能用一个确认码替代整个过程。
- 把上一轮的真实结果带进下一轮,每次只改一个变量,反馈才有助于继续调整。
本项目与 xBloom 无隶属关系,配方和直连能力均有明确适用范围。