“椛椛是真寻的好朋友!”
ZeroBot-Plugin 是 ZeroBot 的 实用插件合集
本项目符合 OneBot 标准,可基于以下项目与机器人框架/平台进行交互
| 项目地址 | 平台 | 核心作者 | 备注 |
|---|---|---|---|
| LLOneBot | NTQQ | linyuchen | 目前推荐使用 |
| go-cqhttp | MiraiGo | Mrs4s | 因签名原因不再维护 |
| onebot-kotlin | Mirai | yyuueexxiinngg | 不再积极维护 |
| oicq/http-api | OICQ | takayama | 已归档不再维护 |
专为后 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默认禁用不编译,打开后会增加程序体积。
插件控制
-
/响应 (在发送的群/用户开始工作)
-
/沉默 (在发送的群/用户停止工作)
-
/全局响应 (在所有位置开始工作,无视单独的沉默)
-
/全局沉默 (在所有本应沉默的位置停止工作,显式指定启用的位置不受影响)
-
/启用 xxx (在发送的群/用户启用xxx)
-
/禁用 xxx (在发送的群/用户禁用xxx)
-
/此处启用所有插件
-
/此处禁用所有插件
-
/全局启用 xxx
-
/全局禁用 xxx
-
/还原 xxx (在发送的群/用户还原xxx的开启状态到初始状态)
-
注:当全局未配置或与默认相同时,状态取决于单独配置,后备为默认配置;当全局与默认不同时,状态取决于全局配置,单独配置失效。
-
/改变默认启用状态 xxx
-
/禁止 service qq1 qq2... (禁止 qqs 使用服务 service)
-
/允许 service qq1 qq2... (重新允许 qqs 使用服务 service)
-
/封禁 qq1 qq2... (禁止 qqs 使用全部服务)
-
/解封 qq1 qq2... (允许 qqs 使用全部服务)
-
/用法 xxx
-
/服务列表
-
/设置服务列表显示行数 xx (默认值为 9, 该设置仅运行时有效, zbp 重启后重置)
-
(默认禁用) /设置webui用户名 zerobot 密码 123456
-
(默认禁用) /webui启动
-
(默认禁用) /webui停止
-
@Bot 插件冲突检测 (会在本群发送一条消息并在约 1s 后撤回以检测其它同类 bot 中已启用的插件并禁用)
动态加载插件
import _ "github.com/FloatTech/ZeroBot-Plugin-Dynamic/dyloader"
- 本功能需要
cgo,故已分离出主线。详见ZeroBot-Plugin-Dynamic
聊天
import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/chat"
-
[BOT名字]
-
[戳一戳BOT]
-
空调开
-
空调关
-
群温度
-
设置温度[正整数]
聊天时长统计
import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/chatcount"
-
查询水群@xxx
-
查看水群排名
睡眠管理
import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/sleep_manage"
- 早安 | 晚安
违禁词检测
import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/antiabuse"
-
添加违禁词
-
删除违禁词
-
查看违禁词
ATRI
import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/atri"
-
具体指令看 /用法 atri
-
注:本插件基于 ATRI ,为 Golang 移植版
群管
import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/manager"
-
禁言[@xxx][分钟]
-
解除禁言[@xxx]
-
我要自闭 | 禅定 x [分钟 | 小时 | 天]
-
开启全员禁言
-
解除全员禁言
-
升为管理[@xxx]
-
取消管理[@xxx]
-
修改名片[@xxx][xxx]
-
修改头衔[@xxx][xxx]
-
申请头衔[xxx]
-
踢出群聊[@xxx]
-
退出群聊[群号]@Bot
-
*入群欢迎
-
*退群通知
-
设置欢迎语[欢迎~] 可选添加 [{at}] [{nickname}] [{avatar}] [{id}]
-
在[MM]月[dd]日的[hh]点[mm]分时(用[url])提醒大家[xxx]
-
在[MM]月[每周 | 周几]的[hh]点[mm]分时(用[url])提醒大家[xxx]
-
取消在[MM]月[dd]日的[hh]点[mm]分的提醒
-
取消在[MM]月[每周 | 周几]的[hh]点[mm]分的提醒
-
在"cron"时(用[url])提醒大家[xxx]
-
取消在"cron"的提醒
-
列出所有提醒
-
翻牌
-
赞我
-
群签到
-
[开启 | 关闭]入群验证
-
[开启 | 关闭]gist加群自动审批
-
对信息回复:[设置 | 取消]精华
-
取消精华 [信息ID]
-
/精华列表
-
同意好友请求
-
对信息回复: 撤回
-
警告[@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"
-
设置AI语音群号1048452984(tips:机器人任意所在群聊即可)
-
设置AI语音模型
-
查看AI语音配置
-
发送AI语音xxx
定时指令触发器
import _ "github.com/FloatTech/zbputils/job"
-
注意:触发器具有限速,每 2s 仅允许最多一次触发
-
记录以"完全匹配关键词"触发的(代表我执行的)指令
-
取消以"完全匹配关键词"触发的(代表我执行的)指令
-
记录在"cron"触发的(别名xxx的)指令
-
取消在"cron"触发的指令
-
查看所有触发指令
-
查看在"cron"触发的指令
-
查看以"完全匹配关键词"触发的(代表我执行的)指令
-
注入指令结果:任意指令
-
执行指令:任意指令
-
注:任意指令可以使用形如
?::参数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页趣图-
[我|大家|有人][说|问][正则表达式]你[答|说|做|执行][模版]
-
[查看|看看][我|大家|有人][说|问][正则表达式]
-
删除[大家|有人|我][说|问|让你做|让你执行][正则表达式]
-
注:模版是指含有
$1$2这样的未定参数,会在正则匹配时按顺序填入子匹配对应值
ahsai tts
import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/ahsai"
- 使[ 伊織弓鶴 | 紲星あかり | 結月ゆかり | 京町セイカ |東北きりたん | 東北イタコ | ついなちゃん標準語 | ついなちゃん関西弁 | 音街ウナ | 琴葉茜 | 吉田くん | 民安ともえ | 桜乃そら | 月読アイ | 琴葉葵 | 東北ずん子 | 月読ショウタ | 水奈瀬コウ ]说(日语)
AIfalse
import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/ai_false"
-
查询计算机当前活跃度: [检查身体 | 自检 | 启动自检 | 系统状态]
-
设置默认限速为每 m [分钟 | 秒] n 次触发
aiimage
import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/aiimage"
- 设置AI画图密钥xxx
- 设置AI画图接口地址https://api.siliconflow.cn/v1/images/generations
- 设置AI画图模型名Kwai-Kolors/Kolors
- 查看AI画图配置
- AI画图 [描述]
AIWife
import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/aiwife"
- waifu | 随机waifu(从100000个AI生成的waifu中随机一位)
支付宝到账语音
import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/alipayvoice"
- 支付宝到账 1
AnimeTrace 动画/Galgame识别
import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/animetrace"
基于AnimeTraceAPI 的识图搜索插件
-
Gal识图 | Gal识图 [模型名]
-
动漫识图 | 动漫识图 2 | 动漫识图 [模型名]
触发者撤回时也自动撤回
import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/autowithdraw"
- 撤回一条消息
base16384加解密
import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/b14"
-
加密xxx
-
解密xxx
-
用yyy加密xxx
-
用yyy解密xxx
百度内容审核
import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/baiduaudit"
-
获取BDAkey
-
配置BDAKey [API Key] [Secret Key]
-
获取BDAkey
-
[开启|关闭]内容审核
-
[开启|关闭]撤回提示
-
[开启|关闭]详细提示
-
[开启|关闭]撤回禁言
-
[开启|关闭]禁言累加
-
[开启|关闭]文本检测
-
[开启|关闭]图像检测
-
设置最大禁言时间[分钟,默认:60,最大43200]
-
设置每次累加时间[分钟,默认:1]
-
设置撤回禁言时间[分钟,默认:1]
-
查看检测类型
-
查看检测配置
-
测试文本检测[文本内容]
-
测试图像检测[图片]
-
设置检测类型[类型编号]
-
设置不检测类型[类型编号]
检测类型编号列表:[1:违禁违规|2:文本色情|3:敏感信息|4:恶意推广|5:低俗辱骂|6:恶意推广-联系方式|7:恶意推广-软文推广]
base64卦加解密
import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/base64gua"
-
六十四卦加密xxx
-
六十四卦解密xxx
-
六十四卦用yyy加密xxx
-
六十四卦用yyy解密xxx
base天城文加解密
import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/baseamasiro"
-
天城文加密xxx
-
天城文解密xxx
-
天城文用yyy加密xxx
-
天城文用yyy解密xxx
bilibili
import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/bilibili"
-
>vup info [xxx]
-
>user info [xxx]
-
查成分 [xxx]
-
查弹幕 [xxx] 2 (最后一个参数是页码)
-
设置b站cookie b_ut=7;buvid3=0;i-wanna-go-back=-1;innersign=0; (最好把cookie设全)
获取Cookie可以使用这个工具
-
更新vup
b站动态、专栏、视频、直播解析
import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/bilibiliparse"
- t.bilibili.com/642277677329285174 | bilibili.com/read/cv17134450 | bilibili.com/video/BV13B4y1x7pS | live.bilibili.com/22603245
b站动态、直播推送,需要配合job一起使用
import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/bilibilipush"
-
添加b站订阅[uid|name]
-
取消b站订阅[uid|name]
-
取消b站动态订阅[uid|name]
-
取消b站直播订阅[uid|name]
-
b站推送列表
-
拉取b站推送 (使用job执行定时任务------记录在"@every 5m"触发的指令)
书评
import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/book_review"
-
书评[xxx]
-
随机书评
选择困难症帮手
import _ "github.com/FloatTech/ZeroBot-Plugin/plugin/choose"
- 选择[选择项1]还是[选项2]还是[更多选项]
抽象话
import _ "github.com/FloatTech/ZeroB





