# 摩擦识别工作流

## 工作片段结构

将所有数据源归一为：

```json
{
  "time": "2026-05-29 09:30-10:00",
  "source": "calendar|todo|doc|aitable|oa|chat",
  "title": "客户A续费方案会",
  "summary": "讨论续费风险和报价口径",
  "status": "待确认",
  "related_project": "客户A续费"
}
```

## 聚类规则

优先按以下信号归并：

- 项目名、客户名、活动名
- 文档标题
- 日程主题
- 待办标题
- 审批类型
- 重复关键词

## 摩擦类型

| 摩擦类型 | 识别信号 | 自动化方向 |
| --- | --- | --- |
| 重复汇总 | 多个来源围绕同一主题，最终进入日报、周报或方案 | 日报/周报/方案自动生成 |
| 重复催办 | 待办或审批多次出现，状态停滞 | 自动催办和卡点提醒 |
| 跨系统搬运 | 同一项目出现在日程、表格、文档、待办 | 项目信息自动汇总 |
| 口径确认 | 同一问题在会议、群消息、文档中反复出现 | 决策口径沉淀 |
| 模板化产出 | 相似文档、报告、表格反复生成 | 模板文档生成 |

## 自动化价值评分

按 1-5 分估计：

- 频次：出现次数和周期性。
- 耗时：会议时长、待办数量、文档更新频次。
- 可自动化程度：能否由 dws 查询、写入、创建。
- 风险：是否涉及敏感信息，风险越高越需要人工确认。

优先推荐高频、低风险、模板化、可由 dws 执行的机会。

## 优先级评分

每个自动化机会必须输出以下四项：

| 字段 | 取值 | 判断方式 |
| --- | --- | --- |
| 频次 | 高/中/低 | 今天、本周或周期性出现的次数 |
| 可自动化程度 | 高/中/低 | 是否能由已声明 dws 能力完成查询、写入、创建 |
| 风险 | 低/中/高 | 是否涉及客户、合同、财务、人事等敏感内容或打扰他人 |
| 推荐优先级 | P0/P1/P2 | 综合频次、价值、风险和工具可达性 |

推荐优先级判断：

- P0：高频、低风险、输入输出稳定，且可以由已声明 dws 能力完成闭环。
- P1：频次或价值较高，但需要用户确认、目标表格选择、联系人选择或流程补充。
- P2：价值存在，但证据不足、风险较高或依赖未声明工具。

## Skill 需求卡片

每个自动化机会后必须给出一张可沉淀的 Skill/SOP 需求卡片：

- 目标用户
- 高频触发场景
- 需要读取的数据
- 自动执行动作
- 输出产物
- 需要人工确认
- MVP 范围
- 后续增强方向

卡片必须具体到业务岗位和产物，避免写成“通用自动化助手”。

## 闭环证据链

输出必须展示当前闭环状态：

```text
输入问题 -> AI 处理 -> 待确认/自动执行 -> 输出结果
```

用户确认前：

- 标记为“待确认”。
- 展示将要创建的文档标题、待办数量、表格写入目标或催办草稿。
- 不声称已经写入或发送。

用户确认并执行成功后：

- 标记为“已完成”。
- 列出生成的文档标题、文档链接或 nodeId、待办数量、表格记录数量。

执行失败时：

- 标记为“执行失败”。
- 保留草稿。
- 说明失败命令、错误摘要和可重试动作。

## 证据阈值

有效证据包括日程、待办、文档、AI 表格记录、审批、群消息中的任意一条可解释工作片段。

- 少于 3 条：进入轻量复盘模式，只做事实汇总和低置信度观察，不输出“自动化机会 Top 3”强结论。
- 3-5 条：输出 1-2 个自动化机会，并标注置信度。
- 6 条及以上：输出 Top 3 自动化机会。

轻量复盘模式要说清楚：

- 当前数据不足以判断高频重复摩擦。
- 哪些数据源为空。
- 如果用于比赛演示，可切换“演示模式”使用样例数据展示完整闭环。

## 演示模式命令展示要求

演示输出中如展示 dws 命令，必须使用精确命令：

- 查询审批使用 `dws oa approval list-pending --format json` 或 `dws oa approval list-initiated --format json`，不要写 `dws oa approval list`。
- 查询审批详情使用 `dws oa approval detail`。
- 查询审批记录使用 `dws oa approval records`。
- 查询 AI 表格记录使用 `dws aitable record query --format json`，不要写 `record list`。
- 读取文档使用 `dws doc read --format json`，不要写 `doc get`。
- 催办消息只写“生成催办草稿”，不要写“自动发送催办消息”。
- 不要写 `dws contact get`，除非技能已声明 contact 工具；联系人处理写成“用户选择联系人或授权查询联系人”。
- 不要写“打开某文档时自动触发”或“打开某文档时手动触发”，除非真实产品已支持该触发；演示中使用“用户指令”或“定时任务”。
- 不要写 `dws chat message send`；本技能只生成催办草稿，发送前必须由用户确认并交给实际发送流程。
- 不要写 `skill_manage`；如需沉淀 Skill，输出 Skill 需求说明即可。
- 展示待办创建命令时必须包含 `--executors`。默认当前用户时写 `<系统从授权上下文解析的当前用户userId>`，不是让用户填写。
- 展示文档创建或更新命令时，不要在 Markdown 参数中写字面量 `\n`。可使用真实多行 Markdown，或只写 `--markdown "<使用真实换行的Markdown正文>"`。
- 不要合写命令名，例如 `dws oa approval list-pending/list-initiated`；应分别展示 `dws oa approval list-pending ...` 和 `dws oa approval list-initiated ...`。
- 待确认执行动作不要展开整篇长 Markdown 正文；使用占位说明即可。
- `baseId/tableId` 必须来自用户选择的目标 AI 表格、用户提供的链接/ID，或上游真实查询结果；不要写“从授权上下文解析”。
- 示例命令中的 ISO 时间参数应加引号。
- `dws calendar event list` 和 `dws todo task list` 没有确认过 `--keyword` 参数。需要按客户名筛选时，先用时间范围查询列表，再由 AI 对 JSON 返回结果按标题/摘要筛选。
- 样例没有负责人姓名、实例 ID、群名、消息数量时，不要编造；使用“相关负责人”“样例未提供”或省略。
- 自动动作中如展示命令，命令名和示例命令都必须包含 `--format json`。
- 不要写“自动发送给指定群组”“自动@相关负责人”“无需人工确认”等越过确认边界的表述。
- 涉及客户数据、报价、审批、合同、财务、人事等敏感信息时，写入文档、对外分享、发送催办前都必须人工确认。
- 不要声称存在“多个客户相关待办”“KPI 概览”“群消息”等样例未提供的信息；如需表达可扩展能力，放在“后续增强方向”，并标注“非本次演示执行”。
- 不要编造用户姓名、客户B/C推进细节、销售人员ID、历史数据缺口、审批停滞时长、当前节点负责人、下一客户拜访计划等样例未提供的信息。
- 日报草稿不要写用户姓名；演示模式只写日期和事项。明日待办只围绕客户A续费、报价口径、审批状态和风险说明。
- 后续增强方向可以出现多客户、PPT、图表等能力，但必须标注“非本次演示执行”。不要写自动@、IM 直接发送、自动发送给群组等发送承诺。
- 演示命令中的日期必须与演示日期一致；如样例未提供日期，优先使用 `<ISO>`、`<演示开始ISO>`、`<演示结束ISO>` 占位符，不要混用 2026-05-29 和 2026-06-02 等不同日期。
- 涉及客户数据、报价或审批的自动化机会，风险不得标为“低”；至少标为“中”，并写明写入、分享或发送前需要人工确认。
- 报价审批卡点提醒不得编造审批停滞时长、当前节点负责人或卡顿时长。样例只允许使用“待销售负责人确认”这个状态。

## 演示模式样例

当用户说“演示模式”“用样例数据”“比赛 Demo”时，使用以下虚拟工作痕迹：

```json
{
  "calendar": [
    {"time": "09:30-10:10", "title": "客户A续费方案会", "summary": "讨论续费风险、竞品报价和审批路径"},
    {"time": "16:00-16:30", "title": "销售周会", "summary": "同步客户A续费风险和报价依据"}
  ],
  "todos": [
    {"title": "确认客户A报价口径", "status": "未完成"},
    {"title": "补充客户A使用数据", "status": "进行中"},
    {"title": "更新销售周报", "status": "已完成"}
  ],
  "docs": [
    {"title": "客户A续费方案", "summary": "新增竞品报价、客户需求、使用数据和续费风险"},
    {"title": "本周销售项目周报", "summary": "汇总客户A续费推进状态"}
  ],
  "approvals": [
    {"title": "客户A续费折扣审批", "status": "待销售负责人确认"}
  ],
  "aitable": [
    {"title": "客户续费看板", "summary": "更新客户A近90天使用数据、风险等级和续费金额"}
  ]
}
```

演示模式样例是固定数据，不得扩写。不得新增样例中不存在的会议、待办、文档、审批节点、负责人姓名、群聊数量或消息数量。群消息不在当前样例数据中，除非用户另行提供，不要声称读取了群消息。

## 演示模式 Top 3 推荐顺序

在固定样例中，优先使用以下顺序，避免偏离证据强度：

1. 客户续费资料自动汇总 Skill：证据覆盖日程、待办、文档、审批和 AI 表格，推荐优先级 P0。
2. 报价审批卡点提醒 Skill：证据覆盖会议、待办和审批，推荐优先级 P1。
3. 销售周报自动生成 Skill：证据覆盖销售周会、周报文档和已完成待办，推荐优先级 P1；如用户补充每周稳定发生证据，可提升为 P0。

## 输出要求

每个自动化机会必须包含：

- Skill/SOP 名称
- 适用场景
- 触发方式
- 输入数据
- 自动动作
- 输出结果
- 预计节省时间
- 人工确认点
- 证据来源
- 优先级评分
- Skill 需求卡片
