MCPcopy
hub / github.com/FloatTech/ZeroBot-Plugin

github.com/FloatTech/ZeroBot-Plugin @v1.10.23 sqlite

repository ↗ · DeepWiki ↗ · release v1.10.23 ↗
982 symbols 3,397 edges 208 files 427 documented · 43%
README

椛 zbp-uwu

ZeroBot-Plugin

“椛椛是真寻的好朋友!”

ZeroBot-Plugin 是 ZeroBot 的 实用插件合集

miraigo oicq mirai

go onebot zerobot

license tencent-qq tencent-guild telegram

本项目符合 OneBot 标准,可基于以下项目与机器人框架/平台进行交互 | 项目地址 | 平台 | 核心作者 | 备注 | | :---: | :---: | :---: | :---: | | LLOneBot | NTQQ | linyuchen | 目前推荐使用 | | go-cqhttp | MiraiGo | Mrs4s | 因签名原因不再维护 | | onebot-kotlin | Mirai | yyuueexxiinngg | 不再积极维护 | | oicq/http-api | OICQ | takayama | 已归档不再维护 |

Star Trend

专为后 go-cqhttp 时代开发迁移的类zbp新机器人现已出炉,基于官方api,稳定不风控: NanoBot-Plugin

如果您对开发插件感兴趣,欢迎加入ZeroBot-Plugin-Playground

webui持续开发中, 欢迎加入ZeroBot-Plugin-Webui

命令行参数

[]代表是可选参数

zerobot [-h] [-m] [-n nickname] [-t token] [-u url] [-g url] [-p prefix] [-d|w] [-c|s config.json] [-l latency] [-r ringlen] [-x max process time] [-mirror] [qq1 qq2 qq3 ...] [&]
  • -h: 显示帮助
  • -m: 不自动标记消息为已读
  • -n nickname: 设置默认昵称,默认为椛椛
  • -t token: 设置AccessToken,默认为空
  • -u url: 设置Url,默认为ws://127.0.0.1:6700
  • ~~-g url~~(默认禁用): 设置webui url,默认为127.0.0.1:3000
  • -p prefix: 设置命令前缀,默认为/
  • -d|w: 开启 debug | warning 级别及以上日志输出
  • -c config.json: 从config.json加载bot配置
  • -s config.json: 保存现在bot配置到config.json
  • -l latency: 全局处理延时 (ms)
  • -r ringlen: 接收消息环缓冲区大小,0为不设缓冲,并发处理
  • -x max process time: 最大处理时间 (min)
  • -mirror: 直接使用镜像懒加载数据站而不尝试访问源站
  • qqs: superusers 的 qq 号
  • &: 驻留在后台,必须放在最后,仅Linux下有效

默认配置文件格式如下。当选择从配置文件加载时,将忽略相应命令行参数。

{
  "zero": {
    "nickname": ["椛椛", "ATRI", "atri", "亚托莉", "アトリ"],
    "command_prefix": "/",
    "super_users": [],
    "ring_len": 4096,
    "latency": 233000000,
    "max_process_time": 240000000000,
    "mark_message": true
  },
  "ws": [{ "Url": "ws://127.0.0.1:6700", "AccessToken": "" }],
  "wss": null
}

功能

在编译时,以下功能除插件控制外,均可通过注释main.go中的相应import而物理禁用,减小插件体积。

通过插件控制,还可动态管理某个功能在某个群的打开/关闭。

插件的优先级为import的先后顺序。

webui默认禁用不编译,打开后会增加程序体积。

插件控制

  • [x] /响应 (在发送的群/用户开始工作)

  • [x] /沉默 (在发送的群/用户停止工作)

  • [x] /全局响应 (在所有位置开始工作,无视单独的沉默)

  • [x] /全局沉默 (在所有本应沉默的位置停止工作,显式指定启用的位置不受影响)

  • [x] /启用 xxx (在发送的群/用户启用xxx)

  • [x] /禁用 xxx (在发送的群/用户禁用xxx)

  • [x] /此处启用所有插件

  • [x] /此处禁用所有插件

  • [x] /全局启用 xxx

  • [x] /全局禁用 xxx

  • [x] /还原 xxx (在发送的群/用户还原xxx的开启状态到初始状态)

  • 注:当全局未配置或与默认相同时,状态取决于单独配置,后备为默认配置;当全局与默认不同时,状态取决于全局配置,单独配置失效。

  • [x] /改变默认启用状态 xxx

  • [x] /禁止 service qq1 qq2... (禁止 qqs 使用服务 service)

  • [x] /允许 service qq1 qq2... (重新允许 qqs 使用服务 service)

  • [x] /封禁 qq1 qq2... (禁止 qqs 使用全部服务)

  • [x] /解封 qq1 qq2... (允许 qqs 使用全部服务)

  • [x] /用法 xxx

  • [x] /服务列表

  • [x] /设置服务列表显示行数 xx (默认值为 9, 该设置仅运行时有效, zbp 重启后重置)

  • [x] (默认禁用) /设置webui用户名 zerobot 密码 123456

  • [x] (默认禁用) /webui启动

  • [x] (默认禁用) /webui停止

  • [x] @Bot 插件冲突检测 (会在本群发送一条消息并在约 1s 后撤回以检测其它同类 bot 中已启用的插件并禁用)

动态加载插件

import _ "github.com/FloatTech/ZeroBot-Plugin-Dynamic/dyloader"

高优先级

聊天

import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/chat"

  • [x] [BOT名字]

  • [x] [戳一戳BOT]

  • [x] 空调开

  • [x] 空调关

  • [x] 群温度

  • [x] 设置温度[正整数]

聊天时长统计

import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/chatcount"

  • [x] 查询水群@xxx

  • [x] 查看水群排名

睡眠管理

import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/sleep_manage"

  • [x] 早安 | 晚安

违禁词检测

import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/antiabuse" - [x] 添加违禁词

  • [x] 删除违禁词

  • [x] 查看违禁词

ATRI

import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/atri" - [x] 具体指令看 /用法 atri

  • 注:本插件基于 ATRI ,为 Golang 移植版

群管

import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/manager"

  • [x] 禁言[@xxx][分钟]

  • [x] 解除禁言[@xxx]

  • [x] 我要自闭 | 禅定 x [分钟 | 小时 | 天]

  • [x] 开启全员禁言

  • [x] 解除全员禁言

  • [x] 升为管理[@xxx]

  • [x] 取消管理[@xxx]

  • [x] 修改名片[@xxx][xxx]

  • [x] 修改头衔[@xxx][xxx]

  • [x] 申请头衔[xxx]

  • [x] 踢出群聊[@xxx]

  • [x] 退出群聊[群号]@Bot

  • [x] *入群欢迎

  • [x] *退群通知

  • [x] 设置欢迎语[欢迎~] 可选添加 [{at}] [{nickname}] [{avatar}] [{id}]

  • [x] 在[MM]月[dd]日的[hh]点[mm]分时(用[url])提醒大家[xxx]

  • [x] 在[MM]月[每周 | 周几]的[hh]点[mm]分时(用[url])提醒大家[xxx]

  • [x] 取消在[MM]月[dd]日的[hh]点[mm]分的提醒

  • [x] 取消在[MM]月[每周 | 周几]的[hh]点[mm]分的提醒

  • [x] 在"cron"时(用[url])提醒大家[xxx]

  • [x] 取消在"cron"的提醒

  • [x] 列出所有提醒

  • [x] 翻牌

  • [x] 赞我

  • [x] 群签到

  • [x] [开启 | 关闭]入群验证

  • [x] [开启 | 关闭]gist加群自动审批

  • [x] 对信息回复:[设置 | 取消]精华

  • [x] 取消精华 [信息ID]

  • [x] /精华列表

  • [ ] 同意好友请求

  • [x] 对信息回复: 撤回

  • [ ] 警告[@xxx]

  • 注:使用gist加群自动审批,请在群介绍添加以下说明,同时开启需要回答问题并由管理员审核:加群请在github新建一个gist,其文件名为本群群号的字符串的md5(小写),内容为一行,是当前unix时间戳(10分钟内有效)。然后请将您的用户名和gist哈希(小写)按照username/gisthash的格式填写到回答即可。

  • 设置欢迎语可选添加参数说明:{at}可在发送时艾特被欢迎者 {nickname}是被欢迎者名字 {avatar}是被欢迎者头像 {uid}是被欢迎者QQ号 {gid}是当前群群号 {groupname} 是当前群群名

群应用:AI声聊

import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/airecord"

  • [x] 设置AI语音群号1048452984(tips:机器人任意所在群聊即可)

  • [x] 设置AI语音模型

  • [x] 查看AI语音配置

  • [x] 发送AI语音xxx

定时指令触发器

import _ "github.com/FloatTech/zbputils/job"

  • 注意:触发器具有限速,每 2s 仅允许最多一次触发

  • [x] 记录以"完全匹配关键词"触发的(代表我执行的)指令

  • [x] 取消以"完全匹配关键词"触发的(代表我执行的)指令

  • [x] 记录在"cron"触发的(别名xxx的)指令

  • [x] 取消在"cron"触发的指令

  • [x] 查看所有触发指令

  • [x] 查看在"cron"触发的指令

  • [x] 查看以"完全匹配关键词"触发的(代表我执行的)指令

  • [x] 注入指令结果:任意指令

  • [x] 执行指令:任意指令

  • 注:任意指令可以使用形如?::参数1提示语::1!,?::参数2提示语::2!,?::?可选参数3提示语,不回答将填入空值::3!,!::从url获取的参数::4!,!::?可选的从url获取的参数,出错将填入空值::5!的未定参数,在注入时一一匹配

  • 一些示例

每日9:30推送摸鱼人日历

记录在"30 9 * * *"触发的指令
run[CQ:image,file=https://api.vvhan.com/api/moyu]

每日12:00以1/2概率执行coser指令

记录在"0 12 * * *"触发的指令
注入指令结果:>runcoderaw py
from random import random
if random() > 0.5: print('coser')
else: print('今天没有coser哦~')

每日15:00询问设置定时者否想看coser

记录在"0 15 * * *"触发的指令
注入指令结果:>runcoderaw py
if '?::想看coser吗?::1!' == '想': print('coser')
else: print('好吧')

自行编写简易的选择困难症助手小插件

记录以"简易的选择困难症助手"触发的指令
执行指令:>runcoderaw py
from random import random
if random() > 0.5: print('您最终会选?::请输入您的选择1::1!')
else: print('您最终会选?::请输入您的选择2::2!')
简易的选择困难症助手

自行编写随机b站404页趣图插件

记录以"随机b站404页趣图"触发的代表我执行的指令
注入指令结果:>runcoderaw py
import json
j = json.loads(r'''!::https://api.iyk0.com/bili_chart::1!''')
print("run[CQ:image,file="+j["img"]+"]")
随机b站404页趣图

随机b站404页趣图

  • [x] [我|大家|有人][说|问][正则表达式]你[答|说|做|执行][模版]

  • [x] [查看|看看][我|大家|有人][说|问][正则表达式]

  • [x] 删除[大家|有人|我][说|问|让你做|让你执行][正则表达式]

  • 注:模版是指含有$1 $2这样的未定参数,会在正则匹配时按顺序填入子匹配对应值

中优先级

ahsai tts

import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/ahsai"

  • [x] 使[ 伊織弓鶴 | 紲星あかり | 結月ゆかり | 京町セイカ |東北きりたん | 東北イタコ | ついなちゃん標準語 | ついなちゃん関西弁 | 音街ウナ | 琴葉茜 | 吉田くん | 民安ともえ | 桜乃そら | 月読アイ | 琴葉葵 | 東北ずん子 | 月読ショウタ | 水奈瀬コウ ]说(日语)

AIfalse

import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/ai_false"

  • [x] 查询计算机当前活跃度: [检查身体 | 自检 | 启动自检 | 系统状态]

  • [x] 设置默认限速为每 m [分钟 | 秒] n 次触发

aiimage

import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/aiimage"

  • [x] 设置AI画图密钥xxx
  • [x] 设置AI画图接口地址https://api.siliconflow.cn/v1/images/generations
  • [x] 设置AI画图模型名Kwai-Kolors/Kolors
  • [x] 查看AI画图配置
  • [x] AI画图 [描述]

AIWife

import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/aiwife"

支付宝到账语音

import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/alipayvoice"

  • [x] 支付宝到账 1

AnimeTrace 动画/Galgame识别

import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/animetrace"

基于AnimeTraceAPI 的识图搜索插件

  • [x] Gal识图 | Gal识图 [模型名]

  • [x] 动漫识图 | 动漫识图 2 | 动漫识图 [模型名]

触发者撤回时也自动撤回

import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/autowithdraw"

  • [x] 撤回一条消息

base16384加解密

import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/b14"

  • [x] 加密xxx

  • [x] 解密xxx

  • [x] 用yyy加密xxx

  • [x] 用yyy解密xxx

百度内容审核

import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/baiduaudit"

  • [x] 获取BDAkey

  • [x] 配置BDAKey [API Key] [Secret Key]

  • [x] 获取BDAkey

  • [x] [开启|关闭]内容审核

  • [x] [开启|关闭]撤回提示

  • [x] [开启|关闭]详细提示

  • [x] [开启|关闭]撤回禁言

  • [x] [开启|关闭]禁言累加

  • [x] [开启|关闭]文本检测

  • [x] [开启|关闭]图像检测

  • [x] 设置最大禁言时间[分钟,默认:60,最大43200]

  • [x] 设置每次累加时间[分钟,默认:1]

  • [x] 设置撤回禁言时间[分钟,默认:1]

  • [x] 查看检测类型

  • [x] 查看检测配置

  • [x] 测试文本检测[文本内容]

  • [x] 测试图像检测[图片]

  • [x] 设置检测类型[类型编号]

  • [x] 设置不检测类型[类型编号]

    检测类型编号列表:[1:违禁违规|2:文本色情|3:敏感信息|4:恶意推广|5:低俗辱骂|6:恶意推广-联系方式|7:恶意推广-软文推广]

base64卦加解密

import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/base64gua"

  • [x] 六十四卦加密xxx

  • [x] 六十四卦解密xxx

  • [x] 六十四卦用yyy加密xxx

  • [x] 六十四卦用yyy解密xxx

base天城文加解密

import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/baseamasiro"

  • [x] 天城文加密xxx

  • [x] 天城文解密xxx

  • [x] 天城文用yyy加密xxx

  • [x] 天城文用yyy解密xxx

bilibili

import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/bilibili"

  • [x] >vup info [xxx]

  • [x] >user info [xxx]

  • [x] 查成分 [xxx]

  • [x] 查弹幕 [xxx] 2 (最后一个参数是页码)

  • [x] 设置b站cookie b_ut=7;buvid3=0;i-wanna-go-back=-1;innersign=0; (最好把cookie设全)

    获取Cookie可以使用这个工具

  • [x] 更新vup

b站动态、专栏、视频、直播解析

import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/bilibiliparse"

  • [x] t.bilibili.com/642277677329285174 | bilibili.com/read/cv17134450 | bilibili.com/video/BV13B4y1x7pS | live.bilibili.com/22603245

b站动态、直播推送,需要配

Extension points exported contracts — how you extend this code

Core symbols most depended-on inside this repo

String
called by 96
plugin/hyaku/main.go
dlrange
called by 76
plugin/gif/context.go
loadFirstFrames
called by 65
plugin/gif/context.go
Close
called by 62
plugin/score/model.go
Format
called by 51
abineundo/console_windows.go
getLogo
called by 32
plugin/gif/logo.go
String
called by 24
plugin/moyu/nowork.go
Day
called by 24
plugin/manager/timer/wrap.go

Shape

Function 530
Method 237
Struct 196
TypeAlias 17
FuncType 2

Languages

Go100%

Modules by API surface

plugin/warframeapi/types.go67 symbols
plugin/gif/png.go50 symbols
plugin/gif/gif.go40 symbols
plugin/mcfish/main.go34 symbols
plugin/baiduaudit/model.go20 symbols
plugin/chess/core.go18 symbols
plugin/bilibilipush/model.go18 symbols
plugin/rsshub/domain/storageRepo.go16 symbols
plugin/chatcount/model.go15 symbols
plugin/ymgal/model.go13 symbols
plugin/score/model.go13 symbols
plugin/qzone/model.go13 symbols

Dependencies from manifests, versioned

github.com/Baidu-AIP/golang-sdkv1.1.1 · 1×
github.com/FloatTech/AnimeAPIv1.7.1-0.20251028071 · 1×
github.com/FloatTech/floatboxv0.0.0-2025100207480 · 1×
github.com/FloatTech/ggv1.1.4-0.20260404155 · 1×
github.com/FloatTech/rendercardv0.2.4-0.20260404155 · 1×
github.com/FloatTech/sqlitev1.7.2 · 1×
github.com/FloatTech/ttlv0.0.0-2025022404515 · 1×
github.com/FloatTech/zbpctrlv1.7.1 · 1×
github.com/FloatTech/zbputilsv1.7.2-0.20260404160 · 1×
github.com/RomiChan/syncxv0.0.0-2024041814490 · 1×
github.com/RomiChan/websocketv1.4.3-0.20251002072 · 1×

For agents

$ claude mcp add ZeroBot-Plugin \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact