Use when customizing Kubernetes configurations without templates using Kustomize overlays and patches.
Uses Kustomize to customize Kubernetes configurations with overlays and patches. Triggers when you need to modify base manifests for different environments without templates.
/plugin marketplace add TheBushidoCollective/han/plugin install jutsu-testng@hanThis skill cannot use any tools. It operates in read-only mode without the ability to modify files or execute commands.
Kubernetes configuration customization without templates.
app/
├── base/
│ ├── kustomization.yaml
│ ├── deployment.yaml
│ └── service.yaml
└── overlays/
├── development/
│ └── kustomization.yaml
└── production/
└── kustomization.yaml
# base/kustomization.yaml
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- deployment.yaml
- service.yaml
commonLabels:
app: myapp
namePrefix: myapp-
images:
- name: myapp
newTag: v1.0.0
# overlays/production/kustomization.yaml
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
bases:
- ../../base
replicas:
- name: myapp-deployment
count: 5
images:
- name: myapp
newTag: v2.0.0
patches:
- patch: |-
apiVersion: apps/v1
kind: Deployment
metadata:
name: myapp-deployment
spec:
template:
spec:
containers:
- name: myapp
resources:
limits:
memory: "1Gi"
cpu: "1000m"
# Build kustomization
kustomize build base/
# Build overlay
kustomize build overlays/production/
# Apply with kubectl
kubectl apply -k overlays/production/
# Diff before apply
kubectl diff -k overlays/production/
commonLabels:
app: myapp
environment: production
namePrefix: prod-
nameSuffix: -v2
namespace: production
configMapGenerator:
- name: app-config
files:
- config.properties
literals:
- LOG_LEVEL=info
secretGenerator:
- name: app-secrets
literals:
- password=secret123
Keep common configuration in base and environment-specific in overlays.
patches:
- path: patch-deployment.yaml
patchesJson6902:
- target:
group: apps
version: v1
kind: Deployment
name: myapp
patch: |-
- op: replace
path: /spec/replicas
value: 3
This skill should be used when the user asks to "create an agent", "add an agent", "write a subagent", "agent frontmatter", "when to use description", "agent examples", "agent tools", "agent colors", "autonomous agent", or needs guidance on agent structure, system prompts, triggering conditions, or agent development best practices for Claude Code plugins.
This skill should be used when the user asks to "create a slash command", "add a command", "write a custom command", "define command arguments", "use command frontmatter", "organize commands", "create command with file references", "interactive command", "use AskUserQuestion in command", or needs guidance on slash command structure, YAML frontmatter fields, dynamic arguments, bash execution in commands, user interaction patterns, or command development best practices for Claude Code.
This skill should be used when the user asks to "create a hook", "add a PreToolUse/PostToolUse/Stop hook", "validate tool use", "implement prompt-based hooks", "use ${CLAUDE_PLUGIN_ROOT}", "set up event-driven automation", "block dangerous commands", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.