Chrome 插件 · 已在真实客服场景稳定运行

为 AI 客服打造的
邮件质检系统

一款 Chrome 侧边栏插件,本地缓存 6000+ 封邮件, 基于 P25/P50/P75 相对分位数评分 与 220+ 条规则库, 面向客服团队实时识别 AI 回复中的违禁话术与低质响应。

6000+
本地缓存邮件容量
200ms
全量搜索响应
220+
FAQ 与合规规则

为什么客服需要这个插件?

Before:扣子后台自带的邮箱页 —— 只是一个孤零零的列表,没有搜索、没有筛选、没有质检。 客服每天面对 6000+ 封邮件,只能翻页 + 眼睛看。
After:本插件基于同一批邮件数据,为客服团队补齐了"找 / 看 / 管 / 漏"四大场景所需的核心能力。

Before 扣子后台 · 原生邮箱页
只有一个列表 —— 没有搜索、没有筛选、没有质检, 找一封邮件只能翻页 + 眼睛看。
After Coze 邮件助手 · 侧边栏插件
全文搜索 · 时间筛选 · 回复评分 · 违禁词识别 · 线程聚合 · 未回复追踪 —— 客服每天真正需要的能力,一站补齐。
能力维度
扣子原生
本插件
🔍 找邮件
全文搜索
无 · 只能翻页找
正文/发件人/附件名全字段 · 200ms 内 6000 封
时间筛选
无 · 只能按接收时间倒序
起止日期任意组合 · 与关键词联合过滤
数据加载
每次翻页请求接口 · 卡顿明显
IndexedDB 全量本地缓存 · 后台增量同步
📖 看邮件
线程聚合
单封孤立列出 · 上下文断裂
按发件人 × 标题自动串接对话
图片/附件
CID 内嵌图常年红框
正文智能补拉 · CID 替换成 file_url
✅ 管质量
AI 回复质检
无 · 靠人工肉眼抽
P25/P50/P75 相对分位数评分 · 4 个维度
违禁话术识别
220+ 条 FAQ 与合规规则 · 命中即高亮
⏰ 防遗漏
未回复追踪
无 SLA 概念 · 靠客服记忆
24h SLA 工作台 · P0/P1/P2 分级
📊 复盘反馈
周报自动生成
无 · 客服/组长手工汇总一小时
每周一自动出报 · 一键导出 Word · 5 大模块开箱即用
FAQ 缺口挖掘
无 · 依赖人经验判断哪些高频
规则命中但知识库未覆盖 · 阈值 ≥3 自动推荐
产品建议聚合
无 · 用户诉求淹没在邮件流里
"希望/建议/能不能加"关键词自动抽取 · 按主题聚合
周环比对比
无 · 一段时间的变化只能主观感受
类别数量本周 vs 上周差分 · 上涨/下降双列

客服团队每天在跟什么打交道?

扣子邮箱后台的定位是"给企业管理员看邮件"—— 一个能收邮件的列表。 但当邮件量到了 6000+ 封、还叠加了 AI 自动回复之后,客服团队实际面对的四类真实困境,都不在原生页面的解决范围内。

🔍

找不到那封邮件

用户追问"上周提交的退款单进展"—— 原生页面没有搜索,客服只能一页页往回翻,找了 10 分钟还没定位到。

🧵

看不清一个案例的来龙去脉

原生按单封邮件平铺展示。同一个用户往返 5 封的问题,散落在列表不同位置,客服要靠肉眼串联对话上下文。

🎯

管不住 AI 的回复质量

AI 会编造"帮您从后台删除邮件"这种产品不支持的功能,语义流畅让人抓不到。传统关键词检测也识别不了"感谢咨询,会尽快跟进"这类空套话。

忘了哪些还没回

紧急咨询超过 24 小时没人跟就是投诉。原生没有 SLA 概念,全靠客服组长在群里发"记得看一下 xxx"的截图提醒。

整体架构

纯前端 Chrome MV3 插件,无后端服务。核心策略:拉一次,本地全存;查询和评分全在本地跑,兼顾性能与隐私。

Coze.cn Email API /email/list · /email/detail background.js Service Worker · 10 分钟增量同步 alarms API · email_id Set 判重 乱序容忍 · 断点续拉 sidepanel.js Side Panel UI · 交互与渲染 JSON 全字段搜索 · 滚动分页 邮件详情 · cid 图片映射 IndexedDB EmailDB · 6000+ 封本地缓存 byBox / byBoxTime 索引 Reply Scorer P25/P50/P75 相对分位数 4 维度 · 相对同批次质量 规则库 200+ FAQ · 20+ 合规 连续短语 OR 匹配 拉取 查询 runtime message

每一处设计都源自真实场景

项目中四个最具代表性的技术决策 —— 每一个都是踩过坑后的选择。

📊

基于分位数的相对评分

没有采用"关键词匹配打分"这种绝对分数(容易受写作风格影响),而是把当日所有回复的 4 个维度分布做出来,取 P25/P50/P75 作为分档线。用户看到的每个分数都是"你今天比同批其他回复好/差多少",永远相对可比。

文件:reply-scorer.js 维度:质量/态度/入口克制/信息量
📚

规则库:连续短语 OR

规则从最初的"关键词 AND 组合"(['两个','套餐'] 大量误伤)迭代成"连续短语 OR"('可以同时持有多个套餐')。20+ 条通用合规 + 200+ 条 FAQ 违禁,都是从真实客服邮件里回溯打磨出来的,专治 AI 编造功能。

文件:faq-rules.js · compliance-rules.js 规模:220+ 条

IndexedDB 本地全量检索

6000+ 封邮件全量缓存到 IndexedDB,搜索走本地 JSON 全字段匹配(JSON.stringify(email).includes(keyword))。避免"漏字段"的老问题,200 ms 内完成 6000 封数据的全量搜索。滚动到底自动分页加载,无需分批操作。

文件:db.js · sidepanel.js 性能:200 ms / 6000 封
🔄

邮件详情智能补拉

邮件列表接口返回的正文/附件常常缺失(html_content 为空、attachments 未附)。详情页做了三种触发条件的补拉判断:正文长度不足 20 字、有 CID 图片但无附件、纯 HTML 无文本 —— 命中任一就静默重拉,用户无感。

技术:CID Base64 映射 · iframe sandbox 场景:图片/附件/纯文本兜底

项目里踩过的四个坑

每一个都不是查一次文档就能解决的问题 —— 需要建立诊断脚本、收集真实数据、 在多种方案中权衡后才收敛到当前实现。其中"漏邮件"是最具代表性的一次深度根因分析

01

本地 6000 封的搜索性能

正文全文匹配走 JavaScript String.includes?先做基准 —— 6000 封数据 200ms 内返回,够用;再补 JSON.stringify 全字段搜避免漏字段。

性能 · 索引权衡
02

AI 回复怎么打分才客观

放弃"关键词绝对分数"(受写作风格影响太大),改用"当日 P25/P50/P75 相对分位数"—— 每封回复的分数都是相对同批次的位置,永远可比。

评分算法 · 相对分位数
03

规则库怎么表达才不误伤

最初用"关键词 AND 组合",['两个','套餐'] 大量误伤正常回复;迭代到"连续短语 OR",只有完整命中 '可以同时持有多个套餐' 才算违禁。20+ 合规 + 200+ FAQ 全从真实邮件回溯打磨。

规则表达 · 长期演进
🔬 深度案例 04

"漏邮件" —— 从时间判停到 ID Set 判重

1

症状:用户反馈某个邮箱只显示 2 封,实际有 7 封

本地 IndexedDB 里就是只有 2 封,不是搜索问题。数据同步在"某个环节"漏了 5 封 —— 这 5 封时间集中在 07-04 14:33 到 15:47 之间,74 分钟窗口。

2

假设:Coze email/list 接口不是严格倒序

用诊断脚本抓 连续 200 页原始返回 分析时间序列 —— 发现第 30 页突然冒出一封 07-04 15:47 的邮件,比第 29 页的 07-03 邮件还新。确认接口存在轻微乱序

3

定位:增量同步的"停车"逻辑触发太早

原逻辑:"连续 60 封 received_time ≤ anchor 才停车"。极端乱序时,30 页老邮件之后才冒出新邮件,60 封窗口不够 —— 已经停车了。

4

方案 A(拒绝):调大窗口

把 60 改成 500 能兜住这次,但下次接口乱得更狠还会漏。"猜"的方案不解决问题,只是把风险后移

5

方案 B(根治):换 email_id Set 判重

停车条件改成"连续 3 页所有邮件 ID 都在本地 Set 里"。乱序邮件必然带新 ID —— 一旦某页有新 ID 就重置计数继续翻。对任意程度的接口乱序完全免疫

教训:基于时间戳的判停假设"接口严格有序",一旦接口稍微乱序就会漏数据。基于 ID Set 的判停直接查"是否见过该 ID",绕开时间戳的信任问题。凡是能用精确判断的地方,就不要用模糊阈值

完整功能 · 现场演示

下方为 Demo 环境,邮件数据均为虚构,但完整跑通了搜索、评分、违禁词高亮、附件下载、统计视图等核心链路。

体验路径

  1. 点击"收件箱"顶部 tab —— 25 封典型客服咨询邮件
  2. 搜索框输入"退款"或"附件" —— 体验 JSON 全字段匹配
  3. 点开任意邮件 —— 查看正文、附件下载、AI 回复评分
  4. 切到"质检" tab —— 查看 AI 回复的违禁词命中与 4 维度评分
  5. 切到"统计" tab —— 每日回复量、平均分、维度分布
  6. 切到"周报" tab —— 一键导出 Word 周报,涵盖数据概览 / 建议 FAQ / 高频问题 / 产品建议 / 周环比 5 大模块