import { severityColor } from '@renderer/utils/reportAssessments'; import { Users } from 'lucide-react'; import { ReportSection } from '../ReportSection'; import type { ReportSubagentMetrics } from '@renderer/types/sessionReport'; const fmtCost = (v: number) => `$${v.toFixed(4)}`; const fmtDuration = (ms: number) => { const s = Math.round(ms / 1000); const m = Math.floor(s / 60); const sec = s % 60; return m > 0 ? `${m}m ${sec}s` : `${sec}s`; }; interface SubagentSectionProps { data: ReportSubagentMetrics; defaultCollapsed?: boolean; } export const SubagentSection = ({ data, defaultCollapsed }: SubagentSectionProps) => { return (
Count
{data.count}
Total Tokens
{data.totalTokens.toLocaleString()}
Total Duration
{fmtDuration(data.totalDurationMs)}
Total Cost
{fmtCost(data.totalCostUsd)}
{data.byAgent.length > 0 && (
{data.byAgent.map((agent, idx) => ( ))}
Description Type Tokens Duration Cost
{agent.description}
{agent.modelMismatch && (
{agent.modelMismatch.recommendation}
)}
{agent.subagentType} {agent.totalTokens.toLocaleString()} {fmtDuration(agent.totalDurationMs)} {fmtCost(agent.costUsd)}
)}
); };