关于 boards-team-active-work
用于从 Azure DevOps 获取团队当前用户负责的 Active 需求级工作项,并补充父子项、依赖和迭代信息。按阻塞关系与优先级整理结果,适合团队积压和冲刺状态检查。
主要功能
- 01筛选 Active 需求项
- 02获取父项、子项及依赖
- 03读取当前冲刺信息
- 04按阻塞状态和优先级分组
- 05显示迭代与工作项详情
适用场景
- 01检查当前用户负责的团队积压项
- 02识别阻塞其他工作的事项
- 03查看工作项与当前冲刺的关联
MCP 相关
通过 Azure DevOps MCP Server 工具查询项目、团队、积压工作项、迭代和工作项关系。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ microsoft/ azure-devops-skills --skill boards-team-active-work安装后在 Claude Code 中输入/boards-team-active-work确认已加载。
详细介绍
获取团队当前活动工作项及其依赖关系
此技能会获取团队需求级待办项,筛选出状态为「活动」且分配给当前用户的项,补充其父项、子项详情及依赖关系,并按阻塞状态和优先级排序,同时显示冲刺信息。
项目选择
- 如果用户在请求中提供了项目名称(例如「Contoso 项目」),直接使用该项目,不要调用
core_list_projects。 - 如果用户未提供项目名称,只询问用户一次。
- 如果用户在询问一次后仍未提供项目名称,调用
core_list_projects返回项目列表,供用户选择。 - 如果尚未提供或选择项目,则不要继续。
团队选择
- 如果用户提供了团队名称,直接使用该团队,不要调用
core_list_project_teams。 - 如果用户未提供团队名称,只询问用户一次。
- 如果用户在询问一次后仍未提供团队名称,针对已选项目调用
core_list_project_teams,供用户选择团队。 - 如果尚未提供或选择团队,则不要继续。
工具
所有与 Azure DevOps 的交互都使用 Azure DevOps MCP Server 工具。
core_list_projects:获取用户可选择的项目列表。core_list_project_teams:获取项目的团队列表。wit_backlog(操作:list_work_items):获取团队在指定待办级别上的工作项。work(操作:list_team_iterations):获取团队的迭代列表,包括当前冲刺信息。wit_work_item(操作:get_batch):按 ID 批量获取工作项详情。尽可能用最少的调用次数获取待办项、其父项、子项和依赖项的字段及关系。
步骤
-
按照上述规则确定项目和团队。
-
对已确定的项目和团队调用
work,操作为list_team_iterations,并设置timeframe=current,以获取当前冲刺信息。保存当前迭代路径和结束日期,用于筛选和显示。 -
对已确定的项目和团队调用
wit_backlog,操作为list_work_items,并使用待办级别Microsoft.RequirementCategory(需求/产品待办项级别)。 -
在返回的工作项中,筛选出满足以下条件的项:
System.State=Active
-
如果没有符合筛选条件的项,显示一条消息,说明该团队没有活动待办项,然后停止。
-
对所有筛选出的项 ID 调用
wit_work_item,操作为get_batch,并设置expand=relations,同时获取以下字段:System.IdSystem.TitleSystem.StateSystem.AssignedToSystem.WorkItemTypeSystem.ChangedDateSystem.IterationPathMicrosoft.VSTS.Common.PrioritySystem.Parent
-
从每个项的
relations中收集:- 父项 ID(
System.LinkTypes.Hierarchy-Reverse) - 子项 ID(
System.LinkTypes.Hierarchy-Forward) - 依赖项 ID——此工作项所依赖的项(
System.LinkTypes.Dependency-Forward)以及依赖此工作项的项(System.LinkTypes.Dependency-Reverse) - 相关项 ID(
System.LinkTypes.Related)
- 父项 ID(
-
使用所有相关 ID 的合集(排除已获取的 ID)调用一次
wit_work_item,操作为get_batch,以获取以下字段:System.IdSystem.TitleSystem.StateSystem.IterationPath
-
对每个工作项,确定:
- 是否阻塞:如果存在
System.LinkTypes.Dependency-Reverse关系(其他项依赖此项) - 是否在当前冲刺中:如果
System.IterationPath与步骤 2 中的当前迭代匹配 - 优先级:
Microsoft.VSTS.Common.Priority的值
- 是否阻塞:如果存在
-
按照下文 显示结果 一节的说明显示结果。
显示结果
首先,显示当前迭代信息:
当前迭代: {Iteration Name}(结束日期:{Iteration Finish Date formatted as MM/DD/YYYY})
然后,按以下顺序对工作项排序并分组:
- 阻塞其他工作项的工作项(具有
System.LinkTypes.Dependency-Reverse关系)——按 Priority 升序排序(Priority 1 优先) - 高优先级工作项(Priority 为 1 或 2)且不阻塞其他工作项——按 Priority 升序排序
- 本迭代到期的工作项(匹配当前迭代路径)——按 Priority 升序排序
- 所有其他工作项——按 Priority 升序排序
对每个工作项,显示:
{ID} — {Title}
{如果该项会阻塞其他工作项,则显示:⚠️ 阻塞其他工作项}
| 字段 | 值 |
|---|---|
| 状态 | {System.State} |
| 优先级 | {Microsoft.VSTS.Common.Priority} |
| 更改日期 | {System.ChangedDate formatted as MM/DD/YYYY} |
| 迭代 | {System.IterationPath 的最后一段} |
| 迭代结束日期 | {如果属于当前迭代,则使用步骤 2 中的 Iteration Finish Date;否则查找团队迭代的结束日期} |
| 工作项类型 | {System.WorkItemType} |
父项:
- 如果存在父项:
{ParentID}{Parent Title} - 如果不存在父项:(无)
子项:
如果存在子项,则用表格显示:
| ID | 标题 | 状态 |
|---|---|---|
| {ChildID} | {Child Title} | {Child State} |
如果不存在子项,则显示:(无)
依赖关系:
如果此工作项会阻塞其他工作项(具有 System.LinkTypes.Dependency-Reverse 关系),则显示:
⚠️ 阻塞:
- {DependentID} {Dependent Title}({Dependent State})
如果此工作项依赖于其他工作项(具有 System.LinkTypes.Dependency-Forward 关系),则显示:
依赖于:
- {DependencyID} {Dependency Title}({Dependency State})
如果不存在依赖关系,则显示:(无)
列出所有工作项后,显示摘要:
摘要:
- 团队的活跃工作项总数: {N}
- 阻塞其他工作项的工作项: {M}
- 高优先级工作项(1-2): {P}
- 本迭代到期的工作项: {Q}
团队:{team name} | 项目:{project name}