通过 scripts/onebot-action.js 调用 napcat 的 OneBot 11 API 执行群管理操作。
text
~/.openclaw/workspace/skills/onebot-group-admin/scripts/onebot-action.js
bash
node <脚本路径> <action> [key=value ...]
参数中的数字会自动转为整数,字符串不需要引号。含空格的值用双引号包裹。
bash
node onebot-action.js set_group_name group_id=<群号> group_name="新群名"
bash
node onebot-action.js _send_group_notice group_id=<群号> content="公告内容"
⚠️ 注意是 _send_group_notice(带下划线前缀),这是 napcat 扩展 API,标准 send_group_notice 不可用。
bash
node onebot-action.js set_group_ban group_id=<群号> user_id=<QQ号> duration=600
duration=0 解除禁言duration=3600 禁言1小时duration=86400 禁言1天duration=2592000 禁言30天bash
# 开启全员禁言
node onebot-action.js set_group_whole_ban group_id=<群号> enable=1
# 关闭全员禁言
node onebot-action.js set_group_whole_ban group_id=<群号> enable=0
bash
node onebot-action.js set_group_kick group_id=<群号> user_id=<QQ号> reject_add_request=0
reject_add_request=1 拒绝再次加群bash
# 设置管理员
node onebot-action.js set_group_admin group_id=<群号> user_id=<QQ号> enable=1
# 取消管理员
node onebot-action.js set_group_admin group_id=<群号> user_id=<QQ号> enable=0
bash
node onebot-action.js set_group_card group_id=<群号> user_id=<QQ号> card="新名片"
bash
node onebot-action.js set_group_special_title group_id=<群号> user_id=<QQ号> title="头衔" duration=-1
bash
node onebot-action.js set_group_portrait group_id=<群号> file="<图片路径>"
⚠️ API 名称是 set_group_portrait(go-cqhttp 扩展 API),不是 OneBot 11 标准的 set_group_avatar。Bot 需要管理员权限。
file 支持本地路径(如 /tmp/openclaw-onebot/xxx.png)、 file:// 协议、 base64:// 协议、HTTP URLbash
node onebot-action.js delete_msg message_id=<消息ID>
bash
node onebot-action.js get_group_info group_id=<群号>
bash
node onebot-action.js get_group_member_list group_id=<群号>
bash
node onebot-action.js get_group_member_info group_id=<群号> user_id=<QQ号>
ws://127.0.0.1:13001,可通过环境变量 ONEBOT_WS_URL 和 ONEBOT_WS_TOKEN 覆盖