适配器管理
适配器负责把 QQ、邮件、iMessage 等消息平台接入 MaiBot。WebUI 的适配器管理页(侧边栏「配置管理」分组下的 适配器设置,/adapter-management)让你集中查看和管理所有已接入的适配器及其账号身份。

查看已发现的账号
适配器连接后,会把它实际报告的平台账号身份上报给 MaiBot。点适配器管理页顶部「全局默认规则」卡片右侧的 平台账号 折叠按钮,在浮层里查看这些已发现账号:
- 账号身份 — 适配器实际报告的账号 ID、昵称等(1.2.0 起持久化保存,作为该适配器的稳定身份)
- 所属适配器 — 每个账号对应的适配器实例
- 在线状态 — 账号当前是否在线、适配器连接是否正常
- 身份来源 — 区分「适配器已发现账号」与「备用平台账号」,避免混淆
适配器已发现账号渲染成紧凑卡片:平台名、账号 ID、「在线 / 离线」徽标和最近一次上报时间;手动填写的平台 / 账号用的是同款卡片,带铅笔(编辑)和垃圾桶(删除)图标,平台或账号没填全的行会保持编辑态,不会出现空白卡片。
与备用配置的区别
从 1.2.0 起,MaiBot 以适配器实际报告的身份为准。配置里手填的平台账号仅在没有适配器身份时作为备用值回退。两者都能在这个浮层里区分查看。
删除账号记录 / 恢复账号
账号卡片上的垃圾桶图标是 删除账号记录:
- 删除账号记录 — 硬删除数据库里的这条账号记录,不是软禁用;适配器下次上报身份时会重新发现它(按钮悬停提示「适配器再次上报时会重新发现」)
- 恢复身份 — 被排除过的账号收在「已排除账号」折叠区,点里面的恢复图标即可重新参与身份解析
1.3.1 及之前这个按钮是眼睛图标的「排除身份」(软禁用:账号不再接收入站消息,但连接不断开)。1.3.2 起改为直接删除记录,建议先确认这个账号只是误报或已下线,再点删除。
浮层底部的「保存备用账号」只写 bot.platform、bot.qq_account、bot.platforms 三个字段,不会顺手覆盖昵称等其他基础设置。
自动获取 ID
1.2.0 起适配器可以自动获取并上报自己的 ID,无需在配置里手动填写。适配器管理页会展示自动获取到的 ID 及身份信息,帮助确认每个适配器实例的身份是否被正确识别。
访问策略入口
适配器的群聊 / 私聊访问策略(谁可以被该适配器接入)在 WebUI 里有两个入口:
- 适配器管理页顶部的「全局默认规则」卡片 — 分别设置群聊与私聊在没有任何具体规则命中时的默认动作(接收消息 / 不接收),副标题「所有适配器的默认规则」;1.3.1 之前叫「麦豆默认策略」,按钮写作「放行 / 拒绝」。卡片右侧就是 平台账号 浮层入口,平台账号编辑器 1.3.2 起从麦麦设置搬到这里
- 适配器插件配置页的「黑白名单规则」页签 — 只在
plugin_type = adapter的插件上出现,按适配器实例配置具体的allow_ids/deny_ids
黑白名单规则面板
「黑白名单规则」面板在选中一个适配器后打开:
- 模式提示 — 每个列表下方有一行说明,写清当前是「黑名单模式:接收所有群聊消息,只需在『不接收消息的聊天ID』中添加要屏蔽的群号」还是对应的白名单表述
- 失效列表置灰 — 默认「接收所有消息」时「接收消息的聊天ID」整块置灰且空列表禁填;默认「默认不接收消息」时「不接收消息的聊天ID」同样置灰,避免往不起作用的列表里填值
- 当前账号徽标 — 工具栏显示「当前账号 ID:xxx」;这个适配器实例没有专属规则时显示「无专属规则,按全局默认生效」
- 换号登录提示 — 规则按账号 ID 区分。切换到另一个账号登录后会弹提示:当前账号将新建自己的规则,历史账号的规则仍留在配置里但不再生效
- 工具栏位置 — 当前账号徽标、保存状态和「保存」按钮渲染在页签同一行,不用滚到面板顶部
面板编辑停止 2 秒后自动保存,也可以点「保存」立即提交;保存按钮旁会显示「未保存的更改 / 自动保存中 / 已保存 HH:MM:SS」等状态。为避免「当前账号」脱靶,面板每 30 秒自动刷新一次。
策略分组(1.3.5 起)
同一适配器的规则可以保存成多组策略,按场景切换生效(比如「日常 / 测试 / 维护」各一套):
- 分组切换 — 工具栏上的下拉框显示当前生效的分组,切换后立即保存并生效;切换时会把正在编辑的草稿先存入当前分组,不会丢改动
- 新建分组 — 点「+」新建策略分组:新分组默认继承全局设置、名单为空,名称不能与已有分组重复;创建后从下拉框切换过去
- 复制当前组 — 点「复制」以当前分组的全部规则创建新分组,创建后仍停留在当前分组
- 管理分组 — 点「管理」打开分组列表,可删除不需要的分组;当前生效的分组不能删除,需先切换到其他分组
- 默认分组 — 升级前已有的规则会完整保留在名为「默认分组」的分组里,不用重新配置
策略背后的配置文件是 config/adapter_policy.toml,详见 接入平台。这里的规则属于 MaiBot 主程序侧;多组策略同样保存在这个文件里。
从 1.3.0 起,适配器插件可以直接使用这套内置黑白名单;同时适配器管理页读写的是运行时实际生效的那条规则(多条规则命中时取最具体的一条),不会再把修改保存到被更高优先级规则遮蔽的条目上。
1.3.2 起,「黑白名单规则」面板会在群号后显示群头像和已知群名称:群名称取自已注册的聊天流,头像由适配器的头像接口提供并缓存到 data/avatar/(可用头像缓存 24 小时,未命中约 5 分钟后重试)。群名称只覆盖 MaiBot 已经有聊天流的群,没聊过的群只有头像;在 WebUI 设置(/settings,点顶栏右侧的齿轮进入)的「其他」里关掉「获取并显示用户头像」后只显示默认图标。适配器未实现头像接口或平台不支持时显示占位头像并标记为「不支持」,不影响名单编辑。
验证与排错
验证:接入一个适配器后,适配器管理页能看到对应账号且在线状态正常。
看不到账号?
- 确认适配器已连接并成功登录平台
- 适配器未上报身份时,页面会回退显示配置里的备用账号
删了账号记录,它又出现了?
- 删除只是删记录,适配器下次上报身份时会重新发现该账号,这是预期行为
黑白名单改了不生效?
- 先看列表下方的模式提示:置灰的列表当前不起作用
- 规则按账号 ID 区分,换号登录后要为当前账号单独配一套
- 规则按分组保存:先确认工具栏下拉框里当前生效的分组,是不是你正在修改的那一组
- 多条规则命中时取最具体的一条,确认没有更高优先级的规则遮住了你的修改