CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

dt-obs-kubernetes

Kubernetes cluster, pod, node, and workload monitoring. Use when analyzing K8s health, resource optimization, pod failures, OOMKills, scheduling, or security posture. Also use for Kubernetes operational events like pod restarts, OOM events, evictions, and cluster event history. Trigger: "Kubernetes pods", "K8s cluster health", "OOMKill", "pod restarts", "container CPU", "namespace resource usage", "over-provisioned pods", "privileged containers", "pod placement", "K8s node capacity", "running containers by cluster", "workload scheduling", "pod evictions", "K8s labels and annotations", "kubernetes events", "pod restart events", "OOM events", "K8s event history". Do NOT use for explaining existing queries, product documentation questions, AWS-specific resource queries, service-level RED metrics, distributed tracing, or log analysis — use the relevant skill instead.

Quality

91%

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

SKILL.md
Quality
Evals
Security

Quality

Content

86%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 SKILL.md body is an effective query cookbook: executable DQL covering the major K8s monitoring use cases, sharp Dynatrace-specific gotchas, well-structured one-level-deep references with explicit load conditions, and validation/fallback guidance for the events workflow. Its weaknesses are minor — some repetition of the sum()-vs-avg() and time-range guidance, and workflows that read as query collections rather than strictly ordered procedures.

DimensionReasoningScore

Conciseness

The body is dense with non-obvious Dynatrace-specific gotchas Claude would not know ("calling avg() or sum() on a series field outside the timeseries {} block is not supported", "k8s.workload.kind values (always lowercase in DT...)") and does not explain general Kubernetes concepts, matching the 'efficient; minor instances of over-explanation that could be trimmed' anchor. It is not a 5 because the sum()-vs-avg() aggregation warning is repeated in three places and time-range guidance appears in both 'Query Types' and 'Best Practices'.

4 / 5

Actionability

Quotes: twenty-plus complete, executable DQL queries (e.g. "timeseries oom_kills = sum(dt.kubernetes.container.oom_kills), by: {k8s.pod.name...} | filter arraySum(oom_kills) > 0", the privileged-container query, the Davis-problems query with iAny(...)), plus a parameterized dql-template. These are copy-paste ready with concrete fields and cover the common cases (health check, right-sizing, OOM, events, security, HA, problems), matching the 'fully executable; copy-paste ready' anchor.

5 / 5

Workflow Clarity

Quotes: six numbered Common Workflows with sequenced queries, an explicit validation checkpoint ("Check which providers are active first... If none appear, use the get-events-for-kubernetes-cluster tool"), and an error-recovery table ("Troubleshooting: Problem | Cause | Solution"), which goes beyond the 'most checkpoints present' anchor. It falls short of 5 because several workflows (e.g. Cluster Health Check, Resource Optimization) are parallel query collections rather than ordered step sequences, and this read-only query skill has no destructive/batch operations requiring validate-fix-retry loops.

4 / 5

Progressive Disclosure

Quotes: "## When to Load References" with explicit per-file load conditions ("Load pod-debugging.md when: Investigating pod exit codes, crash loops..."), a Knowledge Base Structure overview mapping core vs advanced topics, and a References index with one-line descriptions. All 8 referenced files exist in references/ (including the linked anchor pod-debugging.md#service--pod-drill-down) and are exactly one level deep, matching the 'clear overview with well-signaled one-level-deep references' anchor.

5 / 5

Total

18

/

20

Passed

Description

95%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.

The description is a model example: a concrete one-line capability statement, an explicit 'Use when' clause, a comprehensive natural-language trigger list with synonyms, and a do-not-use boundary that routes adjacent domains to sibling skills. The only minor gap is that the action verbs remain generic (monitoring/analyzing) rather than naming distinct concrete operations.

DimensionReasoningScore

Specificity

Quotes: "Kubernetes cluster, pod, node, and workload monitoring", "analyzing K8s health, resource optimization, pod failures, OOMKills, scheduling, or security posture", "pod restarts, OOM events, evictions, and cluster event history" — the domain and many specific analysis targets are named, matching the 'several specific actions; minor gaps' anchor. It falls short of a 5 because the verbs stay generic ('monitoring', 'analyzing') rather than enumerating concrete actions like querying, filtering, or auditing, and it is well above a 3 since coverage spans health, cost, security, scheduling, and event history rather than 1-2 actions.

4 / 5

Completeness

Quotes: "Kubernetes cluster, pod, node, and workload monitoring" (explicit what) plus "Use when analyzing K8s health..." and a concrete Trigger list (explicit when with trigger phrases), and even negative scope ("Do NOT use for explaining existing queries..."). This directly matches the top anchor 'clearly and explicitly answers both what AND when with concrete trigger phrases' and exceeds the 4 anchor because the when-clause is explicit and specific.

5 / 5

Trigger Term Quality

Quotes: "OOMKill", "pod restarts", "container CPU", "over-provisioned pods", "privileged containers", "pod evictions", "K8s labels and annotations", "K8s event history" — 17 quoted trigger phrases covering synonyms and variations (OOMKill vs "OOM events", "pod restarts" vs "pod restart events", Kubernetes vs K8s) that users would naturally say. This matches the 'comprehensive coverage of natural terms including synonyms' anchor; nothing significant is missing for the domain.

5 / 5

Distinctiveness Conflict Risk

Quotes: "Kubernetes cluster, pod, node, and workload monitoring" with a clear K8s-observability niche, plus explicit exclusions "Do NOT use for... AWS-specific resource queries, service-level RED metrics, distributed tracing, or log analysis — use the relevant skill instead". The niche is distinct and the do-not-use list routes adjacent cases to other skills, matching the 'clear niche with distinct triggers; minimal conflict risk' anchor.

5 / 5

Total

19

/

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 (614 lines); consider splitting into references/ and linking

Warning

Total

15

/

16

Passed

Repository

Dynatrace/dynatrace-for-ai

Path

skills/dt-obs-kubernetes/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.