mirror of
https://github.com/langbot-app/LangBot.git
synced 2026-11-02 05:45:20 +08:00
2.4 KiB
2.4 KiB
HumanTakeover(人工接管)
一款用于 LangBot 的人工接管与人工回复插件。支持人工通过内置 Web 控制台接管任意私聊或群聊会话,阻断 AI 自动回复,并以文本、图片、文件的形式人工回复。
功能特性
- 接管即阻断 AI:会话被接管后,AI 流水线被中止(
prevent_default),由人工处理。 - Web 控制台(单 Page 组件):双栏布局 + 右侧可折叠信息面板,遵循 LangBot 设计语言,适配明暗主题。
- 全部会话:列出所有私聊与群聊;群聊消息区分发言用户。
- 人工回复:控制台内可发送纯文本、图片(base64)、文件(base64)。
- 草稿按会话保存:输入框内容与已选中的图片/文件只属于当前会话;切换会话时保存并恢复,人工回复只会带上该会话自己选择的附件。
- 10 分钟自动取消接管:接管后若在配置时长内无人工响应则自动取消;人工静默期间显示倒计时,人工回复即重置计时。
- 触发词:当用户消息包含配置的触发词时,会话被标记为未处理(头像上出现微信式红点),弹出提醒,并(可选)自动接管。
- 信息卡片:点击用户/群头像查看可获取到的信息(ID、所属群、Bot、适配器)。
- 数据持久化:会话与消息通过 LangBot
plugin_storage(数据库支撑)存储,重启不丢失。 - 清理存储:一键清空所有存储数据(带自定义二次确认弹层)。
- 国际化:完整的简体中文 / 英文界面。
配置项
| 字段 | 类型 | 默认值 | 说明 |
|---|---|---|---|
takeover_timeout |
integer | 600 | 接管后若该秒数内无人工响应则自动取消接管。 |
trigger_words |
array[string] | [] |
用户消息包含任一触发词时标记未处理并自动接管。 |
auto_takeover_on_trigger |
boolean | true | 命中触发词时是否自动接管。 |
使用方法
- 在 LangBot 中安装并启用插件,按上表配置参数。
- 从 WebUI 侧边栏打开 人工接管 页面。
- 选择会话,点击 接管 阻断 AI,然后人工回复。
- 点击头像查看用户/群信息;点击 清理存储 重置数据。
组件
- EventListener(事件监听器):记录消息、缓存适配器、匹配触发词,并在接管期间阻断 AI。
- Page(
console):Web 管理控制台(index.html+console.py)。