Must Gather Investigation
scylladb/scylla-operator
Investigate failed e2e tests from Ginkgo JSON reports and must-gather artifacts, systematically analyzing logs, events, and resource states to identify root causes.
Parse a Go e2e test from tests/e2e/, translate each step to kubectl and az CLI commands, and interactively replay the test against a live cluster.
$ npx skills add kubernetes-sigs/cloud-provider-azure --skill run-e2e-test -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install kubernetes-sigs/cloud-provider-azure run-e2e-test --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/kubernetes-sigs/cloud-provider-azure.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/run-e2e-test .claude/skills/run-e2e-test && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "run-e2e-test" agent skill from https://github.com/kubernetes-sigs/cloud-provider-azure/tree/master/.agents/skills/run-e2e-test into .claude/skills/run-e2e-test/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "run-e2e-test", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/kubernetes-sigs/cloud-provider-azure/tree/master/.agents/skills/run-e2e-testType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add kubernetes-sigs/cloud-provider-azure --skill run-e2e-test -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install kubernetes-sigs/cloud-provider-azure run-e2e-test --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kubernetes-sigs/cloud-provider-azure.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/run-e2e-test .agents/skills/run-e2e-test && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "run-e2e-test" agent skill from https://github.com/kubernetes-sigs/cloud-provider-azure/tree/master/.agents/skills/run-e2e-test into .agents/skills/run-e2e-test/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "run-e2e-test", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add kubernetes-sigs/cloud-provider-azure --skill run-e2e-test -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install kubernetes-sigs/cloud-provider-azure run-e2e-test --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kubernetes-sigs/cloud-provider-azure.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/run-e2e-test .cursor/skills/run-e2e-test && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "run-e2e-test" agent skill from https://github.com/kubernetes-sigs/cloud-provider-azure/tree/master/.agents/skills/run-e2e-test into .cursor/skills/run-e2e-test/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "run-e2e-test", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/kubernetes-sigs/cloud-provider-azure.git --path .agents/skills/run-e2e-test--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add kubernetes-sigs/cloud-provider-azure --skill run-e2e-test -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install kubernetes-sigs/cloud-provider-azure run-e2e-test --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kubernetes-sigs/cloud-provider-azure.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/run-e2e-test .gemini/skills/run-e2e-test && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "run-e2e-test" agent skill from https://github.com/kubernetes-sigs/cloud-provider-azure/tree/master/.agents/skills/run-e2e-test into .gemini/skills/run-e2e-test/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "run-e2e-test", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install kubernetes-sigs/cloud-provider-azure run-e2e-testInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add kubernetes-sigs/cloud-provider-azure --skill run-e2e-test -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/kubernetes-sigs/cloud-provider-azure.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/run-e2e-test .github/skills/run-e2e-test && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "run-e2e-test" agent skill from https://github.com/kubernetes-sigs/cloud-provider-azure/tree/master/.agents/skills/run-e2e-test into .github/skills/run-e2e-test/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "run-e2e-test", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add kubernetes-sigs/cloud-provider-azure --skill run-e2e-test -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install kubernetes-sigs/cloud-provider-azure run-e2e-test --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/kubernetes-sigs/cloud-provider-azure.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/run-e2e-test .opencode/skills/run-e2e-test && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "run-e2e-test" agent skill from https://github.com/kubernetes-sigs/cloud-provider-azure/tree/master/.agents/skills/run-e2e-test into .opencode/skills/run-e2e-test/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "run-e2e-test", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
run-e2e-testParse a Go e2e test from tests/e2e/, translate each step to kubectl and az CLI commands, and interactively replay the test against a live cluster.
Run E2E Test is an agent skill from kubernetes-sigs/cloud-provider-azure, published by the product's own GitHub organization. Parse a Go e2e test from tests/e2e/, translate each step to kubectl and az CLI commands, and interactively replay the test against a live cluster. Use when the user wants to manually run, debug, or reproduce an e2e test case, or when they mention replaying a test, running a test against a cluster, or verifying e2e test behavior with kubectl and az.
Its SKILL.md is about 3.8k tokens, which your agent loads only when the skill is triggered. The skill folder holds 7 other files, including scripts and reference files (for example `references/INDEX.md`, `references/patterns.md` and `scripts/analyze_test.py`).
It sits in Testing & QA, covering End-to-end testing, Container orchestration and Test generation. It works with Kubernetes and Microsoft Azure. The repository describes itself as: Cloud provider for Azure. The licence is Apache-2.0.
7 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 0201852. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 3 files in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
kubectlazpython3From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use kubectl and az, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Run E2E Test loads about 3.8k tokens when it runs, and up to ~6.9k if it reads all its reference files. Until then it costs about 91 tokens; SKILL.md has 1,977 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from kubernetes-sigs/cloud-provider-azure at commit 0201852, republished under its Apache-2.0 licence (© kubernetes-sigs). 1,977 words, ~3,811 tokens.
.claude/skills/run-e2e-test/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.Use this skill when the user wants to manually replay a cloud-provider-azure e2e
test case against a live Kubernetes cluster. The skill parses the Go test source,
translates each step to CLI commands (kubectl / az), and guides interactive
execution.
az login completed (active Azure session)KUBECONFIG pointing at the target clusterkubectl available on $PATHpython3 available on $PATH| Input | Required | Description |
|---|---|---|
| Test file path | Yes | Path to a Go test file under tests/e2e/, e.g. tests/e2e/network/ensureloadbalancer.go |
| Test name | No | Name of a specific It(...) block to replay. If omitted, list all test cases and ask which one(s) to run |
--skip-context-check | No | Skip the interactive cluster confirmation prompt |
Replace <SKILL_DIR> with the path to this skill directory.
Unless --skip-context-check is passed:
python3 <SKILL_DIR>/scripts/check_context.pyThis displays the current kube context, cluster endpoint, and Azure subscription. Ask the user to confirm this is the correct cluster before proceeding. If the user says no, stop and ask them to switch context.
python3 <SKILL_DIR>/scripts/analyze_test.py <test-file-path> [--test-name "<test name>"] [--json]This parses the Go test file and outputs a structured plan with:
variables: Go const/var declarations (deployment names, service names,
labels, ports) extracted from the file — use these to resolve ${VAR}
placeholders in emitted commandssetup: BeforeEach steps (namespace, deployment, Azure client init)test_cases: list of It(...) blocks, each with ordered stepsteardown: AfterEach cleanup stepsEach step includes:
type: k8s_create, k8s_update, k8s_delete, k8s_wait, az_create,
az_read, az_delete, az_wait, connectivity_check, assertion, phasedescription: human-readable explanationcommand: suggested CLI command(s)wait: polling parameters if applicableverify: what to check in the outputUse --json to get machine-readable JSON output instead of the human-readable
format:
python3 <SKILL_DIR>/scripts/analyze_test.py tests/e2e/network/ensureloadbalancer.go --jsonIf --test-name is provided, only that test case is included. Otherwise all
test cases are listed.
The variables field in the JSON output lists Go constants and variable
declarations extracted from the test file header. Use them to populate
${VAR} placeholders in the emitted commands. For example, if the output
contains "testBaseName": "service-lb", substitute ${DEPLOYMENT_NAME} with
the value derived from that constant. Some variables may reference other Go
symbols — in that case, read the test source to resolve the chain.
Present the extracted plan to the user. For each test case show:
Ask the user to confirm before executing. They may choose to skip certain steps or modify parameters.
Run the setup steps:
kubectl create namespace <generated-name>kubectl apply -f -kubectl wait --for=condition=ready pod -l <labels> -n <ns> --timeout=5maz network ... commandsTrack all created resources for cleanup.
If any setup step fails:
For each step in the test body:
kubectl apply -f -kubectl get svc -n <ns> <name> -o jsonpath='{.status.loadBalancer.ingress[*].ip}'az commands and check output matches assertionskubectl exec <exec-pod> -- nc -vz -w 4 <ip> <port>Before executing, read references/INDEX.md (the patterns index). For each
step in the plan, match the step's description keywords and step_type against
the index to identify which sections of references/patterns.md are needed.
Read only those sections using the line ranges from the index. Do not read the
entire patterns.md file.
On step failure, follow the Failure Flow waterfall in the Error Handling section. Key behaviors:
Run cleanup in reverse order:
Always offer cleanup even if a step failed. Track which resources were actually created to avoid deleting things that don't exist.
If a cleanup step fails:
Summarize the execution:
Always include:
Include if any failures occurred:
Always include:
scripts/check_context.py — display and validate current kube/Azure contextscripts/analyze_test.py — parse Go e2e test file into structured replay planreferences/INDEX.md — generated keyword and step-type index into
patterns.md; read this first to find which sections to loadreferences/patterns.md — comprehensive mapping of Go e2e test patterns to
kubectl and az CLI commands, including manifest templates and polling patternsscripts/gen_patterns_index.py — regenerate references/INDEX.md from
keyword annotations in patterns.md| Category | Examples | Behavior |
|---|---|---|
| Infrastructure | kubectl/az not found, cluster unreachable, Azure token expired, RBAC denied | Stop immediately. Report error. Jump to Step 6 (Cleanup) for already-created resources. |
| Setup failure | Pods stuck Pending/CrashLoopBackOff, PIP quota exceeded, subnet conflict | Stop. Run diagnostics. Report findings. Jump to Step 6. Do not proceed to Step 5. |
| Skip condition | Cluster is Basic LB but test requires Standard, wrong node pool type, VMSS-only test on non-VMSS | Skip the test. Report SKIP with reason. No cleanup needed (nothing was created for this test). |
| Assertion failure | LB rules don't match, NSG rule missing, wrong probe config, connectivity timeout, poll timeout | Record FAIL with actual vs expected. Run the matching diagnostic from the Diagnostics table. Ask the user: (a) Continue — skip dependent steps, proceed to next; (b) Pause — keep environment for manual investigation; (c) Abort — jump to Step 6; (d) Re-check — re-run this step's verification. |
| Cleanup failure | Resource in use, namespace stuck Terminating, deletion timeout | Warn. Retry once after 30s. List orphaned resources in final report. Continue to next cleanup step. |
Retry transient errors before classifying as a failure:
| Error Pattern | Retry | Wait |
|---|---|---|
| K8s API 409 (Conflict) — service/resource update | Yes, 5× | ~100ms, 200ms, 400ms, 800ms, 1s (match retry.DefaultRetry) |
| Azure 429 (TooManyRequests) | Yes, 3× | Honor Retry-After header; fall back to 60s, 120s, 240s |
| Azure 409 (Conflict) — resource being modified | Yes, 3× | 10s, 20s, 40s |
| K8s/Azure 5xx (InternalError, ServerTimeout) | Yes, 3× | 15s, 30s, 60s |
kubectl connection timeout | Yes, 3× | 15s, 30s, 60s |
| Auth/RBAC errors | No | — |
| Quota exceeded | No | — |
| Resource not found (404) | No | — |
When a step fails, run the relevant diagnostic before reporting:
| Failure | Diagnostic |
|---|---|
| Pod stuck Pending | kubectl describe pod -l app=${LABEL} -n $NS — check Events section |
| Pod CrashLoopBackOff | kubectl logs -l app=${LABEL} -n $NS --previous --tail=20 |
| Service no external IP | kubectl describe svc $SVC_NAME -n $NS — check Events section |
| Connectivity timeout | kubectl get endpoints $SVC_NAME -n $NS — check if endpoints exist |
| Azure resource not found | az resource show -g $RG -n <exact-name> --resource-type <type> -o json |
| LB provisioning stuck | az network lb show -g $RG -n $LB_NAME --query provisioningState -o tsv |
| PIP allocation failure | az network public-ip show -g $RG -n $PIP_NAME --query provisioningState -o tsv |
| Node issues | kubectl describe node <node-name> — check Conditions and Events |
When reporting diagnostic output, redact values of environment variables whose names contain SECRET, PASSWORD, TOKEN, KEY, or CONNECTION_STRING. Truncate log output to 20 lines.
Track all resources created during execution in your working memory:
Created resources:
k8s: namespace/e2e-test-abc123
k8s: deployment/deployment-lb-test (ns: e2e-test-abc123)
k8s: service/svc-test (ns: e2e-test-abc123)
k8s: pod/exec-agnhost (ns: e2e-test-abc123)
az: public-ip/pip-test (rg: mc_mygroup)Include both directly created resources (from your commands) and
indirectly created ones (discovered via az queries after Service
creation — e.g., LB rules, NSG rules, PIP allocated by the cloud
controller manager).
On early exit, use this list for targeted cleanup in Step 6.
If the agent session is interrupted during a pause, created resources become orphans. Re-run cleanup manually using the namespace name and resource names from the test's variable declarations.
When a command fails, evaluate in this order:
Is it retryable? Check the retry table. If yes, retry.
Is it an infrastructure error? (auth, cluster unreachable, command not found) → Stop. Report error. Jump to Step 6.
Is it a setup step failure? (Step 4) → Stop. Run diagnostics. Report. Jump to Step 6.
Is it a poll timeout? (wait for condition that never became true) → Treat as assertion failure.
Is it an assertion/verification failure? → Record FAIL with actual vs expected. Run the matching diagnostic from the Diagnostics table. Ask the user:
Batch mode: if more than 2 assertion failures have occurred in the current test case and the user selects Continue, offer: "Multiple assertions are failing. (a) Keep pause-on-failure, (b) Switch to auto-continue (record all remaining FAILs without pausing), (c) Abort to cleanup."
Pause warnings:
To identify dependent steps, check if a subsequent step uses a variable produced by the failed step. For example, if "Wait for service external IP" fails (no IP assigned), skip "Verify connectivity to service IP" since it depends on having a valid IP.
Describe,
When, Context, It, BeforeEach, AfterEach, By). Unusual or deeply
nested test structures may need manual interpretation by the agent.By(...) annotations are emitted as phase type steps rather than merged
into other steps. The agent should use them as context markers.consts.XxxAnnotation name is emitted.
Check pkg/consts/consts.go for the string value.variables field captures simple const/var string assignments. It
does not evaluate Go expressions or resolve cross-references.sed for POSIX-portable field extraction (no GNU grep -oP).references/patterns.md when it encounters a pattern
not covered by the analysis script output.kubectl get nodes -o jsonpath='{.items[0].spec.providerID}' → parse RG name.© kubernetes-sigs, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 5 other files (scripts, references) in .agents/skills/run-e2e-test of kubernetes-sigs/cloud-provider-azure.
Open the folder on GitHubat commit 0201852
Run E2E Test next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Run E2E Test this skillkubernetes-sigs/cloud-provider-azure | 294 | — | ~3.8k | Automated safety check: Pass | Apache-2.0 | |
| Must Gather Investigationscylladb/scylla-operator | 401 | — | ~2.4k | Automated safety check: Pass | Apache-2.0 | |
| Kaniop Developmentpando85/kaniop | 131 | — | ~3.1k | Automated safety check: Pass | AGPL-3.0 | |
| Azureml K3s Compute Target Setupmicrosoft/physical-ai-toolchain | 123 | — | ~5.7k | Automated safety check: Notes | MIT | |
| Provider Bug Reviewmondoohq/mql | 412 | — | ~2.9k | Automated safety check: Pass | Custom licence | |
| Aspire MonitoringCommunityToolkit/Aspire | 629 | — | ~3.5k | Automated safety check: Pass | MIT |
scylladb/scylla-operator
Investigate failed e2e tests from Ginkgo JSON reports and must-gather artifacts, systematically analyzing logs, events, and resource states to identify root causes.
pando85/kaniop
Kaniop architecture, Rust controller conventions, commands, testing, and repository workflows.
microsoft/physical-ai-toolchain
Set up a K3s cluster on an NVIDIA GPU host, connect it to Azure Arc, and configure Azure ML to use it as a Kubernetes compute target.
mondoohq/mql
Deep static code review of an mql provider for logic errors, nil-handling bugs, pagination truncation, caching/id collisions, and other defects that silently give users wrong data.
CommunityToolkit/Aspire
ANALYSIS SKILL - Observe Aspire apps: logs, traces, metrics, resource state, telemetry export, browser telemetry, and the standalone dashboard.
karmab/kcli
Guides deployment and management of Kubernetes clusters with kcli.
kubernetes-sigs/cloud-provider-azure
Build cloud-provider-azure container images through the repo Makefile with explicit IMAGETAG and IMAGEREGISTRY inputs, optional make flag overrides, and opt-in bounded Docker or Podman retries.
kubernetes-sigs/cloud-provider-azure
Cherry-pick a merged pull request onto a release branch with Prow-style branch naming, manual conflict resolution, targeted validation, and GitHub PR creation.
kubernetes-sigs/cloud-provider-azure
Generate or update the documentation-site release note for a given tag, commit it on a branch, push it to a writable remote, and open a GitHub PR to the docs branch.
kubernetes-sigs/cloud-provider-azure
Create and optionally push the next Kubernetes-style release tag (vX.Y.Z) from a release-X.Y branch by resolving the remote branch tip, computing the next patch tag, and tagging the commit directly…
kubernetes-sigs/cloud-provider-azure
Raise Go modules to caller-supplied minimum fixed versions from CVE/GO findings in any format, per tracked module root, sync go.mod/go.sum and root vendor/, audit the source module graphs, run the…
kubernetes-sigs/cloud-provider-azure
Fetch and analyze Prow e2e pipeline failures for cloud-provider-azure.
Works with
Categories
Parse a Go e2e test from tests/e2e/, translate each step to kubectl and az CLI commands, and interactively replay the test against a live cluster. Run E2E Test is an agent skill from kubernetes-sigs/cloud-provider-azure, published by the product's own GitHub organization. Parse a Go e2e test from tests/e2e/, translate each step to kubectl and az CLI commands, and interactively replay the test against a live cluster.
Run E2E Test fits situations like: the user wants to manually run; reproduce an e2e test case; they mention replaying a test; running a test against a cluster.
Run `npx skills add kubernetes-sigs/cloud-provider-azure --skill run-e2e-test -a claude-code`. Or copy the skill folder (.agents/skills/run-e2e-test in kubernetes-sigs/cloud-provider-azure) into .claude/skills/run-e2e-test in your project. Claude Code loads it when a task matches its description.
Run `npx skills add kubernetes-sigs/cloud-provider-azure --skill run-e2e-test -a codex`. Or copy the skill folder (.agents/skills/run-e2e-test in kubernetes-sigs/cloud-provider-azure) into .agents/skills/run-e2e-test in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add kubernetes-sigs/cloud-provider-azure --skill run-e2e-test -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/run-e2e-test, .gemini/skills/run-e2e-test, .github/skills/run-e2e-test and .opencode/skills/run-e2e-test in your project.
Going by SKILL.md and its folder, Run E2E Test needs Python for the scripts in its folder and the command-line tools its instructions call (kubectl, az and python3). Our summary lists: Python 3.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Run E2E Test is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.8k tokens (SKILL.md is roughly 15k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 3.1k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Run E2E Test: Must Gather Investigation (scylladb/scylla-operator, 401 stars), Kaniop Development (pando85/kaniop, 131 stars), Azureml K3s Compute Target Setup (microsoft/physical-ai-toolchain, 123 stars) and Provider Bug Review (mondoohq/mql, 412 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
kubernetes-sigs (a GitHub organization, an official publisher) maintains it in kubernetes-sigs/cloud-provider-azure, which has 294 GitHub stars. The repository holds 12 skills in this directory. The repository was last updated on October 9, 2026.
Source: kubernetes-sigs/cloud-provider-azure on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.