Agent Skills by ALSEL
汎用DevOps・インフラ⭐ リポ 4品質スコア 76/100

omc-ado-review

Azure DevOpsリポジトリにおけるプルリクエストレビューのワークフローです。ユーザーがAzure DevOpsでプルリクエストのレビュー、レビュアーの追加、レビューコメントの作成、プルリクエストへの投票、またはプルリクエストスレッドの管理を行いたい場合に使用できます。プルリクエストの作成(git-masterエージェントを使用)、スプリント計画(omc-ado-sprintを使用)、作業項目の分類(omc-ado-triageを使用)、またはADO以外のリポジトリには使用しないでください。

description の原文を見る

Pull request review workflow for Azure DevOps repositories. WHEN: User wants to review PRs, add reviewers, create review comments, vote on PRs, or manage PR threads in Azure DevOps. DO NOT USE FOR: Creating PRs (use git-master agent), sprint planning (use omc-ado-sprint), work item triage (use omc-ado-triage), or non-ADO repositories.

SKILL.md 本文

OMC ADO Review

Azure DevOps プルリクエストレビュー全体を実行します。.omcp/config.json から接続設定を読み込み、オープン PR を一覧表示し、既存のレビュースレッドを表示し、コメント追加、レビュアー管理、PR ステータス更新をサポートします。

このスキルが呼び出されたときは、以下のワークフローを直ちに実行してください。これらの指示を言い換えたり、要約したりするだけではいけません。

トリガーパターン

  • "ado review"
  • "review pr"
  • "review pull request"
  • "add reviewer"
  • "pr comments"
  • "vote on pr"
  • "manage pr threads"
  • "omc-ado-review"

ステップ 1: 設定を読み込む

.omcp/config.json を読み込みます:

cat .omcp/config.json 2>/dev/null || echo "NOT_FOUND"

ado キーから以下を抽出します:

  • org — 組織の完全な URL(例:https://dev.azure.com/contoso
  • project — ADO プロジェクト名
  • repo — リポジトリ名

設定が見つからないか ado キーがない場合は、ユーザーに /oh-my-copilot:omc-ado-setup を最初に実行するよう指示して終了します。


ステップ 2: オープン PR を一覧表示

設定されたリポジトリのすべてのアクティブなプルリクエストを取得します。

MCP(推奨):

mcp__azure-devops__repo_list_pull_requests_by_repo_or_project
  → repositoryId: "{repo}"
  → project: "{project}"
  → status: "active"

az CLI フォールバック:

az repos pr list \
  --repository "{repo}" \
  --project "{project}" \
  --org "{org}" \
  --status active \
  -o json 2>&1

結果をテーブルで表示します:

### オープン プルリクエスト ({N})
| ID | タイトル | 作成者 | ターゲットブランチ | レビュアー | 経過時間 |
|----|---------|--------|------------------|-----------|--------|
| !42 | Add retry logic    | alice | main | 3 中 2 承認 | 3 日 |
| !43 | Fix login timeout  | bob   | dev  | 投票なし    | 1 日 |

各 PR について、レビュアーの投票ステータスを要約します:

  • -10 = 却下
  • -5 = 作成者の対応待ち
  • 0 = 投票なし
  • 5 = 提案付きで承認
  • 10 = 承認

オープン PR がない場合は「(0)」と報告し、ユーザーに特定の PR ID で確認したいかを尋ねます。


ステップ 3: レビュー対象の PR を選択

ユーザーにリストから PR を選択するよう促すか、PR ID を直接受け付けます。

完全な PR 詳細を取得します:

MCP(推奨):

mcp__azure-devops__repo_get_pull_request_by_id
  → pullRequestId: {prId}
  → project: "{project}"

az CLI フォールバック:

az repos pr show \
  --id {prId} \
  --org "{org}" \
  -o json 2>&1

要約を表示します:

### PR !{id}: {title}
作成者:        {author}
ソース:        {sourceBranch} → {targetBranch}
作成日時:      {createdDate}
説明:          {description}
作業項目:      #{id} {title}
レビュアー:    {name} ({voteLabel}), ...
自動完了:      {有効/無効}

ステップ 4: 変更をレビュー

既存のレビュースレッドとコメントを取得して、新しいフィードバックを追加する前に、現在のレビュー状態を把握します。

4a. PR スレッドを一覧表示:

MCP(推奨):

mcp__azure-devops__repo_list_pull_request_threads
  → repositoryId: "{repo}"
  → pullRequestId: {prId}
  → project: "{project}"

4b. スレッドコメントを読む(アクティブなスレッドの場合):

MCP(推奨):

mcp__azure-devops__repo_list_pull_request_thread_comments
  → repositoryId: "{repo}"
  → pullRequestId: {prId}
  → threadId: {threadId}
  → project: "{project}"

スレッドの要約を表示します:

### レビュースレッド({N} アクティブ、{N} 解決済み)
| スレッド | ファイル | コメント | 作成者 | ステータス |
|---------|---------|---------|--------|-----------|
| #1 | src/auth.ts:42 | "Should handle null case" | charlie | アクティブ |
| #2 | — (全般) | "LGTM overall" | alice | 解決済み |

スレッドがない場合は「レビュースレッドはまだありません」と記載します。


ステップ 5: レビューコメントを追加

新しいレビューフィードバックをスレッドとして作成します。スレッドは特定のファイル/行をターゲットにするか、一般的な PR レベルのコメントにできます。

ファイルレベルのコメント:

MCP(推奨):

mcp__azure-devops__repo_create_pull_request_thread
  → repositoryId: "{repo}"
  → pullRequestId: {prId}
  → project: "{project}"
  → comments: [{ content: "{comment}", commentType: 1 }]
  → threadContext: { filePath: "{filePath}", rightFileStart: { line: {lineNumber}, offset: 1 }, rightFileEnd: { line: {lineNumber}, offset: 1 } }
  → status: 1

一般的な PR コメント:

MCP(推奨):

mcp__azure-devops__repo_create_pull_request_thread
  → repositoryId: "{repo}"
  → pullRequestId: {prId}
  → project: "{project}"
  → comments: [{ content: "{comment}", commentType: 1 }]
  → status: 1

az CLI フォールバック:

az repos pr comment create \
  --id {prId} \
  --content '{comment}' \
  --org "{org}" \
  -o json 2>&1

既存スレッドに返信:

MCP(推奨):

mcp__azure-devops__repo_reply_to_comment
  → repositoryId: "{repo}"
  → pullRequestId: {prId}
  → threadId: {threadId}
  → project: "{project}"
  → content: "{reply}"

az CLI フォールバック:

az repos pr comment create \
  --id {prId} \
  --content '{reply}' \
  --reply-id {commentId} \
  --thread-id {threadId} \
  --org "{org}" \
  -o json 2>&1

各アクション後に確認します:

PR !{id} の {filePath}:{line} にコメントを追加しました

ステップ 6: レビュアーを管理

PR からレビュアーを追加または削除します。

MCP(推奨):

mcp__azure-devops__repo_update_pull_request_reviewers
  → repositoryId: "{repo}"
  → pullRequestId: {prId}
  → project: "{project}"
  → reviewers: [{ id: "{userId}", vote: 0, isRequired: true }]

レビュアーのユーザー ID を見つけるには、以下を使用します:

mcp__azure-devops__core_get_identity_ids
  → identities: ["{email or display name}"]

az CLI フォールバック:

az repos pr reviewer add \
  --id {prId} \
  --reviewers "{email}" \
  --org "{org}" \
  -o json 2>&1

レビュアーを削除するには:

az repos pr reviewer remove \
  --id {prId} \
  --reviewers "{email}" \
  --org "{org}" \
  -o json 2>&1

確認:

PR !{id} に {name} をレビュアーとして追加しました

ステップ 7: PR ステータスを更新

投票を投じる、自動完了を有効にする、ドラフトステータスを設定する、または PR を放棄/再度有効にします。

MCP(推奨):

mcp__azure-devops__repo_update_pull_request
  → repositoryId: "{repo}"
  → pullRequestId: {prId}
  → project: "{project}"
  → [以下の 1 つ以上のフィールド:]
      status: "active" | "abandoned" | "completed"
      isDraft: true | false
      autoCompleteSetBy: { id: "{userId}" }
      mergeStrategy: "squash" | "rebase" | "rebaseMerge" | "noFastForward"

投票を投じる(承認/却下)には、レビュアーエントリを更新します:

mcp__azure-devops__repo_update_pull_request_reviewers
  → reviewers: [{ id: "{currentUserId}", vote: 10 }]
  (vote: 10=承認、5=提案付きで承認、0=投票なし、-5=作成者の対応待ち、-10=却下)

az CLI フォールバック:

# ステータスを設定
az repos pr update \
  --id {prId} \
  --status {active|abandoned|completed} \
  --org "{org}" \
  -o json 2>&1

# 投票(承認)
az repos pr set-vote \
  --id {prId} \
  --vote approve \
  --org "{org}" \
  -o json 2>&1

# 自動完了を有効化
az repos pr update \
  --id {prId} \
  --auto-complete true \
  --merge-strategy squash \
  --org "{org}" \
  -o json 2>&1

確認:

PR !{id} を更新しました: {変更内容}

MCP ツールリファレンス

ツール目的
repo_list_pull_requests_by_repo_or_projectオープン PR を一覧表示
repo_get_pull_request_by_idPR 詳細を取得
repo_create_pull_request_threadレビューコメントスレッドを作成
repo_list_pull_request_threads既存の PR スレッドを一覧表示
repo_list_pull_request_thread_commentsスレッドコメントを読む
repo_reply_to_comment既存スレッドに返信
repo_update_pull_request_reviewersレビュアーを追加/削除
repo_update_pull_requestPR ステータス/プロパティを更新

az CLI フォールバックコマンド

MCP ツールが現在のセッションで利用できない場合に使用してください:

# オープン PR を一覧表示
az repos pr list \
  --repository "{repo}" --project "{project}" --org "{org}" \
  --status active -o table

# PR 詳細を表示
az repos pr show --id {prId} --org "{org}" -o json

# コメントを追加
az repos pr comment create \
  --id {prId} --content '{comment}' --org "{org}" -o json

# コメントを一覧表示
az repos pr comment list --id {prId} --org "{org}" -o table

# レビュアーを追加
az repos pr reviewer add \
  --id {prId} --reviewers "{email}" --org "{org}" -o json

# PR に投票
az repos pr set-vote \
  --id {prId} --vote {approve|reject|wait|reset} --org "{org}" -o json

# PR ステータスを更新
az repos pr update --id {prId} --status {status} --org "{org}" -o json

エラーハンドリング

エラー対応
.omcp/config.json が見つからないユーザーに /oh-my-copilot:omc-ado-setup を最初に実行するよう指示
az login が必要ユーザーに認証を求めます。中止しません — そのセクションをスキップ
PR が見つからないPR ID を確認し、設定内のリポジトリ名が ADO と一致することを確認
レビュアーの ID が見つからないcore_get_identity_ids を使用してユーザーをメールで検索します。ユーザーに完全なメールアドレスを提供するよう促す
投票の権限がないユーザーがレビュアーとしてリストされていない可能性があります。ステップ 6 を通じてまず自分を追加
スレッド更新が失敗スレッドがまだ「アクティブ」であることを確認してください。解決済みのスレッドには新しい返信を受け取ることができません
レート制限 / 4292 秒待機して 1 回再試行します。それでも失敗する場合は、そのセクションを利用不可として記載

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
RobinNorberg
リポジトリ
RobinNorberg/oh-my-copilot
ライセンス
MIT
最終更新
2026/5/12

Source: https://github.com/RobinNorberg/oh-my-copilot / ライセンス: MIT

本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: RobinNorberg · RobinNorberg/oh-my-copilot · ライセンス: MIT