主目标:量化并定位新用户首次完成一次完整选号(找人 → 筛号 → 标注 → 建联 → 导出)过程中的卡点,核对 onboarding 引导链的触达率与有效性。
| # | 问题 | 怎么从观察里得出 |
|---|---|---|
| Q1 | 新用户能不能在无人教情况下独立走通一次选号 | 任务链整体完成率 + 在哪一步终止 |
| Q2 | 卡点集中在哪几步、严重度多高 | 任务级 struggle/fail 记录 + 严重度分级 |
| Q3 | 引导该弹的步弹了吗(触达率) | 引导触达核对表「弹了吗」列 |
| Q4 | 弹了的引导用户看了吗、看懂了吗、照做了吗(有效率) | 「看了 / 看懂 / 有用」列 + 出声思考原话 |
| Q5 | 引导链有没有断(一步完成后下一步没接上) | 连续步之间是否出现「不知道接下来干嘛」 |
| Q6 | 用户心智模型与产品模型在哪错位 | 「你期望点这个会发生什么」probe 回答 |
职能:品牌 / 电商运营、媒介投放、达人 BD——即真实会用选号场景的人。
硬条件:从未使用过选号虾 / PickClawd;近 3 个月有过抖音 / 星图找达人的实际工作或诉求。
排除:内部员工、做过本产品测试的人、纯技术背景无投放经验者。
5–8 人。可用性问题在 5 人时已暴露约 80%,8 人封顶(边际递减)。单场 45–60 分钟,1 主持人 + 1 记录员(或全程录屏 + 录音,事后回看)。
若想看 edition 差异,内部版 / 外部版各招 2–3 人;否则统一外部版(对外真实场景)。
3 张任务卡均来自真实商单 brief,品类 / 约束 / 模糊度对齐线上高频场景。按对方实际业务方向选最近的一张,没偏好默认 A。
不告诉用户。每步既是业务动作,也对应一个或多个引导步。
| 阶段 | 用户该做的业务动作 | 对应产品步骤 | 对应引导步 |
|---|---|---|---|
| T1 进门 | 找到「从哪开始找人」 | 主页 → 星图找人卡 | home |
| T2 找人 | 进入星图找达人 | 星图页 | xingtu |
| T3 配条件 | 设品类 / 画像 / 筛选条件并发起筛号 | 注入面板:选项目→配字段→去重→一键填入→筛号 | xingtu.* 5 子步 |
| T4 自动过滤 | 理解小虾在自动过滤 | 结果列表 + 直采胶囊 | shrimp-intro auto-filter |
| T5 标注 | 判断并通过 / 排除达人 | 结果行标注操作 | mark-intro mark |
| T6 收口 | 把通过的达人收进清单 | 建联清单 / 购物车 | cart |
| T7 提交 | 提交建联 / 询价(外部版) | 提交询价 | submit |
| T8 导出 | 把结果导出交付 | 结果导出 | export |
| T9 加餐 | 发现精选达人库(20w 库精确过滤) | 主页精选库 | treasury |
念三、的「任务卡」原文,然后只说:
用户沉默太久或表情困惑时,只能问这 5 句,逐字背:
| 层 | 触发 | 主持人动作 |
|---|---|---|
| L0 | 卡住 < 10 秒 | 沉默数 10 秒,什么都不说 |
| L1 | 卡 10–30 秒仍无方向 | 中性 probe:「你现在在找什么?」 |
| L2 | 明确迷路、要放弃 | 把目标拉回:「你现在想完成的是什么来着?」 只重申目标,不给步骤 |
| L3 | 仍卡死、情绪烦躁 | 记 FAIL。最小提示带过:「这一步我帮你跳一下,继续看后面」 |
| 阶段 | 结果 | 耗时 | 求助层 | 卡点描述(原话优先) | 心智 vs 产品错位 |
|---|---|---|---|---|---|
| T1 进门 | |||||
| T2 找人 | |||||
| T3 配条件 | |||||
| … |
结果列:✅ 顺利 / ⚠️ 挣扎 / ❌ 失败;求助层 L0–L3。
「该弹却没弹」和「弹了没看懂」是两类完全不同的不足,分开记。
| 引导步 | 该弹吗 | 弹了吗 | 看了吗 | 看懂吗 | 有用吗 | 备注 / 原话 |
|---|---|---|---|---|---|---|
home | ✅ | |||||
xingtu | ✅ | |||||
| 面板配条件 | ✅ | |||||
shrimp-intro | 胶囊在才该弹 | |||||
auto-filter | 同上 | |||||
mark-intro | ✅ | |||||
mark | ✅ | |||||
cart | 外部版 | |||||
submit | 外部版 | |||||
export | 闸开才该弹 | |||||
treasury | ✅ |
| 级 | 定义 | 处理 |
|---|---|---|
| P0 致命 | 多数用户在此任务失败 / 放弃 | 立即修,引导 + 交互一起改 |
| P1 严重 | 多数用户挣扎,靠 L1–L2 才过 | 本轮迭代修 |
| P2 中等 | 部分用户卡顿,自己绕过去 | 排期修 |
| P3 轻微 | 个别吐槽 / 审美 | 记录,不阻塞 |
严重度看 人数 × 任务影响:5 人里 4 人卡死 = P0;1 人审美吐槽 = P3。
triggerSignal / precondition 配置该补哪条)。
本调研产出的「断链点清单」直接对接正在落地的声明式触发层架构(docs/design-spec/2026-06-15-onboarding-trigger-architecture-CONTRACT.md):
每个断链点 = 一条 triggerSignal / precondition 该补的配置。
外部版(PickClawd)10 步 / 内部版(选号虾)8 步——内部版无「进购物车」「提交询价」。 星图面板子步框架:注入面板跨进程,主程序气泡伸不进去,编排器算出当前子步经面板桥下推、面板转哑渲染器。
| # | 引导步 | 触发场景 | 触发条件 | 前置 | 条件闸 | 弱 | 呈现层 | 呈现锚点 |
|---|---|---|---|---|---|---|---|---|
| 1 | 先从星图找人home | 欢迎主页 | 进场即弹 | — | — | — | 界面 | 星图找人卡 |
| 2 | 配好条件交给我们xingtu | 星图注入面板 | 进面板即弹 | — | — | — | 面板 | 侧栏气球 + 面板桥 |
| ↳ 星图面板 5 子步 · 通用面板多步子框架 | ||||||||
| 2.1选项目xingtu.project | 面板 · 登录后 | 进子步即亮 | — | 已登录 | 弱 | 面板 | 项目选择区 | |
| 2.2配独家字段xingtu.options | 面板 | 上一子步看完 | 2.1 | — | 弱 | 面板 | 商单断更 / 八大人群 | |
| 2.3去重规则xingtu.dedup | 面板 | 上一子步看完 | 2.2 | — | 弱 | 面板 | 结果去重开关 | |
| 2.4一键填入xingtu.autofill | 面板 | 上一子步看完 填入完成 | 2.3 | — | 弱 | 面板 | 一键填入按钮 | |
| 2.5点条件筛号xingtu.screen | 面板 | 上一子步看完 点了筛号 | 2.4 | — | 弱 | 面板 | 条件筛号按钮 | |
| 3 | 先认识小虾shrimp-intro | 结果列表 | 进场即弹 | — | 胶囊在 | — | 界面 | 直采进度胶囊 |
| 4 | 正在自动过滤auto-filter | 结果列表 | 上一步看完 | 3 | 胶囊在 | — | 界面 | 直采进度胶囊 |
| 5 | 三按钮工作台mark-intro | 结果列表 | 出结果行 | — | — | — | 界面 | 行操作按钮组 |
| 6 | 通过合适达人mark | 结果列表 | 上一步看完 | 5 | — | — | 界面 | 通过按钮 |
| 7 | 进了购物车cart 仅外 | 结果列表 | 首次通过 | 6 | — | — | 界面 | 购物车页签 |
| 8 | 提交建联询价submit 仅外 | 建联清单 | 进场即弹 | — | — | — | 界面 | 一键建联按钮 |
| 9 | 导出达人名单export | 结果列表 | 上一步看完 | 6 | 导出闸开 | — | 界面 | 导出按钮 |
| 10 | 精选达人库treasury | 主页精选库 | 进场即弹 静默 | — | — | — | 界面 | 精选库卡(免框) |
| # | 引导步 | 触达 应/实 |
✓ | △ | × | ○ | 平均 卡秒 |
最高 救场层 |
Top 用户原话 |
|---|---|---|---|---|---|---|---|---|---|
| 1 | 先从星图找人 | ||||||||
| 2 | 配好条件交给我们 | ||||||||
| 2.1选项目 | |||||||||
| 2.2配独家字段 | |||||||||
| 2.3去重规则 | |||||||||
| 2.4一键填入 | |||||||||
| 2.5点条件筛号 | |||||||||
| 3 | 先认识小虾 | ||||||||
| 4 | 正在自动过滤 | ||||||||
| 5 | 三按钮工作台 | ||||||||
| 6 | 通过合适达人 | ||||||||
| 7 | 进了购物车 外 | ||||||||
| 8 | 提交建联询价 外 | ||||||||
| 9 | 导出达人名单 | ||||||||
| 10 | 精选达人库 |
—— 5 个新事件 + onb_ 前缀加白名单 + 1 个派生视图,即时点亮 Q1 完成率 / Q3 阻塞率两格北极星。无须客户端起定时器,全后端事件流相邻 timestamp 派生时长。
| 事件名 | 触发时机 | 关键属性 | 埋点位置 | vs 现状 |
|---|---|---|---|---|
onb_step_entered |
引导步骤进入视图(每步首次渲染) | session_id, step_id, step_index, entry_source | onboarding-orchestrator.ts onMounted 钩子 |
add-new |
onb_step_completed |
用户完成本步并切下一步 | session_id, step_id, success, retry_count | onboarding-orchestrator.ts next() 内调用 |
add-new |
onb_field_filled |
核心字段失焦或选项确认(任务 A/B/C 表单) | session_id, step_id, field_name, filled (boolean) | FilterCondition 组件 @blur 不报字段值 |
add-new |
onb_stuck_signal |
救场探针检测到卡顿(空白 15s / 反复修改 / 鼠标游荡) | session_id, step_id, signal_type, dwell_ms | 救场层 L0–L3 探针 主进程统一发 |
add-new |
onb_help_invoked |
用户主动求助(点 HelpCard / 唤起 Agent / 看示例) | session_id, step_id, help_type, triggered_by | HelpCard.vue + AgentDock 点击事件 |
add-new |
onb_help_card_viewed |
HelpCard 卡片进入视图(IntersectionObserver) | session_id, step_id, card_id | HelpCard.vue 现行已埋但被拒 |
reuse-fix |
| 北极星格 | 分子 | 分母 | 关键事件 |
|---|---|---|---|
| Q1 完成率 | session 中出现 step_id='task_submitted' 的 onb_step_completed | 所有 session(distinct session_id) | onb_step_completed |
| Q2 平均耗时 | 同 session 内末步 onb_step_completed.ts − 首步 onb_step_entered.ts 之和 | 完成 session 数 | onb_step_entered + onb_step_completed |
| Q3 阻塞率 | session 中至少 1 条 onb_stuck_signal 的 session 数 | 所有 session | onb_stuck_signal |
| Q4 求助率 | session 中至少 1 条 onb_help_invoked 的 session 数 | 所有 session | onb_help_invoked |
api/services/tracking_payload.py ALLOWED_PREFIXES 加 'onb_'(现行 onb_* 全被白名单拒收)onboarding-orchestrator.ts 加 5 处 trackEvent() 调用;useTrackingContext 加 session_id 槽位(onboarding-store 启动时注入)ap_onboarding_step_outcome(纯 SQL VIEW,不动表 schema,按 session_id + step_id 聚合事件流)help_card_viewed 改名 onb_help_card_viewed(现行 bug:被白名单拒收导致这事件从未入库)P1-Polish(细化救场分级 + 字段值脱敏存档)/ P2-Optional(多 session 串联 + 回访问卷绑定)见 design spec,本期不交付。
这是一款帮品牌方和媒介筛选抖音达人的工具。
我们想请你按下面的任务,用你自己的方式把它走一遍——
看看哪里顺手、哪里别扭。
做的时候,请把心里想的话念出来。比如:
想到什么说什么。主持人不会接话,会安静地听。
下面账号已经准备好,进入软件后用它登录就行——这是我们准备的测试号,不是你的私人账号。
看完任务,就开始吧。
遇到任何不顺手的地方,直接说出来就行——
卡住了也别着急,我在旁边记录。