Skip to content
Back to skills

Crossplane Specialist

ASecurity

Deep-dive Crossplane platform review: XRD design, Composition correctness, provider config audit, managed resource health, and GitOps integration. Use for structured investigations of stuck Claims, composition pipeline bugs, and credential injection patterns. Triggers on: "Crossplane audit", "XRD review", "Composition debug", "stuck Claim", "managed resource stuck", "provider config review", "Crossplane GitOps".

  • 4 stars
  • 0 votes
  • 0 copies
  • 8 views
  • Added September 12, 2026
devopsgobashkubernetesdebugginggitapi

Works with

  • api

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned September 12, 2026

npx -y skills add aibot88/sec_skill_store --skill crossplane-specialist --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Crossplane Specialist?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Crossplane Specialist
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/aibot88-crossplane-specialist/badge)](https://www.skillsdirectory.com/skills/aibot88-crossplane-specialist)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
id: crossplane-specialist
name: crossplane-specialist
type: skill
version: 1.0.0
domain: [infra]
platform: [crossplane, kubernetes]
task: [debugging, review]
maturity: validated
description: >
  Deep-dive Crossplane platform review: XRD design, Composition correctness,
  provider config audit, managed resource health, and GitOps integration.
  Use for structured investigations of stuck Claims, composition pipeline bugs,
  and credential injection patterns. Triggers on: "Crossplane audit", "XRD review",
  "Composition debug", "stuck Claim", "managed resource stuck", "provider config
  review", "Crossplane GitOps".
argument-hint: "<XRD name, Claim name, or problem description>"
tools: Read, Grep, Glob, Bash
effort: max
model: opus
---

# Crossplane Specialist

Structured investigation for Crossplane-based infrastructure platforms. Five phases:
gather context, diagnose, design, recommend, verify.

## Arguments

- `$0` — XRD name, Claim name, or problem description. Required.

---

## Phase 1: Context Gathering

1. List installed providers and packages:
   ```bash
   kubectl get providers
   kubectl get configurations
   kubectl get functions
   ```
2. List XRDs and their ready status:
   ```bash
   kubectl get xrd
   ```
3. List Claims and Composites:
   ```bash
   kubectl get composite --all-namespaces
   kubectl get claim --all-namespaces
   ```
4. Glob for Crossplane manifests in the working directory:
   ```bash
   find . -name "*.yaml" | xargs grep -l "apiVersion: apiextensions.crossplane.io" | sort
   ```

---

## Phase 2: Diagnosis

**Stuck Claim / Composite trace:**

```bash
kubectl describe claim <name> -n <namespace>
kubectl describe composite <name>
kubectl get managed --all-namespaces | grep -v "True"
kubectl describe <managed-resource-kind> <name>
```

**Provider health:**

```bash
kubectl describe provider <name>
kubectl get providerconfig
kubectl describe providerconfig <name>
```

**Composition pipeline:**

```bash
kubectl get composition <name> -o yaml
kubectl get function --all-namespaces
```

---

## Phase 3: Design / Root-Cause Analysis

Map symptoms to causes:

| Symptom                     | Common Causes                                         | Check                                          |
| --------------------------- | ----------------------------------------------------- | ---------------------------------------------- |
| Claim stuck `Waiting`       | Composite not ready, no matching Composition          | `kubectl describe composite` → events          |
| Managed resource `NotFound` | Wrong external-name annotation, ID mismatch           | Provider docs for external-name format         |
| Provider `Unhealthy`        | Bad credentials, missing `ProviderConfig`             | `kubectl describe provider` events             |
| Composition patch fails     | Wrong `fromFieldPath`, type mismatch                  | `kubectl get composite -o yaml` patched fields |
| Function pipeline error     | Function pod crash, malformed `FunctionIO`            | `kubectl logs -n crossplane-system` function   |
| Deletion stuck (finalizer)  | Managed resource `Delete` policy, cloud resource busy | Check deletion policy + cloud console          |

Cite `kind:name` or `file:line` for every finding.

---

## Phase 4: Recommendations

Output findings in priority order:

```
[CRITICAL] <title>
Resource: <kind:name or file:line>
Issue: <one sentence>
Evidence: <kubectl output or config snippet>
Fix: <specific change, with YAML diff if applicable>
Trade-off: <alternative and its downside, if meaningful>
```

Order: CRITICAL → WARNING → INFO.

---

## Phase 5: Verification

After fixes are applied:

1. `kubectl get composite <name>` — `READY: True`, `SYNCED: True`.
2. `kubectl get managed` — all managed resources show `READY: True`.
3. `kubectl describe claim <name>` — no error events.
4. `kubectl apply --dry-run=server -f composition.yaml` — no schema errors.
5. If deletion policy changed: confirm behavior by deleting a test Claim in a non-prod environment.

---

## Reference Docs

| File                    | When to use                                               |
| ----------------------- | --------------------------------------------------------- |
| `xrd-design.md`         | XRD schema design, versioning, validation rules           |
| `compositions.md`       | Composition patch-and-transform, pipeline mode, Functions |
| `provider-configs.md`   | Credential injection, `ProviderConfig` patterns           |
| `managed-resources.md`  | External-name, deletion policy, resource lifecycle        |
| `gitops-integration.md` | Argo CD / Flux health checks, package management          |

Files in this skill

  • SKILL.md4.6 KB
  • source.json964 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.