- Create src/agent/providers/ with registry.ts and resolver.ts - registry.ts: Provider metadata, status checking, login instructions - resolver.ts: API key resolution, model resolution - oauth/providers.ts now re-exports from providers/ (deprecated) - tools.ts: Remove PROVIDER_ALIAS and DEFAULT_MODELS (moved to providers/) - Update imports in runner.ts and chat.ts This separates concerns: - oauth/ only handles OAuth credential reading - providers/ manages all provider metadata and resolution
34 lines
691 B
TypeScript
34 lines
691 B
TypeScript
/**
|
|
* Provider Management
|
|
*
|
|
* Unified exports for LLM provider management:
|
|
* - Registry: Provider metadata, status checking, listing
|
|
* - Resolver: API key resolution, model resolution
|
|
*/
|
|
|
|
// Registry exports
|
|
export {
|
|
type AuthMethod,
|
|
type ProviderInfo,
|
|
type ProviderMeta,
|
|
PROVIDER_ALIAS,
|
|
isOAuthProvider,
|
|
isProviderAvailable,
|
|
getCurrentProvider,
|
|
getProviderMeta,
|
|
getDefaultModel,
|
|
getProviderList,
|
|
getAvailableProviders,
|
|
formatProviderStatus,
|
|
getLoginInstructions,
|
|
} from "./registry.js";
|
|
|
|
// Resolver exports
|
|
export {
|
|
type ProviderConfig,
|
|
resolveProviderConfig,
|
|
resolveApiKey,
|
|
resolveBaseUrl,
|
|
resolveModelId,
|
|
resolveModel,
|
|
} from "./resolver.js";
|