Skip to content
cccskills
FreePublished on GitHub

kubernetes

Kubernetes operations: debugging, security, RBAC, and infrastructure tooling.

The English summary is being prepared. Showing the original description.

Works withKubernetes
See how to install

Files included (4)

  • SKILL.md6.0 KB
  • references/cobalt-concurrency-patterns.md9.4 KB
  • references/cobalt-kvm-exporter.md17.2 KB
  • references/cobalt-testing-patterns.md9.4 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Kubernetes Skill

Three domains: debugging (pod triage, networking, resources), security (RBAC, pod hardening, network isolation, supply chain), and cobaltcore (KVM exporter, hypervisor metrics). Select by request signal, then follow the phases below.

Always specify -n <namespace> in every kubectl command. Use read-only commands to gather evidence before proposing changes.


Domain Selection

SignalDomain
CrashLoopBackOff, OOMKilled, ImagePullBackOff, PendingDebugging
Service unreachable, DNS failure, port-forwardDebugging (network)
CPU throttling, memory limit, disk pressureDebugging (resources)
RBAC, permissions, roles, ServiceAccountSecurity (access)
Pod hardening, container security, PodSecuritySecurity (pods)
NetworkPolicy, default-deny, namespace isolationSecurity (network)
Image signing, secrets, admission controlSecurity (supply chain)
KVM exporter, cobaltcore, hypervisor metricsCobaltcore

Phase 1: TRIAGE

Debugging Triage Flow

Follow this sequence for every pod or workload issue. Do not skip steps -- many failures are only visible in events and describe output, not in logs.

kubectl get pods -n <namespace> -o wide
kubectl describe pod <pod-name> -n <namespace>
kubectl logs <pod-name> -n <namespace> -c <container-name>
kubectl logs <pod-name> -n <namespace> -c <container-name> --previous
kubectl get events -n <namespace> --sort-by='.lastTimestamp'
kubectl exec -it <pod-name> -n <namespace> -c <container-name> -- /bin/sh

Always check --previous logs for crashed containers before current logs -- restarting destroys them permanently.

Diagnosis routing:

SymptomAction
CrashLoopBackOff, ImagePullBackOff, Pending, FailedSchedulingCheck describe output for events, previous logs, image pull errors
Service unreachable, DNS failureCheck service endpoints, CoreDNS, NetworkPolicy below
CPU throttling, OOMKill, disk pressureCheck resource limits, requests vs actual, node capacity
"no endpoints available for service"Compare svc selector with pod labels

Network debugging:

# Verify service has endpoints
kubectl get endpoints <service-name> -n <namespace>
# DNS lookup from inside cluster
kubectl run dns-debug --rm -it --restart=Never --image=busybox:1.36 -n <namespace> -- \
  nslookup <service-name>.<namespace>.svc.cluster.local
# Check CoreDNS
kubectl get pods -n kube-system -l k8s-app=kube-dns
kubectl logs -n kube-system -l k8s-app=kube-dns --tail=50
# Port-forward for local testing
kubectl port-forward svc/<service-name> -n <namespace> 8080:80

Security Domain Selection

For security requests, provide concrete YAML manifests from the patterns below. Reference-backed specifics, not generic advice.

RBAC patterns: Prefer namespace-scoped Roles over ClusterRoles. Write exact verbs and resources. Create dedicated ServiceAccounts per workload. Set automountServiceAccountToken: false on pods that need no API access.

apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
  namespace: app-team
  name: deployment-reader
rules:
  - apiGroups: ["apps"]
    resources: ["deployments"]
    verbs: ["get", "list", "watch"]

Pod security: Enforce PodSecurity labels at namespace level. All containers: runAsNonRoot: true, readOnlyRootFilesystem: true, allowPrivilegeEscalation: false, capabilities: drop: ["ALL"]. Use distroless base images. Pin image digests.

labels:
  pod-security.kubernetes.io/enforce: restricted
  pod-security.kubernetes.io/warn: restricted

Network policies: Start with default-deny for ingress and egress. Add allow-list rules per service. Always allow DNS egress (UDP/TCP 53).

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: default-deny-all
spec:
  podSelector: {}
  policyTypes: [Ingress, Egress]

Cobaltcore Domain

Components: KVM Exporter (cobaltcore-dev/kvm-exporter). Load references/cobalt-kvm-exporter.md for architecture, metric catalogs, configuration, and deployment. Pair with go-patterns for code, prometheus-grafana-engineer for metrics.


Phase 2: DIAGNOSE / RESPOND

Debugging: Follow the triage flow. Gather evidence with read-only commands before proposing changes.

Security: Provide copy-paste-ready YAML using the patterns in Phase 1.

Cobaltcore: Use component-specific references for architecture, metrics, concurrency patterns, and testing.


Phase 3: VERIFY

  • Debugging: Confirm the fix resolves the symptom with the same triage commands.
  • Security: Validate against the PodSecurity standards and RBAC least-privilege patterns above.
  • Cobaltcore: Verify against component test patterns in references/cobalt-testing-patterns.md.

Deep References

SignalReferenceContent
KVM exporter architecture, metrics, configreferences/cobalt-kvm-exporter.mdFull component reference (463 lines)
Cobaltcore concurrency, goroutine, semaphorereferences/cobalt-concurrency-patterns.mdGo concurrency patterns (268 lines)
Cobaltcore testing, mock, Kind clusterreferences/cobalt-testing-patterns.mdTesting strategies (271 lines)

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Manage multiple Claude Code accounts: add, list, check, launch, and install shell aliases for 10+ isolated CLAUDE_CONFIG_DIR profiles.

The English summary is being prepared. Showing the original description.

notque/vexjoy-agent442Updated Oct 17, 2026

Improve architecture across modules by deepening interfaces.

The English summary is being prepared. Showing the original description.

notque/vexjoy-agent442Updated Oct 17, 2026

Assessment: read-only inspection, codebase overview, value analysis, health checks, ADR consultation, decision analysis, multi-perspective critique.

The English summary is being prepared. Showing the original description.

notque/vexjoy-agent442Updated Oct 17, 2026

Background memory consolidation — overnight review, merge, and injection payload for memory files.

The English summary is being prepared. Showing the original description.

notque/vexjoy-agent442Updated Oct 17, 2026

Jev-driven browser automation: Jev picks operations, programs execute, a text model writes field values only when Jev cannot pick one from the goal.

The English summary is being prepared. Showing the original description.

notque/vexjoy-agent442Updated Oct 17, 2026

Write, compose, integrate, and improve programs that call Jev, TypeSafe's System One judgment model.

The English summary is being prepared. Showing the original description.

notque/vexjoy-agent442Updated Oct 17, 2026

See all skills by notque

Report a problem with this skill