Interface: TurnRunnerConfig
Defined in: src/lib/contracts/turn_runner_config.ts:50
Configuration supplied to @nhtio/adk!TurnRunner at construction time.
Remarks
Validated against turnRunnerConfigSchema at construction — a misconfigured runner throws immediately rather than failing on the first turn.
All fetch and mutation callbacks are required: they are injected into each @nhtio/adk!TurnContext so middleware can call fetch, refresh, and persistence methods directly on the context without coupling to the runner.
tools is optional at the caller level and defaults to [] after schema resolution — a runner with no baseline tools is valid.
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
deleteMemoryCallback | MemoryDeleteFn | Removes a memory from the persistence layer by ID. | src/lib/contracts/turn_runner_config.ts:76 |
deleteMessageCallback | MessageDeleteFn | Removes a message from the persistence layer by ID. | src/lib/contracts/turn_runner_config.ts:90 |
deleteRetrievableCallback | RetrievableDeleteFn | Removes a retrievable record from the persistence layer by ID. | src/lib/contracts/turn_runner_config.ts:84 |
deleteStandingInstructionCallback | StandingInstructionDeleteFn | Removes a standing instruction from the persistence layer. | src/lib/contracts/turn_runner_config.ts:70 |
deleteThoughtCallback | ThoughtDeleteFn | Removes a thought from the persistence layer by ID. | src/lib/contracts/turn_runner_config.ts:96 |
deleteToolCallCallback | ToolCallDeleteFn | Removes a tool call from the persistence layer by ID. | src/lib/contracts/turn_runner_config.ts:102 |
dispatchInputPipeline? | DispatchPipelineMiddlewareFn[] | LLM-iteration input middleware, executed in order against the @nhtio/adk!DispatchContext before the executor on each iteration. Defaults to []. | src/lib/contracts/turn_runner_config.ts:116 |
dispatchOutputPipeline? | DispatchPipelineMiddlewareFn[] | LLM-iteration output middleware, executed in order against the @nhtio/adk!DispatchContext after the executor on each iteration. Defaults to []. | src/lib/contracts/turn_runner_config.ts:118 |
executorCallback | DispatchExecutorFn | Performs the LLM API/SDK call for each iteration of the dispatch loop; receives the active @nhtio/adk!DispatchContext and an @nhtio/adk!DispatchExecutorHelpers object for managing per-id stream state. | src/lib/contracts/turn_runner_config.ts:52 |
fetchMemoriesCallback | MemoryRetrievalFn | Called once per turn to supply memories; receives the active @nhtio/adk!TurnContext. | src/lib/contracts/turn_runner_config.ts:54 |
fetchMessagesCallback | MessageRetrievalFn | Called once per turn to supply conversation history; receives the active @nhtio/adk!TurnContext. | src/lib/contracts/turn_runner_config.ts:56 |
fetchRetrievablesCallback | RetrievableRetrievalFn | Called once per turn to supply retrievable (RAG) records; receives the active @nhtio/adk!TurnContext. | src/lib/contracts/turn_runner_config.ts:78 |
fetchThoughtsCallback | ThoughtRetrievalFn | Called once per turn to supply thought traces; receives the active @nhtio/adk!TurnContext. | src/lib/contracts/turn_runner_config.ts:58 |
fetchToolCallsCallback | ToolCallRetrievalFn | Called once per turn to supply tool call records; receives the active @nhtio/adk!TurnContext. | src/lib/contracts/turn_runner_config.ts:60 |
fetchToolsCallback | ToolsRetrievalFn | Called to supply available tools; receives the active @nhtio/adk!TurnContext. | src/lib/contracts/turn_runner_config.ts:62 |
mutateMemoryCallback | MemoryMutateFn | Updates an existing memory in the persistence layer. | src/lib/contracts/turn_runner_config.ts:74 |
mutateMessageCallback | MessageMutateFn | Updates an existing message in the persistence layer. | src/lib/contracts/turn_runner_config.ts:88 |
mutateRetrievableCallback | RetrievableMutateFn | Updates an existing retrievable record in the persistence layer. | src/lib/contracts/turn_runner_config.ts:82 |
mutateStandingInstructionCallback | StandingInstructionMutateFn | Updates an existing standing instruction in the persistence layer. | src/lib/contracts/turn_runner_config.ts:68 |
mutateThoughtCallback | ThoughtMutateFn | Updates an existing thought in the persistence layer. | src/lib/contracts/turn_runner_config.ts:94 |
mutateToolCallCallback | ToolCallMutateFn | Updates an existing tool call in the persistence layer. | src/lib/contracts/turn_runner_config.ts:100 |
refreshStandingInstructionsCallback | StandingInstructionsRefreshFn | Called to refresh and return standing instructions; receives the active @nhtio/adk!TurnContext. | src/lib/contracts/turn_runner_config.ts:64 |
replaceToolCallGroupCallback? | ToolCallGroupReplaceFn | Optionally replaces a complete tool-call group atomically. | src/lib/contracts/turn_runner_config.ts:104 |
storeMediaBytesCallback | MediaBytesStoreFn | Persists tool-generated media bytes into consumer storage; returns a MediaReader. | src/lib/contracts/turn_runner_config.ts:106 |
storeMemoryCallback | MemoryStoreFn | Persists a new memory. | src/lib/contracts/turn_runner_config.ts:72 |
storeMessageCallback | MessageStoreFn | Persists a new message. | src/lib/contracts/turn_runner_config.ts:86 |
storeRetrievableBytesCallback | RetrievableBytesStoreFn | Persists extracted retrievable text bytes into consumer storage; returns a SpoolReader. | src/lib/contracts/turn_runner_config.ts:108 |
storeRetrievableCallback | RetrievableStoreFn | Persists a new retrievable record. | src/lib/contracts/turn_runner_config.ts:80 |
storeStandingInstructionCallback | StandingInstructionStoreFn | Persists a new standing instruction. | src/lib/contracts/turn_runner_config.ts:66 |
storeThoughtCallback | ThoughtStoreFn | Persists a new thought. | src/lib/contracts/turn_runner_config.ts:92 |
storeToolCallCallback | ToolCallStoreFn | Persists a new tool call. | src/lib/contracts/turn_runner_config.ts:98 |
tools? | Tool<SpooledArtifact>[] | Baseline tools available on every turn. Middleware may trim or extend this per-turn via ctx.tools. Defaults to []. | src/lib/contracts/turn_runner_config.ts:110 |
turnInputPipeline? | TurnPipelineMiddlewareFn[] | Turn-level input middleware, executed in order against the @nhtio/adk!TurnContext before the LLM dispatch. Defaults to []. | src/lib/contracts/turn_runner_config.ts:112 |
turnOutputPipeline? | TurnPipelineMiddlewareFn[] | Turn-level output middleware, executed in order against the @nhtio/adk!TurnContext after the LLM dispatch resolves successfully. Defaults to []. | src/lib/contracts/turn_runner_config.ts:114 |