Loading...
Loading...
Complete Azure DevOps automation - boards, repos, pipelines, artifacts
npx skill4agent add rysweet/amplihack azure-devopspython .claude/scenarios/az-devops-tools/auth_check.py --auto-fixpython .claude/scenarios/az-devops-tools/create_work_item.py \
--type "User Story" \
--title "Implement feature" \
--description @story.mdpython .claude/scenarios/az-devops-tools/list_work_items.py --query minepython .claude/scenarios/az-devops-tools/create_pr.py \
--source feature/branch \
--target main \
--title "Add feature"| Tool | Purpose | When to Use |
|---|---|---|
| Verify authentication | Before any operations |
| Create work items | Add User Stories, Tasks, Bugs, etc. |
| Update work items | Change state, assignee, fields |
| Delete work items | Remove work items (with confirmation) |
| Get work item details | View complete work item info |
| Query work items | Find, filter, and list work items |
| Link parent-child | Create Epic → Feature → Story hierarchies |
| Execute WIQL queries | Complex filtering with WIQL |
| Convert to HTML | Format rich descriptions |
| Discover types/fields | Explore available options |
| List repositories | View all repositories in project |
| Create pull request | Submit code for review |
# Create parent work item
python .claude/scenarios/az-devops-tools/create_work_item.py \
--type "Epic" \
--title "Q1 Planning Initiative" \
--description @epic_desc.md
# Output: Created work item #12345
# Create child and link to parent
python .claude/scenarios/az-devops-tools/create_work_item.py \
--type "Feature" \
--title "Authentication System" \
--description @feature_desc.md \
--parent-id 12345
# Output: Created work item #12346 and linked to parent #12345# Find your active work items
python .claude/scenarios/az-devops-tools/list_work_items.py \
--query mine \
--format ids-only
# Update work item state
python .claude/scenarios/az-devops-tools/update_work_item.py \
--id 12345 \
--state "Active" \
--comment "Starting work on this"# List repositories
python .claude/scenarios/az-devops-tools/list_repos.py
# Create pull request
python .claude/scenarios/az-devops-tools/create_pr.py \
--source feature/auth \
--target main \
--title "Add authentication" \
--description @pr_desc.md \
--reviewers "user1@domain.com,user2@domain.com" \
--work-items "12345,12346"# List all work item types in your project
python .claude/scenarios/az-devops-tools/list_types.py
# Show fields for specific type
python .claude/scenarios/az-devops-tools/list_types.py \
--type "User Story" \
--fieldscreate_work_item.py--no-htmlformat_html.py--parent-idpython .claude/scenarios/az-devops-tools/create_work_item.py \
--type "Task" \
--title "My Task" \
--parent-id 12345# Step 1: Create
TASK_ID=$(python .claude/scenarios/az-devops-tools/create_work_item.py \
--type "Task" \
--title "My Task" \
--json | jq -r '.id')
# Step 2: Link
python .claude/scenarios/az-devops-tools/link_parent.py \
--child $TASK_ID \
--parent 12345ProjectName\TeamName\SubArealist_types.py| Error | Tool to Use | Example |
|---|---|---|
| Authentication failed | | Auto-login and configure |
| Invalid work item type | | See available types |
| Field validation error | | See valid fields |
| Parent link failed | Check IDs exist, verify hierarchy rules | Epic → Feature → Story → Task |
| Branch does not exist | Verify with | Push branch first |
~/.amplihack/.claude/scenarios/az-devops-tools/tests/# Setup (first time)
python .claude/scenarios/az-devops-tools/auth_check.py --auto-fix
# Create work item
python .claude/scenarios/az-devops-tools/create_work_item.py \
--type "User Story" \
--title "Title" \
--description @desc.md
# Update work item
python .claude/scenarios/az-devops-tools/update_work_item.py \
--id 12345 \
--state "Active"
# Query work items
python .claude/scenarios/az-devops-tools/list_work_items.py --query mine
# Create pull request
python .claude/scenarios/az-devops-tools/create_pr.py \
--source feature/branch \
--target main \
--title "Add feature"
# Discover types
python .claude/scenarios/az-devops-tools/list_types.py