Official agent skill

Analyze Skill Issues

by microsoft in microsoft/GitHub-Copilot-for-Azure

Query the integration-test storage account to find why a specific skill's tests are failing.

OfficialMITAuto-check passedTesting & QA

Install Analyze Skill Issues

skills CLI
$ npx skills add microsoft/GitHub-Copilot-for-Azure --skill analyze-skill-issues -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install microsoft/GitHub-Copilot-for-Azure analyze-skill-issues --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/microsoft/GitHub-Copilot-for-Azure.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.github/skills/analyze-skill-issues .claude/skills/analyze-skill-issues && rm -rf skills-src

Use ~/.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/

Facts

Skill name
analyze-skill-issues
GitHub stars
255
Token cost
~2.1k tokens
SKILL.md length
962 words
Files
2 (incl. references)
Skills in repo
56
Repo updated
First seen
Licence
MIT

At a glance

Query the integration-test storage account to find why a specific skill's tests are failing.

  • Works in 4 steps: Enumerate Recent Blobs for the Skill → Read Test Result Files → Extract Failure Information → …
  • : analyzing a GitHub Actions run report
  • SKILL.md covers Quick Reference, When to Use, Skill Name Mapping and MCP Tools, plus 3 more sections
  • Calls az

What it does

Analyze Skill Issues is an agent skill from microsoft/GitHub-Copilot-for-Azure, published by the product's own GitHub organization. Query the integration-test storage account to find why a specific skill's tests are failing. Reads blob-stored test result files and surfaces error details. TRIGGERS: why is skill failing, skill test failures, debug skill tests, skill failing tests, analyze skill failures, why are tests failing for skill, skill test errors, investigate skill issues. DO NOT USE FOR: analyzing a GitHub Actions run report or comparing test runs across runs (use analyze-test-run).

Its SKILL.md is about 2.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/blob-structure.md`).

It sits in Testing & QA, covering Failing and flaky tests, Integration testing and CI/CD. It works with Microsoft Azure, GitHub Actions and Model Context Protocol. The repository describes itself as: GitHub Copilot for Azure. The licence is MIT.

When your agent uses it

  • : analyzing a GitHub Actions run report
  • Comparing test runs across runs (use analyze-test-run)

Example prompts

  • “/analyze-skill-issues”

Workflow steps

4 steps, taken from the step headings in SKILL.md.

  1. Enumerate Recent Blobs for the Skill
  2. Read Test Result Files
  3. Extract Failure Information
  4. Summarize Failures

What it can do on your machine

Read from SKILL.md and the folder at commit d8f4f4e. It shows what the files ask for, not the result of running them.

  • Tool permissions

    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.

  • Runs code

    Shell commands in SKILL.md call:

    • az

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use az, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Analyze Skill Issues loads about 2.1k tokens when it runs, and up to ~2.4k if it reads all its reference files. Until then it costs about 121 tokens; SKILL.md has 962 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~121
When it runs · the whole SKILL.md, loaded when a task matches
~2.1k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~2.4k

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.

Safety

Auto-check passed

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); files beside SKILL.md are not scanned.

SKILL.md

The full file from microsoft/GitHub-Copilot-for-Azure at commit d8f4f4e, republished under its MIT licence (© microsoft). 962 words, ~2,109 tokens.

Download SKILL.mdSave it as .claude/skills/analyze-skill-issues/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
analyze-skill-issues
description
Query the integration-test storage account to find why a specific skill's tests are failing. Reads blob-stored test result files and surfaces error details. TRIGGERS: why is skill failing, skill test failures, debug skill tests, skill failing tests, analyze skill failures, why are tests failing for skill, skill test errors, investigate skill issues. DO NOT USE FOR: analyzing a GitHub Actions run report or comparing test runs across runs (use analyze-test-run).
license
MIT
metadata.author
Microsoft
metadata.version
1.0.1

Analyze Skill Issues

Queries the strdashboarddevveobvk Azure Storage account that stores all integration test results and retrieves error details for a given skill.

Quick Reference

PropertyValue
Storage accountstrdashboarddevveobvk
Containerintegration-reports
Blob path pattern{date}/{run_id}/{skill_name}/[{test_name}/]<file> — see Blob Path Layout
Blob discoverymcp_azure_mcp_storage_blob_get — list blobs to find the right paths
Blob content downloadaz storage blob download ... --file "$env:TEMP\<filename>" — local path reported in summary
Best forDiagnosing why a skill's integration tests are failing

TOOL USAGE — MANDATORY: Use mcp_azure_mcp_storage_blob_get to enumerate and identify the correct blob paths. Then use az storage blob download to download and read the content of those blobs. These tools serve different purposes and are both always required — they are not alternatives.

When to Use

  • User asks why a skill's tests are failing
  • User asks to debug or investigate a skill's recent test failures
  • User wants to see errors from integration test runs for a specific skill
  • User asks what errors or exceptions caused skill test failures

Skill Name Mapping

Resolve the user's skill name to its canonical directory name using the Skill Name Mapping.

MCP Tools

MCP tools are used exclusively for blob discovery — finding which blob paths exist. All calls require account: "strdashboarddevveobvk" and container: "integration-reports". Use az storage blob download (see Phase 2) to read blob content.

ToolPurposeKey parameters
mcp_azure_mcp_storage_blob_getList blob names and metadata (does not return file content)account, container; omit blob to list all
mcp_azure_mcp_storage_blob_container_getVerify the container existsaccount, container

Output Requirements

Every response MUST include all of the following. Do not omit any item:

  • Root cause explanation of why the skill has low confidence or failing tests
  • Per-test breakdown (test name, pass/fail, confidence or error)
  • Referenced Files section listing every downloaded file as a vscode://file/ link

⚠️ MANDATORY: The Referenced Files section is not optional. Always resolve $env:TEMP to the actual path (run echo $env:TEMP) and include a clickable link for every file downloaded. If this section is missing from your response, the output is incomplete.


Workflow

TOOL RESPONSIBILITIES: mcp_azure_mcp_storage_blob_get is used exclusively for blob discovery (listing available paths). az storage blob download is used exclusively for reading blob content. Both are always required.

Phase 1 — Enumerate Recent Blobs for the Skill
  1. Resolve the skill name using the Skill Name Mapping.

  2. List all blobs in the container to discover available date/run paths:

    javascript
    mcp_azure_mcp_storage_blob_get({ account: "strdashboarddevveobvk", container: "integration-reports" })

    This returns a flat list of all blob names. Filter for entries that:

    • Start with a date string matching yyyy-mm-dd within the last 7 days
    • Contain /{skill_name}/ in the path
    • Do not end with token-usage.json or agent-metadata.json
  3. Group the matching blobs by date (descending) and by run ID (the second path segment).

  4. Limit scope: If the user specified a date in their prompt, use only that date. Otherwise, take the 3 most recent dates from the filtered results and discard the rest. Do not process more than 3 dates.

Phase 2 — Read Test Result Files

For each matching blob path identified in Phase 1, download it to a local temp file and read its content:

powershell
az storage blob download --account-name strdashboarddevveobvk --container-name integration-reports `
  --name "<full-blob-path>" --file "$env:TEMP\<filename>" --auth-mode login --no-progress

Use just the last path segment as <filename>.

⚠️ REQUIRED: After each download, immediately append the resolved local path to your working list of referenced files. Run echo $env:TEMP once to resolve the actual temp directory. Every downloaded file must appear in the Referenced Files section of your final response — this is not optional.

Priority order for files to read (most useful first):

  1. Any *.json files that are NOT token-usage.json or agent-metadata.json — these contain test pass/fail results and error messages
  2. *-SKILL-REPORT.md or *report*.json files — contain skill invocation details and test narratives
  3. junit.xml blobs if present — contain structured test failure messages
Show full SKILL.md (356 more words)Show less
Phase 3 — Extract Failure Information

For each test result file, extract:

  • Test name — the test case identifier
  • Status — passed / failed / error / skipped
  • Error message — the exception or assertion failure text
  • Stack trace — if present in the file
  • Date and run ID — for traceability

Look specifically for fields such as:

  • "status": "failed" or "passed": false
  • "error", "errorMessage", "failureMessage", "message" JSON keys
  • <failure> or <error> XML elements in JUnit format
  • Any Error: or FAIL prefixed lines in text reports
Phase 4 — Summarize Failures

Present the findings grouped by test name:

## Failures for <skill-name> — <date> (Run: <run_id>)

### <test-name>
- **Status:** failed
- **Error:** <error message>
- **Detail:** <stack trace or additional context, truncated to ~10 lines>

### <test-name-2>
...

At the end of the summary, include a Referenced Files section listing every file that was downloaded as a clickable VS Code link. Resolve $env:TEMP to the actual Windows temp path (e.g. C:\Users\<user>\AppData\Local\Temp) and format each entry as a markdown link using the vscode://file/ URI scheme with forward slashes:

## Referenced Files
- [<filename1>](vscode://file/C:/Users/<user>/AppData/Local/Temp/<filename1>)
- [<filename2>](vscode://file/C:/Users/<user>/AppData/Local/Temp/<filename2>)
- ...

To resolve the actual temp path, run echo $env:TEMP in the terminal before constructing the links.

Include:

  • Total failing tests vs. total tests found
  • Most recent run date analyzed
  • Common error patterns across multiple tests (e.g., all failing due to auth, quota, timeout)

Date iteration rule: Process the most recent date first. Only proceed to the next date if the current date yields zero failures. Stop as soon as failures are found — do not process all 3 dates if the first one has results.

See Blob Path Layout for the full container tree structure.

Error Handling

ErrorCauseRemediation
No blobs found for skillSkill has not run tests recently, or name is wrongVerify skill name using the mapping table; tests run Tue–Sat on a schedule
Blob list is emptyContainer access issue or wrong accountConfirm account: "strdashboarddevveobvk" and that the user has Azure CLI credentials
Blob content not readableFile is binary or corruptedSkip that blob and try adjacent blobs for the same test
All tests show as skippedThe skill's test schedule hasn't run yet todayCheck tests/skills.json for the skill's schedule and check a prior day's date prefix
token-usage.json / agent-metadata.json onlyCorrect path but no result filesThe test run may have crashed before writing results; check the run ID in GitHub Actions

© microsoft, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file (references) in .github/skills/analyze-skill-issues of microsoft/GitHub-Copilot-for-Azure.

  • SKILL.md
  • references/blob-structure.md

Open the folder on GitHubat commit d8f4f4e

Compare with similar skills

Analyze Skill Issues 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.

Analyze Skill Issues compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Analyze Skill Issues this skillmicrosoft/GitHub-Copilot-for-Azure255—~2.1kAutomated safety check: PassMIT
CI Triagecanton-network/splice118—~1.4kAutomated safety check: PassApache-2.0
Azsdk Common Pipeline AnalysisAzure/azure-sdk-tools134—~1.2kAutomated safety check: PassMIT
Azsdk Common Pipeline FixerAzure/azure-sdk-tools134—~831Automated safety check: PassMIT
Debug Playwright Prowquay/quay2.8k—~2.2kAutomated safety check: PassApache-2.0
GreptimeDB Fuzz CI Failure InvestigationGreptimeTeam/greptimedb6.7k—~4.4kAutomated safety check: PassApache-2.0

Similar skills

  • CI Triage

    canton-network/splice

    Triage a failed splice GitHub Actions job (cn-test-failures ref) into a reproducible evidence packet - fetch job log and artifact, isolate the flagged lines, check the known flake families for…

    118 GitHub stars~1.4k tokensUpdated today
    Testing & QAAuto-check passed
  • Azsdk Common Pipeline Analysis

    Azure/azure-sdk-tools

    Official

    Analyze Azure SDK CI/CD pipeline failures into a structured diagnosis, and define the required output format.

    134 GitHub stars~1.2k tokensUpdated today
    Testing & QAAuto-check passed
  • Azsdk Common Pipeline Fixer

    Azure/azure-sdk-tools

    Official

    Automatically fix Azure SDK CI/CD pipeline failures by applying code changes and verifying locally.

    134 GitHub stars~831 tokensUpdated today
    Backend & APIsAuto-check passed
  • Deep-dive diagnosis of a Playwright test failure already isolated to one Quay Prow/OpenShift CI run: downloads its GCS artifacts (results.json, JUnit, build/pod logs, Jaeger traces), classifies real…

    2.8k GitHub stars~2.2k tokensUpdated today
    Testing & QAAuto-check passed
  • Diagnoses a failed GreptimeDB fuzz CI job by pulling its GitHub Actions logs and fuzz artifacts, then matching the evidence to the local source code.

    6.7k GitHub stars~4.4k tokensUpdated 2 days ago
    Testing & QAAuto-check passed
  • Investigates a failed Opik end-to-end test from CI, TestOps or a local run, decides regression versus flake, and proposes a fix without editing tests.

    22k GitHub stars~1.8k tokensUpdated today
    Testing & QAAuto-check passed

More from microsoft/GitHub-Copilot-for-Azure

All 56 skills in this repo
  • Capacity

    microsoft/GitHub-Copilot-for-Azure

    Official

    Discovers available Azure OpenAI model capacity across regions and projects.

    255 GitHub starsUsed in 2 repos~1.7k tokens
    Auto-check passed
  • Deploy Model

    microsoft/GitHub-Copilot-for-Azure

    Official

    Unified Azure OpenAI model deployment skill with intelligent intent-based routing.

    255 GitHub starsUsed in 1 repo~1.8k tokens
    Auto-check passed
  • Entra Agent Id

    microsoft/GitHub-Copilot-for-Azure

    Official

    Provision Microsoft Entra Agent Identity Blueprints, BlueprintPrincipals, and per-instance Agent Identities via Microsoft Graph, and configure OAuth 2.0 token exchange (fmipath, OBO, cross-tenant)…

    255 GitHub starsUsed in 3 repos~4k tokens
    Auto-check passed
  • Microsoft Foundry

    microsoft/GitHub-Copilot-for-Azure

    Official

    Build, deploy, evaluate, optimize, fine-tune, and manage Microsoft Foundry agents, models, and resources end to end.

    255 GitHub starsUsed in 1 repo~6.7k tokens
    Auto-check passed
  • Azure Storage

    microsoft/GitHub-Copilot-for-Azure

    Official

    Azure Storage Services including Blob Storage, File Shares, Queue Storage, Table Storage, and Data Lake.

    255 GitHub starsUsed in 2 repos~1.3k tokens
    Auto-check passed
  • Azure Diagnostics

    microsoft/GitHub-Copilot-for-Azure

    Official

    Debug Azure production issues on Azure using AppLens, Azure Monitor, resource health, and safe triage.

    255 GitHub starsUsed in 1 repo~1.6k tokens
    Auto-check passed

Categories

Questions about Analyze Skill Issues

What does Analyze Skill Issues do?

Query the integration-test storage account to find why a specific skill's tests are failing. Analyze Skill Issues is an agent skill from microsoft/GitHub-Copilot-for-Azure, published by the product's own GitHub organization. Query the integration-test storage account to find why a specific skill's tests are failing.

When should I use Analyze Skill Issues?

Analyze Skill Issues fits situations like: : analyzing a GitHub Actions run report; comparing test runs across runs (use analyze-test-run).

How do I install Analyze Skill Issues in Claude Code?

Run `npx skills add microsoft/GitHub-Copilot-for-Azure --skill analyze-skill-issues -a claude-code`. Or copy the skill folder (.github/skills/analyze-skill-issues in microsoft/GitHub-Copilot-for-Azure) into .claude/skills/analyze-skill-issues in your project. Claude Code loads it when a task matches its description.

How do I install Analyze Skill Issues in Codex?

Run `npx skills add microsoft/GitHub-Copilot-for-Azure --skill analyze-skill-issues -a codex`. Or copy the skill folder (.github/skills/analyze-skill-issues in microsoft/GitHub-Copilot-for-Azure) into .agents/skills/analyze-skill-issues in your project. Codex loads it when a task matches its description.

Can I use Analyze Skill Issues in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add microsoft/GitHub-Copilot-for-Azure --skill analyze-skill-issues -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/analyze-skill-issues, .gemini/skills/analyze-skill-issues, .github/skills/analyze-skill-issues and .opencode/skills/analyze-skill-issues in your project.

What does Analyze Skill Issues need to run?

Going by SKILL.md and its folder, Analyze Skill Issues needs the command-line tools its instructions call (az).

Does Analyze Skill Issues access the network?

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.

Is Analyze Skill Issues safe to install?

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. Review the folder before installing.

What licence does Analyze Skill Issues use?

Analyze Skill Issues is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Analyze Skill Issues use?

About 2.1k tokens (SKILL.md is roughly 8.4k 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 311 tokens, read only when the agent opens those files.

What are the alternatives to Analyze Skill Issues?

Skills that share tags, products or a category with Analyze Skill Issues: CI Triage (canton-network/splice, 118 stars), Azsdk Common Pipeline Analysis (Azure/azure-sdk-tools, 134 stars), Azsdk Common Pipeline Fixer (Azure/azure-sdk-tools, 134 stars) and Debug Playwright Prow (quay/quay, 2.8k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Analyze Skill Issues?

microsoft (a GitHub organization, an official publisher) maintains it in microsoft/GitHub-Copilot-for-Azure, which has 255 GitHub stars. The repository holds 56 skills in this directory. The repository was last updated on October 7, 2026.

Source: microsoft/GitHub-Copilot-for-Azure on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.