CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

kubernetes-operator

Use when building a Kubernetes Operator — custom controllers that reconcile CRD state. Triggers on "build an operator", "CRD design", "reconcile loop", "controller-runtime", "kubebuilder", "operator-sdk", "metacontroller", "KOPF", "operator capability levels", or "custom resource". Ships CRD validator, reconcile-loop linter, and OperatorHub capability auditor (all stdlib Python), 4 references on the operator pattern + CRD design + reconcile patterns + tooling landscape, and a /operator-audit slash command. NOT a generic k8s skill — specifically the Operator pattern.

71

Quality

89%

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

The canonical home for this skill is kubernetes-operator in alirezarezvani/claude-skills

SKILL.md
Quality
Evals
Security

Quality

Content

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

A highly actionable, well-sequenced body with executable commands and validation-gated workflows, but it is held back by two issues: substantial triplicated content (failure modes → tool checks → anti-patterns) that inflates token cost, and a disclosure structure whose referenced files (references/*.md, scripts/*.py, assets/*) are absent from the bundle, making the quick-start commands unrunnable as shipped. Trimming the duplication and shipping the referenced files (or inlining only what exists) would lift it substantially.

Suggestions

Cut one of the three overlapping passes over the same failure modes — e.g., fold the 'Anti-patterns' section into the tool check lists (or vice versa) — since 'time.Sleep', finalizers, leader election, and status-vs-spec each currently appear three times.

Ship the referenced bundle files (references/*.md, scripts/*.py, assets/*) or remove the references to them; the quick-start commands currently point at scripts that do not exist in the bundle.

Trim the 'CRD design principles' and 'Reconcile loop principles' sections to only the skill's non-obvious opinions, moving standard operator knowledge (status subresource, conditions, finalizers, idempotency) into references/crd_design.md and references/reconcile_loop.md.

DimensionReasoningScore

Conciseness

The body is dense and list-driven rather than prose-padded, but it covers the same material roughly three times: the seven failure modes in 'Core principle' ('Don't requeue transient failures', 'Don't use finalizers', 'Block in reconcile') are restated as 'Anti-patterns' ('time.Sleep(30 * time.Second) inside reconcile', 'No finalizer', 'No leader election') and again inside each tool's check list ('time.Sleep inside reconcile is flagged'). The 'CRD design principles' and 'Reconcile loop principles' sections also largely restate standard operator knowledge Claude already has (status subresource, conditions, finalizers, idempotency). Anchor 3 — mostly efficient but includes unnecessary explanation/duplication that could be tightened; not 4 because the triple restatement is more than minor trimming.

3 / 5

Actionability

Everything is copy-paste executable: 'python "$SKILL/scripts/crd_validator.py" --crd config/crd/myapp.yaml', 'kubebuilder init --domain example.com --repo github.com/org/myapp-operator', 'python scripts/reconcile_lint.py --controller controllers/myapp_controller.go', plus a defined SKILL path variable, a slash command, and asset templates. Specific examples cover the common cases (validate CRD, lint controller, audit capability). Not 4: no gaps — even the workflows embed real commands and flags.

5 / 5

Workflow Clarity

The three workflows are numbered with explicit validation checkpoints and feedback loops: Workflow 1 step 4 'Run crd_validator.py → Fix every WARN before writing controller code', steps 6-7 run the linter and audit before testing in a kind cluster; Workflow 2 includes triage rules ('FAIL → block release', 'WARN → file an issue; fix in next 30 days'). This matches the anchor-5 pattern of clear sequences with explicit validation and error-recovery loops. Not 4: checkpoints and recovery handling are explicit in every workflow.

5 / 5

Progressive Disclosure

The body signals one-level-deep references clearly ('See references/crd_design.md for full detail. Quick rules:') and splits overview vs. detail sensibly. However, the referenced bundle files do not exist in this skill bundle — there is no references/, scripts/, or assets/ directory — so the four references, all three Python tools, and both asset templates cannot be reached, and the body carries all detail itself (full check lists, capability levels, tooling table). Anchor 3: structure is present but the disclosure structure is undermined and content that belongs in the referenced files is inlined. Not 4 because the broken/missing reference targets are more than a minor organization gap; not 2 because the in-body structure and signaling are genuinely good.

3 / 5

Total

16

/

20

Passed

Description

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

An exemplary description: third-person, concrete, enumerates natural trigger terms including all major operator frameworks, and explicitly states both what it does and when to use it, with an explicit disambiguating boundary against generic k8s skills. No changes needed.

DimensionReasoningScore

Specificity

The description lists multiple concrete capabilities — 'Ships CRD validator, reconcile-loop linter, and OperatorHub capability auditor (all stdlib Python)', '4 references on the operator pattern + CRD design + reconcile patterns + tooling landscape, and a /operator-audit slash command' — with comprehensive coverage and no filler. It is written in third person ('Ships', 'Triggers'), so no voice penalty applies. Not 4: coverage is comprehensive rather than having minor gaps; not below: every clause names a concrete artifact or action.

5 / 5

Completeness

It explicitly answers both questions: what ('custom controllers that reconcile CRD state'; ships three tools, references, and a slash command) and when ('Use when building a Kubernetes Operator' plus an explicit 'Triggers on...' list with concrete trigger phrases). Not 4: the 'when' is not merely present but enumerated with concrete triggers, matching the anchor-5 example structure.

5 / 5

Trigger Term Quality

Trigger coverage is comprehensive and natural: 'build an operator', 'CRD design', 'reconcile loop', 'controller-runtime', 'kubebuilder', 'operator-sdk', 'metacontroller', 'KOPF', 'operator capability levels', 'custom resource'. These are exactly the phrases a user building an operator would say, including all major framework names. Not 4: no obvious natural synonym is missing.

5 / 5

Distinctiveness Conflict Risk

A clear niche (the Operator pattern) with framework-specific triggers that no adjacent skill would claim, plus an explicit boundary: 'NOT a generic k8s skill — specifically the Operator pattern.' Minimal conflict risk with Helm/kubectl/security skills. Not 4: the explicit negative boundary removes even the minor overlap risk.

5 / 5

Total

20

/

20

Passed

Validation

87%

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

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

referenced_paths_exist

Referenced path issues: 14 missing

Warning

Total

14

/

16

Passed

Repository

alirezarezvani/claude-skills

Path

.gemini/skills/kubernetes-operator/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.