feat: add provider usage tracking

This commit is contained in:
Peter Steinberger
2026-01-07 11:42:41 +01:00
parent 4e14123edd
commit 9bf6684366
18 changed files with 1333 additions and 51 deletions

View File

@@ -17,6 +17,7 @@ import type {
GatewayRequestHandlers,
GatewayRequestOptions,
} from "./server-methods/types.js";
import { usageHandlers } from "./server-methods/usage.js";
import { voicewakeHandlers } from "./server-methods/voicewake.js";
import { webHandlers } from "./server-methods/web.js";
import { wizardHandlers } from "./server-methods/wizard.js";
@@ -38,6 +39,7 @@ const handlers: GatewayRequestHandlers = {
...systemHandlers,
...nodeHandlers,
...sendHandlers,
...usageHandlers,
...agentHandlers,
};

View File

@@ -0,0 +1,10 @@
import { loadProviderUsageSummary } from "../../infra/provider-usage.js";
import type { GatewayRequestHandlers } from "./types.js";
export const usageHandlers: GatewayRequestHandlers = {
"usage.status": async ({ respond }) => {
const summary = await loadProviderUsageSummary();
respond(true, summary, undefined);
},
};

View File

@@ -205,6 +205,7 @@ const METHODS = [
"health",
"providers.status",
"status",
"usage.status",
"config.get",
"config.set",
"config.schema",