Custom Provider
Load a provider adapter from a custom module file.
Configuration
{
"providers": {
"my-provider": {
"type": "custom",
"model": "my-model",
"module": "./providers/my-adapter.js"
}
}
}Module Interface
Your custom module must export a default factory function that returns a ProviderAdapter:
interface ProviderAdapter {
id: string
type: "custom"
model: string
capabilities: Set<ProviderCapability>
generateText(request: GenerationRequest): Promise<GenerationResponse>
generateStructured<T>(request: GenerationRequest, schema: ZodType<T>): Promise<T>
}The module path is resolved relative to the workspace root.