feat(plugins): add provider usage runtime hooks

This commit is contained in:
Peter Steinberger
2026-03-15 16:57:16 -07:00
parent f4cc93dc7d
commit e7555724af
10 changed files with 524 additions and 158 deletions

View File

@@ -5,10 +5,13 @@ export type {
ProviderCatalogContext,
ProviderCatalogResult,
ProviderCacheTtlEligibilityContext,
ProviderFetchUsageSnapshotContext,
ProviderPreparedRuntimeAuth,
ProviderResolvedUsageAuth,
ProviderPrepareExtraParamsContext,
ProviderPrepareDynamicModelContext,
ProviderPrepareRuntimeAuthContext,
ProviderResolveUsageAuthContext,
ProviderResolveDynamicModelContext,
ProviderNormalizeResolvedModelContext,
ProviderRuntimeModel,
@@ -22,6 +25,11 @@ export type { ChannelPlugin } from "../channels/plugins/types.plugin.js";
export type { PluginRuntime } from "../plugins/runtime/types.js";
export type { OpenClawConfig } from "../config/config.js";
export type { GatewayRequestHandlerOptions } from "../gateway/server-methods/types.js";
export type {
ProviderUsageSnapshot,
UsageProviderId,
UsageWindow,
} from "../infra/provider-usage.types.js";
export { emptyPluginConfigSchema } from "../plugins/config-schema.js";
export { buildOauthProviderAuthResult } from "./provider-auth-result.js";

View File

@@ -4,5 +4,12 @@
export { fetchWithSsrFGuard } from "../infra/net/fetch-guard.js";
export { isWSL2Sync } from "../infra/wsl.js";
export { emptyPluginConfigSchema } from "../plugins/config-schema.js";
export type { OpenClawPluginApi, ProviderAuthContext } from "../plugins/types.js";
export type {
OpenClawPluginApi,
ProviderAuthContext,
ProviderFetchUsageSnapshotContext,
ProviderResolveDynamicModelContext,
ProviderRuntimeModel,
} from "../plugins/types.js";
export type { ProviderUsageSnapshot } from "../infra/provider-usage.types.js";
export { buildOauthProviderAuthResult } from "./provider-auth-result.js";

View File

@@ -110,15 +110,23 @@ export type {
ProviderAuthContext,
ProviderAuthResult,
ProviderCacheTtlEligibilityContext,
ProviderFetchUsageSnapshotContext,
ProviderPreparedRuntimeAuth,
ProviderResolvedUsageAuth,
ProviderPrepareExtraParamsContext,
ProviderPrepareDynamicModelContext,
ProviderPrepareRuntimeAuthContext,
ProviderResolveUsageAuthContext,
ProviderResolveDynamicModelContext,
ProviderNormalizeResolvedModelContext,
ProviderRuntimeModel,
ProviderWrapStreamFnContext,
} from "../plugins/types.js";
export type {
ProviderUsageSnapshot,
UsageProviderId,
UsageWindow,
} from "../infra/provider-usage.types.js";
export type {
ConversationRef,
SessionBindingBindInput,