$npx -y skills add zhaoxuya520/reverse-skill --skill competition-k8s-control-planeInternal downstream skill for ctf-sandbox-orchestrator. CTF-sandbox workflow for Kubernetes API analysis, service-account trust, RBAC edges, admission and controller behavior, cluster secrets, workload mutation, and namespace-scoped drift. Use when the user asks to inspect kube A
| 1 | # Competition K8s Control Plane |
| 2 | |
| 3 | Use this skill only as a downstream specialization after `$ctf-sandbox-orchestrator` is already active and has established sandbox assumptions, node ownership, and evidence priorities. If that has not happened yet, return to `$ctf-sandbox-orchestrator` first. |
| 4 | |
| 5 | Use this skill when the decisive path runs through Kubernetes control-plane state, API permissions, or controller behavior rather than a single container's runtime alone. |
| 6 | |
| 7 | Reply in Simplified Chinese unless the user explicitly requests English. |
| 8 | |
| 9 | ## Quick Start |
| 10 | |
| 11 | 1. Separate manifest intent from live cluster state: API objects, mutations, controllers, secrets, and resulting workloads. |
| 12 | 2. Identify the active principal first: service account, kubeconfig identity, node credential, webhook, or controller. |
| 13 | 3. Map the smallest control-plane edge to its workload effect. |
| 14 | 4. Keep RBAC, service accounts, owner references, namespace boundaries, and secret consumers in compact evidence blocks. |
| 15 | 5. Reproduce the smallest cluster action that yields the decisive workload or secret effect. |
| 16 | |
| 17 | ## Workflow |
| 18 | |
| 19 | ### 1. Map The API Trust Path |
| 20 | |
| 21 | - Record namespaces, service accounts, Roles, ClusterRoles, bindings, admission hooks, controllers, and the resources they can mutate. |
| 22 | - Distinguish read access, create access, patch access, exec access, and secret access. |
| 23 | - Keep principal, verb, resource, namespace, and resulting object in one chain. |
| 24 | |
| 25 | ### 2. Trace Mutation To Workload State |
| 26 | |
| 27 | - Show how an API action becomes a pod, volume mount, secret exposure, env injection, job run, or controller-created artifact. |
| 28 | - Compare checked-in YAML against live objects after defaulting, admission mutation, or controller reconciliation. |
| 29 | - Distinguish pod-runtime behavior from cluster-level mutation logic. |
| 30 | |
| 31 | ### 3. Reduce To The Decisive Cluster Path |
| 32 | |
| 33 | - Compress the result to the smallest chain: principal -> API permission -> mutated object -> resulting workload, secret, or route effect. |
| 34 | - Keep kube objects, live describes, and consumed secret or config paths tied to the same namespace and controller. |
| 35 | - If the problem narrows down to one container's mount or runtime deviation, switch back to the tighter container-runtime skill. |
| 36 | |
| 37 | ## Read This Reference |
| 38 | |
| 39 | - Load `references/k8s-control-plane.md` for the RBAC checklist, controller checklist, and evidence packaging. |
| 40 | - If the hard part is metadata-service reachability, workload identity, instance credentials, or metadata-derived privilege, prefer `$competition-cloud-metadata-path`. |
| 41 | |
| 42 | ## What To Preserve |
| 43 | |
| 44 | - Namespace, service account, verb, resource kind, RoleBinding or ClusterRoleBinding, and owner reference chains |
| 45 | - Admission mutations, generated workloads, mounted secrets, and controller-produced drift |
| 46 | - The exact API action or object diff that creates the decisive effect |