Skip to content

Function: createAdapterConfigFactory()

Makaio Framework


Makaio Framework / ai-adapters-core/config / createAdapterConfigFactory

createAdapterConfigFactory<TConfig, TProviderConfig>(optionsThunk): AdapterConfigFactory<TConfig, TProviderConfig>

Defined in: ../../../adapters/core/src/config/factory.ts:119

Create a standardized adapter config factory.

Eliminates ceremony by encapsulating the common pattern:

  1. Read unresolved providerContext (credential refs only — no plaintext on the bus)
  2. resolveTimeouts with adapter + runtime layers
  3. Merge providerConfigDefaults with runtime providerConfig (credentials resolved by connector)

The factory is pure: it does not dispatch any bus requests and does not resolve credentials. Connectors call resolveConnectorCredentials() locally.

Options are provided via thunk to enable lazy evaluation, avoiding circular dependency issues when config.ts imports from index.ts (for adapterDefinition) and adapter.ts (for adapterName).

TConfig extends BaseAgentConnectorConfig<ScopedBus<string>, object>

TProviderConfig = TConfig["providerConfig"]

() => CreateAdapterConfigFactoryOptions<TConfig>

Thunk returning factory configuration options

AdapterConfigFactory<TConfig, TProviderConfig>

Factory with getConfig method

export const GeminiSdkConfig = createAdapterConfigFactory<GeminiConnectorConfig>(() => ({
adapterName: GeminiSdkAdapterName,
adapterDefaults: { model: 'gemini-2.5-pro' },
schema: null,
adapterDefinition: { defaultTimeouts: DEFAULT_TIMEOUTS },
protocol: 'openai',
}));