Sponsor Suno AI Music arrow_forward
Slash Command

K8s Helm Chart

Generate Helm chart for Kubernetes application

Type
Slash Command
GitHub stars
2.8k
License
MIT
Repo last updated
Sep 27, 2026

What K8s Helm Chart is

K8s Helm Chart is a slash command published in the jeremylongshore/tons-of-skills-marketplace repository on GitHub, which has about 2.8k stars. The repository describes itself as: “Model-agnostic agent-skills platform with a harness-free canonical layer, verified adapters, and the ccpi package manager. Explore at tonsofskills.com.”

A slash command is a reusable prompt saved as a markdown file and run by typing its name after a slash. In Claude Code, custom commands have been merged into skills: a file in .claude/commands/ and a skill folder in .claude/skills/ both create the same kind of command, and existing command files keep working.

K8s Helm Chart gives you a repeatable way to run the same instructions without retyping them, optionally with arguments.

How to install K8s Helm Chart

Claude Code

  1. Download k8s-helm-chart.md from the repository.
  2. Save it to ~/.claude/commands/ (all projects) or .claude/commands/ (one project). As a skill, you can instead save it as ~/.claude/skills/<name>/SKILL.md.
  3. Run it by typing / followed by its name.

Claude Cowork

  1. Turn the command into a skill: create a folder with the file saved as SKILL.md and zip it.
  2. In Customize → Skills, click +, then upload the ZIP.
  3. Run it from any task with / and the skill name.

New to extending Cowork? Our plugins guide and Customize guide explain how skills, plugins, and connectors fit together.

Inside the source file

An excerpt from plugins/packages/devops-automation-pack/plugins/04-kubernetes/commands/k8s-helm-chart.md, shared under the repository's MIT license. Read the full file on GitHub.

Creates production-ready Helm charts for Kubernetes applications with parameterized templates, values files, and best practices.

When to Use This

  • Package app for multiple environments (dev, staging, prod)
  • Need configurable deployments (replicas, resources, ingress)
  • Want version-controlled releases
  • Deploy to multiple clusters with different configs
  • Single environment deployment (use /k8s-manifest-generate)
  • Quick one-off deployment (use kubectl run)

How It Works

You are a Helm expert. When user runs /k8s-helm-chart or /kh:

  1. Detect application:
  • Identify workload type (Deployment, StatefulSet)
  • Determine configuration needs
  • Check for persistence requirements
  • Assess external access needs
  1. Generate chart structure:
   mychart/
   ├── Chart.yaml           # Chart metadata
   ├── values.yaml          # Default values
   ├── values-dev.yaml      # Dev overrides
   ├── values-prod.yaml     # Production overrides
   ├── templates/
   │   ├── deployment.yaml  # Parameterized deployment
   │   ├── service.yaml     # Parameterized service
   │   ├── ingress.yaml     # Conditional ingress
   │   ├── configmap.yaml   # Configuration
   │   ├── secret.yaml      # Secrets (template only)
   │   ├── hpa.yaml         # Auto-scaling (conditional)
   │   └── _helpers.tpl     # Template helpers
   └── README.md            # Usage documentation
  1. Parameterize templates:
  • Use Go templating ({{ .Values.* }})
  • Add conditionals for optional resources
  • Create reusable helpers
  • Apply naming conventions
  1. Provide values files:
  • Sensible defaults in values.yaml
  • Environment-specific overrides
  • Comments explaining each value
  1. Include deployment guide:
  • Installation commands
  • Upgrade procedures
  • Rollback instructions
  • Values customization guide

Output Format

# Complete chart directory structure
# Ready to use with helm install/upgrade
## Installation

### Install chart:

helm install myapp ./mychart -f values-prod.yaml


### Upgrade:

helm upgrade myapp ./mychart -f values-prod.yaml


### Rollback:

helm rollback myapp

Example

User: /kh (for Node.js API)

Questions:

  • App name? → nodejs-api
  • Chart version? → 1.0.0
  • Default image? → myregistry/nodejs-api:latest
  • Configurable options? → Replicas, resources, ingress, auto-scaling

Output:

# Chart.yaml
apiVersion: v2
name: nodejs-api
description: Production-ready Node.js API Helm chart
type: application
version: 1.0.0
appVersion: "1.0.0"
keywords:
  - nodejs
  - api
  - microservice
maintainers:
  - name: Your Name
    email: [email protected]
# values.yaml
# Default values for nodejs-api chart

# Docker image configuration
image:
  repository: myregistry/nodejs-api
  pullPolicy: IfNotPresent
  tag: "latest"  # Override this in production!

# Number of replicas
replicaCount: 3

# Resource limits and requests
resources:
  requests:
    cpu: 250m
    memory: 512Mi
  limits:
…
# values-dev.yaml
# Development environment overrides

replicaCount: 1

autoscaling:
  enabled: false

image:
  tag: "dev"

resources:
  requests:
    cpu: 100m
    memory: 256Mi
  limits:
    cpu: 250m
    memory: 512Mi
…
# values-prod.yaml
# Production environment overrides

replicaCount: 5

image:
  tag: "1.0.0"  # Specific version, not 'latest'

autoscaling:
  enabled: true
  minReplicas: 3
  maxReplicas: 20

resources:
  requests:
    cpu: 500m
    memory: 1Gi
  limits:
…
# templates/deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
  name: {{ include "nodejs-api.fullname" . }}
  labels:
    {{- include "nodejs-api.labels" . | nindent 4 }}
spec:
  {{- if not .Values.autoscaling.enabled }}
  replicas: {{ .Values.replicaCount }}
  {{- end }}
  selector:
    matchLabels:
      {{- include "nodejs-api.selectorLabels" . | nindent 6 }}
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxSurge: 1
…
# templates/service.yaml
apiVersion: v1
kind: Service
metadata:
  name: {{ include "nodejs-api.fullname" . }}
  labels:
    {{- include "nodejs-api.labels" . | nindent 4 }}
spec:
  type: {{ .Values.service.type }}
  ports:
    - port: {{ .Values.service.port }}
      targetPort: http
      protocol: TCP
      name: http
  selector:
    {{- include "nodejs-api.selectorLabels" . | nindent 4 }}
# templates/ingress.yaml
{{- if .Values.ingress.enabled -}}
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: {{ include "nodejs-api.fullname" . }}
  labels:
    {{- include "nodejs-api.labels" . | nindent 4 }}
  {{- with .Values.ingress.annotations }}
  annotations:
    {{- toYaml . | nindent 4 }}
  {{- end }}
spec:
  ingressClassName: {{ .Values.ingress.className }}
  {{- if .Values.ingress.tls }}
  tls:
    {{- range .Values.ingress.tls }}
    - hosts:
…

Before you install

  • Read the whole file first. Skills, commands, and subagents are instructions Claude will follow, so make sure they match what you want.
  • Check which tools, scripts, or MCP servers it uses. Local servers and scripts run with your permissions.
  • Try it in a test project or a copy of your files before pointing it at real work.
  • Pin the version you tested, and review changes before updating.
  • Watch for instructions that fetch web content or run shell commands; those are where prompt injection risks start. See our prompt injection guide.

FAQ

What is K8s Helm Chart?

K8s Helm Chart is a slash command for Claude Code and Claude Cowork from the jeremylongshore/tons-of-skills-marketplace repository on GitHub. Generate Helm chart for Kubernetes application

How do I install K8s Helm Chart in Claude Code?

Download k8s-helm-chart.md from the repository. Save it to ~/.claude/commands/ (all projects) or .claude/commands/ (one project). As a skill, you can instead save it as ~/.claude/skills/<name>/SKILL.md. Run it by typing / followed by its name.

Can I use K8s Helm Chart in Claude Cowork?

Turn the command into a skill: create a folder with the file saved as SKILL.md and zip it. In Customize → Skills, click +, then upload the ZIP. Run it from any task with / and the skill name.

Is K8s Helm Chart safe to install?

It is a third-party community resource, not reviewed by Anthropic or this site. Read the source file first, check which tools and connectors it uses, and install only from sources you trust.

Similar resources

Browse all skills, subagents, and plugins →

Listing data comes from the public GitHub repository and was last checked in September 2026. Excerpts are © their authors and shared under MIT. This directory is independent and not affiliated with Anthropic or the resource's authors.