mcpField
C
close-issue-flow

close-issue-flow

github.com/oschina開発5125 回インストール28 週間前に更新
リポジトリ

close-issue-flow について

close-issue-flowは、解決状況を確認してGiteeのissueを手動で閉じるスキルです。関連するプルリクエストの状態を調べ、適切なコメントを投稿してissueの状態を更新します。

主な機能

  1. 01issueの詳細とコメントを取得
  2. 02関連プルリクエストのマージ状況を確認
  3. 03解決コメントを投稿
  4. 04issueをクローズ状態に更新
  5. 05クローズ結果を報告

活用シーン

  1. 01関連PRのマージ後にissueを閉じる
  2. 02PRなしでの解決内容を記録
  3. 03再現不能または見送りの依頼を閉じる

MCP 対応

Gitee MCP Serverのツールを使い、issue詳細の取得、プルリクエストの一覧、コメント投稿、issue状態の更新を行います。mcporterがインストール済みの場合は、これを介したツール呼び出しをREADMEで推奨しています。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/oschina/gitee-agent-skills --skill close-issue-flow

インストール後、Claude Code で/close-issue-flowを入力して読み込まれたか確認します。

詳細

注:ローカルに mcporter がインストールされている場合は、MCP ツールを直接呼び出すのではなく、mcporter を使って呼び出してください。mcporter CLI は、より便利なインターフェースと優れたエラー処理を提供します。

Gitee MCP による Issue クローズのワークフロー

Issue をクローズする一連のワークフローを実行します。修正がマージ済みであることを確認 → クローズコメントを投稿 → Issue のステータスを更新します。

前提条件

  • Gitee MCP サーバーが設定済みであること(ツール:get_repo_issue_detail、list_repo_pulls、create_comment(resource_type: issue)、update_issue)
  • ユーザーからリポジトリのオーナー、リポジトリ名、Issue 番号が提供されていること
  • 通常、関連する PR のマージ後、または問題の解決後に実行します

手順

手順 1:Issue の詳細を取得する

get_repo_issue_detail を使って Issue の情報を取得します:

  • タイトル、説明、ラベル
  • 現在の状態(すでにクローズされていないか確認します)
  • 既存のコメント(どのように解決されたかを把握します)

Issue がすでにクローズされている場合は、ユーザーに知らせて終了します。

手順 2:関連する PR のステータスを確認する

list_repo_pulls を使って、以下の条件でリポジトリの PR を検索します:

  • 状態:merged
  • 説明に closes #[issue number] または fixes #[issue number] を含む

検索結果に応じて、以下のように対応します:

  • マージ済みの関連 PR が見つかった場合 → 修正が反映済みであることを確認します
  • 関連する PR がまだオープンの場合 → PR がまだマージされていないことをユーザーに知らせます
  • 関連する PR が見つからない場合 → Issue がどのように解決されたかをユーザーに尋ねます
手順 3:クローズコメントを投稿する

create_comment(resource_type: issue)を使ってクローズコメントを投稿します。適切なテンプレートを選択してください:

関連する PR がマージ済みの場合:

This issue has been fixed and merged via PR #[number].

**Fix summary**: [brief description of the fix]

Thanks for the report! If the problem persists, feel free to reopen this issue or submit a new one.

直接解決した場合(PR なし):

This issue has been resolved.

**Solution**: [description of how it was resolved]

If the problem persists, feel free to reopen this issue or submit a new one.

再現できなかった場合、またはリクエストを却下した場合:

[Explanation, e.g., "Unable to reproduce this issue" or "After discussion, we've decided not to implement this feature at this time."]

If you have new information, feel free to reopen the issue with additional details.
手順 4:Issue をクローズする

update_issue を使って Issue の状態を更新します:

  • state:closed

任意:

  • ラベルを更新します(例:fixed または resolved を追加)
  • マイルストーンを割り当てます(完了済みのマイルストーンに追加)
手順 5:概要を出力する
## Issue Closed

- Issue: #[number] [title]
- Reason: [Fixed / Cannot reproduce / Declined]
- Linked PR: #[number] (if any)
- Closing comment posted ✅
- Issue status updated to closed ✅

注意事項

  • 早まってクローズしないよう、クローズ前に Issue が確実に解決済みであることを必ず確認してください
  • ユーザーから報告されたバグをクローズする場合は、報告への感謝を伝えてください
  • 機能リクエストを却下する場合は、理由を説明し、丁寧にクローズしてください
  • PR の説明に closes #N を使うと、マージ時に Issue が自動的にクローズされます。このスキルは、手動でのクローズや説明コメントが必要な場合に使用します

コメント