import { FlaskConical } from "lucide-react"; import { useNavigate } from "react-router"; import { toast } from "sonner"; import { agentMockEnabled, useCreateAgentRun } from "~/api/agent.ts"; import { agentRunHref, DRAFT_PAGE_GOAL, pageListMemory, usePageListGroup, writeDraft, } from "~/components/agent/agent-nav.ts"; import { GoalComposer } from "~/components/agent/agent-run-panel.tsx"; import { AgentSessionList } from "~/components/agent/agent-session-list.tsx"; import { quickGoalsFor } from "~/components/agent/quick-goals.ts"; import { PageHeader } from "~/components/console/page-header.tsx"; import { Button } from "~/components/ui/button.tsx"; import { errorMessage } from "~/lib/api.ts"; // 智能体入口页(AGUI-3):左栏会话列表(等你处理置顶),右边新对话输入框 + 3 个快捷目标。 export default function AgentPage() { const create = useCreateAgentRun(); const navigate = useNavigate(); const mock = agentMockEnabled(); const [group, setGroup] = usePageListGroup(); return ( <> {mock ? (
演示模式:会话是本地假数据,不连接后端,不执行任何操作。
) : null}
agentRunHref(id, mock)} group={group} onGroupChange={setGroup} memory={pageListMemory} className="h-full" />
create.mutate( { goal, ...opts }, { onSuccess: (run) => { writeDraft(DRAFT_PAGE_GOAL, ""); navigate(agentRunHref(run.id, mock)); }, onError: (e) => toast.error(errorMessage(e)), }, ) } />
); }