MCPcopy Index your code
hub / github.com/Mrs4s/go-cqhttp

github.com/Mrs4s/go-cqhttp @v1.2.0

repository ↗ · DeepWiki ↗ · release v1.2.0 ↗ · + Follow
666 symbols 2,254 edges 86 files 359 documented · 54%
README

go-cqhttp

go-cqhttp

✨ 基于 Mirai 以及 MiraiGoOneBot Golang 原生实现 ✨

license release cqhttp action GoReportCard

文档 · 下载 · 开始使用 · 参与贡献

重要信息

由于QQ官方针对协议库的围追堵截, 不断更新加密方案, 我们已无力继续维护此项目. 建议Bot开发者尽快迁移至无头NTQQ项目 -> https://chronocat.vercel.app/blog/0050 参考issue: https://github.com/Mrs4s/go-cqhttp/issues/2471

兼容性

go-cqhttp 兼容 OneBot-v11 绝大多数内容,并在其基础上做了一些扩展,详情请看 go-cqhttp 的文档。

接口

  • [x] HTTP API
  • [x] 反向 HTTP POST
  • [x] 正向 WebSocket
  • [x] 反向 WebSocket

拓展支持

拓展 API 可前往 文档 查看

  • [x] HTTP POST 多点上报
  • [x] 反向 WS 多点连接
  • [x] 修改群名
  • [x] 消息撤回事件
  • [x] 解析/发送 回复消息
  • [x] 解析/发送 合并转发
  • [x] 使用代理请求网络图片

实现

已实现 CQ 码

符合 OneBot 标准的 CQ 码

CQ 码 功能
[CQ:face] QQ 表情
[CQ:record] 语音
[CQ:video] 短视频
[CQ:at] @某人
[CQ:share] 链接分享
[CQ:music] 音乐分享
[CQ:reply] 回复
[CQ:forward] 合并转发
[CQ:node] 合并转发节点
[CQ:xml] XML 消息
[CQ:json] JSON 消息

拓展 CQ 码及与 OneBot 标准有略微差异的 CQ 码

拓展 CQ 码 功能
[CQ:image] 图片
[CQ:redbag] 红包
[CQ:poke] 戳一戳
[CQ:node] 合并转发消息节点
[CQ:cardimage] 一种 xml 的图片消息(装逼大图)
[CQ:tts] 文本转语音

已实现 API

符合 OneBot 标准的 API

API 功能
/send_private_msg 发送私聊消息
/send_group_msg 发送群消息
/send_msg 发送消息
/delete_msg 撤回信息
/set_group_kick 群组踢人
/set_group_ban 群组单人禁言
/set_group_whole_ban 群组全员禁言
/set_group_admin 群组设置管理员
/set_group_card 设置群名片(群备注)
/set_group_name 设置群名
/set_group_leave 退出群组
/set_group_special_title 设置群组专属头衔
/set_friend_add_request 处理加好友请求
/set_group_add_request 处理加群请求/邀请
/get_login_info 获取登录号信息
/get_stranger_info 获取陌生人信息
/get_friend_list 获取好友列表
/get_group_info 获取群信息
/get_group_list 获取群列表
/get_group_member_info 获取群成员信息
/get_group_member_list 获取群成员列表
/get_group_honor_info 获取群荣誉信息
/can_send_image 检查是否可以发送图片
/can_send_record 检查是否可以发送语音
/get_version_info 获取版本信息
/set_restart 重启 go-cqhttp
/.handle_quick_operation 对事件执行快速操作

拓展 API 及与 OneBot 标准有略微差异的 API

拓展 API 功能
/set_group_portrait 设置群头像
/get_image 获取图片信息
/get_msg 获取消息
/get_forward_msg 获取合并转发内容
/send_group_forward_msg 发送合并转发(群)
/.get_word_slices 获取中文分词
/.ocr_image 图片 OCR
/get_group_system_msg 获取群系统消息
/get_group_file_system_info 获取群文件系统信息
/get_group_root_files 获取群根目录文件列表
/get_group_files_by_folder 获取群子目录文件列表
/get_group_file_url 获取群文件资源链接
/get_status 获取状态

已实现 Event

符合 OneBot 标准的 Event(部分 Event 比 OneBot 标准多上报几个字段,不影响使用)

事件类型 Event
消息事件 [私聊信息]
消息事件 [群消息]
通知事件 [群文件上传]
通知事件 [群管理员变动]
通知事件 [群成员减少]
通知事件 [群成员增加]
通知事件 [群禁言]
通知事件 [好友添加]
通知事件 [群消息撤回]
通知事件 [好友消息撤回]
通知事件 [群内戳一戳]
通知事件 [群红包运气王]
通知事件 [群成员荣誉变更]

Extension points exported contracts — how you extend this code

Filter (Interface)
Filter 定义了一个消息上报过滤接口 [8 implementers]
modules/filter/filter.go
Getter (Interface)
go:generate go run ./../../cmd/api-generator -pkg api -path=./../../coolq/api.go,./../../coolq/api_v12.go -o api.go Gett [3 …
modules/api/caller.go
Database (Interface)
Database 数据库操作接口定义 [3 implementers]
db/database.go
Handler (FuncType)
Handler 中间件
modules/api/caller.go
StoredMessage (Interface)
(no doc) [2 implementers]
db/database.go

Core symbols most depended-on inside this repo

Get
called by 316
modules/api/caller.go
Failed
called by 139
coolq/api.go
String
called by 107
pkg/onebot/attr.go
OK
called by 92
coolq/api.go
Error
called by 70
cmd/gocq/main.go
WriteString
called by 67
cmd/api-generator/main.go
fU64
called by 48
coolq/converter.go
Bool
called by 29
pkg/onebot/value.go

Shape

Method 338
Function 230
Struct 85
TypeAlias 8
Interface 4
FuncType 1

Languages

Go100%

Modules by API surface

coolq/api.go89 symbols
coolq/event.go34 symbols
pkg/onebot/value.go33 symbols
db/database.go32 symbols
modules/filter/filter.go28 symbols
coolq/bot.go28 symbols
server/websocket.go20 symbols
db/leveldb/writer.go20 symbols
cmd/gocq/qsign.go20 symbols
internal/download/download.go17 symbols
coolq/cqcode.go17 symbols
db/leveldb/reader.go16 symbols

Dependencies from manifests, versioned

github.com/FloatTech/sqlitev1.6.3 · 1×
github.com/FloatTech/ttlv0.0.0-2022071504205 · 1×
github.com/Microsoft/go-winiov0.6.2-0.20230724192 · 1×
github.com/Mrs4s/MiraiGov0.0.0-2023082305053 · 1×
github.com/RomiChan/protobufv0.1.1-0.20230204044 · 1×
github.com/RomiChan/syncxv0.0.0-2022120205572 · 1×
github.com/RomiChan/websocketv1.4.3-0.20220227141 · 1×
github.com/fumiama/go-base16384v1.7.0 · 1×
github.com/fumiama/go-hide-paramv0.1.4 · 1×
github.com/fumiama/imgszv0.0.2 · 1×
github.com/golang/snappyv0.0.4 · 1×

For agents

$ claude mcp add go-cqhttp \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact