CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

eks-troubleshooting

EKS troubleshooting and debugging guide covering pod failures, cluster issues, networking problems, and performance diagnostics. Use when diagnosing cluster issues, debugging pod failures (CrashLoopBackOff, Pending, OOMKilled), resolving networking problems, investigating performance issues, troubleshooting IAM/IRSA permissions, fixing image pull errors, or analyzing EKS cluster health.

Quality

80%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./skills/eks-troubleshooting/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

65%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body is highly actionable — dense with executable kubectl and AWS CLI commands, exit-code diagnostics, and concrete fixes — and the triage workflow is clearly sequenced. Its weaknesses are redundancy and structure: overlapping sections repeat commands and restate the description, and substantial failure-pattern detail is inlined that belongs in the existing reference files. Destructive emergency procedures lack validation steps.

Suggestions

Cut the duplicated content: remove 'Essential kubectl Commands' entries already demonstrated in 'Quick Diagnostic Workflow' and 'Common Pod Failure Patterns', drop the 'When to Use This Skill' section that restates the frontmatter description, and delete the 'Keywords' line — rely on the description for triggering.

Move the detailed failure-pattern walkthroughs (Pending/CrashLoopBackOff/ImagePullBackOff/OOMKilled, Node NotReady, IP exhaustion, performance diagnostics) into the corresponding reference files, keeping only the symptom → quick-check → pointer pattern in SKILL.md.

Add validation steps around the Emergency Procedures: before force-deleting a stuck pod, verify finalizer state and owning deployment health; after force drain/node deletion, confirm the node group replaced the node and workloads rescheduled.

DimensionReasoningScore

Conciseness

The body is command-dense and avoids explaining concepts Claude already knows, but contains several padded/redundant sections: 'Essential kubectl Commands' repeats commands already shown in 'Quick Diagnostic Workflow' and 'Common Pod Failure Patterns' (kubectl describe pod, logs --previous, get events --sort-by), 'When to Use This Skill' restates the frontmatter description, and a 'Keywords' line is trigger padding. This is 'could be tightened' territory (3) rather than minor over-explanation (4).

3 / 5

Actionability

Nearly every section provides copy-paste-ready kubectl/aws commands with placeholders (e.g. "kubectl get pod <pod-name> -n <namespace> -o jsonpath='{.status.containerStatuses[0].lastState.terminated.exitCode}'"), a concrete exit-code table mapping 137/139/143, and specific fixes like "kubectl set env daemonset aws-node -n kube-system ENABLE_PREFIX_DELEGATION=true" — fully executable guidance covering the common cases.

5 / 5

Workflow Clarity

The 'Quick Diagnostic Workflow' gives a clear triage → identify → deep-dive sequence with built-in health checks (cluster-info, /healthz), but the 'Emergency Procedures' section performs destructive operations ("kubectl delete pod --grace-period=0 --force", forced drains, node deletion) with no validation before or verification after; the rubric's cap for destructive workflows without validation holds this at 3.

3 / 5

Progressive Disclosure

The three references (cluster-issues.md, workload-issues.md, networking-issues.md) exist, are clearly signaled in 'Reference Guides' and the Deep Dive step, and are one level deep (no nested references inside them). However, ~400 lines of inline failure-pattern detail (Pending/CrashLoopBackOff/ImagePullBackOff/OOMKilled, Node NotReady, IP exhaustion, performance) duplicate the reference files' domains — content that should be separate is inline.

3 / 5

Total

14

/

20

Passed

Description

88%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description: it clearly states what the skill covers and provides an explicit, multi-trigger 'Use when' clause with concrete failure-mode names. Trigger coverage is broad but omits a few natural variations (node NotReady, DNS, kubectl), and the generic pod-failure triggers create minor overlap risk with a non-EKS Kubernetes debugging skill.

DimensionReasoningScore

Specificity

The 'Use when' clause lists seven concrete actions with named failure conditions — "diagnosing cluster issues, debugging pod failures (CrashLoopBackOff, Pending, OOMKilled), resolving networking problems, investigating performance issues, troubleshooting IAM/IRSA permissions, fixing image pull errors, or analyzing EKS cluster health" — giving comprehensive, specific coverage of the domain rather than the minor gaps of the level-4 anchor.

5 / 5

Completeness

Explicitly answers both questions: the 'what' ("EKS troubleshooting and debugging guide covering pod failures, cluster issues, networking problems, and performance diagnostics") and a concrete 'when' ("Use when diagnosing cluster issues, debugging pod failures...") with seven concrete trigger phrases, matching the level-5 anchor exactly.

5 / 5

Trigger Term Quality

Includes natural phrases users would actually say ("CrashLoopBackOff", "Pending", "OOMKilled", "image pull errors", "IAM/IRSA permissions", "cluster health"), but common variations like node NotReady, DNS resolution, and kubectl are absent, matching the 'good coverage; a few natural terms missing' anchor rather than comprehensive.

4 / 5

Distinctiveness Conflict Risk

EKS-specific anchors (IAM/IRSA, EKS cluster health, image pull) carve a clear niche, but generic triggers like "debugging pod failures (CrashLoopBackOff, Pending)" would also fire for a plain Kubernetes-troubleshooting skill, so the 'mostly distinct; minor overlap risk' anchor fits better than minimal-conflict level 5.

4 / 5

Total

18

/

20

Passed

Validation

93%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

SKILL.md is long (626 lines); consider splitting into references/ and linking

Warning

Total

15

/

16

Passed

Repository

fernandezbaptiste/Skrillz

Path

skills/eks-troubleshooting/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.