Toolinglibrary
developing-genkit-python
Develop AI-powered applications using Genkit in Python. Use when the user asks about Genkit, AI agents, flows, or tools in Python, or when encountering Genkit errors, import issues, or API problems.
firebase/agent-skillsdocs.astral.sh
Install
Use with your agent
Install the developing-genkit-python skill, then use it as build context. Run: npx skills add https://github.com/firebase/agent-skills --skill developing-genkit-python. Then read the installed skill.md and follow its guidance to build or refactor my project.
Genkit 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.