adapterSubsystem
adapterSubsystem
Section titled “adapterSubsystem”| Field | Value |
|---|---|
| Prefix | adapterSubsystem |
| Namespace constant | AdapterSubsystemNamespace |
| Subjects constant | AdapterSubsystemSubjects |
| Kind | bus |
| Schema record | AdapterSubsystemSchemas |
| Tier | framework |
| Package | @makaio/services-core |
| Defined in | packages/services/core/src/adapter-subsystem/namespace.ts |
Subjects
Section titled “Subjects”Subject Details
Section titled “Subject Details”adapterSubsystem.adapter.registered (event)
Section titled “adapterSubsystem.adapter.registered (event)”Emitted once per adapter after the adapter-subsystem service processes a newly-active adapter package.
Replaces the retired batch adaptersRegistered event. The model registry
and other subscribers react per-adapter and debounce refreshes as needed.
Fire-and-forget; no replay guarantee.
Subject: adapterSubsystem.adapter.registered
Type: Event
| Field | Type | Required |
|---|---|---|
adapterName | string | yes |
displayName | string | yes |
enabled | boolean | yes |
initialized | boolean | yes |
packageName | string | yes |
providerDefinitionIds | string[] | yes |
adapterSubsystem.bind (rpc)
Section titled “adapterSubsystem.bind (rpc)”Bind a provider config to an adapter.
Subject: adapterSubsystem.bind
Type: Request (RPC)
Request:
| Field | Type | Required |
|---|---|---|
adapterName | string | yes |
providerConfigId | string | yes |
Response:
| Field | Type | Required |
|---|---|---|
binding | { adapterName: string; providerConfigId: string; isDefault: boolean; } | yes |
adapterSubsystem.binding.created (event)
Section titled “adapterSubsystem.binding.created (event)”Binding lifecycle events.
Subject: adapterSubsystem.binding.created
Type: Event
| Field | Type | Required |
|---|---|---|
adapterName | string | yes |
isDefault | boolean | yes |
providerConfigId | string | yes |
adapterSubsystem.binding.defaultChanged (event)
Section titled “adapterSubsystem.binding.defaultChanged (event)”Subject: adapterSubsystem.binding.defaultChanged
Type: Event
| Field | Type | Required |
|---|---|---|
adapterName | string | yes |
providerConfigId | string | yes |
adapterSubsystem.binding.deleted (event)
Section titled “adapterSubsystem.binding.deleted (event)”Subject: adapterSubsystem.binding.deleted
Type: Event
| Field | Type | Required |
|---|---|---|
adapterName | string | yes |
providerConfigId | string | yes |
adapterSubsystem.buildProviderContext (rpc)
Section titled “adapterSubsystem.buildProviderContext (rpc)”Build a provider context from a provider config.
Subject: adapterSubsystem.buildProviderContext
Type: Request (RPC)
Request:
| Field | Type | Required |
|---|---|---|
providerConfigId | string | yes |
Response:
| Field | Type | Required |
|---|---|---|
context | { providerConfigId: string; definitionId: string; credentialRefs: Record<string, string & $brand<"CredentialRef">>; endpointOverrides?: { anthropic?: string | undefined; openai?: string | undefined; } | undefined; credentialEnvVars?: Record<string, string> | undefined; ambientCredentialEnvVars?: string[] | undefined; } | null | yes |
adapterSubsystem.createProviderConfig (rpc)
Section titled “adapterSubsystem.createProviderConfig (rpc)”Create a provider config.
Subject: adapterSubsystem.createProviderConfig
Type: Request (RPC)
Request:
| Field | Type | Required |
|---|---|---|
credentialRefs | Record<string, string & $brand<"CredentialRef">> | undefined | no |
definitionId | string | yes |
endpointOverrides | { anthropic?: string | undefined; openai?: string | undefined; } | undefined | no |
isSentinel | boolean | undefined | no |
modelFilterMode | "allowlist" | "show-all" | undefined | no |
modelVisibility | Record<string, "enabled" | "disabled" | "visible"> | undefined | no |
name | string | undefined | no |
Response:
| Field | Type | Required |
|---|---|---|
config | { id: string; definitionId: string; name: string; modelFilterMode: "allowlist" | "show-all"; isDefault: boolean; enabled: boolean; isSentinel: boolean; hasCredentials: boolean; endpointOverrides?: Record<string, string> | undefined; modelVisibility?: Record<string, "enabled" | "disabled" | "visible"> | undefined; sourceRef?: string | undefined; } | yes |
adapterSubsystem.deleteProviderConfig (rpc)
Section titled “adapterSubsystem.deleteProviderConfig (rpc)”Delete a provider config.
Subject: adapterSubsystem.deleteProviderConfig
Type: Request (RPC)
Request:
| Field | Type | Required |
|---|---|---|
id | string | yes |
Response:
| Field | Type | Required |
|---|---|---|
deleted | boolean | yes |
adapterSubsystem.ensureReady (rpc)
Section titled “adapterSubsystem.ensureReady (rpc)”Ensure the subsystem is ready for grain-constrained consumers.
Subject: adapterSubsystem.ensureReady
Type: Request (RPC)
Request:
Empty object.
Response:
| Field | Type | Required |
|---|---|---|
ready | true | yes |
adapterSubsystem.findConfigForDefinitionAndAdapter (rpc)
Section titled “adapterSubsystem.findConfigForDefinitionAndAdapter (rpc)”Find the provider config bound to a specific adapter for a definition.
Subject: adapterSubsystem.findConfigForDefinitionAndAdapter
Type: Request (RPC)
Request:
| Field | Type | Required |
|---|---|---|
adapterName | string | yes |
definitionId | string | yes |
Response:
| Field | Type | Required |
|---|---|---|
config | { id: string; definitionId: string; name: string; modelFilterMode: "allowlist" | "show-all"; isDefault: boolean; enabled: boolean; isSentinel: boolean; hasCredentials: boolean; endpointOverrides?: Record<string, string> | undefined; modelVisibility?: Record<string, "enabled" | "disabled" | "visible"> | undefined; sourceRef?: string | undefined; } | null | yes |
adapterSubsystem.getAdapterConfig (rpc)
Section titled “adapterSubsystem.getAdapterConfig (rpc)”Get one adapter config by adapter name.
Subject: adapterSubsystem.getAdapterConfig
Type: Request (RPC)
Request:
| Field | Type | Required |
|---|---|---|
name | string | yes |
Response:
| Field | Type | Required |
|---|---|---|
config | { name: string; enabled: boolean; bindings: { adapterName: string; providerConfigId: string; isDefault: boolean; }[]; description?: string | undefined; clientId?: string | undefined; displayName?: string | undefined; protocol?: string | undefined; helpLinks?: { label: string; url: string; }[] | undefined; instructions?: string | undefined; providerDefinitionIds?: string[] | undefined; settings?: Record<string, unknown> | undefined; } | null | yes |
adapterSubsystem.getDefaultBinding (rpc)
Section titled “adapterSubsystem.getDefaultBinding (rpc)”Get the default binding for an adapter.
Subject: adapterSubsystem.getDefaultBinding
Type: Request (RPC)
Request:
| Field | Type | Required |
|---|---|---|
adapterName | string | yes |
Response:
| Field | Type | Required |
|---|---|---|
binding | { adapterName: string; providerConfigId: string; isDefault: boolean; } | null | yes |
adapterSubsystem.getProviderConfig (rpc)
Section titled “adapterSubsystem.getProviderConfig (rpc)”Get one provider config by ID.
Subject: adapterSubsystem.getProviderConfig
Type: Request (RPC)
Request:
| Field | Type | Required |
|---|---|---|
id | string | yes |
Response:
| Field | Type | Required |
|---|---|---|
config | { id: string; definitionId: string; name: string; modelFilterMode: "allowlist" | "show-all"; isDefault: boolean; enabled: boolean; isSentinel: boolean; hasCredentials: boolean; endpointOverrides?: Record<string, string> | undefined; modelVisibility?: Record<string, "enabled" | "disabled" | "visible"> | undefined; sourceRef?: string | undefined; } | null | yes |
adapterSubsystem.getProviderDefinitionsByAdapter (rpc)
Section titled “adapterSubsystem.getProviderDefinitionsByAdapter (rpc)”Get provider definitions contributed by a specific adapter.
Returns the full provider definition array for the named adapter, including
the registry-populated availableModels set at boot time.
Subject: adapterSubsystem.getProviderDefinitionsByAdapter
Type: Request (RPC)
Request:
| Field | Type | Required |
|---|---|---|
adapterName | string | yes |
Response:
| Field | Type | Required |
|---|---|---|
definitions | { id: string; name: string; availableModels: { name: string; contextWindowSize: number; labId: string; friendlyName?: string | undefined; family?: string | undefined; supportedReasoningLevels?: { none?: string | number | undefined; low?: string | number | undefined; medium?: string | number | undefined; high?: string | number | undefined; 'extra-high'?: string | number | undefined; } | undefined; metadata?: { maxOutputTokens?: number | undefined; capabilities?: { vision?: boolean | undefined; toolCalling?: boolean | undefined; parallelToolCalls?: boolean | undefined; structuredOutput?: boolean | undefined; pdfUpload?: boolean | undefined; speechToText?: { modes: ("batch" | "streaming")[]; vocabularyBiasing?: boolean | undefined; } | undefined; textToSpeech?: { modes: ("streaming" | "buffered")[]; voiceSelection?: boolean | undefined; voiceInstructions?: boolean | undefined; outputFormats?: string[] | undefined; } | undefined; } | undefined; pricing?: { token?: { inputPerMillion: number; outputPerMillion: number; inputCachedPerMillion?: number | undefined; cacheWritePerMillion?: number | undefined; } | undefined; request?: { multiplier: number; } | undefined; } | undefined; includedInSubscription?: boolean | undefined; description?: string | undefined; } | undefined; }[]; description?: string | undefined; endpoints?: { anthropic?: string | undefined; openai?: string | undefined; } | undefined; defaultModel?: string | undefined; fastModel?: string | undefined; defaultModelFilterMode?: "allowlist" | "show-all" | undefined; credentialEnvVars?: Record<string, string> | undefined; }[] | yes |
adapterSubsystem.listAdapterConfigs (rpc)
Section titled “adapterSubsystem.listAdapterConfigs (rpc)”List all adapter configs.
Subject: adapterSubsystem.listAdapterConfigs
Type: Request (RPC)
Request:
Empty object.
Response:
| Field | Type | Required |
|---|---|---|
configs | { name: string; enabled: boolean; bindings: { adapterName: string; providerConfigId: string; isDefault: boolean; }[]; description?: string | undefined; clientId?: string | undefined; displayName?: string | undefined; protocol?: string | undefined; helpLinks?: { label: string; url: string; }[] | undefined; instructions?: string | undefined; providerDefinitionIds?: string[] | undefined; settings?: Record<string, unknown> | undefined; }[] | yes |
adapterSubsystem.listAdapters (rpc)
Section titled “adapterSubsystem.listAdapters (rpc)”List effective adapters.
Subject: adapterSubsystem.listAdapters
Type: Request (RPC)
Request:
Empty object.
Response:
| Field | Type | Required |
|---|---|---|
adapters | { name: string; displayName: string; enabled: boolean; configCount: number; readiness: "ready" | "needs-setup"; supportsLogImport: boolean; description?: string | undefined; helpLinks?: { label: string; url: string; }[] | undefined; instructions?: string | undefined; clientId?: string | undefined; protocol?: string | undefined; providerDefinitionIds?: string[] | undefined; }[] | yes |
adapterSubsystem.listBindings (rpc)
Section titled “adapterSubsystem.listBindings (rpc)”List bindings for an adapter.
Subject: adapterSubsystem.listBindings
Type: Request (RPC)
Request:
| Field | Type | Required |
|---|---|---|
adapterName | string | yes |
Response:
| Field | Type | Required |
|---|---|---|
bindings | { adapterName: string; providerConfigId: string; isDefault: boolean; }[] | yes |
adapterSubsystem.listBindingsByConfig (rpc)
Section titled “adapterSubsystem.listBindingsByConfig (rpc)”List bindings for a provider config.
Subject: adapterSubsystem.listBindingsByConfig
Type: Request (RPC)
Request:
| Field | Type | Required |
|---|---|---|
providerConfigId | string | yes |
Response:
| Field | Type | Required |
|---|---|---|
bindings | { adapterName: string; providerConfigId: string; isDefault: boolean; }[] | yes |
adapterSubsystem.listProviderConfigs (rpc)
Section titled “adapterSubsystem.listProviderConfigs (rpc)”List provider configs, optionally filtering by enabled state.
Subject: adapterSubsystem.listProviderConfigs
Type: Request (RPC)
Request:
| Field | Type | Required |
|---|---|---|
enabled | boolean | undefined | no |
Response:
| Field | Type | Required |
|---|---|---|
configs | { id: string; definitionId: string; name: string; modelFilterMode: "allowlist" | "show-all"; isDefault: boolean; enabled: boolean; isSentinel: boolean; hasCredentials: boolean; endpointOverrides?: Record<string, string> | undefined; modelVisibility?: Record<string, "enabled" | "disabled" | "visible"> | undefined; sourceRef?: string | undefined; }[] | yes |
adapterSubsystem.listProviderConfigsByDefinition (rpc)
Section titled “adapterSubsystem.listProviderConfigsByDefinition (rpc)”List provider configs for a given provider definition.
Subject: adapterSubsystem.listProviderConfigsByDefinition
Type: Request (RPC)
Request:
| Field | Type | Required |
|---|---|---|
definitionId | string | yes |
Response:
| Field | Type | Required |
|---|---|---|
configs | { id: string; definitionId: string; name: string; modelFilterMode: "allowlist" | "show-all"; isDefault: boolean; enabled: boolean; isSentinel: boolean; hasCredentials: boolean; endpointOverrides?: Record<string, string> | undefined; modelVisibility?: Record<string, "enabled" | "disabled" | "visible"> | undefined; sourceRef?: string | undefined; }[] | yes |
adapterSubsystem.providerConfig.created (event)
Section titled “adapterSubsystem.providerConfig.created (event)”Provider config lifecycle events.
Subject: adapterSubsystem.providerConfig.created
Type: Event
| Field | Type | Required |
|---|---|---|
definitionId | string | yes |
enabled | boolean | yes |
endpointOverrides | Record<string, string> | undefined | no |
hasCredentials | boolean | yes |
id | string | yes |
isDefault | boolean | yes |
isSentinel | boolean | yes |
modelFilterMode | "allowlist" | "show-all" | yes |
modelVisibility | Record<string, "enabled" | "disabled" | "visible"> | undefined | no |
name | string | yes |
sourceRef | string | undefined | no |
adapterSubsystem.providerConfig.defaultChanged (event)
Section titled “adapterSubsystem.providerConfig.defaultChanged (event)”Subject: adapterSubsystem.providerConfig.defaultChanged
Type: Event
| Field | Type | Required |
|---|---|---|
configId | string | null | yes |
definitionId | string | yes |
adapterSubsystem.providerConfig.deleted (event)
Section titled “adapterSubsystem.providerConfig.deleted (event)”Subject: adapterSubsystem.providerConfig.deleted
Type: Event
| Field | Type | Required |
|---|---|---|
id | string | yes |
adapterSubsystem.providerConfig.updated (event)
Section titled “adapterSubsystem.providerConfig.updated (event)”Bus-safe provider config read model.
Generic reads intentionally exclude credential refs. Runtime assembly goes
through buildProviderContext instead.
Subject: adapterSubsystem.providerConfig.updated
Type: Event
| Field | Type | Required |
|---|---|---|
definitionId | string | yes |
enabled | boolean | yes |
endpointOverrides | Record<string, string> | undefined | no |
hasCredentials | boolean | yes |
id | string | yes |
isDefault | boolean | yes |
isSentinel | boolean | yes |
modelFilterMode | "allowlist" | "show-all" | yes |
modelVisibility | Record<string, "enabled" | "disabled" | "visible"> | undefined | no |
name | string | yes |
sourceRef | string | undefined | no |
adapterSubsystem.ready (event)
Section titled “adapterSubsystem.ready (event)”Readiness observability event (fire-and-forget, no replay guarantee).
Listeners registered after the subsystem emits this event will miss it.
Use ensureReady (request/response) for reliable coordination.
Subject: adapterSubsystem.ready
Type: Event
Empty object.
adapterSubsystem.setAdapterConfig (rpc)
Section titled “adapterSubsystem.setAdapterConfig (rpc)”Set adapter config fields.
Subject: adapterSubsystem.setAdapterConfig
Type: Request (RPC)
Request:
| Field | Type | Required |
|---|---|---|
name | string | yes |
patch | { displayName?: string | undefined; description?: string | undefined; helpLinks?: { label: string; url: string; }[] | undefined; instructions?: string | undefined; clientId?: string | undefined; protocol?: string | undefined; providerDefinitionIds?: string[] | undefined; settings?: Record<string, unknown> | undefined; enabled?: boolean | undefined; } | yes |
Response:
| Field | Type | Required |
|---|---|---|
config | { name: string; enabled: boolean; bindings: { adapterName: string; providerConfigId: string; isDefault: boolean; }[]; description?: string | undefined; clientId?: string | undefined; displayName?: string | undefined; protocol?: string | undefined; helpLinks?: { label: string; url: string; }[] | undefined; instructions?: string | undefined; providerDefinitionIds?: string[] | undefined; settings?: Record<string, unknown> | undefined; } | yes |
adapterSubsystem.setAdapterEnabled (rpc)
Section titled “adapterSubsystem.setAdapterEnabled (rpc)”Enable or disable an adapter config.
Subject: adapterSubsystem.setAdapterEnabled
Type: Request (RPC)
Request:
| Field | Type | Required |
|---|---|---|
enabled | boolean | yes |
name | string | yes |
Response:
| Field | Type | Required |
|---|---|---|
success | boolean | yes |
adapterSubsystem.setDefaultBinding (rpc)
Section titled “adapterSubsystem.setDefaultBinding (rpc)”Set the default binding for an adapter.
Subject: adapterSubsystem.setDefaultBinding
Type: Request (RPC)
Request:
| Field | Type | Required |
|---|---|---|
adapterName | string | yes |
providerConfigId | string | yes |
Response:
Empty object.
adapterSubsystem.setDefaultProviderConfig (rpc)
Section titled “adapterSubsystem.setDefaultProviderConfig (rpc)”Set the default provider config for its definition.
Subject: adapterSubsystem.setDefaultProviderConfig
Type: Request (RPC)
Request:
| Field | Type | Required |
|---|---|---|
id | string | yes |
Response:
| Field | Type | Required |
|---|---|---|
config | { id: string; definitionId: string; name: string; modelFilterMode: "allowlist" | "show-all"; isDefault: boolean; enabled: boolean; isSentinel: boolean; hasCredentials: boolean; endpointOverrides?: Record<string, string> | undefined; modelVisibility?: Record<string, "enabled" | "disabled" | "visible"> | undefined; sourceRef?: string | undefined; } | yes |
adapterSubsystem.setModelFilterMode (rpc)
Section titled “adapterSubsystem.setModelFilterMode (rpc)”Set the model filter mode for a provider config.
Subject: adapterSubsystem.setModelFilterMode
Type: Request (RPC)
Request:
| Field | Type | Required |
|---|---|---|
id | string | yes |
modelFilterMode | "allowlist" | "show-all" | yes |
preferredModel | string | undefined | no |
Response:
| Field | Type | Required |
|---|---|---|
config | { id: string; definitionId: string; name: string; modelFilterMode: "allowlist" | "show-all"; isDefault: boolean; enabled: boolean; isSentinel: boolean; hasCredentials: boolean; endpointOverrides?: Record<string, string> | undefined; modelVisibility?: Record<string, "enabled" | "disabled" | "visible"> | undefined; sourceRef?: string | undefined; } | yes |
adapterSubsystem.setProviderConfigCredentialRefs (rpc)
Section titled “adapterSubsystem.setProviderConfigCredentialRefs (rpc)”Replace the canonical credential refs for one provider config.
Subject: adapterSubsystem.setProviderConfigCredentialRefs
Type: Request (RPC)
Request:
| Field | Type | Required |
|---|---|---|
credentialRefs | Record<string, string & $brand<"CredentialRef">> | yes |
id | string | yes |
Response:
| Field | Type | Required |
|---|---|---|
config | { id: string; definitionId: string; name: string; modelFilterMode: "allowlist" | "show-all"; isDefault: boolean; enabled: boolean; isSentinel: boolean; hasCredentials: boolean; endpointOverrides?: Record<string, string> | undefined; modelVisibility?: Record<string, "enabled" | "disabled" | "visible"> | undefined; sourceRef?: string | undefined; } | yes |
adapterSubsystem.unbind (rpc)
Section titled “adapterSubsystem.unbind (rpc)”Unbind a provider config from an adapter.
Subject: adapterSubsystem.unbind
Type: Request (RPC)
Request:
| Field | Type | Required |
|---|---|---|
adapterName | string | yes |
providerConfigId | string | yes |
Response:
Empty object.
adapterSubsystem.updateProviderConfig (rpc)
Section titled “adapterSubsystem.updateProviderConfig (rpc)”Update a provider config.
Subject: adapterSubsystem.updateProviderConfig
Type: Request (RPC)
Request:
| Field | Type | Required |
|---|---|---|
id | string | yes |
patch | { name?: string | undefined; endpointOverrides?: { anthropic?: string | undefined; openai?: string | undefined; } | null | undefined; modelVisibility?: Record<string, "enabled" | "disabled" | "visible"> | undefined; enabled?: boolean | undefined; } | yes |
Response:
| Field | Type | Required |
|---|---|---|
config | { id: string; definitionId: string; name: string; modelFilterMode: "allowlist" | "show-all"; isDefault: boolean; enabled: boolean; isSentinel: boolean; hasCredentials: boolean; endpointOverrides?: Record<string, string> | undefined; modelVisibility?: Record<string, "enabled" | "disabled" | "visible"> | undefined; sourceRef?: string | undefined; } | yes |
Auto-generated by yarn docs:bus. Do not edit manually.