multica/src/agent/providers/index.ts
Jiang Bohan 6723aa8561 refactor(providers): extract provider management to dedicated module
- 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
2026-02-02 17:20:02 +08:00

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";