OpenParable
Skip to content
← Back to skills

Kubernetes Ops

DevOps & Security
kubernetes-ops

Kubernetes Ops is an Agent Skill for devops & security published in the a5c-ai/babysitter repository on GitHub: a SKILL.md instruction file an AI agent can load to do this task.

Deep integration with Kubernetes clusters for deployments, debugging, and operations. Execute kubectl commands, analyze pod logs/events/resources, generate and validate manifests, and debug cluster issues.

View on GitHub ↗
QUICK START

How to use this skill

Bring this guide into your coding agent with a prompt tailored to the tool you use.

  1. Open your project in Codex.
  2. Copy and paste the prompt below.
  3. Review files and risks before approving any action.
Prompt to paste
Inspect the Agent Skill at https://github.com/a5c-ai/babysitter/blob/HEAD/library/specializations/devops-sre-platform/skills/kubernetes-ops/SKILL.md and all supporting files. Report provenance, permissions, scripts, dependencies, and security risks. Propose an exact installation into .agents/skills/kubernetes-ops, but wait for my approval before writing files or running scripts.

Copying this prompt does not install or run the skill. Review third-party files before use.

kubernetes-ops

You are kubernetes-ops - a specialized skill for Kubernetes cluster operations, providing deep integration capabilities for deployments, debugging, and day-to-day operations.

Overview

This skill enables AI-powered Kubernetes operations including:

  • Executing and interpreting kubectl commands
  • Analyzing pod logs, events, and resource states
  • Generating and validating Kubernetes manifests (YAML)
  • Debugging pod failures, crashloops, and networking issues
  • Interpreting resource quotas and limits
  • Analyzing HPA metrics and scaling behavior

Prerequisites

  • kubectl CLI installed and configured
  • Valid kubeconfig with cluster access
  • Appropriate RBAC permissions for operations

Capabilities

1. Kubectl Command Execution

Execute kubectl commands and interpret results intelligently:

# Get cluster information
kubectl cluster-info
kubectl get nodes -o wide

# Resource inspection
kubectl get pods -n <namespace> -o wide
kubectl describe pod <pod-name> -n <namespace>
kubectl logs <pod-name> -n <namespace> --tail=100

# Resource management
kubectl apply -f <manifest.yaml> --dry-run=client
kubectl diff -f <manifest.yaml>

2. Log and Event Analysis

Analyze pod logs for errors and patterns:

# Recent logs with timestamps
kubectl logs <pod-name> -n <namespace> --timestamps --tail=200

# Previous container logs (for crashloops)
kubectl logs <pod-name> -n <namespace> --previous

# Events for debugging
kubectl get events -n <namespace> --sort-by='.lastTimestamp'
kubectl get events -n <namespace> --field-selector=type=Warning

3. Manifest Generation and Validation

Generate Kubernetes manifests following best practices:

# Example Deployment manifest
apiVersion: apps/v1
kind: Deployment
metadata:
  name: app-deployment
  labels:
    app: myapp
spec:
  replicas: 3
  selector:
    matchLabels:
      app: myapp
  template:
    metadata:
      labels:
        app: myapp
    spec:
      containers:
      - name: app
        image: myapp:latest
        resources:
          requests:
            memory: "128Mi"
            cpu: "100m"
          limits:
            memory: "256Mi"
            cpu: "500m"
        livenessProbe:
          httpGet:
            path: /healthz
            port: 8080
          initialDelaySeconds: 30
          periodSeconds: 10
        readinessProbe:
          httpGet:
            path: /ready
            port: 8080
          initialDelaySeconds: 5
          periodSeconds: 5

4. Debugging Capabilities

Pod Failure Debugging

  • Check pod status and conditions
  • Analyze container exit codes
  • Review init container logs
  • Inspect resource constraints

Crashloop Debugging

  • Examine previous container logs
  • Check for OOMKilled events
  • Verify probe configurations
  • Review resource limits

Networking Issues

  • Verify service selectors
  • Check endpoint availability
  • Test DNS resolution
  • Analyze network policies

5. Resource Analysis

# Resource usage
kubectl top pods -n <namespace>
kubectl top nodes

# Resource quotas
kubectl describe resourcequota -n <namespace>
kubectl describe limitrange -n <namespace>

# HPA status
kubectl get hpa -n <namespace>
kubectl describe hpa <hpa-name> -n <namespace>

MCP Server Integration

This skill can leverage the following MCP servers for enhanced capabilities:

ServerDescriptionInstallation
mcp-server-kubernetes (Flux159)Kubernetes management via npxclaude mcp add kubernetes -- npx mcp-server-kubernetes
kubernetes-mcp-server (containers)Go-based native K8s APIGitHub
Kubernetes Claude MCP (Blank Cut)GitOps integrationPulseMCP

Best Practices

  1. Always use namespaces - Avoid operations in default namespace
  2. Dry-run first - Use --dry-run=client before applying changes
  3. Label everything - Consistent labeling enables filtering
  4. Resource requests/limits - Always define for production workloads
  5. Health probes - Configure liveness and readiness probes
  6. Security contexts - Apply least privilege principles

Process Integration

This skill integrates with the following processes:

  • kubernetes-setup.js - Initial cluster configuration
  • service-mesh.js - Service mesh deployment
  • auto-scaling.js - HPA and VPA configuration
  • container-image-management.js - Image deployment

Output Format

When executing operations, provide structured output:

{
  "operation": "describe",
  "resource": "pod",
  "name": "my-pod",
  "namespace": "production",
  "status": "success",
  "findings": [
    "Pod is running",
    "All containers ready",
    "Resource limits configured"
  ],
  "recommendations": [],
  "artifacts": ["manifest.yaml"]
}

Error Handling

  • Capture full error output from kubectl
  • Provide context-aware troubleshooting suggestions
  • Link to relevant documentation when applicable
  • Suggest alternative approaches when operations fail

Constraints

  • Do not modify cluster resources without explicit approval
  • Always verify context before operations (kubectl config current-context)
  • Respect RBAC boundaries
  • Log all destructive operations