* Build provider metadata from PROVIDER_DEFINITIONS. * This is client-safe as it doesn't import any provider implementations.
(providerId: ProviderId)
| 116 | * This is client-safe as it doesn't import any provider implementations. |
| 117 | */ |
| 118 | function buildProviderMetadata(providerId: ProviderId): ProviderMetadata { |
| 119 | const def = PROVIDER_DEFINITIONS[providerId] |
| 120 | return { |
| 121 | id: providerId, |
| 122 | name: def?.name || providerId, |
| 123 | description: def?.description || '', |
| 124 | version: '1.0.0', |
| 125 | models: getProviderModelsFromDefinitions(providerId), |
| 126 | defaultModel: getProviderDefaultModelFromDefinitions(providerId), |
| 127 | modelPatterns: def?.modelPatterns, |
| 128 | } |
| 129 | } |
| 130 | |
| 131 | export const providers: Record<ProviderId, ProviderMetadata> = { |
| 132 | ollama: buildProviderMetadata('ollama'), |