docs/prds/teams/team-runtime-experience.md
本次聚焦「创建团队之后、在团队详情页协作」的体验,不改团队的创建流程。目标是让用户在多成员并行协作时,能一眼分清谁是谁、清楚当前在跟谁对话、并在团队初始化期间得到明确的引导而非静默卡顿。
全部改动限定在渲染层(前端),不改动 aioncore 后端与团队数据结构。涉及的持久化一律走浏览器本地存储(localStorage),不落库。
slot_id 唯一标识。同一个助手可以被拉进团队多次,每次是一个独立的成员实例(不同 slot_id),各自拥有独立会话。role === 'leader' 的成员,恒为成员列表第一个,不可移除、不可拖拽。#7583b2 及其低饱和邻近色系),冷静不扎眼。多成员并行、且同一助手可被拉多次时,用户看着并排的多列会话 / 多条 teammate 消息,分不清「这条到底是哪一个成员实例发的」。
为每个成员实例分配一个身份色,一致地用于三处:
不作用于头像——头像保持原样(整图圆形,不加描边、不换底色)。
现有顶部 tab 形态区分度弱、操作隐蔽;成员多到超出时用户不易发现可以横向查看更多,也就找不到末尾的添加入口。
当前选中态只有一条细线,太弱,一眼看不出「现在选中的是谁、正在跟谁对话」。
成员多时并排列会被压窄;用户有时只想专注跟某一个成员(尤其 Leader)对话、有时想纵览全员。
提供两个可切换的视图,切换控件位于标题行右侧:
team-view-mode-${team_id},各团队各自记住上次视图;默认并行。没有合适的?也可以直接让 Leader 帮你安排。告诉 Leader →
新建团队进入 Leader 会话时,空状态没有明确的自我介绍,用户不清楚 Leader 是什么、能做什么。
改现有 Leader 空状态:把问候语显示为
你好,我是 Leader,负责理解你的目标并协调团队。描述你想做的事,我来安排。
替换现有的 subtitle 文案,保留下方已有的 3 个提示词快捷卡片。纯前端文案改动(走 i18n)。
进入团队时后端在拉起成员运行时、注入协作环境,这段时间现在是静默禁用若干操作,没有任何反馈,用户只觉得「卡了一下」,还可能去做无效操作(发消息、加成员)。
进度表现:整界面磨砂遮罩 + 成员头像从左到右逐个「点亮」(Leader 先亮)+「唤醒中 N/M」文案 + 品牌色进度条,呼应 App 既有的柔和光晕元素。
结束闸门 = Leader ready:
遮罩期间禁止的行为:添加成员、移除成员、重命名成员、发消息(遮罩盖住输入区,天然禁用)。
遮罩期间允许的行为:切换视图、切换 / 浏览成员、滚动。
失败与超时兜底:
本方案依赖「前端能单独判断 Leader 的运行时就绪信号」(而非只有当前的全员聚合忙碌标志)。实现前需在代码中确认该信号可从现有运行时状态事件(带 slot_id)中取到;确认后方案成立,仍为纯前端。
| 状态 | 归属 | 存储位置 |
|---|---|---|
| 视图模式(并行/单聊) | 团队整体 | localStorage: team-view-mode-${team_id} |
| 成员身份色映射 | 成员实例 | localStorage: team-member-colors-${team_id},内容为 { slot_id: colorIndex } |
| 当前选中成员 | 团队整体 | 复用现有 team-active-slot-${team_id} |
| 成员排序 | 团队整体 | 复用现有 team-assistant-order-${team_id} |
身份色映射与视图模式均复用现有 TeamTabsProvider(已是每团队一实例,已有按 team_id 分键的 localStorage 先例:active-slot、assistant-order)。
{ slot_id → colorIndex } 映射(内存 + localStorage 持久化)。fullscreenSlotId 的单列全屏能力,升级为显式、按团队持久化的 viewMode 状态。activeSlotId 对应成员;两视图共享 activeSlotId。membershipMutationBusy 是「是否有成员 runtime pending 或 MCP 注入中」的聚合布尔值,不区分 Leader。agentRuntimeStatusChanged,带 slot_id)中单独取 Leader 的就绪状态,作为撤遮罩闸门(实现前先确认该粒度可取)。activeSlotId 到 Leader + 视图切单聊 + 向 Leader 会话的输入框预填提示词(复用现有 send box 预填能力,不自动发送)。本次新增 / 改动的文案(多语言):视图切换标签、warmup 各态文案(唤醒中 / 准备超时 / 启动失败 · 重试)、「找 Leader 拉人」引导句、Leader 问候语。均新增 key 并覆盖各 locale。
| 阶段 | 内容 | 独立验收点 |
|---|---|---|
| 1 | 身份色系统 + 胶囊成员栏 + 气泡区分 + 选中态高亮 | 多成员下颜色区分清晰、选中态明显、增删成员颜色稳定 |
| 2 | 并行 / 单聊视图切换(按团队记忆) | 两视图切换连贯、按团队记忆、选中态共享 |
| 3 | Warmup loading 态 + 禁用清单 + 失败/超时兜底 | Leader 就绪即可用、失败不卡死、超时有兜底 |
| 4 | 添加成员虚线胶囊 + 「找 Leader 拉人」引导 + Leader 问候语 | 入口常驻可见、引导可切 Leader 预填、问候语到位 |
每阶段完成后起 dev 自测(白盒 + 黑盒 + 类型 + lint 全绿)并交产品验收,验收通过后按聚焦提交。