Skip to content

Releases: landamao/astrbot_plugin_onebot_toolkit

v2.1.0

Choose a tag to compare

@landamao landamao released this 17 Oct 08:05

v2.1.0

  • get_raw_message 新增参数 message_id:指定消息 ID 时返回该条消息的原始 JSON,不传则仍返回当前消息
  • get_group_msg_history 新增参数 show_time:开启后在每条消息前显示时间,格式 [月-日 时:分:秒],默认 false
  • get_user_recent_msgs 新增参数 show_time:同上,时间显示在每条发言前,默认 false
  • 时间格式化抽为公共方法 _format_ts,两处工具共用同一格式
  • 配置与行为完全向后兼容,无破坏性变更

安装

WebUI → 插件 → ldm插件 → ➕ → 从链接安装 → 安装即可;已安装用户在插件管理中更新

v2.0.0

Choose a tag to compare

@landamao landamao released this 07 Oct 15:17
  • 新增「平台设置」配置分组:
    • 「注入系统提示词」(默认开启):在 LLM 请求前向 system prompt 注入平台提示词,告知模型当前运行在 OneBot 平台、不支持渲染 Markdown 文本,请勿在正文输出 Markdown
    • 「系统提示词」:注入内容可自定义,留空使用内置默认;仅当「注入系统提示词」开启时生效并在 WebUI 中显示
  • 注入仅对 OneBot(aiocqhttp)平台的消息生效,其他平台不受影响;每次主聊天 LLM 请求前注入一次,不随工具调用轮次重复
  • 「/AI解答」与 ai_solve 走独立的 agent 调用,不经过该注入;其内置默认提示词已同步加入「平台不支持渲染 Markdown」提醒,两条路径行为一致
  • 配置完全向后兼容,无破坏性变更

v1.14.0

Choose a tag to compare

@landamao landamao released this 07 Oct 14:31

更新内容

  • 「/AI解答」与 ai_solve 自动获得与正常对话一致的内置工具,注入条件与主配置各开关联动:
    • 网页搜索:开启「网页搜索」后按所选提供商注入对应工具组(tavily/bocha/brave/firecrawl/baidu/exa)
    • 生图:开启「启用生图工具」且存在生图提供商时注入 ldmbot_generate_image 与模型列表工具
    • 识图:配置「默认图片转述模型」后注入 ldmbot_image_caption
    • 音视频转写:开启「语音转文本」并配置模型后注入 ldmbot_transcribe_media
    • send_message_to_user:平台支持主动消息时注入(生图结果的发图依赖此工具)
  • 修复「/AI解答」路径未排除 ai_solve 的问题,避免在解答循环内递归调用自身
  • 「AI解答排除工具」通配符现在对上述内置工具同样生效
  • 空回复不再显示为字面 "None"

完整变更: https://github.com/landamao/astrbot_plugin_onebot_toolkit/blob/main/CHANGELOG.md

v1.13.1

Choose a tag to compare

@landamao landamao released this 07 Oct 13:52

更新内容

  • 新增配置项「需要指令触发」:默认关闭,群内直接发送 AI解答 xxx 即可触发 AI解答(无需 / 指令);开启后仅 /AI解答 指令可触发
  • /AI解答 参数越界处理:数字小于 1 时使用默认条数并提示,大于 100 时取 100 并提示
  • 修复 /AI解答 发出「请稍候…」后无响应的问题:event.stop_event() 在请求前调用会触发核心 agent 的停止信号,LLM 请求被立即中止;现改为请求结束后(finally)再停止事件传播
  • 新增配置项「AI解答系统提示词」:自定义「/AI解答」与 ai_solve 的系统提示词,留空使用各场景内置默认

完整变更: https://github.com/landamao/astrbot_plugin_onebot_toolkit/blob/main/CHANGELOG.md

v1.13.0

Choose a tag to compare

@landamao landamao released this 07 Oct 12:39
  • 新增配置项「AI解答模型」:可为「/AI解答」与 ai_solve 指定专用对话模型(WebUI 下拉选择),留空使用全局默认对话模型
  • AI解答 不再读取全局回退模型列表:仅使用配置的模型,请求失败直接报错结束
  • 修复模型请求失败时错误文本被当作正常结果发送的问题(核心 tool_loop_agent 失败时返回 role="err" 响应而非抛异常)
  • get_group_msg_history 新增参数 show_raw_message:开启后直接输出原始 raw_message(含完整 CQ 码),不简化不截断,供 LLM 在必要时使用
  • 新增配置项「AI解答排除工具」:支持 * 通配符(如 file、shell*),从 AI解答 可用的工具集中排除匹配项
  • AI解答 配置项归入「AI解答设置」分组(配置键由平铺改为嵌套,已有配置需在 WebUI 重新设置一次)

v1.12.2

Choose a tag to compare

@landamao landamao released this 24 Jul 07:31

v1.12.2

  • 修复 get_group_msg_history 输出顺序倒置:改为按时间正序(旧→新)返回,与正常聊天记录一致,便于 LLM 理解上下文
  • get_user_recent_msgs 同步改为时间正序(旧→新)输出

说明:仍取最新 N 条消息,只是输出顺序从新→旧改为旧→新。

v1.12.1

Choose a tag to compare

@landamao landamao released this 21 Jul 06:49

修复 get_group_msg_history 早停取到旧消息

NapCat 返回通常是旧→新时,中途按 count 早停会拿到最旧消息而非最新消息。

变更

  • 无锚点/无时间过滤:直接按 count 拉取最新窗口,再按时间倒序截取
  • 有锚点/时间过滤:整页收集后再截取,避免半页早停
  • 同步修复 _fetch_group_messages 的同类早停问题

Full Changelog: v1.12.0...v1.12.1

v1.12.0

Choose a tag to compare

@landamao landamao released this 27 Jun 00:53

新增 LLM 工具 ai_solve

LLM 在聊天时可调用此工具独立解答用户问题:

  • 使用 tool_loop_agent 启动独立 agent 循环,可使用搜索等已注册工具
  • 不影响当前对话上下文
  • return_result 参数(默认 false):
    • false:工具自行发送解答结果(合并转发)并结束对话,降低上下文开销
    • true:返回解答结果文本,由 LLM 继续处理
  • 工具集排除自身避免递归调用
  • 主模型失败逐个回退

/AI解答 指令优化

  • 结果改用合并转发发送(send_group_forward_msg),失败回退普通消息
  • 合并转发回复触发指令的那条消息
  • 修复获取历史消息过旧问题(无锚点模式直接请求 count 条,不分页)

Full Changelog: v1.11.1...v1.12.0

v1.11.1

Choose a tag to compare

@landamao landamao released this 27 Jun 00:20

修复与优化

获取历史消息修复

  • 无锚点模式:直接请求 count 条最新消息,一次API调用,不分页。修复了之前分页翻到很早消息的问题
  • 有锚点模式:分页每批请求 count 条而非 100 条,避免多取

合并转发发送

  • AI解答结果改用 合并转发发送,失败自动回退普通消息
  • 合并转发第一个节点回复触发指令的那条消息(非锚点引用的消息)
  • 获取机器人QQ通过

其他改进

  • 聊天记录格式带 ,每行显示
  • prompt 中说明消息格式
  • 获取聊天记录打印 info 日志

Full Changelog: v1.11.0...v1.11.1

v1.11.0

Choose a tag to compare

@landamao landamao released this 26 Jun 23:47

新增功能

/AI解答 指令

引用群聊消息后调用 LLM 分析解答,两种用法:

  • 引用消息:以引用的消息为锚点,向前获取 n 条消息作为上下文,LLM 解答锚点消息所涉及的问题
  • 未引用:获取最近 n 条消息,LLM 识别对话中可能的问题并解答,无明确问题时总结讨论要点
  • 参数支持:数字→获取n条记录;文本→直接提问

tool_loop_agent

使用 tool_loop_agent 替代 llm_generate:

  • 可调用所有已注册LLM工具(网页搜索、群消息查询等)
  • 独立于主聊天上下文运行,不影响对话历史
  • LLM调用读取 cmd_config.json 主模型+回退模型列表,主模型失败逐个回退

新增配置项

配置项 类型 默认值 说明
AI解答消息条数 int 10 /AI解答指令获取的上下文消息条数,范围1-100

Full Changelog: v1.10.3...v1.11.0