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-06 16:44:14 +02:00
committed by decolua
parent 5645d0a0fb
commit 9c3d6f4ad8
12 changed files with 7460 additions and 81 deletions

View File

@@ -1,5 +1,5 @@
// Re-export from open-sse (single source of truth)
export {
// Import directly from file to avoid pulling in server-side dependencies via index.js
export {
PROVIDER_MODELS,
getProviderModels,
getDefaultModel,
@@ -8,10 +8,10 @@ export {
getModelTargetFormat,
PROVIDER_ID_TO_ALIAS,
getModelsByProviderId
} from "open-sse";
} from "open-sse/config/providerModels.js";
import { AI_PROVIDERS } from "./providers.js";
import { PROVIDER_MODELS as MODELS } from "open-sse";
import { PROVIDER_MODELS as MODELS } from "open-sse/config/providerModels.js";
// Providers that accept any model (passthrough)
const PASSTHROUGH_PROVIDERS = new Set(