Releases: genkit-ai/genkit
Genkit Go v1.6.0
Genkit Go v1.5.1
What's Changed
- fix(go/plugins/vertexai): fix plugin name collision and strict mode by @apascal07 in #5034
Full Changelog: py/v0.5.2...go/v1.5.1
Genkit JS and CLI 1.31.0
What's Changed
- feat(js/plugins/google-genai): Support for googleai multimodal embedder by @ifielker in #4905
- feat(trace-filter): Add string contains filter by @shrutip90 in #4929
- chore(js): Updating typescript to 5.9.3 and a few other chores by @ifielker in #4920
- fix(js): reflection context is always an object for runAction by @Ehesp in #4910
- feat(cli,js): implemented reflection API v2 in CLI and JS by @pavelgj in #4295
- feat(js/plugins/google-genai): Support for custom + builtin tools by @ifielker in #4983
- chore(js/plugins/googleai): Completely remove deprecated googleai plugin plus by @ifielker in #4948
- feat(js/plugins/google-genai): Support googleMaps tool for googleAI by @ifielker in #4990
- fix: update macos-14 runner to macos-15-intel for darwin-x64 builds by @pavelgj in #4993
- feat(cli): Introduced
start:fluttercommand for Flutter integration, added--write-env-fileoption tostartby @pavelgj in #4972 - chore(js/core): add action key for DAP dynamic actions by @ifielker in #5001
- feat(js/plugins/google-genai): Lyria 3 for googleAI by @ifielker in #5006
New Contributors
- @jeffdh5 made their first contribution in #4927
- @abdallahshaban557 made their first contribution in #4967
Full Changelog: v1.30.1...v1.31.0
Genkit Python SDK v0.5.2
GenKit 0.5.2 release notes
The big structural change in this release is a full pass on package layout, public API surface, and types (#4879), plus a simpler Dev UI integration path (#4812).
On the fixes side: we closed a batch of issues from a bug bash (#4987); FastAPI and Flask handlers should return errors in a shape clients can actually parse (#4954); reflection and streaming handle primitive values correctly now (#4958); Dev UI’s action list is cached and the Google GenAI plugin uses the right default embedding model for embeddings (#4956).
Multipart tool responses can carry an optional metadata field now (#4865).
Breaking changes
If you upgrade from 0.5.1, the main thing to watch is #4879: several imports and types moved. Expect missing modules and renamed symbols until you align with the new layout.
Migrating
Install the new version:
pip install -U "genkit==0.5.2"Bump the same version in pyproject.toml or requirements.txt if you pin it.
Then chase import errors. The supported modules to import from are genkit, genkit.model, genkit.embedder, and genkit.evaluator. Implementation code lives under genkit._ai and genkit._core; treat those as internal unless you know you need them.
Rough mapping: use from genkit import … for the main API (see __all__ in genkit/__init__.py). Use genkit.model for model types (that replaces the old genkit.model_types and most of what people pulled from genkit.types). Use genkit.embedder and genkit.evaluator for those protocols. Plugin work may still go through genkit.plugin_api where we document it.
Packages that no longer exist:
genkit.types→ split acrossgenkit,genkit.model,genkit.embedder(check each__init__.pyfor the symbol).genkit.model_types→genkit.modelgenkit.ai→from genkit import Genkitand the rest of the publicgenkitexportsgenkit.blocks,genkit.core,genkit.aio→ usegenkitandgenkit.modelin app code; don’t wire apps togenkit._ai. Only reach intogenkit._core.*if you’re doing something advanced—the old internals are undergenkit._coreandgenkit._ainow.
Tips
-
Do the upgrade in a branch. After bumping the dependency, run your test suite once—let it fail—and also run your type checker (
mypy,pyright, or whatever you use) over the same tree. Fix imports before you chase logic bugs; most failures will beModuleNotFoundErroror missing attributes until imports line up. -
When you’re not sure where a type moved, open the installed package (or this repo’s
py/packages/genkit/src/genkit/) and skimgenkit/__init__.py,genkit/model/__init__.py, andgenkit/embedder/__init__.py.
Genkit Go v1.5.0
What's Changed
- fix(go): fix error on tool requests during stream by @apascal07 in #4379
- fix(go): Remove raw bytes from the debug messages by @traut in #4329
- feat(go): add
NewFlowandNewStreamingFlowby @apascal07 in #4380 - feat(go): added channel-based streaming flow API by @apascal07 in #4186
- fix(go): handle loosely formatted JSON markdown blocks by @hugoaguirre in #4700
- feat(go/compat-oai): add OpenAI structured output API support by @dmeremyanin in #4680
- fix(go): added nil check for config in
ModelRefby @apascal07 in #4775 - fix(go): preserve error chain in GenkitError via Unwrap by @Zereker in #4527
- fix(go/plugins/googlegenai): fixed Vertex AI model resolution by @apascal07 in #4784
- fix(go): include
Typeproperty in seen struct types by @hugoaguirre in #4216 - feat(go): add HandlerFunc for error-returning handlers by @dmeremyanin in #4805
- fix(go): allow WithPromptFS and WithPromptDir to be used together by @dmeremyanin in #4800
- refactor(go/plugins/googlegenai): update plugin structure by @apascal07 in #4414
- feat(go/plugins/anthropic): support native structured output by @hugoaguirre in #4701
- fix(go/plugins/anthropic): resolve models using aliases by @hugoaguirre in #4703
- fix(go/plugins/googlegenai): fixed tool thought signature by @apascal07 in #4798
Full Changelog: go/v1.4.0...go/v1.4.1
Genkit Python SDK v0.5.2-rc.2
Release candidate.
Genkit Python SDK v0.5.2-rc.1
Release candidate.
Genkit JS and CLI 1.30.1
What's Changed
- feat: Update trace filtering to support array-based eq/neq filters and numeric filters (gt, gte, lt, lte) by @shrutip90 in #4781
- feat(js/plugins/vertexai/modelgarden): New Claude models by @ifielker in #4826
- feat(js/plugins/google-genai): Added deep-research for googleai by @ifielker in #4831
- feat(js/plugins/compat-oai): add translation adapter and add translation flow in testapps by @7hokerz in #4786
- feat(js): fix missing part exports by @MichaelDoyle in #4816
- feat(js/plugins/google-genai): Nano Banana 2 support by @ifielker in #4855
- chore(js/plugins/google-genai): Deprecate gemini-3-pro-preview by @ifielker in #4859
- feat(js/plugins/google-genai): Add *-latest versions for googleAI by @ifielker in #4876
- feat: allow multipart tool responses to include a metadata field. by @pavelgj in #4865
- feat(js/plugins/google-genai): Support for gemini-3.1-flash-lite-preview by @ifielker in #4883
- fix(evals): Use cast instead of parse, fix batch spans by @ssbushi in #4890
- feat(js): add "fetch" plugin by @Ehesp in #4802
New Contributors
- @gurusai-voleti made their first contribution in #4814
- @Ehesp made their first contribution in #4802
Full Changelog: v1.29.0...v1.30.1
Genkit JS 1.30.0-rc.0
What's Changed
- feat(telemetry-server): Update trace filtering to support array-based eq/neq filters and numeric filters (gt, gte, lt, lte) by @shrutip90 in #4781
- feat(js/plugins/vertexai/modelgarden): New Claude models by @ifielker in #4826
- feat(js/plugins/google-genai): Added deep-research for googleai by @ifielker in #4831
- feat(js/plugins/compat-oai): add translation adapter and add translation flow in testapps by @7hokerz in #4786
- feat(js): fix missing part exports by @MichaelDoyle in #4816
- feat(js/plugins/google-genai): Nano Banana 2 support by @ifielker in #4855
- chore(js/plugins/google-genai): Deprecate gemini-3-pro-preview by @ifielker in #4859
- feat(js/plugins/google-genai): Add *-latest versions for googleAI by @ifielker in #4876
- feat(js/ai): allow multipart tool responses to include a metadata field. by @pavelgj in #4865
New Contributors
- @gurusai-voleti made their first contribution in #4814
Full Changelog: v1.29.0...v1.30.0-rc.0
Genkit JS and CLI 1.29.0
What's Changed
-
fix(js/plugin/compat-oai): preserve legacy image URL handling when contentType is missing by @7hokerz in #4209
-
fix(js/plugin/compat-oai): Fix type overload shadowing bug for OpenAI models with specific suffixes by @7hokerz in #4263
-
feat(js/plugins/compat-oai): generalize STT module naming and add gpt-4o-mini-transcribe by @7hokerz in #4280
-
test(js/plugins/compat-oai): Add test coverage for audio module by @7hokerz in #4330
-
fix(js/plugin/compat-oai): invalid model ID error in transcription models by @7hokerz in #4708
-
chore(js/testapps/prompt-file): Fix Google AI provider and model configuration in testapps by @7hokerz in #4497
-
fix(js): migrated GenAI embedding model to gemini-embedding-001 in JS by @MengqinShen in #4568
-
feat(js/genkit): Added cancelOperation for backgroundModels by @ifielker in #4559
-
fix(js): duplicate sample project names by @yesudeep in #4578
-
feat(js/plugins/google-genai): Increased max download size for inline media... by @ifielker in #4656
-
fix(js): updated prompt files by @MengqinShen in #4677
-
docs(js/samples): add readmes for all samples by @yesudeep in #4706
-
chore(js/plugins/google-genai): model updates for vertexai by @ifielker in #4770
-
feat(js/plugins/google-genai): Updates: Gemini 3.1 and new embedder task types by @ifielker in #4776
-
feat(js/plugins/google-genai): Added parameters for Veo 3.1 by @ifielker in #4727
-
feat(js/plugins/google-genai): Added Gemini 3.1 & custom tools models by @ifielker in #4778
-
chore(js/plugins/googleai): Remove all references to googleai plugin by @ifielker in #4773
-
chore(js/testapps, samples): Remove deprecated model from testapps / samples by @ifielker in #4742
-
fix(js/ai): fixed dynamic multipart tools by @pavelgj in #4787
-
feat(cli): Add configurable CORS origin support to the telemetry server. by @pavelgj in #4777
-
fix(genkit-tools/mcp): More descriptive errors in MCP by @ssbushi in #4233
-
feat(genkit-tools/mcp): Add docs search in MCP by @ssbushi in #4452
-
feat(genkit-tools/cli): Add docs discovery tools to the CLI by @ssbushi in #4453
-
feat(js/plugins/anthropic): add prompt caching support by @cabljac in #4189
-
feat(cli): add streaming and reasoning to dev:test-model cmd by @hugoaguirre in #4235
-
chore(genkit-tools/init-ai): Update usage guides to gemini3 by @ssbushi in #4231
New Contributors
- @7hokerz made their first contribution in #4209
- @traut made their first contribution in #4329
- @prashant4nov made their first contribution in #4699
- @dmeremyanin made their first contribution in #4680
- @danicat made their first contribution in #4780
Full Changelog: v1.28.0...v1.29.0