斜杠指令配置未生效

hello,我通过教程配置了斜杠指令:

如图:

环境:
使用 docker 跑的 Koishi+NapCat,docker-compose 内容基本是NapCat官方的xKoishi模版:

2 个赞

QQ 开放平台配置:

1 个赞

比如:
当我使用"@bot ww帮助"时能收到回复,使用"@bot /ww帮助"时就不会有回复:

2 个赞

GsCore 后台 log 参考:


可以看到,第一个红框,当收到 “ww帮助” 时,bot 产生了回复;红框外的 收到 "/ww帮助"时,bot 没有回复。

2 个赞

你的意思是,不带斜杠就可以?

1 个赞

是的,不带斜杠的会触发回复

2 个赞

koishi是通过adapter-qq对接到官方机器人的吗


改完保存配置了吗

看一下这里的全局设置的 /前缀 前面有没有多空格

1 个赞

是的,按照文档配置了 adapter-qq,intents 勾选了 directmessages, usermessage, messageaudit, publicguildmessages,运行后 log:
2025-03-29 13:25:03 [I] adapter connect to server: wss://api.sgroup.qq.com/websocket

修改后保存了的,也重启过几次。空格应该是没有的,使用旁边的编辑 json 按钮获得数据:

[
  "/",
  null
]
2 个赞

我使用的 docker-compose.yml 完整如下:

services:
  gsuidcore:
    image: lilixxs666/gsuid-core:dev
    container_name: gsuidcore
    restart: unless-stopped
    # restart: on-failure:3
    environment:
      - TZ=Asia/Shanghai
      - GSCORE_HOST=0.0.0.0
    ports:
      - "8765:8765"
    volumes:
      - ./gscore_data:/gsuid_core/data
      - ./gscore_plugins:/gsuid_core/gsuid_core/plugins
    networks:
      - koishi_network
    extra_hosts:
      - "github.com:140.82.114.4"

  napcat:
    container_name: napcat
    image: mlikiowa/napcat-docker:latest
    restart: unless-stopped
    # restart: on-failure:3
    # restart: always
    environment:
      - NAPCAT_UID=0
      - NAPCAT_GID=0
      # - NAPCAT_UID=${NAPCAT_UID:-1000}
      # - NAPCAT_GID=${NAPCAT_GID:-1000}
      - MODE=koishi
      - WEBUI_TOKEN=xxx
      # - WEBUI_PREFIX=/ # 不清楚作用
      - ACCOUNT=xxx
    ports:
      - 6099:6099
    volumes:
      - ./napcat:/app/napcat
      - ./ntqq:/app/.config/QQ
      - ./koishi:/koishi
    # network_mode: host
    networks:
      - koishi_network
    mac_address: "02:42:ac:11:00:02"

  koishi:
    container_name: koishi
    image: koishijs/koishi:latest
    restart: unless-stopped
    # restart: on-failure:3
    # restart: always
    environment:
      - TZ=Asia/Shanghai
    ports:
      - 5140:5140
    volumes:
      - ./napcat:/app/napcat
      - ./ntqq:/app/.config/QQ
      - ./koishi:/koishi
    # network_mode: host
    networks:
      - koishi_network

networks:
  koishi_network:
    driver: bridge
2 个赞

在koishi的沙盒测试一下斜杠前缀的指令能否使用

比如

/help

如果这在沙盒是可以响应的,那么问题一般不在koishi侧

2 个赞

这简直是模范提问帖子

4 个赞

在 koishi 沙盒中,发送 “help”, “/help”, “ww帮助”, “zzz帮助” 时可以响应的,发送 “/ww帮助”, “/zzz帮助” 是无回复的。


分别发送 “ww帮助”, “/ww帮助”,NapCat log:

[INFO] 发送 -> 群聊 [黑海岸(xxx)] [LEO(xxx)] @黑海岸-测试中 (xxx)   ww帮助
[INFO] 接收 <- 群聊 [黑海岸(xxx)] [黑海岸-测试中(xxx)] [图片] @LEO (0)    
[INFO] 发送 -> 群聊 [黑海岸(xxx)] [LEO(xxx)] @黑海岸-测试中 (xxx)  /ww帮助 

GsCore log:

03-29 14:03:18 [INFO] gsuid_core.handler | [Raw] raw_text=ww帮助, image=None, at=None, image_list=None, at_list=[], is_tome=True, reply=None, file_name=, file_type=None, file=None | [Receive] bot_id=qq, bot_self_id=xx, msg_id=xx!, user_type=channel, group_id=xx, user_id=xx, user_pm=6, content=[Message(type='text', data=' ww帮助')],  
03-29 14:03:18 [INFO] gsuid_core.handler | [Trigger] 消息 「ww帮助」 触发 「fullmatch」 类型触发器, 关键词: 「帮助」  
03-29 14:03:18 [INFO] gsuid_core.handler | [Command] command=帮助, text=, regex_dict={} 
03-29 14:03:19 [INFO] gsuid_core.utils.image.convert | [GsCore] 处理图片中.... 
03-29 14:03:19 [WARNING] gsuid_core.utils.plugins_config.gs_config | [配置][GsCore发送图片] 配置项 qq 不存在也没有配置, 返回默认参数... 
03-29 14:03:19 [INFO] gsuid_core.bot | [发送消息to] qq - channel - xx 
03-29 14:03:24 [INFO] gsuid_core.handler | [Raw] raw_text=, image=None, at=None, image_list=None, at_list=[], is_tome=True, reply=None, file_name=, file_type=None, file=None | [Receive] bot_id=onebot, bot_self_id=xx, msg_id=xx, user_type=group, group_id=xx, user_id=xx, user_pm=6, content=[Message(type='img', data='https://multimedia.nt.qq.com.cn/download?appid=xx&fileid=xx-xx-xx&rkey=xx')],  
03-29 14:03:27 [INFO] gsuid_core.handler | [Raw] raw_text=/ww帮助, image=None, at=None, image_list=None, at_list=[], is_tome=True, reply=None, file_name=, file_type=None, file=None | [Receive] bot_id=qq, bot_self_id=xx, msg_id=xx!, user_type=channel, group_id=xx, user_id=xx, user_pm=6, content=[Message(type='text', data=' /ww帮助')],  

另外 “ww帮助” 是 GsCore 插件 WutheringWavesUID 提供的,尝试过在 GsCore 装了另一个插件 ZZZeroUID,表现也一致,加上 “/” 前缀就会收不到回复。

目前我能看到的 conf/log 就这些了,再麻烦问下这块可能是哪个模块的问题?napcat? gsuidcore?

2 个赞

hhh,因为我真的很想解决问题啊!

4 个赞

那就是插件问题

给作者提issue

2 个赞

OK,我去骚扰下 GsCore,感谢回复!

2 个赞

@shangxue @windbullet
去 GsCore 群里问出来啦,GsCore 也需要配置,步骤是:

GsCore 网页控制台 - Core配置 - command_start,输入 koishi 里同样的前缀,比如我的是:/
点击确认修改后,重启 GsCore

就可以了!

2 个赞

模范提问帖子!

2 个赞