agentleFS
kdoddy36615kdoddy36615/bug-reviewer/.claude/skills/ado-bug-query/SKILL.md

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

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
  1. Very specific:

    Read-only against ADO: list New bugs, fetch details, download screenshots embedded in description HTML.

    line 9
  2. Very specific:

    Always re-download fresh — never assume /tmp/bug-<ID>-*.png from a previous session still exists.

    line 49
  3. Very specific:

    If az commands fail with auth errors, ask the user to run az login.

    line 64
  4. Very specific:

    Does not change bug state or assignee — that's ado-bug-lifecycle.

    line 78
  5. Very specific:

    Does not rank bugs Easy/Medium/Hard — the orchestrator (bug-triage-session) owns ranking criteria.

    line 79

≈ “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.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

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 json

Clean 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.

Download now (ZIP)

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
What did you use it for? e.g. Reviewing pull requests in a Rails app

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.