K8

k8s-operations

Automate routine kubectl tasks and lifecycle management for Kubernetes resources.

Install

mkdir -p .claude/skills/k8s-operations && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/4908" && unzip -o skill.zip -d .claude/skills/k8s-operations && rm skill.zip

Installs to .claude/skills/k8s-operations

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

kubectl operations for applying, patching, deleting, and executing commands on Kubernetes resources. Use when modifying resources, running commands in pods, or managing resource lifecycle.
188 chars✓ has a “when” trigger
Intermediate

Key capabilities

  • Apply Kubernetes manifests from a string or file path
  • Patch existing Kubernetes resources with strategic or JSON merge patches
  • Delete Kubernetes resources by type, name, or label selector
  • Execute commands inside running pods, optionally specifying a container
  • Scale Kubernetes deployments or statefulsets to a desired replica count
  • Manage rollout status, history, and restarts for deployments

How it works

This skill executes kubectl commands through a tool to apply, patch, delete, or run commands on Kubernetes resources, supporting various operational tasks.

Inputs & outputs

You give it
Kubernetes resource manifests, resource types, names, namespaces, patch definitions, or commands to execute
You get back
Result of kubectl operation, such as resource creation, modification, deletion, or command output

When to use k8s-operations

  • Apply YAML manifests to a cluster
  • Scale a deployment to manage load
  • Execute shell commands inside a running pod
  • Patch resource configurations

About this skill

kubectl Operations

Execute kubectl commands using kubectl-mcp-server's operations tools.

When to Apply

Use this skill when:

  • User mentions: "apply", "patch", "delete", "exec", "scale", "rollout"
  • Operations: modifying resources, running commands, scaling workloads
  • Keywords: "update", "change", "modify", "run command", "restart"

Priority Rules

PriorityRuleImpactTools
1Dry run before apply in productionCRITICALkubectl_apply(dry_run=True)
2Check current state before patchingHIGHdescribe_* tools
3Avoid force delete unless necessaryHIGHkubectl_delete
4Verify rollout status after changesMEDIUMkubectl_rollout_status

Quick Reference

TaskToolExample
Apply manifestkubectl_applykubectl_apply(manifest=yaml)
Patch resourcekubectl_patchkubectl_patch(type, name, namespace, patch)
Delete resourcekubectl_deletekubectl_delete(type, name, namespace)
Exec commandkubectl_execkubectl_exec(pod, namespace, command)
Scale deploymentscale_deploymentscale_deployment(name, namespace, replicas)

Apply Resources

kubectl_apply(manifest="""
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx
  namespace: default
spec:
  replicas: 3
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:latest
""")

kubectl_apply(file_path="/path/to/manifest.yaml")

kubectl_apply(manifest="...", dry_run=True)

Patch Resources

kubectl_patch(
    resource_type="deployment",
    name="nginx",
    namespace="default",
    patch={"spec": {"replicas": 5}}
)

kubectl_patch(
    resource_type="deployment",
    name="nginx",
    namespace="default",
    patch=[{"op": "replace", "path": "/spec/replicas", "value": 5}],
    patch_type="json"
)

kubectl_patch(
    resource_type="service",
    name="my-svc",
    namespace="default",
    patch={"metadata": {"annotations": {"key": "value"}}},
    patch_type="merge"
)

Delete Resources

kubectl_delete(resource_type="pod", name="my-pod", namespace="default")

kubectl_delete(
    resource_type="pods",
    namespace="default",
    label_selector="app=test"
)

kubectl_delete(
    resource_type="pod",
    name="stuck-pod",
    namespace="default",
    force=True,
    grace_period=0
)

Execute Commands

kubectl_exec(
    pod="my-pod",
    namespace="default",
    command="ls -la /app"
)

kubectl_exec(
    pod="my-pod",
    namespace="default",
    container="sidecar",
    command="cat /etc/config/settings.yaml"
)

kubectl_exec(
    pod="my-pod",
    namespace="default",
    command="sh -c 'curl -s localhost:8080/health'"
)

Scale Resources

scale_deployment(name="nginx", namespace="default", replicas=5)

scale_deployment(name="nginx", namespace="default", replicas=0)

kubectl_scale(
    resource_type="statefulset",
    name="mysql",
    namespace="default",
    replicas=3
)

Rollout Management

kubectl_rollout_status(
    resource_type="deployment",
    name="nginx",
    namespace="default"
)

kubectl_rollout_history(
    resource_type="deployment",
    name="nginx",
    namespace="default"
)

kubectl_rollout_restart(
    resource_type="deployment",
    name="nginx",
    namespace="default"
)

rollback_deployment(name="nginx", namespace="default", revision=1)

Labels and Annotations

kubectl_label(
    resource_type="pod",
    name="my-pod",
    namespace="default",
    labels={"env": "production"}
)

kubectl_annotate(
    resource_type="deployment",
    name="nginx",
    namespace="default",
    annotations={"description": "Main web server"}
)

Related Skills

How it compares

This skill automates common kubectl operations, providing a programmatic interface for Kubernetes resource management instead of manual command-line execution.

Compared to similar skills

k8s-operations side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
k8s-operations (this skill)16moReviewIntermediate
k8s-gitops16moReviewIntermediate
terminal01moNo flagsIntermediate
bazel-build-optimization142moNo flagsAdvanced

Try saying

Example prompts that trigger this skill in your AI assistant.

More by rohitg00

View all by rohitg00

Search skills

Search the agent skills registry