feat: implement usage tracking for AI requests

Adds local token usage tracking for all AI providers. Usage data is
captured during stream processing and stored in a local database.
Includes a new Usage tab in the Providers dashboard to visualize
historical token consumption.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
Catalin Stanciu
2026-01-09 17:23:28 +07:00
committed by decolua
co-authored by Claude Sonnet 4.5
parent 5645d0a0fb
commit 9c3d6f4ad8
12 changed files with 7460 additions and 81 deletions
+12
View File
@@ -0,0 +1,12 @@
import { NextResponse } from "next/server";
import { getUsageStats } from "@/lib/usageDb";
export async function GET() {
try {
const stats = await getUsageStats();
return NextResponse.json(stats);
} catch (error) {
console.error("Error fetching usage stats:", error);
return NextResponse.json({ error: "Failed to fetch usage stats" }, { status: 500 });
}
}