Interface: ConfigFactoryInput<TBus>
Makaio Framework / ai-adapters-core / ConfigFactoryInput
Interface: ConfigFactoryInput<TBus>
Section titled “Interface: ConfigFactoryInput<TBus>”Defined in: ../../../adapters/core/src/adapter/ai-adapter-config.ts:27
Input provided by agent to the config factory. Contains partial configuration - adapters provide defaults for missing required fields.
Includes all runtime options from StartAgentRequest (allowedTools, disallowedTools, etc.) to ensure they flow through to the connector.
Type Parameters
Section titled “Type Parameters”TBus extends ScopedBus<string> = ScopedBus<string>
Properties
Section titled “Properties”adapterId
Section titled “adapterId”adapterId:
string
Defined in: ../../../adapters/core/src/adapter/ai-adapter-config.ts:33
Adapter instance identifier (required - provided by AIAgent from adapter)
adapterName
Section titled “adapterName”adapterName:
string
Defined in: ../../../adapters/core/src/adapter/ai-adapter-config.ts:35
Adapter type name (required - provided by AIAgent from adapter)
adapterSessionId?
Section titled “adapterSessionId?”
optionaladapterSessionId?:string
Defined in: ../../../adapters/core/src/adapter/ai-adapter-config.ts:42
Provider’s session ID for resuming existing conversations
agentId
Section titled “agentId”agentId:
string
Defined in: ../../../adapters/core/src/adapter/ai-adapter-config.ts:31
Unique agent identifier (required - generated by AIAgent)
allowedDirectories?
Section titled “allowedDirectories?”
optionalallowedDirectories?:string[]
Defined in: ../../../adapters/core/src/adapter/ai-adapter-config.ts:66
Directory restrictions for file-system tool execution.
allowedTools?
Section titled “allowedTools?”
optionalallowedTools?:string[]
Defined in: ../../../adapters/core/src/adapter/ai-adapter-config.ts:62
Allowed tool names (adapter-specific). Empty array = disable all tools.
bus:
TBus
Defined in: ../../../adapters/core/src/adapter/ai-adapter-config.ts:29
Scoped bus for adapter-specific events
clientId?
Section titled “clientId?”
optionalclientId?:string
Defined in: ../../../adapters/core/src/adapter/ai-adapter-config.ts:74
Client identifier for the application this adapter belongs to (e.g., ‘claude-code’, ‘gemini’).
optionalcwd?:string
Defined in: ../../../adapters/core/src/adapter/ai-adapter-config.ts:50
Working directory for agent execution
disallowedTools?
Section titled “disallowedTools?”
optionaldisallowedTools?:string[]
Defined in: ../../../adapters/core/src/adapter/ai-adapter-config.ts:64
Disallowed tool names (adapter-specific). Takes precedence over allowedTools.
optionalenv?:Record<string,string>
Defined in: ../../../adapters/core/src/adapter/ai-adapter-config.ts:52
Environment variables to pass to agent execution
errorHandler?
Section titled “errorHandler?”
optionalerrorHandler?: (error,terminate) =>void
Defined in: ../../../adapters/core/src/adapter/ai-adapter-config.ts:58
Error handler for connector errors
Parameters
Section titled “Parameters”Error
terminate
Section titled “terminate”boolean
Returns
Section titled “Returns”void
mcpSessionContext?
Section titled “mcpSessionContext?”
optionalmcpSessionContext?: {directTools:object[];discoverableTools:object[];profileId:string|null;projectId:string|null;servers:object[];sessionId:string; } |LedgerSessionContext
Defined in: ../../../adapters/core/src/adapter/ai-adapter-config.ts:80
Resolved MCP session context including upstream server configs.
When present, native-passthrough adapters use servers to configure SDK MCP connections.
Union Members
Section titled “Union Members”Type Literal
Section titled “Type Literal”{ directTools: object[]; discoverableTools: object[]; profileId: string | null; projectId: string | null; servers: object[]; sessionId: string; }
directTools
Section titled “directTools”directTools:
object[]
Tools resolved as direct-inject for this session
discoverableTools
Section titled “discoverableTools”discoverableTools:
object[]
Tools available for discovery in this session
profileId
Section titled “profileId”profileId:
string|null
Profile identifier (null for default)
projectId
Section titled “projectId”projectId:
string|null
Project identifier (null for global)
servers
Section titled “servers”servers:
object[]
Servers enabled for this session (post-project-filter)
sessionId
Section titled “sessionId”sessionId:
string
Session identifier
model?
Section titled “model?”
optionalmodel?:string
Defined in: ../../../adapters/core/src/adapter/ai-adapter-config.ts:48
Model to use - optional, adapters provide defaults
providerConfig?
Section titled “providerConfig?”
optionalproviderConfig?:Record<string,unknown>
Defined in: ../../../adapters/core/src/adapter/ai-adapter-config.ts:69
Provider-specific configuration (non-credential settings). Adapters merge with defaults.
providerContext
Section titled “providerContext”providerContext:
object
Defined in: ../../../adapters/core/src/adapter/ai-adapter-config.ts:40
Unresolved provider context (credential refs, not plaintext).
Connectors resolve credentials locally via resolveConnectorCredentials().
credentialEnvVars?
Section titled “credentialEnvVars?”
optionalcredentialEnvVars?:Record<string,string>
Maps credential keys to environment variable names for subprocess adapters.
E.g., { apiKey: 'ANTHROPIC_API_KEY' }.
credentialRefs
Section titled “credentialRefs”credentialRefs:
Record<string,string&$brand<"CredentialRef">>
Credential references resolved at the connector layer, not on the bus.
definitionId
Section titled “definitionId”definitionId:
string
Provider definition ID (e.g., 'anthropic', 'alibaba').
endpointOverrides?
Section titled “endpointOverrides?”
optionalendpointOverrides?:object
Endpoint URL overrides keyed by protocol.
endpointOverrides.anthropic?
Section titled “endpointOverrides.anthropic?”
optionalanthropic?:string
endpointOverrides.openai?
Section titled “endpointOverrides.openai?”
optionalopenai?:string
providerConfigId
Section titled “providerConfigId”providerConfigId:
string
Provider config UUID. Links back to the ProviderConfig that produced this context.
reasoningEffort?
Section titled “reasoningEffort?”
optionalreasoningEffort?:"none"|"low"|"medium"|"high"|"extra-high"
Defined in: ../../../adapters/core/src/adapter/ai-adapter-config.ts:54
Reasoning effort for supporting adapters
resumeAdapterSessionId?
Section titled “resumeAdapterSessionId?”
optionalresumeAdapterSessionId?:string
Defined in: ../../../adapters/core/src/adapter/ai-adapter-config.ts:46
Previous adapter session ID for resume attempts (from recovery).
runtimeTimeouts?
Section titled “runtimeTimeouts?”
optionalruntimeTimeouts?:Partial<RequiredTimeoutConfig>
Defined in: ../../../adapters/core/src/adapter/ai-adapter-config.ts:71
sessionId?
Section titled “sessionId?”
optionalsessionId?:string
Defined in: ../../../adapters/core/src/adapter/ai-adapter-config.ts:44
Makaio session ID for tool execution context and multi-session correlation
supportedReasoningLevels?
Section titled “supportedReasoningLevels?”
optionalsupportedReasoningLevels?:object
Defined in: ../../../adapters/core/src/adapter/ai-adapter-config.ts:56
Reasoning levels supported by the resolved model, forwarded to the connector.
extra-high?
Section titled “extra-high?”
optionalextra-high?:string|number=reasoningLevelValue
optionalhigh?:string|number=reasoningLevelValue
optionallow?:string|number=reasoningLevelValue
medium?
Section titled “medium?”
optionalmedium?:string|number=reasoningLevelValue
optionalnone?:string|number=reasoningLevelValue
toolLedger?
Section titled “toolLedger?”
optionaltoolLedger?:ISessionToolLedger
Defined in: ../../../adapters/core/src/adapter/ai-adapter-config.ts:85
Session-scoped MCP tool ledger. Passed through unchanged so connectors can track injection and mcp_call usage.