import type { Session, TaskId } from "../../protocol/model"; import { CapabilityPanel } from "./CapabilityPanel"; import { RecentEvents } from "./RecentEvents"; import { RunningTasks } from "./RunningTasks"; import { SessionIdentity } from "./SessionIdentity"; import { SessionNotes } from "./SessionNotes"; import { TagEditor } from "./TagEditor"; import type { SessionOverviewData } from "./types"; export function SessionOverview({ session, data, onTagsChange, onCancelTask }: { session: Session; data: SessionOverviewData; onTagsChange?: (tags: readonly string[]) => void; onCancelTask?: (taskId: TaskId) => void }) { const running = data.tasks.filter((task) => task.state === "PENDING" || task.state === "RUNNING"); return

SESSION OVERVIEW

{session.name}

{session.state}

Artifact

{data.artifacts.length === 0 ?

暂无 Artifact

:
    {data.artifacts.map((artifact) =>
  • {artifact.name}{artifact.media_type} · {artifact.size_bytes} bytes
  • )}
}
onTagsChange?.(tags)} />
; }