diff --git a/pipeline_service/gateway.py b/pipeline_service/gateway.py index b65e561..7735318 100644 --- a/pipeline_service/gateway.py +++ b/pipeline_service/gateway.py @@ -98,7 +98,7 @@ class Gateway: # ── 统一消息入口 ── async def run_message(self, channel: str, user_id: str, content: str, - history=None, role: str = "") -> AsyncGenerator[str, None]: + history=None, role: str = "", generic: bool = False) -> AsyncGenerator[str, None]: """统一消息入口:解析上下文 → 加载产线能力 → AgentExecutor 执行 → yield 事件流。 Args: @@ -107,12 +107,16 @@ class Gateway: content: 用户消息内容 history: 可选历史消息 role: 可选产线内角色(驾驶舱 agent 为空) + generic: True = 纯通用会话(不解析项目、不加载产线能力,只用 GENERAL_TOOLS + 通用心智) """ from pipeline_core.agent_config import load_agent_config from .agent_loop_v2 import AgentExecutor - # 1. 解析项目上下文 - ctx = await self.resolve_project(user_id) + # 1. 解析项目上下文(纯通用模式跳过,不挂任何产线插件) + if generic: + ctx = {"pid": "", "pipeline_id": "", "name": ""} + else: + ctx = await self.resolve_project(user_id) # 2. 会话生命周期(跟踪 project 切换) key = self._session_key(channel, user_id)