Routine maintenance and dependency updates.
Release history
genkit releases
Open-source framework for building AI-powered apps in JavaScript, Go, and Python, built and used in production by Google
All releases
22 shown
- Improved model config UX in dev UI for go/plugins/googlegenai
- Support middleware in dotprompt frontmatter (go/ai)
- Trace GenerateActionOptions as input for generate calls (go)
Full changelog
What's Changed
- feat(go/plugins/googlegenai): improve model config UX in dev UI by @apascal07 in https://github.com/genkit-ai/genkit/pull/5231
- feat(go/ai): support middleware in dotprompt frontmatter by @apascal07 in https://github.com/genkit-ai/genkit/pull/5229
- feat(go): trace GenerateActionOptions as input for generate calls by @MichaelDoyle in https://github.com/genkit-ai/genkit/pull/5232
- fix(go): eagerly resolve genkit schema references in reflection API by @apascal07 in https://github.com/genkit-ai/genkit/pull/5221
- fix(go): use *Part for GenerateActionResume.Respond and Restart by @apascal07 in https://github.com/genkit-ai/genkit/pull/5226
- fix(prompt): prompt metadata for middleware and tools by @MichaelDoyle in https://github.com/genkit-ai/genkit/pull/5216
- fix(go): preserve schema for shared struct types in InferJSONSchema by @apascal07 in https://github.com/genkit-ai/genkit/pull/5243
Full Changelog: https://github.com/genkit-ai/genkit/compare/go/v1.7.0...go/v1.8.0
- Added `DefineMiddleware` for Middleware V2 in go/ai
- Implemented reflection API v2 over WebSocket in go
- Added common middleware (tool approval, retry, fallback) and reworked filesystem middleware
Full changelog
What's Changed
- feat(go/ai): added
DefineMiddleware(Middleware V2) by @apascal07 in https://github.com/genkit-ai/genkit/pull/4464 - feat(go): implement reflection API v2 over WebSocket by @apascal07 in https://github.com/genkit-ai/genkit/pull/5150
- feat(go): added common middleware (e.g. tool approval, retry, fallback) by @apascal07 in https://github.com/genkit-ai/genkit/pull/4719
- feat(go/plugins/middleware): rework filesystem middleware by @apascal07 in https://github.com/genkit-ai/genkit/pull/5202
- fix(go/plugins/googlegenai): handle multi-field response parts by @apascal07 in https://github.com/genkit-ai/genkit/pull/5198
- fix(go/plugins/googlegenai): fixed nullable in array type in JSON schema by @apascal07 in https://github.com/genkit-ai/genkit/pull/5162
Full Changelog: https://github.com/genkit-ai/genkit/compare/go/v1.6.1...go/v1.7.0
- New @genkit-ai/middleware package with generate middleware
- Support for claude opus 4.7 and gemini-3.1-flash-tts-preview
- OTEL logging support
Full changelog
What's Changed
- feat(js): implemented new generate middleware and new @genkit-ai/middleware package by @pavelgj in https://github.com/genkit-ai/genkit/pull/5040
- fix(js/genkit): Explicitly allow null types in promptDir by @7hokerz in https://github.com/genkit-ai/genkit/pull/5036
- feat(js/plugins/google-genai): serviceTier support for googleAI by @ifielker in https://github.com/genkit-ai/genkit/pull/5058
- feat(js): allow middleware generate hook manipulate message/turn index by @pavelgj in https://github.com/genkit-ai/genkit/pull/5131
- feat(js/plugins/googleai): support for gemini-3.1-flash-tts-preview by @ifielker in https://github.com/genkit-ai/genkit/pull/5138
- chore(global): update repository URLs and references from firebase/genkit to genkit-ai/genkit by @pavelgj in https://github.com/genkit-ai/genkit/pull/5155
- feat(js/plugins/anthropic): Support for claude opus 4.7 by @ifielker in https://github.com/genkit-ai/genkit/pull/5160
- feat(genkit-tools/cli): support ephemeral runtime commands by @ssbushi in https://github.com/genkit-ai/genkit/pull/5079
- feat(js/plugins/vertex): Model garden support for Claude 4.7 by @ifielker in https://github.com/genkit-ai/genkit/pull/5164
- fix(js/core): Fix DAP resolution by @ifielker in https://github.com/genkit-ai/genkit/pull/5166
- feat(js/plugins/google-genai): Support for gemini-embedding-2 by @ifielker in https://github.com/genkit-ai/genkit/pull/5165
- feat(js): Support Otel logging by @shrutip90 in https://github.com/genkit-ai/genkit/pull/4981
Full Changelog: https://github.com/genkit-ai/genkit/compare/v1.32.0...v1.33.0
- Deprecated: Imagen and Veo models in Google GenAI plugin
- Interrupt metadata added to span attributes for improved observability
- Support for new models: Lyria 3, Veo-3.1-lite, and Gemma 4
- All actions now include key attribute
Full changelog
What's Changed
- feat(js): add interrupt metadata to span attribs by @ssbushi in https://github.com/genkit-ai/genkit/pull/4989
- fix(js/plugins/anthropic): remove duplicated keys maxOutputTokens, etc by @ifielker in https://github.com/genkit-ai/genkit/pull/4988
- feat(js/plugins/google-genai): Support for lyria 3 in vertexAI by @ifielker in https://github.com/genkit-ai/genkit/pull/5028
- chore(js/plugins/google-genai): deprecate some imagen and veo models by @ifielker in https://github.com/genkit-ai/genkit/pull/5033
- feat(js/plugins/google-genai): support for veo-3.1-lite-generate-preview by @ifielker in https://github.com/genkit-ai/genkit/pull/5038
- chore(js/core): Include key for all actions by @ifielker in https://github.com/genkit-ai/genkit/pull/5041
- feat(js/plugins/google-genai): Support for Gemma 4 by @ifielker in https://github.com/genkit-ai/genkit/pull/5089
New Contributors
- @simakmak made their first contribution in https://github.com/genkit-ai/genkit/pull/4028
- @Gerifield made their first contribution in https://github.com/genkit-ai/genkit/pull/4971
Full Changelog: https://github.com/genkit-ai/genkit/compare/v1.31.0...v1.32.0
- DynamicPlugin enables dynamic model discovery for Ollama
- Ollama plugin adds runtime options and thinking support
Full changelog
What's Changed
- feat(go/plugins/ollama): add runtime options and thinking by @simakmak in https://github.com/genkit-ai/genkit/pull/4028
- feat(go/ollama): implement DynamicPlugin for dynamic model discovery by @Zereker in https://github.com/genkit-ai/genkit/pull/4529
New Contributors
- @simakmak made their first contribution in https://github.com/genkit-ai/genkit/pull/4028
Full Changelog: https://github.com/genkit-ai/genkit/compare/go/v1.5.1...go/v1.6.0
## What's Changed * fix(go/plugins/vertexai): fix plugin name collision and strict mode
- Package layout restructured: genkit.types, genkit.model_types, genkit.ai, genkit.blocks reorganized
- Sync APIs removed: all operations now async only
- Multipart tool responses with metadata field
- Deprecated googleai plugin removed
- Reflection API v2
- Google GenAI multimodal embedder
- Google Maps tool support
- NewFlow and NewStreamingFlow APIs with channel-based streaming support
- OpenAI structured output API support via compat-oai plugin
- Native structured output support for Anthropic plugin
Full changelog
What's Changed
- fix(go): fix error on tool requests during stream by @apascal07 in https://github.com/genkit-ai/genkit/pull/4379
- fix(go): Remove raw bytes from the debug messages by @traut in https://github.com/genkit-ai/genkit/pull/4329
- feat(go): add
NewFlowandNewStreamingFlowby @apascal07 in https://github.com/genkit-ai/genkit/pull/4380 - feat(go): added channel-based streaming flow API by @apascal07 in https://github.com/genkit-ai/genkit/pull/4186
- fix(go): handle loosely formatted JSON markdown blocks by @hugoaguirre in https://github.com/genkit-ai/genkit/pull/4700
- feat(go/compat-oai): add OpenAI structured output API support by @dmeremyanin in https://github.com/genkit-ai/genkit/pull/4680
- fix(go): added nil check for config in
ModelRefby @apascal07 in https://github.com/genkit-ai/genkit/pull/4775 - fix(go): preserve error chain in GenkitError via Unwrap by @Zereker in https://github.com/genkit-ai/genkit/pull/4527
- fix(go/plugins/googlegenai): fixed Vertex AI model resolution by @apascal07 in https://github.com/genkit-ai/genkit/pull/4784
- fix(go): include
Typeproperty in seen struct types by @hugoaguirre in https://github.com/genkit-ai/genkit/pull/4216 - feat(go): add HandlerFunc for error-returning handlers by @dmeremyanin in https://github.com/genkit-ai/genkit/pull/4805
- fix(go): allow WithPromptFS and WithPromptDir to be used together by @dmeremyanin in https://github.com/genkit-ai/genkit/pull/4800
- refactor(go/plugins/googlegenai): update plugin structure by @apascal07 in https://github.com/genkit-ai/genkit/pull/4414
- feat(go/plugins/anthropic): support native structured output by @hugoaguirre in https://github.com/genkit-ai/genkit/pull/4701
- fix(go/plugins/anthropic): resolve models using aliases by @hugoaguirre in https://github.com/genkit-ai/genkit/pull/4703
- fix(go/plugins/googlegenai): fixed tool thought signature by @apascal07 in https://github.com/genkit-ai/genkit/pull/4798
Full Changelog: https://github.com/genkit-ai/genkit/compare/go/v1.4.0...go/v1.4.1
- gemini-3-pro-preview is deprecated
- Support for new Claude models via Vertex AI
- Deep-research capability for Google AI
- Enhanced trace filtering with array-based eq/neq and numeric filters (gt, gte, lt, lte)
Full changelog
What's Changed
- feat: Update trace filtering to support array-based eq/neq filters and numeric filters (gt, gte, lt, lte) by @shrutip90 in https://github.com/firebase/genkit/pull/4781
- feat(js/plugins/vertexai/modelgarden): New Claude models by @ifielker in https://github.com/firebase/genkit/pull/4826
- feat(js/plugins/google-genai): Added deep-research for googleai by @ifielker in https://github.com/firebase/genkit/pull/4831
- feat(js/plugins/compat-oai): add translation adapter and add translation flow in testapps by @7hokerz in https://github.com/firebase/genkit/pull/4786
- feat(js): fix missing part exports by @MichaelDoyle in https://github.com/firebase/genkit/pull/4816
- feat(js/plugins/google-genai): Nano Banana 2 support by @ifielker in https://github.com/firebase/genkit/pull/4855
- chore(js/plugins/google-genai): Deprecate gemini-3-pro-preview by @ifielker in https://github.com/firebase/genkit/pull/4859
- feat(js/plugins/google-genai): Add *-latest versions for googleAI by @ifielker in https://github.com/firebase/genkit/pull/4876
- feat: allow multipart tool responses to include a metadata field. by @pavelgj in https://github.com/firebase/genkit/pull/4865
- feat(js/plugins/google-genai): Support for gemini-3.1-flash-lite-preview by @ifielker in https://github.com/firebase/genkit/pull/4883
- fix(evals): Use cast instead of parse, fix batch spans by @ssbushi in https://github.com/firebase/genkit/pull/4890
- feat(js): add "fetch" plugin by @Ehesp in https://github.com/firebase/genkit/pull/4802
New Contributors
- @gurusai-voleti made their first contribution in https://github.com/firebase/genkit/pull/4814
- @Ehesp made their first contribution in https://github.com/firebase/genkit/pull/4802
Full Changelog: https://github.com/firebase/genkit/compare/v1.29.0...v1.30.1
- Anthropic plugin: cache control and PDF document support
- DeepSeek plugin: reasoning content extraction for R1 models
- xAI/Grok: structured output support
Full changelog
Genkit Python SDK v0.5.1
Next release of Genkit Python is here! We added new advanced features to two key model plugins, fixed sync/async bridge issues with several plugins, and overall improved plugin reliability based on testing feedback.
Highlights
- Anthropic — cache control and PDF document support
- DeepSeek — reasoning content extraction for R1 models
Async fixes
Several plugins were still using synchronous clients internally, causing event loop issues. This release migrates them all to proper async:
- DeepSeek: sync
OpenAI→AsyncOpenAI - Compat-OAI: sync →
AsyncOpenAI - Vertex AI: async client creation with threaded credential refresh
- Dev Local Vectorstore:
pathlib→aiofiles - Amazon Bedrock
boto3→aiboto3
Other notable fixes
- Fixed dotprompt deadlock
- Fixed streaming tool requests in Anthropic plugin
- Structured output support for xAI/Grok
- Nullable JSON Schema handling in Gemini plugin
- Data URI redaction in debug logs
- Graceful SIGTERM shutdown in dev runner
- Firebase telemetry refactor with lazy-loaded Google Cloud exporters
Contributors
Yesudeep Mangalapilly, Elisa Shen, Jeff Huang, Niraj Nepal, Prashant Kumar
- Gemini 3.1 models with custom tools and new embedder task types
- Streaming and reasoning support in dev:test-model command
- Docs discovery tools added to CLI and MCP
Full changelog
What's Changed
-
fix(js/plugin/compat-oai): preserve legacy image URL handling when contentType is missing by @7hokerz in https://github.com/firebase/genkit/pull/4209
-
fix(js/plugin/compat-oai): Fix type overload shadowing bug for OpenAI models with specific suffixes by @7hokerz in https://github.com/firebase/genkit/pull/4263
-
feat(js/plugins/compat-oai): generalize STT module naming and add gpt-4o-mini-transcribe by @7hokerz in https://github.com/firebase/genkit/pull/4280
-
test(js/plugins/compat-oai): Add test coverage for audio module by @7hokerz in https://github.com/firebase/genkit/pull/4330
-
fix(js/plugin/compat-oai): invalid model ID error in transcription models by @7hokerz in https://github.com/firebase/genkit/pull/4708
-
fix(js/core): Dap Action updates by @ifielker in https://github.com/firebase/genkit/pull/4050
-
chore(js/testapps/prompt-file): Fix Google AI provider and model configuration in testapps by @7hokerz in https://github.com/firebase/genkit/pull/4497
-
fix(js): migrated GenAI embedding model to gemini-embedding-001 in JS by @MengqinShen in https://github.com/firebase/genkit/pull/4568
-
feat(js/genkit): Added cancelOperation for backgroundModels by @ifielker in https://github.com/firebase/genkit/pull/4559
-
fix(js): duplicate sample project names by @yesudeep in https://github.com/firebase/genkit/pull/4578
-
feat(js/plugins/google-genai): Increased max download size for inline media... by @ifielker in https://github.com/firebase/genkit/pull/4656
-
fix(js): updated prompt files by @MengqinShen in https://github.com/firebase/genkit/pull/4677
-
docs(js/samples): add readmes for all samples by @yesudeep in https://github.com/firebase/genkit/pull/4706
-
chore(js/plugins/google-genai): model updates for vertexai by @ifielker in https://github.com/firebase/genkit/pull/4770
-
feat(js/plugins/google-genai): Updates: Gemini 3.1 and new embedder task types by @ifielker in https://github.com/firebase/genkit/pull/4776
-
feat(js/plugins/google-genai): Added parameters for Veo 3.1 by @ifielker in https://github.com/firebase/genkit/pull/4727
-
feat(js/plugins/google-genai): Added Gemini 3.1 & custom tools models by @ifielker in https://github.com/firebase/genkit/pull/4778
-
chore(js/plugins/googleai): Remove all references to googleai plugin by @ifielker in https://github.com/firebase/genkit/pull/4773
-
chore(js/testapps, samples): Remove deprecated model from testapps / samples by @ifielker in https://github.com/firebase/genkit/pull/4742
-
fix(js/ai): fixed dynamic multipart tools by @pavelgj in https://github.com/firebase/genkit/pull/4787
-
feat(cli): Add configurable CORS origin support to the telemetry server. by @pavelgj in https://github.com/firebase/genkit/pull/4777
-
fix(genkit-tools/mcp): More descriptive errors in MCP by @ssbushi in https://github.com/firebase/genkit/pull/4233
-
feat(genkit-tools/mcp): Add docs search in MCP by @ssbushi in https://github.com/firebase/genkit/pull/4452
-
feat(genkit-tools/cli): Add docs discovery tools to the CLI by @ssbushi in https://github.com/firebase/genkit/pull/4453
-
feat(js/plugins/anthropic): add prompt caching support by @cabljac in https://github.com/firebase/genkit/pull/4189
-
feat(cli): add streaming and reasoning to dev:test-model cmd by @hugoaguirre in https://github.com/firebase/genkit/pull/4235
-
chore(genkit-tools/init-ai): Update usage guides to gemini3 by @ssbushi in https://github.com/firebase/genkit/pull/4231
New Contributors
- @7hokerz made their first contribution in https://github.com/firebase/genkit/pull/4209
- @traut made their first contribution in https://github.com/firebase/genkit/pull/4329
- @prashant4nov made their first contribution in https://github.com/firebase/genkit/pull/4699
- @dmeremyanin made their first contribution in https://github.com/firebase/genkit/pull/4680
- @danicat made their first contribution in https://github.com/firebase/genkit/pull/4780
Full Changelog: https://github.com/firebase/genkit/compare/v1.28.0...v1.29.0
- PluginV2 refactor: plugin authors must update
- Async-first architecture: sync APIs removed
- Embed API refactored for JS SDK parity
- Path traversal hardening in Dotprompt
- Ruff security audit: all S-rules addressed
- 7 new model provider plugins
- 3 new telemetry plugins
- Dotprompt integration with Python 3.14 support
- Structured output support for Anthropic plugin
- Citations support for Anthropic plugin
- New models: gemini-3-flash-preview (Google GenAI) and Virtual Try On (Vertex AI)
Full changelog
What's Changed
- fix(js/plugins/anthropic): budgetTokens not working in UI by @CorieW in https://github.com/firebase/genkit/pull/3953
- fix(js/plugins/anthropic): use beta models list method in beta runner by @cabljac in https://github.com/firebase/genkit/pull/3954
- feat(js/plugins/anthropic): add structured output support by @cabljac in https://github.com/firebase/genkit/pull/3881
- feat(js/plugins/google-genai): Added support for gemini-3-flash-preview by @ifielker in https://github.com/firebase/genkit/pull/4031
- feat(cli): added dev:test-model cli command by @pavelgj in https://github.com/firebase/genkit/pull/4064
- feat(js/plugins/anthropic): add support for citations by @cabljac in https://github.com/firebase/genkit/pull/4190
- fix(genkit-tools/mcp): Fix MCP server failing to spin up runtime by @ssbushi in https://github.com/firebase/genkit/pull/4082
- feat(genkit-tools): add
/listValuesendpoint to expose defaultModel by @ssbushi in https://github.com/firebase/genkit/pull/4044 - fix(js/compat-oai): Fix handling slashes in model name by @ssbushi in https://github.com/firebase/genkit/pull/4191
- feat(js/plugins): Update known models for google-genai and vertexai/modelgarden by @ifielker in https://github.com/firebase/genkit/pull/4192
- feat(genkit-tools/mcp): MCP fix for Antigravity by @ssbushi in https://github.com/firebase/genkit/pull/4027
- feat(js/plugins/google-genai/vertexai): Added Virtual Try On model by @ifielker in https://github.com/firebase/genkit/pull/4218
- fix(js/core): Stop if reflection server fails initialization by @ssbushi in https://github.com/firebase/genkit/pull/4219
- fix(js): Schema compatibility for cfworker env by @ssbushi in https://github.com/firebase/genkit/pull/4116
New Contributors
- @Zereker made their first contribution in https://github.com/firebase/genkit/pull/3925
Full Changelog: https://github.com/firebase/genkit/compare/v1.27.0...v1.28.0
- Added session support
- Improved tool interrupts API ergonomics
Full changelog
What's Changed
- fix(go/ai): properly render dotprompt multi-message prompts by @MichaelDoyle in https://github.com/firebase/genkit/pull/4035
- fix(go/plugins/anthropic): update schema config by @hugoaguirre in https://github.com/firebase/genkit/pull/4080
- chore(go): added Godocs to generated types by @apascal07 in https://github.com/firebase/genkit/pull/4075
- fix(go): fixed panic when stream value is nil by @apascal07 in https://github.com/firebase/genkit/pull/4102
- chore(go): improved the Genkit Go package docs by @apascal07 in https://github.com/firebase/genkit/pull/4086
- fix(go): fixed bad dotprompt output format parsing by @apascal07 in https://github.com/firebase/genkit/pull/4109
- feat(go): added support for sessions by @apascal07 in https://github.com/firebase/genkit/pull/4067
- fix(go): fixed missing thought signatures on tool responses by @apascal07 in https://github.com/firebase/genkit/pull/4115
- feat(go): improved tool interrupts API to be more ergonomic by @apascal07 in https://github.com/firebase/genkit/pull/4112
Full Changelog: https://github.com/firebase/genkit/compare/go/v1.3.0...go/v1.4.0
- Anthropic plugin
- Background action and model support
- Code-defined schemas