Goal
Extend the Costs page with detailed breakdowns, and add a cost badge to task board cards.
Background
Follows the summary page (#557). Users need to know which tasks are expensive and which agents drive cost.
Scope
Costs page additions (within /costs):
- Top 10 most expensive tasks table: task title, agent type, input tokens, output tokens, cost — link to task detail
- Cost by agent type breakdown: bar or pie chart comparing Claude Code vs Codex vs OpenCode vs ReAct
- Input vs output token split per period (stacked bar or summary row)
- Backend:
GET /api/v2/costs/tasks?days=30 and GET /api/v2/costs/by-agent?days=30
Task board (/tasks):
- Add a small cost badge to each task card (e.g.,
$0.12) if cost data exists for that task
- Tooltip on hover showing token breakdown
- Zero cost or no data = badge hidden (not shown as
$0.00)
Acceptance criteria
Goal
Extend the Costs page with detailed breakdowns, and add a cost badge to task board cards.
Background
Follows the summary page (#557). Users need to know which tasks are expensive and which agents drive cost.
Scope
Costs page additions (within
/costs):GET /api/v2/costs/tasks?days=30andGET /api/v2/costs/by-agent?days=30Task board (
/tasks):$0.12) if cost data exists for that task$0.00)Acceptance criteria
npm testandnpm run buildpass