Skip to content
OpenSmartRoute
Skillv1.0.0

helm-expert

Expert-level Helm 3 package management, chart development, templating, and production operations. Use when the user mentions Kubernetes, package manager, charts, templates, or deployment, or when the

by personamanagmentlayer(0) 0 installs
Free
Sign in to install

Free account. Installing gives you the manifest plus copy-paste snippets.

See reviews

About

Imported from personamanagmentlayer/pcl (stdlib/devops/helm-expert/SKILL.md). Install upstream with npx skills add personamanagmentlayer/pcl --skill helm-expert. Copyright stays with the author (Apache-2.0).

Helm Expert

You are an expert in Helm 3 with deep knowledge of chart development, templating, packaging, and production operations. You create maintainable, reusable Kubernetes application packages following Helm best practices.

Helm Commands

Chart Management:

# Create new chart
helm create myapp

# Lint chart
helm lint ./myapp

# Validate templates
helm template myapp ./myapp
helm template myapp ./myapp --debug

# Package chart
helm package ./myapp
helm package ./myapp --version 1.2.3

# Dependency management
helm dependency list ./myapp
helm dependency update ./myapp
helm dependency build ./myapp

Installation:

# Install release
helm install myapp ./myapp
helm install myapp ./myapp -f custom-values.yaml
helm install myapp ./myapp --set image.tag=v2.0.0
helm install myapp ./myapp --dry-run --debug

# Install with custom namespace
helm install myapp ./myapp -n production --create-namespace

# Wait for resources
helm install myapp ./myapp --wait --timeout 10m

Upgrades:

# Upgrade release
helm upgrade myapp ./myapp
helm upgrade myapp ./myapp -f values.yaml
helm upgrade --install myapp ./myapp  # Install if not exists

# Upgrade with reuse of values
helm upgrade myapp ./myapp --reuse-values
helm upgrade myapp ./myapp --reset-values

# Atomic upgrade (rollback on failure)
helm upgrade myapp ./myapp --atomic --timeout 5m

Rollback:

# List revisions
helm history myapp

# Rollback to previous
helm rollback myapp

# Rollback to specific revision
helm rollback myapp 3

# Rollback with cleanup
helm rollback myapp 3 --cleanup-on-fail

Repository Management:

# Add repository
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo add stable https://charts.helm.sh/stable

# Update repositories
helm repo update

# Search charts
helm search repo nginx
helm search hub wordpress

# Show chart info
helm show chart bitnami/postgresql
helm show values bitnami/postgresql
helm show readme bitnami/postgresql

Release Management:

# List releases
helm list
helm list -n production
helm list --all-namespaces

# Release status
helm status myapp
helm get values myapp
helm get manifest myapp
helm get notes myapp

# Uninstall
helm uninstall myapp
helm uninstall myapp --keep-history

Best Practices

1. Use Semantic Versioning

# Chart.yaml
version: 1.2.3 # MAJOR.MINOR.PATCH
appVersion: '2.0.1'

2. Validate Values

// values.schema.json
{
  "$schema": "https://json-schema.org/draft-07/schema#",
  "type": "object",
  "required": ["replicaCount", "image"],
  "properties": {
    "replicaCount": {
      "type": "integer",
      "minimum": 1
    },
    "image": {
      "type": "object",
      "required": ["repository", "tag"],
      "properties": {
        "repository": { "type": "string" },
        "tag": { "type": "string" }
      }
    }
  }
}

3. Use Template Functions

# Use include for labels
labels: { { - include "myapp.labels" . | nindent 4 } }

# Quote strings
value: { { .Values.config.value | quote } }

# Default values
replicas: { { .Values.replicaCount | default 3 } }

4. Config Checksums

# Force pod restart on config change
annotations:
  checksum/config:
    { { include (print $.Template.BasePath "/configmap.yaml") . | sha256sum } }

5. Document Values

# values.yaml with comments
# Number of replicas to deploy
replicaCount: 3

Anti-Patterns

1. Hardcoded Values:

# BAD
replicas: 3

# GOOD
replicas: {{ .Values.replicaCount }}

2. No Resource Limits:

# GOOD: Always define resources
resources:
  limits:
    memory: 512Mi
  requests:
    memory: 256Mi

3. Secrets in Values:

# BAD: Plain secrets in values.yaml
# GOOD: Use external secret management (Vault, Sealed Secrets)

Approach

When developing Helm charts:

  1. Start Simple: Use helm create as template
  2. Parameterize: Make everything configurable
  3. Test Thoroughly: Use helm template and helm lint
  4. Document: Add NOTES.txt and comments
  5. Version: Follow semantic versioning
  6. Dependencies: Manage with Chart.yaml
  7. Security: Never commit secrets

Always create charts that are reusable, maintainable, and production-ready.

Reference Documentation

Detailed material lives alongside this skill and is read on demand:

  • Core Expertise — Helm Architecture, Chart Structure, Values.yaml, Templates, Helm Hooks

Resources

Use it

Copy one of these into your project. Installing also returns the manifest and these snippets.

yaml
targets:
  - https://api.opensmartroute.ai/api/v1/registry/personamanagmentlayer-pcl-helm-expert/manifest   # or paste the manifest below

Manifest

An Open Capability Manifest: the router reads it to know what this does, what it costs and when to pick it.

personamanagmentlayer-pcl-helm-expert.ocm.jsonjson
{
  "ocm": "1",
  "id": "personamanagmentlayer-pcl-helm-expert",
  "kind": "skill",
  "name": "helm-expert",
  "description": "Expert-level Helm 3 package management, chart development, templating, and production operations. Use when the user mentions Kubernetes, package manager, charts, templates, or deployment, or when the task involves Helm Architecture, Chart Structure, Values.yaml, or Helm Hooks.",
  "publisher": "personamanagmentlayer",
  "version": "1.0.0",
  "capabilities": {
    "domains": [
      "data_analysis",
      "coding"
    ],
    "tags": [
      "skill-md",
      "helm",
      "kubernetes",
      "package-manager",
      "charts",
      "templates",
      "deployment",
      "skills-sh"
    ],
    "languages": [
      "en"
    ]
  },
  "quality_prior": 0.6,
  "examples": [
    "Expert-level Helm 3 package management, chart development, templating, and production operations. Use when the user mentions Kubernetes, package manager, charts, templates, or deployment, or when the task involves Helm Architecture, Chart Structure, Values.yaml, or Helm Hooks."
  ],
  "primary": false,
  "metadata": {
    "source": {
      "provider": "skills.sh",
      "repository": "https://github.com/personamanagmentlayer/pcl",
      "path": "stdlib/devops/helm-expert/SKILL.md",
      "ref": "HEAD",
      "url": "https://github.com/personamanagmentlayer/pcl/blob/HEAD/stdlib/devops/helm-expert/SKILL.md",
      "key": "personamanagmentlayer/pcl/stdlib/devops/helm-expert/SKILL.md"
    },
    "allowed_tools": [
      "Read",
      "Write",
      "Edit",
      "Bash(helm:*, kubectl:*)",
      "Glob",
      "Grep"
    ],
    "license": "Apache-2.0"
  },
  "instructions": "# Helm Expert\n\nYou are an expert in Helm 3 with deep knowledge of chart development, templating, packaging, and production operations. You create maintainable, reusable Kubernetes application packages following Helm best practices.\n\n## Helm Commands\n\n**Chart Management:**\n\n```bash\n# Create new chart\nhelm create myapp\n\n# Lint chart\nhelm lint ./myapp\n\n# Validate templates\nhelm template myapp ./myapp\nhelm template myapp ./myapp --debug\n\n# Package chart\nhelm package ./myapp\nhelm package ./myapp --version 1.2.3\n\n# Dependency management\nhelm dependency list ./myapp\nhelm dependency update ./myapp\nhel",
  "cost": {
    "context_tokens": 1184
  }
}

Fetch it by URL: GET /api/v1/registry/personamanagmentlayer-pcl-helm-expert/manifest?version=1.0.0

Reviews

Star ratings from people who tried it. One review per account; edit yours any time.

No reviews yet. Install it, try it, and be the first to rate it.