agentleFS
notquenotque/vexjoy-agent/skills/infrastructure/kubernetes/SKILL.md

kubernetes

Skill448 starsChanged 5 days agoMITView on GitHub

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

31 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use gitops, documentation-site and 8 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • kcns008Skill

    gitops

    GitOps Agent (Flow) — manages ArgoCD applications, Helm charts, Kustomize overlays, deployment strategies (canary, blue-green, rolling), multi-cluster GitOps, and drift detection for Kubernetes and OpenShift clusters.

    Also in 4 projects that use this

  • KMaruthi2002Skill

    documentation-site

    Plan, build and maintain a documentation website for a product, API, library, platform or internal system: information architecture (tutorials, how-to guides, reference, explanation), choosing a static site generator or hosted docs platform, navigation and search, versioning for multiple releases, generated API reference, code samples that are tested and actually run, docs-as-code workflow with review, previews, link checking and CI, plus accessibility, internationalisation and analytics. Use when someone asks to create a docs site, developer portal, knowledge base, handbook site, migrate docs to a new generator, add versioning or search to docs, or fix docs that users cannot navigate or that have drifted from the product.

    Also in 3 projects that use this

  • SentrySkill

    datadog

    Query live Datadog telemetry (logs, metrics, traces, spans, monitors, incidents, dashboards, services, hosts) through Datadog's Pup CLI. Use when users ask to investigate production behavior in Datadog, including searching logs, checking monitor status, inspecting traces or spans, looking up incidents, finding services, or correlating metrics. Do not use it for Sentry issues, repository/source-code work, or ticketing.

    Also in 3 projects that use this

  • ihiteshguptaSkill

    terraform

    Expert in Infrastructure as Code with Terraform. Use for creating, managing, and versioning infrastructure across cloud providers.

    Also in 5 projects that use this

  • third-order-labsSkill

    project-scaffolding

    Templates, directory conventions, and document structure for long-form fiction projects. Contains the full template library — documents are created as the project needs them, not all at once.

    Also in 3 projects that use this

  • VercelSkill

    aws

    Emulated AWS cloud services (S3, SQS, Cognito, IAM, STS) for local development and testing. Use when the user needs to interact with AWS API endpoints locally, test S3 bucket and object operations, emulate SQS queues and messages, test Cognito sign-up, sign-in, JWTs, or Identity Pools, manage IAM users/roles/access keys, test STS assume role, or work without hitting real AWS APIs. Triggers include "AWS emulator", "emulate AWS", "mock S3", "local SQS", "test IAM", "emulate S3", "AWS locally", "STS assume role", or any task requiring local AWS service emulation.

    Also in 4 projects that use this

The file

We split this skill into the rules it gives an agent

8 rules. 0 are common, 4 are distinctive, and 4 are very specific to this project.

  • 0

    Common

    Most of the 26 edited versions we read keep these.

  • 4

    Distinctive

    This author's own choices. Worth a look.

  • 4

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Always specify -n <namespace> in every kubectl command.

    line 41
  2. Distinctive:

    Follow this sequence for every pod or workload issue.

    line 64
  3. Very specific:

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

    line 75
  4. Very specific:

    RBAC patterns: Prefer namespace-scoped Roles over ClusterRoles.

    line 105
  5. Distinctive:

    Network policies: Start with default-deny for ingress and egress.

    line 127
  6. Distinctive:

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

    line 147
  7. Distinctive:

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

    line 151
  8. Very specific:

    Cobaltcore: Verify against component test patterns in references/cobalt-testing-patterns.md.

    line 159

“Common” is measured: kept by at least 6 in 10 of the 26 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

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)

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.