azure-boards-helper

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Azure Boards Helper Skill

Azure Boards Helper Skill

Azure Boardsでワークアイテムを管理するスキルです。
这是一款用于管理Azure Boards工作项的Skill。

概要

概述

Azure Boardsのワークアイテム作成、クエリ、レポート生成を支援します。
支持Azure Boards工作项的创建、查询和报告生成。

主な機能

主要功能

  • ワークアイテム作成: User Story、Task、Bug
  • クエリ作成: WIQL (Work Item Query Language)
  • スプリント管理: バックログ、スプリント計画
  • レポート: バーンダウン、ベロシティ
  • 自動化: ワークフロー自動化
  • 工作项创建:User Story、Task、Bug
  • 查询创建:WIQL(工作项查询语言)
  • Sprint管理:待办事项、Sprint计划
  • 报告:燃尽图、速度
  • 自动化:工作流自动化

ワークアイテムテンプレート

工作项模板

User Story

User Story

json
{
  "op": "add",
  "path": "/fields/System.Title",
  "value": "ユーザーログイン機能の実装"
},
{
  "op": "add",
  "path": "/fields/System.WorkItemType",
  "value": "User Story"
},
{
  "op": "add",
  "path": "/fields/System.Description",
  "value": "ユーザーがメールアドレスとパスワードでログインできるようにする"
},
{
  "op": "add",
  "path": "/fields/Microsoft.VSTS.Common.AcceptanceCriteria",
  "value": "- メールアドレスとパスワードでログインできる\n- 無効な認証情報の場合エラーメッセージが表示される\n- ログイン成功後、ダッシュボードにリダイレクトされる"
},
{
  "op": "add",
  "path": "/fields/Microsoft.VSTS.Scheduling.StoryPoints",
  "value": 5
},
{
  "op": "add",
  "path": "/fields/System.State",
  "value": "New"
},
{
  "op": "add",
  "path": "/fields/System.AreaPath",
  "value": "MyProject\\Authentication"
},
{
  "op": "add",
  "path": "/fields/System.IterationPath",
  "value": "MyProject\\Sprint 1"
}
json
{
  "op": "add",
  "path": "/fields/System.Title",
  "value": "用户登录功能的实现"
},
{
  "op": "add",
  "path": "/fields/System.WorkItemType",
  "value": "User Story"
},
{
  "op": "add",
  "path": "/fields/System.Description",
  "value": "支持用户通过邮箱地址和密码登录"
},
{
  "op": "add",
  "path": "/fields/Microsoft.VSTS.Common.AcceptanceCriteria",
  "value": "- 可通过邮箱地址和密码登录\n- 输入无效凭据时显示错误消息\n- 登录成功后重定向至仪表板"
},
{
  "op": "add",
  "path": "/fields/Microsoft.VSTS.Scheduling.StoryPoints",
  "value": 5
},
{
  "op": "add",
  "path": "/fields/System.State",
  "value": "New"
},
{
  "op": "add",
  "path": "/fields/System.AreaPath",
  "value": "MyProject\\Authentication"
},
{
  "op": "add",
  "path": "/fields/System.IterationPath",
  "value": "MyProject\\Sprint 1"
}

Bug

Bug

json
{
  "op": "add",
  "path": "/fields/System.Title",
  "value": "ログインボタンがクリックできない"
},
{
  "op": "add",
  "path": "/fields/System.WorkItemType",
  "value": "Bug"
},
{
  "op": "add",
  "path": "/fields/Microsoft.VSTS.TCM.ReproSteps",
  "value": "1. ログインページを開く\n2. メールアドレスとパスワードを入力\n3. ログインボタンをクリック\n\n期待: ログインされる\n実際: 何も起こらない"
},
{
  "op": "add",
  "path": "/fields/Microsoft.VSTS.Common.Severity",
  "value": "2 - High"
},
{
  "op": "add",
  "path": "/fields/Microsoft.VSTS.Common.Priority",
  "value": 1
}
json
{
  "op": "add",
  "path": "/fields/System.Title",
  "value": "登录按钮无法点击"
},
{
  "op": "add",
  "path": "/fields/System.WorkItemType",
  "value": "Bug"
},
{
  "op": "add",
  "path": "/fields/Microsoft.VSTS.TCM.ReproSteps",
  "value": "1. 打开登录页面\n2. 输入邮箱地址和密码\n3. 点击登录按钮\n\n预期:成功登录\n实际:无任何反应"
},
{
  "op": "add",
  "path": "/fields/Microsoft.VSTS.Common.Severity",
  "value": "2 - High"
},
{
  "op": "add",
  "path": "/fields/Microsoft.VSTS.Common.Priority",
  "value": 1
}

WIQLクエリ

WIQL查询

アクティブなUser Stories

活跃的User Stories

sql
SELECT
    [System.Id],
    [System.Title],
    [System.State],
    [Microsoft.VSTS.Scheduling.StoryPoints]
FROM WorkItems
WHERE
    [System.TeamProject] = @project
    AND [System.WorkItemType] = 'User Story'
    AND [System.State] <> 'Closed'
    AND [System.State] <> 'Removed'
ORDER BY [System.State] ASC, [Microsoft.VSTS.Common.Priority] ASC
sql
SELECT
    [System.Id],
    [System.Title],
    [System.State],
    [Microsoft.VSTS.Scheduling.StoryPoints]
FROM WorkItems
WHERE
    [System.TeamProject] = @project
    AND [System.WorkItemType] = 'User Story'
    AND [System.State] <> 'Closed'
    AND [System.State] <> 'Removed'
ORDER BY [System.State] ASC, [Microsoft.VSTS.Common.Priority] ASC

今スプリントのタスク

当前Sprint的任务

sql
SELECT
    [System.Id],
    [System.Title],
    [System.AssignedTo],
    [System.State],
    [Microsoft.VSTS.Scheduling.RemainingWork]
FROM WorkItems
WHERE
    [System.TeamProject] = @project
    AND [System.WorkItemType] = 'Task'
    AND [System.IterationPath] = @currentIteration
ORDER BY [System.State] ASC
sql
SELECT
    [System.Id],
    [System.Title],
    [System.AssignedTo],
    [System.State],
    [Microsoft.VSTS.Scheduling.RemainingWork]
FROM WorkItems
WHERE
    [System.TeamProject] = @project
    AND [System.WorkItemType] = 'Task'
    AND [System.IterationPath] = @currentIteration
ORDER BY [System.State] ASC

未解決のバグ

未解决的缺陷

sql
SELECT
    [System.Id],
    [System.Title],
    [Microsoft.VSTS.Common.Severity],
    [Microsoft.VSTS.Common.Priority],
    [System.CreatedDate]
FROM WorkItems
WHERE
    [System.TeamProject] = @project
    AND [System.WorkItemType] = 'Bug'
    AND [System.State] <> 'Closed'
ORDER BY [Microsoft.VSTS.Common.Priority] ASC, [Microsoft.VSTS.Common.Severity] ASC
sql
SELECT
    [System.Id],
    [System.Title],
    [Microsoft.VSTS.Common.Severity],
    [Microsoft.VSTS.Common.Priority],
    [System.CreatedDate]
FROM WorkItems
WHERE
    [System.TeamProject] = @project
    AND [System.WorkItemType] = 'Bug'
    AND [System.State] <> 'Closed'
ORDER BY [Microsoft.VSTS.Common.Priority] ASC, [Microsoft.VSTS.Common.Severity] ASC

Azure CLI コマンド

Azure CLI命令

ワークアイテム作成

工作项创建

bash
undefined
bash
undefined

User Story作成

创建User Story

az boards work-item create
--title "新機能: ユーザープロフィール編集"
--type "User Story"
--description "ユーザーが自分のプロフィールを編集できるようにする"
--assigned-to "user@example.com"
--area "MyProject\Features"
--iteration "MyProject\Sprint 2"
--fields "Microsoft.VSTS.Scheduling.StoryPoints=3"
az boards work-item create
--title "新功能: 用户资料编辑"
--type "User Story"
--description "支持用户编辑个人资料"
--assigned-to "user@example.com"
--area "MyProject\Features"
--iteration "MyProject\Sprint 2"
--fields "Microsoft.VSTS.Scheduling.StoryPoints=3"

Bug作成

创建Bug

az boards work-item create
--title "ログアウト後もセッションが残る"
--type "Bug"
--description "ログアウトボタンをクリックしてもセッションが破棄されない"
--fields "Microsoft.VSTS.Common.Severity=1 - Critical" "Microsoft.VSTS.Common.Priority=1"
undefined
az boards work-item create
--title "注销后会话仍保留"
--type "Bug"
--description "点击注销按钮后会话未被销毁"
--fields "Microsoft.VSTS.Common.Severity=1 - Critical" "Microsoft.VSTS.Common.Priority=1"
undefined

クエリ実行

执行查询

bash
undefined
bash
undefined

クエリ実行

执行查询

az boards query
--wiql "SELECT [System.Id], [System.Title], [System.State] FROM WorkItems WHERE [System.WorkItemType] = 'Bug' AND [System.State] = 'Active'"
az boards query
--wiql "SELECT [System.Id], [System.Title], [System.State] FROM WorkItems WHERE [System.WorkItemType] = 'Bug' AND [System.State] = 'Active'"

保存済みクエリ実行

执行已保存的查询

az boards query --id "shared-queries/active-bugs"
undefined
az boards query --id "shared-queries/active-bugs"
undefined

スプリント管理

Sprint管理

スプリント作成

创建Sprint

bash
undefined
bash
undefined

新スプリント作成

创建新Sprint

az boards iteration project create
--name "Sprint 3"
--project "MyProject"
--start-date "2024-07-01"
--finish-date "2024-07-14"
undefined
az boards iteration project create
--name "Sprint 3"
--project "MyProject"
--start-date "2024-07-01"
--finish-date "2024-07-14"
undefined

バックログの優先順位付け

待办事项优先级排序

bash
undefined
bash
undefined

ワークアイテムの優先順位変更

修改工作项优先级

az boards work-item update
--id 123
--fields "Microsoft.VSTS.Common.Priority=1"
undefined
az boards work-item update
--id 123
--fields "Microsoft.VSTS.Common.Priority=1"
undefined

REST API 使用例

REST API使用示例

ワークアイテム作成(Python)

创建工作项(Python)

python
import requests
import json

organization = "myorg"
project = "MyProject"
pat = "your-personal-access-token"

url = f"https://dev.azure.com/{organization}/{project}/_apis/wit/workitems/$User Story?api-version=7.0"

headers = {
    "Content-Type": "application/json-patch+json",
    "Authorization": f"Basic {pat}"
}

body = [
    {
        "op": "add",
        "path": "/fields/System.Title",
        "value": "新しいユーザーストーリー"
    },
    {
        "op": "add",
        "path": "/fields/Microsoft.VSTS.Scheduling.StoryPoints",
        "value": 5
    }
]

response = requests.post(url, headers=headers, data=json.dumps(body))
work_item = response.json()
print(f"Created work item: {work_item['id']}")
python
import requests
import json

organization = "myorg"
project = "MyProject"
pat = "your-personal-access-token"

url = f"https://dev.azure.com/{organization}/{project}/_apis/wit/workitems/$User Story?api-version=7.0"

headers = {
    "Content-Type": "application/json-patch+json",
    "Authorization": f"Basic {pat}"
}

body = [
    {
        "op": "add",
        "path": "/fields/System.Title",
        "value": "新的用户故事"
    },
    {
        "op": "add",
        "path": "/fields/Microsoft.VSTS.Scheduling.StoryPoints",
        "value": 5
    }
]

response = requests.post(url, headers=headers, data=json.dumps(body))
work_item = response.json()
print(f"Created work item: {work_item['id']}")

レポート

报告

ベロシティレポート

速度报告

markdown
undefined
markdown
undefined

Sprint Velocity Report

Sprint Velocity Report

SprintPlannedCompletedVelocity
Sprint 1252222
Sprint 2282626
Sprint 3302828
Sprint 4323030
平均ベロシティ: 26.5 Story Points トレンド: ↗️ 上昇傾向
undefined
SprintPlannedCompletedVelocity
Sprint 1252222
Sprint 2282626
Sprint 3302828
Sprint 4323030
平均速度: 26.5 Story Points 趋势: ↗️ 上升趋势
undefined

バーンダウンチャート

燃尽图

Sprint 2 Burndown

Story Points Remaining
30 |●
25 |  ●
20 |    ●●
15 |      ●●
10 |        ●●
5  |          ●●
0  |____________●●
   Day 1  5  10  14
Sprint 2 Burndown

Story Points Remaining
30 |●
25 |  ●
20 |    ●●
15 |      ●●
10 |        ●●
5  |          ●●
0  |____________●●
   Day 1  5  10  14

バージョン情報

版本信息

  • スキルバージョン: 1.0.0
  • 最終更新: 2025-01-22
  • Skill版本: 1.0.0
  • 最后更新: 2025-01-22