Skip to main content

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=[]

与主插件配合

  1. 在主插件 .env 配置 AIGFM_PEER_BOTS(含本 bot 的 name/port/token)
  2. 两端 token 必须一致
  3. 主插件与 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.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for nonebot-plugin-aigfm-peer 0.2.0
File Size Uploaded
nonebot_plugin_aigfm_peer-0.2.0.tar.gz 8.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for nonebot-plugin-aigfm-peer 0.2.0
File Interpreter ABI Platform
nonebot_plugin_aigfm_peer-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 18.5 kB

Release files / nonebot_plugin_aigfm_peer-0.2.0.tar.gz

Download URL nonebot_plugin_aigfm_peer-0.2.0.tar.gz
Size 8.8 kB
Tags Source
SHA-256 checksum
How to use checksums
0a16ecdf0bb46927d9c43a96193a51346a494414f047ac23db19d748f67ba359
BLAKE2b-256 checksum
How to use checksums
da5a7706ad782a443e3c4b22333a027ad577391b906dd55e5cde5f36d71a1d6c
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.2.0-py3-none-any.whl

Download URL nonebot_plugin_aigfm_peer-0.2.0-py3-none-any.whl
Size 9.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7f36a0ad1a990d756e3c3b56775822c84e10894918903c0a411125e82816776e
BLAKE2b-256 checksum
How to use checksums
82be334bc4046a42584aa9381744887193f7f8106fcf5470807fd36415fc65ae
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.16

Release history Release notifications | RSS feed

0.3.1

2 release files

0.3.0

2 release files

This release

0.2.0 This release

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page