|
|
@@ -0,0 +1,158 @@
|
|
|
+# 客服工作台 WebUI 与 Evolva 竞品学习优化
|
|
|
+
|
|
|
+- 日期:2026-08-04
|
|
|
+- 状态:in-progress
|
|
|
+- 优先级:P0/P1/P2
|
|
|
+- 范围:generic
|
|
|
+- 目标版本:待实施验收后确定
|
|
|
+
|
|
|
+## 目录
|
|
|
+
|
|
|
+1. [来源](#来源)
|
|
|
+2. [原始反馈归纳](#原始反馈归纳)
|
|
|
+3. [竞品可借鉴能力](#竞品可借鉴能力)
|
|
|
+4. [现状审计](#现状审计)
|
|
|
+5. [实施计划](#实施计划)
|
|
|
+6. [安全与产品决策](#安全与产品决策)
|
|
|
+7. [验收清单](#验收清单)
|
|
|
+8. [实施进度](#实施进度)
|
|
|
+
|
|
|
+## 来源
|
|
|
+
|
|
|
+- 客户反馈:`E:\新建文件夹\WXWork\1688855615758934\Cache\File\2026-08\20260804-webui-issue.md`
|
|
|
+- Evolva 源码:[github.com/koppx/Evolva](https://github.com/koppx/Evolva)
|
|
|
+- Evol 官网:[www.evolai.cn](https://www.evolai.cn/)
|
|
|
+
|
|
|
+## 原始反馈归纳
|
|
|
+
|
|
|
+1. 客户群和私聊会话应按最新消息稳定排序,便于快速找到刚收到消息的会话。
|
|
|
+2. 新私聊联系人需要可配置地加入监听范围,而不是只能手动批量补采。
|
|
|
+3. 新联系人可配置欢迎语,并避免重复发送。
|
|
|
+4. 私聊详情需要“采集当前会话”,减少对白名单全部会话的无差别补采。
|
|
|
+5. AI 监听默认开启,但用户人工关闭后不能被自动重新拉起。
|
|
|
+6. 工作台顶部区域过高,主要会话区需要占满剩余视口,减少上下滚动。
|
|
|
+7. Agent 工作台颜色需收敛到语义 CSS 变量,默认采用 Fmode 蓝紫与中性灰,并允许租户覆盖。
|
|
|
+
|
|
|
+## 竞品可借鉴能力
|
|
|
+
|
|
|
+### 借鉴
|
|
|
+
|
|
|
+- 把聊天、工具、文件和任务状态放在统一工作空间,降低页面切换成本。
|
|
|
+- 使用 `Plan -> Act -> Observe -> Evaluate -> Evolve` 表达 Agent 执行阶段。
|
|
|
+- 工具活动日志可展开/收起,并显示状态、耗时、脱敏参数摘要、结果与失败。
|
|
|
+- 支持会话续接、执行证据、checkpoint、artifact 和 metrics 等可恢复线索。
|
|
|
+- 高风险工具操作具备一次、本会话、拒绝等清晰授权语义。
|
|
|
+
|
|
|
+### 不照搬
|
|
|
+
|
|
|
+- 不迁移 Evolva 的 Python/TUI 架构。
|
|
|
+- 不新建与现有 `toolTrace`、审计或响应监控重复的数据存储。
|
|
|
+- 底层没有可靠取消能力时,不展示虚假的取消按钮。
|
|
|
+- 不把任意新联系人自动外发作为通用默认值。
|
|
|
+
|
|
|
+## 现状审计
|
|
|
+
|
|
|
+### 已具备,避免重复开发
|
|
|
+
|
|
|
+- 私聊详情“采集当前会话”。
|
|
|
+- 顶部“补采全部白名单”。
|
|
|
+- AI 监听默认开启。
|
|
|
+- 人工关闭监听后保持关闭。
|
|
|
+- 群聊白名单拒绝与私聊白名单热更新基础能力。
|
|
|
+- 群聊列表已有最新时间降序的基础逻辑。
|
|
|
+
|
|
|
+### 已确认缺陷
|
|
|
+
|
|
|
+- 私聊数据库查询虽按时间降序,但服务层重算公开展示时间后没有再次排序,实际大量会话存在错序。
|
|
|
+- 群聊排序缺少“空时间末尾”和“相同时间稳定排序”的明确规则。
|
|
|
+- Agent 工作台顶部信息区过高,主体不能稳定占满首屏。
|
|
|
+- Agent 区域仍存在橙色根品牌变量和较多硬编码绿色,租户主题难以统一覆盖。
|
|
|
+
|
|
|
+## 实施计划
|
|
|
+
|
|
|
+### P0:工作台布局、排序和主题
|
|
|
+
|
|
|
+- 压缩顶部为 sticky 命令栏,只保留账号、在线/监听状态、全局模式、白名单数、待回复数和关键操作。
|
|
|
+- 将设置和提醒移入抽屉,三栏工作台使用 `100dvh`/`calc()` 占满剩余视口并独立滚动。
|
|
|
+- 私聊和群聊都采用最新消息降序、空时间末尾、相同时间稳定的规则。
|
|
|
+- 未回复/超时仅作为状态标识,不改变最新消息主排序。
|
|
|
+- Agent 工作台改用品牌、页面、面板、文字、边框、focus、success、warning、error 等语义 token。
|
|
|
+- 默认 Fmode 蓝紫 + 中性灰,租户通过 `data-theme` 或变量覆盖;不机械重写全站颜色。
|
|
|
+
|
|
|
+### P1:新联系人接入与欢迎语
|
|
|
+
|
|
|
+- Workbench settings 作为运行真源。
|
|
|
+- 新增 `GET/POST /api/agent/intake-policy`。
|
|
|
+- 固定字段:`mode`、`welcomeEnabled`、`welcomeText`、`welcomeSendMode`。
|
|
|
+- 模式:`allowlist_only`、`auto_enroll_review`、`auto_enroll_autopilot`。
|
|
|
+- `auto_enroll_review` 强制会话为 review,不继承全局 autopilot。
|
|
|
+- `auto_enroll_autopilot` 必须由管理员显式选择并二次确认。
|
|
|
+- 未知群聊继续拒绝;仅通过群聊校验后的未知私聊可按策略纳入。
|
|
|
+- 欢迎语按账号 + 联系人幂等,失败状态可重试并保留审计。
|
|
|
+
|
|
|
+### P2:活动与工具轨迹
|
|
|
+
|
|
|
+- 右侧洞察区增加可折叠活动轨迹。
|
|
|
+- 复用现有 tool trace、audit 和 response monitor。
|
|
|
+- 展示阶段、工具名、状态、耗时、脱敏参数摘要、结果、失败、重试和审计入口。
|
|
|
+- 仅在底层真实支持时开放取消/重试;否则保留已有 regenerate 能力。
|
|
|
+
|
|
|
+### 迁移与仓库治理
|
|
|
+
|
|
|
+- 业务安装副本先验证,再把等价通用能力同步到通用技能包。
|
|
|
+- 当前任务验收完成后,把通用技能包迁入 `E:\workspace\QIWEI-skill`。
|
|
|
+- 迁移时保留本仓库 `.git` 和 `todolist/`,禁止整包覆盖。
|
|
|
+- 不迁入房源 Provider、小牛默认值、真实房源数据、凭据、`.env.local`、outputs、数据库、Session、日志或 `node_modules`。
|
|
|
+
|
|
|
+## 安全与产品决策
|
|
|
+
|
|
|
+| 场景 | 通用默认 | 约束 |
|
|
|
+| --- | --- | --- |
|
|
|
+| 未知私聊 | `allowlist_only`,忽略 | 不创建会话、不写消息、不外发 |
|
|
|
+| 自动纳入审核 | `auto_enroll_review` | 只生成草稿,强制 review |
|
|
|
+| 自动纳入自动回复 | 默认关闭 | 管理员二次确认后才允许 |
|
|
|
+| 未知群聊 | 拒绝 | 不因私聊接入策略放宽 |
|
|
|
+| 欢迎语 | draft/review | 账号 + 联系人幂等,失败可重试 |
|
|
|
+| 人工关闭监听 | 保持关闭 | 后台启动不得覆盖人工选择 |
|
|
|
+| 工具参数 | 脱敏 | UI、日志和审计均不显示凭据 |
|
|
|
+
|
|
|
+## 验收清单
|
|
|
+
|
|
|
+### 功能和安全
|
|
|
+
|
|
|
+- [ ] 私聊最新消息排序:含空时间末尾和相同时间稳定性。
|
|
|
+- [ ] 群聊最新消息排序:含空时间末尾和相同时间稳定性。
|
|
|
+- [ ] strict/allowlist 模式未知联系人仍被忽略。
|
|
|
+- [ ] `auto_enroll_review` 新私聊只生成草稿,不自动外发。
|
|
|
+- [ ] 未知群聊不被自动纳入。
|
|
|
+- [ ] 欢迎语一次性、重启幂等、失败可重试。
|
|
|
+- [ ] 人工关闭监听后不会被自动拉起。
|
|
|
+- [ ] 活动轨迹参数和结果已脱敏。
|
|
|
+
|
|
|
+### UI
|
|
|
+
|
|
|
+- [ ] 1440x900 首屏可完成主要会话操作,无页面级上下拖动。
|
|
|
+- [ ] 1280x720 无重叠、按钮文字不溢出、三栏稳定。
|
|
|
+- [ ] 390x844 移动端无重叠且主要操作可达。
|
|
|
+- [ ] 设置/提醒抽屉与活动轨迹可正常展开收起。
|
|
|
+- [ ] 默认主题和租户变量覆盖均通过截图检查。
|
|
|
+
|
|
|
+### 包与发布
|
|
|
+
|
|
|
+- [ ] 业务安装副本 `node --check`、agent/runtime/preview/package/property smoke 通过。
|
|
|
+- [ ] 通用包 `node --check`、agent/runtime/preview/package smoke 通过。
|
|
|
+- [ ] Playwright 截图与 DOM 尺寸记录齐全。
|
|
|
+- [ ] 独立仓库迁移后敏感信息扫描为 0。
|
|
|
+- [ ] 独立仓库完整测试通过并提交 `master`。
|
|
|
+- [ ] 未经单独确认不发布 npm。
|
|
|
+
|
|
|
+## 实施进度
|
|
|
+
|
|
|
+| 节点 | 状态 | 当前结果 |
|
|
|
+| --- | --- | --- |
|
|
|
+| A 现状审计 | verified | 已确认复用能力、私聊错序根因、群聊稳定排序缺口、API 字段和安全模式 |
|
|
|
+| B P0 实施 | in-progress | 布局、排序、主题与三视口验收进行中 |
|
|
|
+| C P1/P2 实施 | in-progress | 接入策略、欢迎语、轨迹与安全回归进行中 |
|
|
|
+| D 联调复核 | blocked | 等待 B/C 完成后执行 |
|
|
|
+| E 独立仓库迁移 | triaged | 待通用包验收后迁入并推送 master |
|
|
|
+
|