Skip to content

CookSleep/chatluna-forward-msg

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ChatLuna Forward Msg

npm License

为 Koishi ChatLuna 提供 OneBot 合并转发消息的 读取发送伪造发送图片描述 工具,便于在聊天场景中自动处理复杂消息内容。当前支持 NapCatLLBot(二选一)。

✨ 功能特性

1. 📥 读取合并转发消息

  • 支持读取 OneBot 合并转发消息并解析节点内容。
  • 支持嵌套解析(可配置最大解析层数)。
  • 支持在读取过程中对图片进行自动描述,输出更适合模型阅读的 JSON。
  • 内置数据库缓存服务,默认按 message_id 缓存解析结果 1 天,减少重复请求。

2. 📤 发送合并转发消息

  • 支持以 Bot 身份发送合并转发消息。
  • 支持文本与图片 URL 混合输入。
  • 图片会自动下载并转为可发送格式(Base64)。

3. 🎭 伪造身份发送(娱乐用途)

  • 支持指定用户 ID、昵称构造转发节点。
  • 支持文本与图片 URL 混合输入。
  • 伪造工具仅供娱乐,请勿用于欺骗、冒充、骚扰或其他违法违规用途。

4. 🖼️ 图片描述工具

  • 支持按图片 URL 直接生成描述。
  • 可附加描述要求(requirement)。
  • 可配置并发与请求超时参数。

⚙️ 主要配置

  • protocolService:协议选择配置。enableNapcatenableLLBot 必须且只能开启一个,否则会在启动/读取时报错。
  • readTool:读取转发消息工具配置。
  • sendTool:Bot 身份发送工具配置。
  • fakeTool:伪造身份发送工具配置。
  • describeImageTool:图片描述工具配置。
  • imageService:图片模型、提示词、并发与超时配置。
  • cacheService:读取结果缓存配置(默认开启,默认 TTL 1 天)。storagePath 仅用于清理旧版本地缓存目录。

✅ 使用前置条件

为了让本插件正常读取和发送合并转发消息,请确保你已开启以下选项:

  • chatluna 插件的“对话行为选项”中启用:attachForwardMsgIdToContext
  • chatluna-character 插件的“对话设置”中启用:enableMessageId

🛡️ 使用声明

  • 本项目中的伪造身份发送能力仅用于开发测试与娱乐场景。
  • 使用者需自行确保符合当地法律法规与平台规则。
  • 因不当使用产生的任何后果由使用者自行承担。

🤝 贡献

欢迎提交 Issue 或 Pull Request 来改进代码。

About

为 ChatLuna 提供 OneBot 合并转发消息读取、发送、伪造发送与图片描述工具,支持 NapCat/LLBot。

Topics

Resources

License

Stars

Watchers

Forks

Contributors