Quickstart
This walks through installing the Genkit Operator and deploying a sample Flow backed by Anthropic Claude.
Prerequisites
Section titled “Prerequisites”- A Kubernetes cluster (v1.27+).
kindis fine for local testing. kubectland (optionally)helm3.16+.- An Anthropic API key (or credentials for any other supported provider).
1. Install the operator
Section titled “1. Install the operator”The fastest path is the published Helm chart:
helm install genkit-operator \ oci://ghcr.io/xavidop/charts/genkit-operator \ --version latest \ --namespace genkit-operator-system --create-namespacePrefer plain YAML? Use the bundled installer attached to each GitHub Release:
kubectl apply -f https://github.com/xavidop/genkit-operator/releases/latest/download/install.yamlVerify the controller is up:
kubectl -n genkit-operator-system get podskubectl get crds | grep genkit.dev2. Create provider credentials
Section titled “2. Create provider credentials”kubectl create secret generic anthropic-credentials \ --from-literal=ANTHROPIC_API_KEY=sk-ant-...3. Apply the sample CRs
Section titled “3. Apply the sample CRs”The repository ships a complete end-to-end example under
config/samples/:
kubectl apply -f https://raw.githubusercontent.com/xavidop/genkit-operator/main/config/samples/genkit_v1alpha1_pluginconfig.yamlkubectl apply -f https://raw.githubusercontent.com/xavidop/genkit-operator/main/config/samples/genkit_v1alpha1_model.yamlkubectl apply -f https://raw.githubusercontent.com/xavidop/genkit-operator/main/config/samples/genkit_v1alpha1_prompt.yamlkubectl apply -f https://raw.githubusercontent.com/xavidop/genkit-operator/main/config/samples/genkit_v1alpha1_tool.yamlkubectl apply -f https://raw.githubusercontent.com/xavidop/main/config/samples/genkit_v1alpha1_flow.yaml4. Watch reconciliation
Section titled “4. Watch reconciliation”kubectl get gpc,gmd,gpr,gtl,gflkubectl describe gfl greeterkubectl get deploy,svc,cm -l app.kubernetes.io/managed-by=genkit-operatorOnce the Deployment is ready, the Flow reports Phase=Running and a
Ready=True condition.
5. Call your flow
Section titled “5. Call your flow”kubectl port-forward svc/greeter 8080:8080 &curl -s -X POST http://localhost:8080/greeter \ -H 'content-type: application/json' \ -d '{"name":"world"}'6. Roll out a content change
Section titled “6. Roll out a content change”Edit the Prompt body and reapply:
kubectl edit prompt greetingThe operator recomputes the content hash, updates the Pod template
annotation genkit.dev/content-hash, and triggers a rolling update of
the Flow Deployment automatically.
Next steps
Section titled “Next steps”- Read the runtime contract to
learn how a runner consumes
/genkit/*. - Use
FlowSetto deploy several related flows in one Pod. - Add another provider — try AWS Bedrock.