mcpField
R
rhdh-overlay

rhdh-overlay

github.com/redhat-developer開発1951 回インストール1 日前に更新
リポジトリ

rhdh-overlay について

redhat-developer/rhdh-plugin-export-overlays のプラグインカタログのパッケージ化と overlay リポジトリ操作を扱うスキルです。リポジトリ固有の手順に沿って、導入、メタデータ更新、ビルド調査、PR 分析、公開を進めます。

主な機能

  1. 01プラグインの導入と更新
  2. 02Overlay メタデータの検索
  3. 03エクスポートと公開失敗の調査
  4. 04ワークスペースと CI 状態の確認
  5. 05PR の分類と分析
  6. 06公開のガード付き手順

活用シーン

  1. 01overlay ワークスペースへのプラグイン導入
  2. 02パッケージのバージョンと成果物の検索
  3. 03エクスポートまたは公開失敗の調査
  4. 04overlay の PR とワークスペースの確認

インストール

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

$npx skills add https://github.com/redhat-developer/rhdh-skills --skill rhdh-overlay

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

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

agents/
openai.yaml
references/
ci-feedback.md
label-priority.md
metadata-format.md
overlay-repo.md
rhdh-local.md
scripts/
analyze-pr.py
triage-prs.py
templates/
workspace-files.md
workflows/
analyze-pr.md
doctor.md
draft-notification.md
fix-build.md
onboard-plugin.md
triage-prs.md
update-plugin.md

詳細

RHDH オーバーレイ

カタログのパッケージングとオーバーレイリポジトリの操作を行います。リモートが redhat-developer/rhdh-plugin-export-overlays を示すチェックアウトで作業してください。 別のインストール済みスキルのファイルや CLI には依存しないでください。

まず確認すること

  1. リポジトリの指示を読み、gh auth status を実行します。
  2. git remote -v でチェックアウトとリモートを確認します。
  3. メタデータを変更する前に、対象のワークスペース、類似するワークスペース、関連する PR または CI のログを確認します。
  4. 環境の問題については、workflows/doctor.md に従います。

目的別の手順

目的読み込んで従う手順
プラグインを登録するworkflows/onboard-plugin.md
ソースのバージョンまたはコミットを更新するworkflows/update-plugin.md
エクスポートまたは公開の失敗を診断するworkflows/fix-build.md
ブランチまたはタグにおけるプラグインのバージョンまたはインストール成果物を調べる以下のメタデータ検索に従います
ワークスペースの状態を確認するreferences/overlay-repo.md を読み、ワークスペースのファイルと最近の gh 実行を確認します
オープン PR の滞留をトリアージするworkflows/triage-prs.md に従います。分類を再現可能にするには scripts/triage-prs.py を使用します
個別のオーバーレイ PR を分析するworkflows/analyze-pr.md に従います。scripts/analyze-pr.py を使用します
古い PR の通知文を作成するworkflows/draft-notification.md
公開を実行する以下の保護された公開手順を実行します

目的が明確な手順を推定します。チェックアウトから特定できないプラグイン、ワークスペース、ソース参照、または PR 番号が不足している場合にのみ確認してください。

メタデータ検索

読み取りにはすべて、指定されたオーバーレイのブランチまたはタグを使用します。指定がない場合は main を使用します。その参照にある catalog-entities/extensions/plugins/<plugin-name>.yaml を読み取り、spec.packages を解決したうえで、同じ参照にあるワークスペースの metadata/ ディレクトリから各 Package エンティティを探します。それらのエンティティから spec.packageName、spec.version、spec.dynamicArtifact を報告します。オーバーレイのチェックアウトで git show <ref>:<path> を使用します。参照またはメタデータが見つからない場合は、main にフォールバックせず、その旨を報告します。エンティティのフィールドについては references/metadata-format.md を読みます。

不変条件

  • すべてのエクスポートはオーバーレイリポジトリで設定し、エクスポートは CI が実行します。
  • source.json の repo-backstage-version は、アップストリームソースの実際の Backstage バージョンです。backstage.json の version は、RHDH との互換性を保つためのオーバーライドです。両者を取り違えないでください。
  • パッケージと参照は、アップストリームおよび生成されたメタデータから導き出します。OCI URL を作り出してはいけません。
  • リポジトリの慣例がこのスキルの例と異なる場合は、現在の類似するワークスペースの構造を模倣します。
  • マージ前に、対象の PR 成果物を正確にテストします。プラグインが読み込まれた状態での認証エラーは許容される場合がありますが、インストールまたは起動エラーは許容されません。

保護された公開

/publish を投稿する前に、PR がオープンであり、do-not-merge が付いておらず、現在のヘッドに対する成功済みの公開チェックがないことを確認します。コメントの投稿は外部への書き込みです。名前付きスキル mutation-gate を呼び出し、そのスキルが所有するゲートに従ってください。ここでゲートの内容を言い換えないでください。

操作を 1 つだけ明示します。対象は redhat-developer/rhdh-plugin-export-overlays#<number>@<head-sha>、プレビュー本文は /publish、前提条件は上記の 3 つの確認事項です。トリガーが誤っていた場合は、失敗時に手動での削除が必要なコメントを報告します。ユーザーが明示した操作を承認した後に限り、次を実行します。

gh pr comment <number> --repo redhat-developer/rhdh-plugin-export-overlays --body "/publish"

コメントと公開チェックの URL を報告するか、失敗した場合はその内容と必要な復旧手順を報告します。公開の実行を依頼された場合でも、それは PR の読み取りを意図するものであり、この書き込みへの承認ではありません。

その他の外部への書き込み

同じゲートが、ワークフローで発生するすべてのプッシュ、PR 作成、通知、その他の外部への書き込みにも適用されます。対象とペイロードが確定した後にのみ操作を明示します。承認された操作以外は実行せず、スキップした操作も含め、すべての操作について結果を報告します。読み取り専用のトリアージと分析にはゲートは不要です。

呼び出し元が指定する内容

呼び出し元は、このスキルを名前で呼び出し、ソースリポジトリ、ソース ref(コミットまたはタグ)、パッケージ、上流の Backstage バージョン、対象の RHDH バージョンを指定します。

このスキルが報告する内容

  • ワークスペースと、その中で変更された内容:ソース ref、パッケージ、メタデータファイル
  • CI とローカル検証の根拠、およびスキップしたチェックとその理由
  • プルリクエストの URL、またはプルリクエストを作成しなかったこと
  • 公開状況:未依頼、保留中、成功、失敗
  • 承認された各外部書き込みの結果
  • 残っている互換性リスク

ローカル検証を行うには、/rhdh-local を名前で呼び出し、正確なアーティファクト参照、プラグイン設定、名前付き環境変数、実行するチェックを指定してください。ローカルスキルのファイルは読み込まないでください。

完了

ワークスペースとメタデータの変更、実行したコマンドとスクリプト、CI とローカル検証の根拠、承認された各書き込みの結果、公開状況、残っている互換性リスクを報告すれば完了です。

コメント