ado-bug-query
Skill0 starsChanged 6 months agoMITView on GitHub
Query Azure DevOps for new bugs in the configured project, fetch full work item details, and download embedded screenshots. Use when the user asks to "find new bugs", "query ADO", "list new bugs", "what bugs are open", or when the bug-triage-session orchestrator needs the current bug list.
- Reads credentials
In this repository8 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- ado-bug-lifecycleSkill
- ado-pr-createSkill
- bug-captureSkill
- bug-reviewer-runSkill
- bug-triage-sessionSkill
- storyblok-bugfix-storySkill
- storyblok-component-pushSkill
The file
We split this skill into the rules it gives an agent
5 rules. About 0 are common, 0 are distinctive, and 5 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈0
Distinctive · estimate
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 9
Read-only against ADO: list New bugs, fetch details, download screenshots embedded in description HTML.
- Very specific: line 49
Always re-download fresh — never assume /tmp/bug-<ID>-*.png from a previous session still exists.
- Very specific: line 64
If az commands fail with auth errors, ask the user to run az login.
- Very specific: line 78
Does not change bug state or assignee — that's ado-bug-lifecycle.
- Very specific: line 79
Does not rank bugs Easy/Medium/Hard — the orchestrator (bug-triage-session) owns ranking criteria.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Azure DevOps — Bug Query
Read-only against ADO: list New bugs, fetch details, download screenshots embedded in description HTML.
Saved query (New Bugs)
The team's saved query GUID is stored in $ADO_BUGS_QUERY_ID (set in .env). Create the query in ADO once and copy the GUID from the URL.
az boards query --id $ADO_BUGS_QUERY_ID --output json \
| jq -r '.[] | select(.fields."System.State" == "New") | "\(.id) | \(.fields."System.AssignedTo".displayName // "Unassigned") | \(.fields."System.Title")"'Full work item details
az boards work-item show --id <WORK_ITEM_ID> --output jsonClean field extraction:
az boards work-item show --id <WORK_ITEM_ID> --output json \
| jq -r '.fields | {
title: ."System.Title",
state: ."System.State",
assignedTo: ."System.AssignedTo".uniqueName,
description: ."System.Description",
repro: ."Microsoft.VSTS.TCM.ReproSteps"
}'Downloading screenshots
Screenshots are embedded as <img> tags inside the HTML System.Description and Microsoft.VSTS.TCM.ReproSteps fields. They are not separate attachments.
Always re-download fresh — never assume /tmp/bug-<ID>-*.png from a previous session still exists.
# Extract image URLs
az boards work-item show --id <WORK_ITEM_ID> --output json \
| jq -r '[.fields."System.Description" // "", .fields."Microsoft.VSTS.TCM.ReproSteps" // ""] | join(" ")' \
| grep -oE 'https://dev\.azure\.com[^"]*fileName=[^"]*'
# Download with bearer token (token can expire — regenerate if 401)
TOKEN=$(az account get-access-token --resource "499b84ac-1321-427f-aa17-267ca6975798" --query accessToken -o tsv)
curl -s -o /tmp/bug-<WORK_ITEM_ID>-1.png \
-H "Authorization: Bearer $TOKEN" \
"<IMAGE_URL>"If az commands fail with auth errors, ask the user to run az login.
ADO work item URL pattern
$AZURE_ORG/$AZURE_PROJECT/_workitems/edit/<WORK_ITEM_ID>What this skill does NOT do
- Does not change bug state or assignee — that's
ado-bug-lifecycle. - Does not rank bugs Easy/Medium/Hard — the orchestrator (
bug-triage-session) owns ranking criteria.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

