nonebot-plugin-aigfm-peer
跨 bot 通信代理插件,安装到其它 bot 上,配合主插件 nonebot-plugin-aigf-master 使用。
📖 介绍
- 捕获输出并推送:拦截本 bot 所有插件的输出(文本/图片),通过 HTTP 推送给主 bot(aigf-master),进入其 LLM 上下文(标注
[bot名]) - 远程插件调用:提供
/peer/invoke端点,接收主 bot 的远程命令调用,用 synthetic event 执行本 bot 的本地插件 - 命令推送:启动时扫描本 bot 已注册的
on_command命令,随推送告知主 bot,让 LLM 了解可调用命令(受白名单控制)
💿 安装
pip install nonebot-plugin-aigfm-peer
在 pyproject.toml 中添加:
[tool.nonebot]
plugins = ["nonebot-plugin-aigfm-peer"]
配置
在 .env 中添加:
# 主插件(Bot A)的 HTTP 端口
AIGFM_PEER_PUSH_PORT=14514
# 共享 token(与主插件 AIGFM_PEER_BOTS 中对应项一致)
AIGFM_PEER_TOKEN="shared_secret"
# 本 bot 名称(与主插件 AIGFM_PEER_BOTS 的 name 对应)
AIGFM_PEER_BOT_NAME="botB"
# 插件白名单:捕获输出 + 命令上报 + 调用核对 共用
# 非空=只捕获/上报这些插件的命令且只允许执行它们;空=捕获所有插件输出但不上报命令、调用不核对
AIGFM_PEER_CAPTURE_PLUGINS=[]
与主插件配合
- 在主插件
.env配置AIGFM_PEER_BOTS(含本 bot 的 name/port/token) - 两端 token 必须一致
- 主插件与 peer 插件的前缀(
COMMAND_START)各自独立配置,远程调用时按各 bot 的前缀自动适配
可捕获的消息类型
peer 会拦截本 bot 插件的 send_msg / send_group_msg / send_private_msg,捕获以下消息类型并推送给主 bot:
| 类型 | 推送方式 |
|---|---|
| 文本 | text 字段 |
图片(url 字段,或 file 字段为 http:// / https://) |
以 url 形式推送(image_url) |
图片(base64:// 前缀或 base64 字段) |
直接 base64 推送(image_base64) |
图片(file:// 本地路径,如 MessageSegment.image(Path(...))) |
本地读取文件转 base64 后推送(image_base64) |
受
AIGFM_PEER_CAPTURE_PLUGINS白名单过滤;主 bot 侧再按AIGFM_CAPTURE_IMAGES决定是否对图片做 VLM 描述。
License
MIT
Release files for nonebot-plugin-aigfm-peer 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| nonebot_plugin_aigfm_peer-0.3.0.tar.gz | 9.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| nonebot_plugin_aigfm_peer-0.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 19.2 kB
Release files / nonebot_plugin_aigfm_peer-0.3.0.tar.gz
| Download URL | nonebot_plugin_aigfm_peer-0.3.0.tar.gz |
|---|---|
| Size | 9.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c414b671ccb4815a4829b478cde8752a6c0a71dea3a6f90e9e9bd520b18688e1
|
|
BLAKE2b-256 checksum How to use checksums |
40ab498f58f48bab323cc45a8fd8017c80b7b763c0acffb606bdcce03e9592da
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.16
|
Release files / nonebot_plugin_aigfm_peer-0.3.0-py3-none-any.whl
| Download URL | nonebot_plugin_aigfm_peer-0.3.0-py3-none-any.whl |
|---|---|
| Size | 10.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
306caaa7f24f2a1c330f3076995283b0c1f56777690c2fcb818484a6d25784b6
|
|
BLAKE2b-256 checksum How to use checksums |
4c0b41191e1e34e97ddc6e524bae2fdefb994df552a95d965a2954124380fd44
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.16
|