About developing-genkit-python
A development skill for building Genkit applications with Python. It guides setup, Google AI configuration, common patterns, error handling, and workflows for running and testing projects.
Key features
- 01Python project setup guidance
- 02Google AI plugin configuration
- 03Model ID and entrypoint patterns
- 04Examples for flows and tools
- 05FastAPI and Dotprompt references
- 06Dev UI and evaluation workflow
Use cases
- 01Bootstrapping a Genkit Python project
- 02Adding structured output or streaming
- 03Connecting flows to FastAPI
- 04Troubleshooting SDK and runtime errors
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ firebase/ agent-skills --skill developing-genkit-pythonAfter installing, type/developing-genkit-pythonin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
references/common-errors.mddotprompt.mddev-workflow.mdsetup.mdfastapi.mdexamples.mdevals.mdDetails
From the project READMEGenkit Python
Prerequisites
- Runtime: Python 3.14+,
uvfor deps (install). - CLI:
genkit --version— install vianpm install -g genkit-cliif missing.
New projects: Setup (bootstrap + env). Patterns and code samples: Examples.
Hello World
from genkit import Genkit
from genkit.plugins.google_genai import GoogleAI
ai = Genkit(
plugins=[GoogleAI()],
model='googleai/gemini-flash-latest',
)
async def main():
response = await ai.generate(prompt='Tell me a joke about Python.')
print(response.text)
if __name__ == '__main__':
ai.run_main(main())
Critical: Do Not Trust Internal Knowledge
The Python SDK changes often — verify imports and APIs against the references here or upstream docs. On any error, read Common Errors first.
Development Workflow
- Default provider: Google AI (
GoogleAI()),GEMINI_API_KEYin the environment. - Model IDs: always prefixed, e.g.
googleai/gemini-flash-latest(always-on-latest Flash alias; same pattern as other skills). - Entrypoint:
ai.run_main(main())for Genkit-driven apps (notasyncio.run()for long-lived servers started withgenkit start— see Common Errors). - After generating code, follow Dev Workflow for
genkit startand the Dev UI. - On errors: step 1 is always Common Errors.
References
- Examples: Structured output, streaming, flows, tools, embeddings.
- Setup: New project bootstrap and plugins.
- Common Errors: Read first when something breaks.
- FastAPI: HTTP,
genkit_fastapi_handler, parallel flows. - Dotprompt:
.promptfiles and helpers. - Evals: Evaluators and datasets.
- Dev Workflow:
genkit start, Dev UI, checklist.
Comments
Markdown supported