桌面动画对接
桌面端不把所有业务信号混成一个“Agent 状态”。生命周期、运行就绪、语音交互和 后台工作分别管理;皮肤只消费稳定的表现状态和一次性事件。
| 开源标准动画 | 业务含义 | Agent 状态或触发事件 | 播放方式 |
|---|---|---|---|
idle | 待机 | idle、connecting、occupied | 状态持续期间循环 |
running-right | 向右移动 | 用户向右拖动桌宠 | 拖动期间循环 |
running-left | 向左移动 | 用户向左拖动桌宠 | 拖动期间循环 |
waving | 说话 | speaking | speaking 持续期间循环 |
jumping | 成功 / 唤醒 | waking、首次启动成功、任务成功完成、鼠标移入 | 每次事件单次播放 |
failed | 失败 | error、桌面运行环境失败、任务执行失败 | 每次事件单次播放 |
waiting | 聆听 | listening | listening 持续期间循环 |
running | 工作 / 启动 | working、starting | 状态持续期间循环 |
review | 前台轮次处理 | processing | 每个处理阶段单次播放 |
持续状态与单次事件分别仲裁:启动、聆听、说话和后台工作保持各自的循环轨道;首次 就绪、唤醒、任务结果、前台处理和鼠标移入只播放一次。单次动作结束后恢复当前基础 动作;如果仍有后台任务则恢复 running,否则恢复 idle。包括后台 thinking 在内的 所有活跃后台任务都统一使用 working → running;等待审批不选择 Agent 动画,持续 由任务界面承载,需要语音询问时自然进入 speaking。所有任务类型使用同一套开始、 完成与失败规则。仅前台模式会跳过后台 Agent 就绪要求。皮肤包只包含静态资源 (JSON + WebP),导入时会校验格式与尺寸;若选中的 皮肤包被删除,悬浮球会自动回退到内置外观。