From ff63134c147dde33f378cea74d172e8eee574dab Mon Sep 17 00:00:00 2001 From: JOJO <41473909@qq.com> Date: Sat, 5 Jul 2025 12:30:50 +0800 Subject: [PATCH 1/3] =?UTF-8?q?fix:=20=E5=A2=9E=E5=8A=A0=E6=BC=94=E7=A4=BA?= =?UTF-8?q?=E6=A8=A1=E5=BC=8F=E4=B8=8B=E6=A0=A1=E9=AA=8C=E6=8F=92=E4=BB=B6?= =?UTF-8?q?=E5=BC=80=E5=90=AF/=E5=85=B3=E9=97=AD/=E5=AE=89=E8=A3=85?= =?UTF-8?q?=E6=8C=87=E4=BB=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/astrbot/main.py | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/packages/astrbot/main.py b/packages/astrbot/main.py index 0a3f8ba6c..d2a78d609 100644 --- a/packages/astrbot/main.py +++ b/packages/astrbot/main.py @@ -10,6 +10,7 @@ import astrbot.api.event.filter as filter from astrbot.api.event import AstrMessageEvent, MessageEventResult from astrbot.api import sp from astrbot.api.provider import ProviderRequest +from astrbot.core import DEMO_MODE from astrbot.core.platform.astr_message_event import MessageSesion from astrbot.core.platform.message_type import MessageType from astrbot.core.provider.entities import ProviderType @@ -59,7 +60,7 @@ class RstScene(Enum): name="astrbot", desc="AstrBot 基础指令结合 + 拓展功能", author="Soulter", - version="4.0.0", + version="4.0.1", ) class Main(star.Star): def __init__(self, context: star.Context) -> None: @@ -233,6 +234,11 @@ class Main(star.Star): @plugin.command("off") async def plugin_off(self, event: AstrMessageEvent, plugin_name: str = None): """禁用插件""" + if DEMO_MODE: + event.set_result( + MessageEventResult().message("演示模式下无法禁用插件。") + ) + return if not plugin_name: event.set_result( MessageEventResult().message("/plugin off <插件名> 禁用插件。") @@ -245,6 +251,11 @@ class Main(star.Star): @plugin.command("on") async def plugin_on(self, event: AstrMessageEvent, plugin_name: str = None): """启用插件""" + if DEMO_MODE: + event.set_result( + MessageEventResult().message("演示模式下无法启用插件。") + ) + return if not plugin_name: event.set_result( MessageEventResult().message("/plugin on <插件名> 启用插件。") @@ -257,6 +268,11 @@ class Main(star.Star): @plugin.command("get") async def plugin_get(self, event: AstrMessageEvent, plugin_repo: str = None): """安装插件""" + if DEMO_MODE: + event.set_result( + MessageEventResult().message("演示模式下无法安装插件。") + ) + return if not plugin_repo: event.set_result( MessageEventResult().message("/plugin get <插件仓库地址> 安装插件") From 20f49890ad6d7a615db2acda8e6adb95ebb6f07f Mon Sep 17 00:00:00 2001 From: Soulter <905617992@qq.com> Date: Fri, 4 Jul 2025 16:59:49 +0800 Subject: [PATCH 2/3] fix: provider selection for updating webchat title --- astrbot/core/pipeline/process_stage/method/llm_request.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/astrbot/core/pipeline/process_stage/method/llm_request.py b/astrbot/core/pipeline/process_stage/method/llm_request.py index 5923e8246..4027dcd7e 100644 --- a/astrbot/core/pipeline/process_stage/method/llm_request.py +++ b/astrbot/core/pipeline/process_stage/method/llm_request.py @@ -254,11 +254,11 @@ class LLMRequestSubStage(Stage): # 异步处理 WebChat 特殊情况 if event.get_platform_name() == "webchat": - asyncio.create_task(self._handle_webchat(event, req)) + asyncio.create_task(self._handle_webchat(event, req, provider)) await self._save_to_history(event, req, tool_loop_agent.get_final_llm_resp()) - async def _handle_webchat(self, event: AstrMessageEvent, req: ProviderRequest): + async def _handle_webchat(self, event: AstrMessageEvent, req: ProviderRequest, prov: Provider): """处理 WebChat 平台的特殊情况,包括第一次 LLM 对话时总结对话内容生成 title""" conversation = await self.conv_manager.get_conversation( event.unified_msg_origin, req.conversation.cid @@ -268,10 +268,9 @@ class LLMRequestSubStage(Stage): latest_pair = messages[-2:] if not latest_pair: return - provider = self.ctx.plugin_manager.context.get_using_provider() cleaned_text = "User: " + latest_pair[0].get("content", "").strip() logger.debug(f"WebChat 对话标题生成请求,清理后的文本: {cleaned_text}") - llm_resp = await provider.text_chat( + llm_resp = await prov.text_chat( system_prompt="You are expert in summarizing user's query.", prompt=( f"Please summarize the following query of user:\n" From 67ef993d617162a0c660bebf87858b033494ad4e Mon Sep 17 00:00:00 2001 From: Soulter <905617992@qq.com> Date: Sun, 6 Jul 2025 17:21:57 +0800 Subject: [PATCH 3/3] fix: webchat message bubble style --- dashboard/src/views/ChatPage.vue | 1 - 1 file changed, 1 deletion(-) diff --git a/dashboard/src/views/ChatPage.vue b/dashboard/src/views/ChatPage.vue index 1aa8bb9e0..fedb86b3e 100644 --- a/dashboard/src/views/ChatPage.vue +++ b/dashboard/src/views/ChatPage.vue @@ -1473,7 +1473,6 @@ export default { .message-bubble { padding: 8px 16px; border-radius: 12px; - max-width: 80%; } .user-bubble {