## 设计 — 标签协议

Section 1/4：统一行为标签格式

### 标签格式

`[表现:emotion/intensity,动作:action]`

字段 | 必填 | 取值
--- | --- | ---
`emotion` | ✅ 必填 | joy, sad, surprised, angry, neutral
`intensity` | ✅ 必填 | 0.0 ~ 1.0
`动作:xxx` | 可选 | wave, nod, celebrate, surprised_react, sad_pose, angry_pose

### 解析规则

- 标签必须在回复第一行，后面换行写正文
- 流式输出时，TagParser 累积 buffer 直到遇到 `]` 后尝试匹配
- buffer 超过 80 字节未匹配 → 放弃，原文透传
- 匹配失败（格式不对）→ 整行原文透传
- 匹配成功 → 标签从显示文本中剔除，emit 事件

### 示例

# 纯情绪，无动作
[表现:joy/0.7]
你好呀！今天天气真好 ☀️
→ blendshape happy=0.7, 动画 celebrate.vrma（持续）
# 情绪 + 挥手
[表现:joy/0.9,动作:wave]
太棒了！我一直在等你！
→ blendshape happy=0.9, 先播 wave 一次, 再持续 celebrate
# 中性情绪
[表现:neutral/0.0]
让我查一下今天的天气...
→ 重置 blendshape, 动画保持 hand_talk