plugin library

Core APIs and types for authoring Genkit plugins.

This library exports the primitives necessary for creating custom models, embedders, tools, middleware, and other Genkit integrations. It is intended for package authors extending Genkit functions. End-users building Genkit applications should import package:genkit/genkit.dart instead.

Classes

$AgentAbortRequest
$AgentAbortResponse
$AgentErrorInfo
$AgentInit
$AgentInput
$AgentMetadata
$AgentOutput
$AgentResult
$AgentResume
$AgentStreamChunk
$Artifact
$BaseDataPoint
$Candidate
$CustomPart
$DataPart
$DocumentData
$Embedding
$EmbedRequest
$EmbedResponse
$EvalFnResponse
$EvalRequest
$GenerateActionOptions
$GenerateActionOutputConfig
$GenerateRequest
$GenerateResponse
$GenerateResumeOptions
$GenerationUsage
$GetSnapshotDataInput
$JsonPatchOperation
$Media
$MediaPart
$Message
$MiddlewareRef
$ModelInfo
$ModelRequest
$ModelResponse
$ModelResponseChunk
$Operation
$OutputConfig
$Part
$ReasoningPart
$ReflectionCancelActionParams
$ReflectionCancelActionResponse
$ReflectionConfigureParams
$ReflectionEndInputStreamParams
$ReflectionListActionsResponse
$ReflectionListValuesParams
$ReflectionListValuesResponse
$ReflectionRegisterParams
$ReflectionRunActionParams
$ReflectionRunActionStateParams
$ReflectionSendInputStreamChunkParams
$ReflectionStreamChunkParams
$ResourcePart
$Score
$SessionSnapshot
$SessionState
$TextPart
$ToolDefinition
$ToolRequest
$ToolRequestPart
$ToolResponse
$ToolResponsePart
$TurnEnd
Action<Input, Output, Chunk, Init>
ActionMetadata<Input, Output, Chunk, Init>
AgentAbortRequest
AgentAbortResponse
AgentErrorInfo
AgentInit
AgentInput
AgentMetadata
AgentOutput
AgentResult
AgentResume
AgentStreamChunk
Artifact
BaseDataPoint
BidiModel<CustomOptions>
Candidate
CustomPart
DataPart
DocumentData
Embedder<CustomOptions>
EmbedderRef<CustomOptions>
Embedding
EmbedRequest
EmbedResponse
EvalFnResponse
EvalFnResponseEvaluation
EvalRequest
GenerateActionOptions
GenerateActionOutputConfig
GenerateActionOutputConfigInstructions
GenerateMiddleware
Middleware for the processing of a Generation request.
GenerateMiddlewareDef<CustomOptions>
GenerateMiddlewareRef<CustomOptions>
GenerateRequest
GenerateResponse
GenerateResponseChunk<Output>
A chunk of a response from a generate action.
GenerateResponseHelper<Output>
A response from a generate action.
GenerateResumeOptions
GenerationUsage
GenkitPlugin
A plugin for Genkit.
GetSnapshotDataInput
InterruptResponse
A response to an interrupted tool request.
JsonPatchOperation
Media
MediaPart
Message
MiddlewareRef
Model<CustomOptions>
ModelInfo
ModelRef<CustomOptions>
ModelRequest
ModelResponse
ModelResponseChunk
Operation
OutputConfig
Part
ReasoningPart
ReflectionCancelActionParams
ReflectionCancelActionResponse
ReflectionConfigureParams
ReflectionEndInputStreamParams
ReflectionListActionsResponse
ReflectionListValuesParams
ReflectionListValuesResponse
ReflectionRegisterParams
ReflectionRunActionParams
ReflectionRunActionStateParams
ReflectionSendInputStreamChunkParams
ReflectionStreamChunkParams
Registry
ResourcePart
Score
ScoreScore
SessionSnapshot
SessionState
TextPart
Tool<Input, Output>
ToolDefinition
ToolFnArgs<Input>
Arguments passed to a tool function execution.
ToolRequest
ToolRequestPart
ToolResponse
ToolResponsePart
TurnEnd

Enums

StatusCodes
Exception thrown for errors encountered during Genkit flow operations. Common status codes for Genkit operations.

Constants

genkitVersion → const String

Functions

defineMiddleware<CustomOptions>({required String name, required GenerateMiddleware create(CustomOptions? config, GenerateMiddlewareContext ctx), SchemanticType<CustomOptions>? configSchema}) GenerateMiddlewareDef<CustomOptions>
embedderMetadata(String name, {SchemanticType? customOptions}) ActionMetadata
embedderRef<CustomOptions>(String name, {SchemanticType<CustomOptions>? customOptions}) EmbedderRef<CustomOptions>
getConfigVar(String name) String?
getPlatformLanguageVersion() String
middlewareRef<CustomOptions>({required String name, CustomOptions? config}) GenerateMiddlewareRef<CustomOptions>
modelMetadata(String name, {ModelInfo? modelInfo, SchemanticType? customOptions}) ActionMetadata
modelRef<CustomOptions>(String name, {SchemanticType<CustomOptions>? customOptions, CustomOptions? config}) ModelRef<CustomOptions>

Typedefs

ActionFnArg<Chunk, Input, Init> = ({Map<String, dynamic>? context, Init? init, Stream<Input>? inputStream, StreamingCallback<Chunk> sendChunk, bool streamingRequested})
GenerateMiddlewareContext = ({GenkitAI ai})
Ambient dependencies handed to a middleware factory at instantiation time.
GenerateTurnState = ({int currentTurn, int messageIndex, GenerateActionOptions request})
Envelope for the processing of a Generation request in middleware.
ToolFn<Input, Output> = Future<Output> Function(Input input, ToolFnArgs<Input> context)
A function that implements a tool.

Exceptions / Errors

GenkitException
Exception thrown for errors encountered during Genkit flow operations.
ToolInterruptException
Exception thrown by a tool to interrupt the generation loop.