Skill
Community

generating-helm-charts

Install
1
Install the plugin
$
npx claudepluginhub jeremylongshore/claude-code-plugins-plus-skills --plugin helm-chart-generator

Want just this skill?

Then install: npx claudepluginhub u/[userId]/[slug]

Description

Execute use when generating Helm charts for Kubernetes applications. Trigger with phrases like "create Helm chart", "generate chart for app", "package Kubernetes deployment", or "helm template". Produces production-ready charts with Chart.yaml, values.yaml, templates, and best practices for multi-environment deployments.

Tool Access

This skill is limited to using the following tools:

ReadWriteEditGrepGlobBash(helm:*)Bash(kubectl:*)
Supporting Assets
View in Repository
assets/README.md
assets/values_schema.json
references/README.md
scripts/README.md
scripts/helm_create.py
Skill Content

Generating Helm Charts

Overview

Generate production-ready Helm 3 charts for Kubernetes applications with Chart.yaml, values.yaml, Go templates, and helper functions. Support multi-environment deployments with values overrides, dependency management, security contexts, health probes, and resource limits following Helm best practices.

Prerequisites

  • Helm 3.x installed (helm version)
  • kubectl configured with cluster access for testing chart installation
  • Container images available in a registry accessible from the cluster
  • Understanding of application resource requirements (CPU, memory, ports, volumes)
  • Chart repository access if publishing (ChartMuseum, OCI registry, or GitHub Pages)

Instructions

  1. Analyze the application: identify container images, ports, environment variables, volumes, and dependencies
  2. Scaffold the chart structure: Chart.yaml, values.yaml, templates/, charts/, .helmignore
  3. Create Chart.yaml with apiVersion: v2, name, version, appVersion, and dependency declarations
  4. Define values.yaml with sensible production defaults: replica count, image config, resource limits, ingress settings
  5. Build templates using Go template syntax with proper .Values references and _helpers.tpl for reusable named templates
  6. Add health checks: livenessProbe and readinessProbe in the deployment template with configurable paths and thresholds
  7. Configure security context: runAsNonRoot: true, readOnlyRootFilesystem: true, and drop all capabilities
  8. Create environment-specific values files: values-dev.yaml, values-staging.yaml, values-prod.yaml
  9. Add NOTES.txt with post-install instructions showing how to access the application
  10. Validate with helm lint . and test rendering with helm template . --values values-prod.yaml

Output

  • Complete Helm chart directory structure
  • Chart.yaml with metadata and dependencies
  • values.yaml with documented, configurable defaults
  • Template files: deployment.yaml, service.yaml, ingress.yaml, configmap.yaml, serviceaccount.yaml, hpa.yaml
  • _helpers.tpl with name, label, and selector helper templates
  • NOTES.txt with post-install access instructions
  • Environment-specific values override files

Error Handling

ErrorCauseSolution
Chart.yaml: version is requiredMissing or malformed version fieldAdd a valid SemVer version string to Chart.yaml
parse error in templateGo template syntax error (missing end, wrong function)Run helm template . to pinpoint the error; check bracket matching and function names
dependency not foundChart dependency not downloadedRun helm dependency update to fetch dependencies into charts/
release failed: timed out waiting for conditionPods not reaching ready state during installCheck pod logs; verify image exists, resource limits are sufficient, and probes are correct
values override not appliedWrong values file path or key mismatchVerify --values file path and that keys match the structure in values.yaml exactly

Examples

  • "Generate a Helm chart for a Node.js API with 3 replicas, an Nginx ingress, PostgreSQL subchart dependency, and environment-specific values for dev and prod."
  • "Create a Helm chart for a stateful application with PersistentVolumeClaim, headless service, and configurable storage class."
  • "Package an existing set of Kubernetes manifests into a Helm chart with parameterized image tag, replica count, and resource limits."

Resources

Stats
Stars1676
Forks210
Last CommitMar 11, 2026

Similar Skills