AgentSkillsCN

kubeasy-challenges

管理Kubeasy Kubernetes学习挑战——创建新挑战、审阅现有挑战,或基于K8s官方文档提炼创意。无论以何种身份参与Kubeasy挑战相关工作,均可使用此技能。

SKILL.md
--- frontmatter
name: kubeasy-challenges
description: Manage Kubeasy Kubernetes learning challenges - create new challenges, review existing ones, or generate ideas from K8s documentation. Use when working with Kubeasy challenges in any capacity.

Kubeasy Challenges

Unified skill for managing Kubeasy Kubernetes learning challenges.

Workflow Selection

User IntentReference to Read
Create a new challengereferences/create.md
Review/test a challengereferences/review.md → spawns agents/reviewer.md
Generate challenge ideasreferences/ideas.md
Quick start / examplesreferences/prompts.md

Common Resources

MCP Tools

Always available via the Kubeasy MCP:

ToolPurpose
kubeasy:get_challenge_schemaJSON schema for challenge.yaml + objectives
kubeasy:get_challenges_typesAvailable types (fix, build, migrate...)
kubeasy:get_challenges_themesAvailable themes
kubeasy:get_challengesList existing challenges (with filters)

Environment Paths

ComponentPath
Challenges repo/Users/paul/Workspace/kubeasy/challenges/
CLI repo/Users/paul/Workspace/kubeasy/kubeasy-cli/
CLI binary/Users/paul/Workspace/kubeasy/kubeasy-cli/kubeasy-cli
API key/Users/paul/Workspace/kubeasy/api_key
Challenge ideas/Users/paul/Workspace/kubeasy/challenges_ideas/

Challenge Structure

code
<slug>/
├── challenge.yaml    # Metadata + objectives (required)
├── manifests/        # K8s manifests for broken state (required)
│   └── *.yaml
└── policies/         # Kyverno policies to prevent bypasses (optional)
    └── protect.yaml

Repository Documentation

Read from the challenges repo before working:

FileContent
CHALLENGE_GUIDELINES.mdPhilosophy, design principles, anti-patterns

Objective Types (Quick Reference)

TypePurpose
statusCheck resource conditions (Ready, Available)
logFind strings in container logs
eventDetect forbidden K8s events (OOMKilled, Evicted)
metricsCheck restart count, replicas
connectivityHTTP connectivity tests

Full specs available via kubeasy:get_challenge_schema.

Core Principles

From CHALLENGE_GUIDELINES.md:

  1. Mystery Preserving: Never reveal root cause in descriptions
  2. Autonomy First: Users solve with standard kubectl, no artificial constraints
  3. Validate Outcomes: Check that it works, not how it was fixed
  4. Realism: Mirror actual production incidents