Files
chatwoot-ai-agent/CHANGELOG.md
T
2026-06-05 04:30:48 +00:00

3.8 KiB
Raw Blame History

Changelog

v1.4 (2026-06-05) — 消息防抖 + AI 重试

新增

  • 消息防抖 (Debounce) — 同一会话 5 秒内到达的多条消息被自动累积合并,合并后发给 AI 一次处理,避免重复调用和混乱回复
    • 累积消息用 \n---\n 分隔,AI 获得完整上下文
    • 人工在此期间回复则跳过,兼容正常转人工流程
    • 日志标记:⏳ Debounce / 📦 Debounce: processing N merged msgs
  • AI 错误重试 (Retry)call_qwenpaw_ai() 加入指数退避重试机制(最多 2 次重试,等待 1s/2s)
    • 覆盖超时、空回复、非零返回码、任意 Exception
    • 每步日志输出 retry 状态,最终失败标记 ERROR 级别

改进

  • 调用方无需修改:generate_ai_reply(), translate_to_chinese() 自动受益于重试
  • 防抖不影响人工检测优先级(is_human_active 仍在防抖前检查)

v1.3 (2026-06-03) — 代码清理 + 监控 + 状态持久化

清理

  • 删除 30+ 冗余 argparse 参数(1374 行 → 1025 行)
  • 修复 f-string 嵌套引号语法错误
  • 推送到 GitHub main 分支,打 v1.3 tag

新增

  • Metrics 监控 — WebSocket 连接状态、断连次数、每个 inbox 的 AI 回复成功率与响应时间
  • 健康检查 CLI--health 参数输出 JSON 状态
  • 日志分级 — INFO / WARN / ERROR 级别,每个 inbox 独立日志标识
  • 状态持久化ai_sent_msg_idshuman_active_convs_ai_pending_convs 每 30 秒写入 JSON 文件
  • 启动恢复 — 加载 1 小时内快照(安全兜底)
  • 配置验证_validate_config() 检查必要字段

v1.2 (2026-06-02) — 多租户架构:热加载 + 自动开通

新增

  • inboxes.json — 外部配置文件,WS Agent 每 30 秒检测变化自动热加载,新增 inbox 无需重启
  • provision.py — 一键开通脚本:自动建 Chatwoot Inbox + QwenPaw Agent + 写入路由配置,输出嵌入代码

改进

  • WS Agent 架构重构INBOX_CONFIG 从硬编码改为从 inboxes.json 动态读取,支持在线新增/修改/删除 inbox
  • 超时检查线程 — 同时负责清理过期人工超时 + 热加载配置

待做

  • FastAdmin 管理后台对接 provision.py
  • 租户自助注册 + 支付

v1.1 (2026-06-02) — Amazon 集成 + 人工检测修复

新增

  • Amazon API Inbox 集成 — 创建 Inbox 8 (Channel::Api),支持 Amazon 客户消息路由到 amazon-agent AI 自动回复
  • 多 Inbox 路由 — 支持 Inbox 1 (GreatQiu 采购) / Inbox 7 (HALO 博客) / Inbox 8 (Amazon) 三路并行

修复

  • API Inbox 人工消息检测 — Channel::Api 发送的消息 sender_type 为 "Contact" 而非 "User",原检测抓不到,新增 message_type=1 兜底检测
  • amazon-agent ID 不匹配 — agent ID 为 9hxc2Y 但 INBOX_CONFIG 配置了名称 amazon-agentqwenpaw CLI 查不到导致 AI 空回复

配置

  • Amazon agent 模型从 xiaomi/mimo-v2.5-pro 改为 opencode/big-pickle

v1.0 (2026-06-01) — 初始版本

功能

  • Chatwoot WebSocket AI 客服 — 基于 ActionCable 实时双向通道
  • GreatQiu 采购助手 — Inbox 1 (WebWidget), 英文 sourcing-agent, 自动回复采购询盘
  • HALO 博客技术顾问 — Inbox 7 (WebWidget), 中文 halo-blog-agent, 安防弱电知识库
  • AI ↔ 人工无缝切换
    • 人工回复后 AI 自动回避
    • 15 分钟超时后 AI 自动接回
    • 会话状态改为 Pending/Resolved 后 AI 恢复
    • AI 识别到需要人工介入 → [HANDOFF] 标记 + 通知坐席
  • 私密备注 — 每次 AI 回复后自动写中文备注,方便人工排查
  • HALO 博客兼容 — Pjax 无刷新跳转 + CSP frame-ancestors 适配
  • GitHub 代码管理 — 仓库 hanmolabiqiu/chatwoot-ai-agent