import { FlaskConical } from "lucide-react"; import { Outlet, useParams } from "react-router"; import { agentMockEnabled } from "~/api/agent.ts"; import { agentRunHref, pageListMemory } from "~/components/agent/agent-nav.ts"; import { AgentSessionList } from "~/components/agent/agent-session-list.tsx"; import { PageHeader } from "~/components/console/page-header.tsx"; import { Button } from "~/components/ui/button.tsx"; import { cn } from "~/lib/utils.ts"; /** * 智能体会话页的外壳:列表页与会话页共用。标题、演示提示与左栏会话列表在这里,只挂载一次; * 右栏是子路由(新对话 / 某个会话),和抽屉里是同一个组件。切换会话、回到列表都不重挂载左栏, * 也不重播入场动画,标题与两栏的位置不跳。 */ export default function AgentLayout() { const { runId } = useParams(); const mock = agentMockEnabled(); return ( <> {mock ? (
演示模式:会话是本地假数据,不连接后端,不执行任何操作。
) : null}
{/* 窄屏:列表页把会话列表排在新对话下面;会话页不显示列表(顶部有「全部会话」返回) */}
); }