$npx -y skills add microsoft/azure-devops-skills --skill boards-team-active-workGet active work items for a team showing dependencies, priorities, and sprint assignments. Displays items that are blocking others, high priority items first, and items due this sprint. Shows parent/child hierarchy with Title, State, Priority, ChangedDate, Iteration Name, and Ite
| 1 | # Get team active work items with dependencies |
| 2 | |
| 3 | This skill retrieves the team's Requirements-level backlog, filters to **Active** items **assigned to the current user**, enriches them with parent/child details and dependency information, and displays them sorted by blocking status and priority with sprint information. |
| 4 | |
| 5 | ## Project selection |
| 6 | |
| 7 | - If the user **provides a project name** in their request (for example, "for Contoso"), use that project directly and **do not call** `core_list_projects`. |
| 8 | - If the project name is **not provided**, ask the user once to provide it. |
| 9 | - If the project name is **still not provided after asking once**, call `core_list_projects` to return a list of projects the user can choose from. |
| 10 | - Do not continue if no project has been provided or selected. |
| 11 | |
| 12 | ## Team selection |
| 13 | |
| 14 | - If the user **provides a team name**, use it directly and **do not call** `core_list_project_teams`. |
| 15 | - If the team name is **not provided**, ask the user once to provide it. |
| 16 | - If the team name is **still not provided after asking once**, call `core_list_project_teams` for the selected project so the user can pick a team. |
| 17 | - Do not continue if no team has been provided or selected. |
| 18 | |
| 19 | # Tools |
| 20 | |
| 21 | Use Azure DevOps MCP Server tools for all interactions with Azure DevOps. |
| 22 | |
| 23 | - `core_list_projects`: Get the list of projects the user can choose from. |
| 24 | - `core_list_project_teams`: Get the list of teams for a project. |
| 25 | - `wit_backlog` (action: `list_work_items`): Get the work items on the team's backlog at a specific backlog level. |
| 26 | - `work` (action: `list_team_iterations`): Get the list of iterations for a team, including current sprint information. |
| 27 | - `wit_work_item` (action: `get_batch`): Get work item details in batch by their IDs. Use this to fetch fields and relations for backlog items, their parents, children, and dependencies in as few calls as possible. |
| 28 | |
| 29 | # Steps |
| 30 | |
| 31 | 1. Resolve project and team using the rules above. |
| 32 | |
| 33 | 2. Call `work` with action `list_team_iterations` for the resolved project and team with `timeframe=current` to get the current sprint information. Store the current iteration path and end date for filtering and display purposes. |
| 34 | |
| 35 | 3. Call `wit_backlog` with action `list_work_items` for the resolved project and team, using backlog level `Microsoft.RequirementCategory` (the Requirements / Product Backlog Items level). |
| 36 | |
| 37 | 4. From the returned work items, **filter** to items that meet **all** of the following criteria: |
| 38 | - `System.State` = `Active` |
| 39 | |
| 40 | 5. If no items match the filter, display a message stating there are no active backlog items for this team and stop. |
| 41 | |
| 42 | 6. Call `wit_work_item` with action `get_batch` for all filtered item IDs with `expand=relations` and the following fields: |
| 43 | - `System.Id` |
| 44 | - `System.Title` |
| 45 | - `System.State` |
| 46 | - `System.AssignedTo` |
| 47 | - `System.WorkItemType` |
| 48 | - `System.ChangedDate` |
| 49 | - `System.IterationPath` |
| 50 | - `Microsoft.VSTS.Common.Priority` |
| 51 | - `System.Parent` |
| 52 | |
| 53 | 7. From the `relations` of each item, collect: |
| 54 | - **Parent IDs** (`System.LinkTypes.Hierarchy-Reverse`) |
| 55 | - **Child IDs** (`System.LinkTypes.Hierarchy-Forward`) |
| 56 | - **Dependency IDs** - both items this work item depends on (`System.LinkTypes.Dependency-Forward`) and items that depend on this work item (`System.LinkTypes.Dependency-Reverse`) |
| 57 | - **Related IDs** (`System.LinkTypes.Related`) |
| 58 | |
| 59 | 8. Call `wit_work_item` with action `get_batch` once with the combined set of all related IDs (excluding any IDs already fetched) to get their: |
| 60 | - `System.Id` |
| 61 | - `System.Title` |
| 62 | - `System.State` |
| 63 | - `System.IterationPath` |
| 64 | |
| 65 | 9. For each work item, determine: |
| 66 | - **Is Blocking**: If there are any `System.LinkTypes.Dependency-Reverse` relations (other items depend on this one) |
| 67 | - **Is in Current Sprint**: If the `System.IterationPath` matches the current iteration from step 2 |
| 68 | - **Priority**: The `Microsoft.VSTS.Common.Priority` value |
| 69 | |
| 70 | 10. Display the results as described in the **Display results** section below. |
| 71 | |
| 72 | # Display results |
| 73 | |
| 74 | **First, display the current sprint information:** |
| 75 | |
| 76 | > **Current Sprint:** {Iteration Name} (ends {Iteration Finish Date formatted as MM/DD/YYYY}) |
| 77 | |
| 78 | --- |
| 79 | |
| 80 | **Then, sort and group the work items in the following order:** |
| 81 | |
| 82 | 1. **Items that are blocking others** (have `System.LinkTypes.Dependency-Reverse` relations) — sorted by Priority ascending (Priority 1 first) |
| 83 | 2. **High priority items** (Priority 1 or 2) that are not blocking — sorted by Priority ascending |
| 84 | 3. **Items due this sprint** (matching current iteration path) — sorted by Priority ascending |
| 85 | 4. **All other items** — sorted by Priority ascending |
| 86 | |
| 87 | For each item, display: |
| 88 | |
| 89 | --- |
| 90 | |
| 91 | ### [{ID}](https://de |