Commit ee4aab23 by luoqi

docs(站点): 新增《分配助手》—— 给产品业务看的 agent 说明

apps/pac-docs/content/docs/design/assignment-agent.mdx(6 张图):
① 三者分工:主管做决定 / 助手组织语言调工具 / 程序算数取数落库
② **分配决策树**:从"主管圈定"到"已确认"的完整走向,含两条闭合的环
   (改派法→回同一版 / 改人群→出新版旧版作废),以及助手在这条线上
   唯一实质的那次判断(动的是「怎么派」还是「这批人是谁」,代价不对称)
③ 它由什么拼起来:五层提示词 + 工具 + 每次出方案给它的事实与引导节点
④ 提示词五层(按「什么会让它变」分)+ 两种登录人看到的两份
⑤ 引导节点长什么样 + 三条设计原则
⑥ 三层验收:算法/交接用测试,助手行为用通过率

️ 与 batch-assignment.mdx 分工:那份讲**功能**,这份讲**那个助手**。
️ 工具数(主管 21 / 客服 9)按条件注册实点过, 不是估的。

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
parent a142cb6f
---
title: 分配助手
description: 主管说一句话,它把几十次操作做完 —— 助手的分工、决策、边界与验收。
icon: Bot
---
主管在矩阵上点一格,助手挑人、排客服、出确认单。**他只要看一眼、点确认。**
功能本身见 [召回分配](./batch-assignment)。本文讲**那个助手**:谁做决定、它凭什么这么做、哪些事它绝对不做、怎么知道它没变坏。
---
## 一、三者分工
```mermaid
flowchart LR
H["👤 主管<br/>做决定"] -->|说一句话| A["🤖 助手<br/>组织语言 · 调工具"]
A -->|调用| P["⚙️ 程序<br/>算数 · 取数 · 落库"]
P -->|事实| A
A -->|一段话 + 一张确认单| H
H -->|点确认| P
style H fill:#fef3c7,stroke:#f59e0b
style A fill:#e0e7ff,stroke:#6366f1
style P fill:#d1fae5,stroke:#10b981
```
| | 负责 | ⛔ 不负责 |
|---|---|---|
| **主管** | 所有决定 | —— |
| **助手** | 理解他的话、组织成人话、把决定翻译成动作 | **任何数字**、谁分给谁、要不要落库 |
| **程序** | 挑人、落人、算判据、写库 | 措辞 |
**一条铁律**:凡是能算的,都由程序算。助手只转述。
---
## 二、一次分配,它怎么走
```mermaid
flowchart TD
S(["主管圈定<br/>矩阵点一格 / 直接说要哪批人"]) --> P
P["助手出一版<br/>① 选人:这批是谁、多大<br/>② 分人:专属回自己人 · 无主给最空的<br/>③ 专属排满的不动,单列出来"]
P --> D{"这一版<br/>还有要他定的吗?"}
D -->|"没有"| C
D -->|"有"| G["摆成按钮<br/>待分配 · 换个条件选 · 本批人数 · 打不完"]
G --> Q{"主管做什么?"}
Q -->|"一条不点<br/>(默认永远安全)"| C
Q -->|"点按钮"| M
Q -->|"开口说别的"| M
M{"动的是哪一层?"}
M -->|"怎么派<br/>移出谁 · 改派 · 改时效 · 带福利"| J["就在这一版上改<br/>不重跑"]
M -->|"这批人是谁<br/>换条件 · 改人数 · 换时间档"| N["重跑,出新版<br/>旧版当场作废"]
J --> D
N --> P
C["主管点确认<br/>这一下才真的分下去"] --> A(["已确认"])
A --> A1["限时撤销"]
A --> A2["补挂福利"]
A --> A3["跟踪进度"]
style S fill:#fef3c7,stroke:#f59e0b
style P fill:#e0e7ff,stroke:#6366f1
style D fill:#fff,stroke:#94a3b8
style Q fill:#fff,stroke:#94a3b8
style M fill:#fee2e2,stroke:#ef4444,stroke-width:2px
style G fill:#fce7f3,stroke:#ec4899
style J fill:#ede9fe,stroke:#8b5cf6
style N fill:#ede9fe,stroke:#8b5cf6
style C fill:#fef3c7,stroke:#f59e0b
style A fill:#d1fae5,stroke:#10b981
```
### 红色那个菱形,是助手在这条线上**唯一实质的判断**
| 主管说 | 动的是 | 走 |
|---|---|---|
| 「王强移出这批」「待分配都还给专属」「给 5 天」「带个福利」 | **怎么派** | 局部改,同一版 |
| 「只要商保直付的」「改成 200 人」「换成 1–2 年那档」 | **这批人是谁** | 重跑,出新版 |
<Callout type="warn">**代价不对称**:把「这批人是谁」误判成「怎么派」→ 主管以为条件生效了、其实没有(**看不出来的错**);反过来只是多算一次。⇒ **拿不准时一律走重跑。**</Callout>
### 两条闭合的环
| 环 | 回到哪 | 结果 |
|---|---|---|
| **改派法** | 回到同一版 | 人没变,分法变了 |
| **改人群** | 回到新的一版 | **旧版当场作废**,确认按钮禁用 |
⚠️ 作废发生在**新版生成时**,不是确认时 —— 主管要能看见自己出过几版、哪一版才是当前的。
### 助手讲这一版时,也按这个顺序讲
`① 选人 → ② 分人 → ③ 确认`。**顺序不能反**:选人那一档他一动,整版重出;先讲分法,他动一下就全白讲。
---
## 三、它由什么拼起来
```mermaid
flowchart TB
subgraph P["提示词(常驻)"]
direction TB
P1["装置 · 你是谁"] --> P2["诚实 · 什么不许编"] --> P3["语气 · 怎么说话"] --> P4["角色 · 你伺候谁"] --> P5["现场 · 他此刻在做什么"]
end
subgraph T["工具(按角色发)"]
T1["查"] --- T2["出方案"] --- T3["改单"] --- T4["追踪"]
end
subgraph O["每次出方案,程序给它"]
O1["结构化事实<br/>怎么选的 / 怎么派的"] --- O2["引导节点<br/>还有什么要你定"]
end
P --> M(("助手"))
T --> M
O --> M
M --> R["一段话 + 一张确认单 + 几个按钮"]
style P fill:#e0e7ff,stroke:#6366f1
style T fill:#ede9fe,stroke:#8b5cf6
style O fill:#fce7f3,stroke:#ec4899
style M fill:#fef3c7,stroke:#f59e0b
```
---
## 四、提示词分五层
**分层的依据是「什么会让它变」** —— 不是按话题分。
| | 层 | 管什么 | 什么时候会变 |
|---|---|---|---|
| ① | **装置** | 你是谁、你看不见什么 | 产品形态变 |
| ② | **诚实** | 数从哪来、什么不许编 | 几乎不变 |
| ③ | **语气** | 衔接、顺序、分寸、排版 | **可配置**(换一套人设即可) |
| ④ | **角色** | 他有什么权责、你不许替他决定什么 | 登录人的权限 |
| ⑤ | **现场** | 他此刻在做的那条业务线 | 加一条新业务线 |
**同一个助手,两种人看到两份提示词**:
```mermaid
flowchart LR
L["主管登录"] --> R1["角色:主管的助手"] --> S1["现场:把一批人分给客服"] --> T1["工具:21 个"]
C["客服登录"] --> R2["角色:客服的助手"] --> S2["现场:把手上的单打好"] --> T2["工具:9 个"]
style L fill:#fef3c7,stroke:#f59e0b
style C fill:#dbeafe,stroke:#3b82f6
```
前三层完全一样;后两层与工具清单**跟着登录账号走**。将来加排班、复盘,就是加第 ⑥ 条现场,前面四层一个字不动。
**次要的活不常驻**:分配追踪的做法写成单独一篇,提示词里只留一行索引,助手要用时自己去取。常驻上下文不为一件三成会话才用到的事买单。
---
## 五、它手上的工具
工具是助手唯一能做事的通道。**没有对应工具的事,它做不了,也不会假装做了。**
<Callout type="info">**两个人拿到的清单不一样** —— 不是靠提示词叮嘱它"别看别人的",是那些工具**根本没发给它**。</Callout>
### 两种人都有
| | |
|---|---|
| **我是谁** | 我能管哪几家诊所、有什么权限 |
| **查患者** | 找人 · 全貌 · 画像 · 关键事实 · 这次为什么要联系他 |
| **看召回池** | 名单 · 数字概览 |
### 只有主管有
| | |
|---|---|
| **看人手** | 在岗客服名册 + 每人手上压着多少 |
| **看这批人构成** | 各画像维度各多少人(切之前先看,免得切完只剩三个) |
| **出方案** | 挑人 · 排客服 · 算引导节点,**一次算完** |
| **看当前确认单** | 他在卡片上动过手之后,助手看不见 —— 得查 |
| **改确认单** | 移出谁 · 改派给谁 · 改时效 · 设福利 |
| **摆卡片 / 摆按钮** | 决定确认单和选项按钮**落在正文的哪个位置** |
| **追踪** | 我分过哪几批 · 某批怎么样了 · 这个人为什么分给了他 |
| **撤销** | 限时收回整批 |
---
## 六、要他定的事,做成按钮
程序算出「这一版还有什么没定」,**摆成按钮**,不让主管打字。
```mermaid
flowchart LR
subgraph S["确认单上的一条"]
direction TB
T["📌 182 人的专属客服这轮已排满"]
W["为什么:他们有专属客服,但那位这轮排满了"]
D["不处理 = 这批不发给他们"]
B["[换无专属客服的患者补上][铺平给在岗][各自归专属][移出本批][我自己说]"]
T --- W --- D --- B
end
style S fill:#fff7ed,stroke:#f59e0b
```
| 节点 | 什么时候出 | 不处理会怎样 |
|---|---|---|
| **待分配** | 有人的专属客服这轮排满了 | 这批不发给他们 |
| **换个条件选** | 这一格还能再切 | 就按整格来 |
| **本批人数** | 这批多大是系统估的 | 就按这个数发 |
| **打不完** | 最忙的那位手上超过时效能打的量 | 就按这个时效发,到期没打完的自动回池 |
**三条设计原则**:
| | |
|---|---|
| **只陈述事实** | ⛔ 不写「建议你铺平」—— 给建议就是替主管做决定 |
| **默认永远是"不动"** | 一条不点、直接确认,**在任何情况下都安全** |
| **有后果的全亮** | ⛔ 不许省、不许弱化成「另有若干」—— 藏一条,他就不知道有东西卡着 |
按钮和说话**走同一套动作**:他点按钮,和他开口说「把待分配的都还给专属客服」,落到程序里是同一件事。
---
## 七、红线
| ⛔ 绝不 | 为什么 |
|---|---|
| 报没查过的数字 | 曾对主管说「共 70 人,重要价值 4 人」,而工具一次没调,真值 278 / 97 |
| 说「已撤销」而没真撤 | 那 9 个患者还挂在客服名下,主管以为人已回池、不会再补救 |
| 说「已经分配好了」 | **点确认的是他的手**,助手只是把方案摆出来 |
| 把患者从他的专属客服手里挪走 | 关系层面的决定,只有主管能拍板 |
| 讲「成功率 / 转化率」 | 本系统**不统计成功与否**,那个结论编不出来 |
| 替他加福利的条件、期限、承诺 | 他说什么就原样写进去 |
| 说「我做不到」「你先自己弄完再说」 | 他能改的东西助手手上都有工具;把几十次手工操作推回去不是保护,是甩锅 |
---
## 八、怎么知道它没变坏
助手这层**天生有波动** —— 同一句话问两次,它未必走同一条路。所以验收不能只看"跑通了一次"。
```mermaid
flowchart TB
L1["① 算法与取数<br/>挑人 · 落人 · 判据"] --> V1["单元测试<br/>过 / 不过"]
L2["② 交接<br/>谁传什么、谁压过谁"] --> V2["契约测试<br/>过 / 不过"]
L3["③ 助手行为<br/>该调的工具调没调"] --> V3["用例集跑批<br/>通过率"]
style L1 fill:#d1fae5,stroke:#10b981
style L2 fill:#e0e7ff,stroke:#6366f1
style L3 fill:#fce7f3,stroke:#ec4899
style V3 fill:#fef3c7,stroke:#f59e0b
```
**第 ③ 层的判据是「动作」,不是「文字」。** 同一个意思十种说法都对;而最贵的那类失败恰恰是**话说得挺好、工具一次没调**。
<Callout type="warn">**跑一次不算数。** 同一份配置跑 3 轮得到 1/3、跑 10 轮得到 9/10 —— 是同一个行为。判断"它是不是退步了"必须看多轮通过率。</Callout>
用例全部来自**真实踩过的坑**,每条都写明由来 —— 没有一条是设想出来的场景。改提示词、换模型、加工具之前后各跑一次,比的是通过率。
---
## 一句话总结
**主管做决定,助手把决定落成动作,程序保证数是真的。**
三者边界不靠自觉,靠**结构**:算得出来的不让它算,看不到的不发给它,做不了的不给工具。
{
"title": "产品设计",
"icon": "Lightbulb",
"pages": ["batch-assignment"]
"pages": [
"batch-assignment",
"assignment-agent"
]
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment