developing-genkit-tooling
Best practices for authoring Genkit tooling, including CLI commands and MCP server tools. Covers naming conventions, architectural patterns, and consistency guidelines.
Installation
Pick a client and clone the repository into its skills directory.
Installation
About this skill
Best practices for authoring Genkit tooling, including CLI commands and MCP server tools. Covers naming conventions, architectural patterns, and consistency guidelines.
How to use
Zapoznaj się z konwencją nazewnictwa dla komend CLI: używaj kebab-case z dwukropkami jako separatorami (np.
flow:run,eval:run). W kodzie argumenty piszesz camelCase (flowName), ale w tekście pomocy używasz standardowego formatu (<flowName>).Dla narzędzi MCP stosuj snake_case (np.
list_flows,run_flow), aby zachować spójność ze standardami MCP.Implementując komendy CLI w
cli/src/commands/, użyj narzędziarunWithManagerdo zarządzania cyklem życia runtime'u projektu. ImportujrunWithManagerz../utils/manager-utilsi opakowuj logikę interakcji z managerem wewnątrz funkcji callback.Formatuj wyjście komend za pomocą
loggerz@genkit-ai/tools-common/utils. Jeśli komenda generuje dane, udostępnij opcje JSON lub zapisu do pliku. Dla operacji wspierających streaming (jakflow:run) dodaj flagę--streami kieruj wyjście na stdout.Rozróżnij między narzędziami statycznymi (np. dokumentacja, które nie wymagają kontekstu projektu) a narzędziami runtime'owymi (wymagającymi uruchomionego projektu Genkit). Każdy typ ma inny wzorzec rejestracji i zależności.