diff --git a/src/daemon/spawner.py b/src/daemon/spawner.py index a48882f..055f3c5 100644 --- a/src/daemon/spawner.py +++ b/src/daemon/spawner.py @@ -1158,6 +1158,13 @@ curl -X POST http://{api_host}:{api_port}/api/projects/{project_id}/tasks/{task_ """获取 session 信息""" return self._sessions.get(session_id) + def get_session_by_agent(self, agent_id: str) -> Optional[Dict[str, Any]]: + """v2.7.2: 根据 agent_id 获取活跃 session 信息(用于进程存活性检查)""" + for sid, info in self._sessions.items(): + if info.get("agent_id") == agent_id and info.get("status") == "running": + return info + return None + def cleanup_session(self, session_id: str) -> None: """清理 session""" if session_id in self._sessions: