我有个朋友去年装修全屋智能砸了小六万。结果媳妇一句晚上起夜别开大灯他打开 App 翻了四层菜单对着一堆触发条件—执行动作的英文缩写发了半小时呆最后还是摸黑去开床头那盏。六万块买了个能连手机没买到会过日子——设备是散的生活是整的缺的不是又一个 App而是一个听得懂人话、还能真替他把这些散家伙收拾利落的规划管家。小满就是干这个的她像个跟你算过账的实在人问的是日子怎么过而不是设备型号一句我早上七点起怕吵醒我妈她直接翻成卧室灯渐亮、客厅保持熄、窗帘开到三成。而她和给你出个建议清单的助手最大的分水岭是建议谁会给把建议变成你家那盏灯现在真的会因为你起夜而亮起来才难——她把自然语言先编译成一份可读、可回滚的场景 DSL再一边讲解、一边真的把规则写进网关。// 自然语言 → 场景编排 DSL先规划不直接操作设备 const scene await xiaoman.planScene( 老人晚上起夜从卧室到卫生间这条走廊脚一落地灯就亮 亮度低一点别晃眼人走后两分钟自动关。); // scene { trigger: { device:bedroom_motion, window:22:30-06:00 }, // actions: [{ target:corridor_light, op:on, brightness:15 }], // autoOff: { after:2min } } // 边讲解边下发speak 与设备 action 并行讲解说到哪、设备配到哪 async function deployScene(scene, gw) { for (const step of xiaoman.narrate(scene)) { // 生成口播分句 xiaoman.speak(step.text, { isStart: step.first, isEnd: step.last, action: Present }); // 数字人实时讲解 if (step.apply) { const ok await gw.writeRule(step.dslFragment); // 真的写进网关 log.push({ scene: scene.name, frag: step.dslFragment, ok }); } } } // Barge-in用户插话即刻停当前讲解接住需求后重排场景 xiaoman.onUserInterrupt(async (text) { xiaoman.interrupt(); // 底层停当前口播回到待机 const patch await xiaoman.revise(currentScene, text); // 增量改 DSL // patch → 给 corridor_light 增加 fadeOut: { to: 0, over: 30s } await redeployOnly(applyPatch(currentScene, patch)); // 只重下发变化的设备 xiaoman.speak(改好了改成先缓 ${30} 秒慢慢暗不是一下子黑。, { action: Nod }); });// 边讲解边下发speak 与设备 action 并行讲解说到哪、设备配到哪 asyncfunctiondeployScene(scene, gw){for(const step of xiaoman.narrate(scene)){// 生成口播分句 xiaoman.speak(step.text,{isStart: step.first, isEnd: step.last, action:Present});// 数字人实时讲解if(step.apply){const okawait gw.writeRule(step.dslFragment);// 真的写进网关 log.push({scene: scene.name, frag: step.dslFragment, ok});}}}// Barge-in用户插话即刻停当前讲解接住需求后重排场景 xiaoman.onUserInterrupt(async(text){xiaoman.interrupt();// 底层停当前口播回到待机 const patchawait xiaoman.revise(currentScene, text);// 增量改 DSL // patch → 给 corridor_light 增加 fadeOut:{to:0, over:30s}await redeployOnly(applyPatch(currentScene, patch));// 只重下发变化的设备 xiaoman.speak(改好了改成先缓 ${30}秒慢慢暗不是一下子黑。,{action:Nod});}); 配完她还会回头验一句你下来走一趟试试脚落地看亮不亮。更实在的是可回滚、可增量哪一天你插一句我媳妇怕黑别两分钟关关之前先缓三十秒慢慢暗她能立刻停下当前讲解认得只改了走廊这盏灯只重下发变化那台别的一律不动。这套听人话 → 译成蓝图 → 动手配好 → 一句话打断重排的循环跑在端侧渲染上所以普通宽带也开口快、被打断停得住。说到底智能不在连了多少台设备而在有没有谁把你的日子听进去、还肯动手替你收拾利落。 ---