From rhdh
Onboards, updates, and troubleshoots plugins in the Red Hat Extensions Catalog via the rhdh-plugin-export-overlays repository. Use for plugin imports, version bumps, CI failures, PR triage, or publish triggers.
How this skill is triggered — by the user, by Claude, or both
Slash command
/rhdh:overlayThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
<cli_setup>
references/ci-feedback.mdreferences/label-priority.mdreferences/metadata-format.mdreferences/overlay-repo.mdreferences/rhdh-local.mdscripts/analyze-pr.pyscripts/triage-prs.pytemplates/workspace-files.mdworkflows/analyze-pr.mdworkflows/doctor.mdworkflows/draft-notification.mdworkflows/fix-build.mdworkflows/onboard-plugin.mdworkflows/triage-prs.mdworkflows/update-plugin.md<cli_setup> This skill uses the orchestrator CLI. Set up first:
RHDH=../rhdh/scripts/rhdh
Verify environment:
$RHDH
If needs_setup: true, run $RHDH doctor before proceeding.
</cli_setup>
<essential_principles>
All plugin exports go through [rhdh-plugin-export-overlays](https://github.com/redhat-developer/rhdh-plugin-export-overlays). Each plugin lives in a workspace folder with `source.json` + `plugins-list.yaml`. CI handles the actual export - we define the configuration. Two Backstage version fields serve different purposes: - `source.json` → `repo-backstage-version` = upstream's **actual** version - `backstage.json` → `version` = our **override** for RHDH compatibilityNever confuse these. CI validates the source.json value matches upstream.
Always test with PR artifacts before merge using rhdh-local. OCI format: `oci:///</essential_principles>
## Identify TaskWhat overlay task would you like to do?
For contributors managing their own plugin(s)
For COPE/Plugins team managing the overlay repository
Wait for response before proceeding.
### Plugin Owner Routes| Response | Workflow |
|---|---|
| 1, "onboard", "add", "new plugin", "import" | workflows/onboard-plugin.md |
| 2, "update", "bump", "upgrade", "version" | workflows/update-plugin.md |
| 3, "status", "check", "health" | Run inline status checks |
| 4, "fix", "debug", "failure", "error" | workflows/fix-build.md |
| Response | Workflow |
|---|---|
| 5, "triage", "prioritize", "backlog" | workflows/triage-prs.md |
| 6, "analyze", "check PR", "PR #" | workflows/analyze-pr.md |
| 7, "publish", "trigger" | Run inline publish trigger |
After reading the workflow, follow it exactly.
<inline_status_check> For status checks, use the CLI:
$RHDH workspace list # List all workspaces
$RHDH workspace status <name> # Check specific workspace
Or run direct commands:
# Recent CI runs
gh run list --repo redhat-developer/rhdh-plugin-export-overlays --limit 5
# Open PRs for workspace
gh pr list --repo redhat-developer/rhdh-plugin-export-overlays --search "<name>"
</inline_status_check>
<inline_publish_trigger> For triggering publish on one or more PRs:
REPO="redhat-developer/rhdh-plugin-export-overlays"
# Single PR
gh pr comment <number> --repo $REPO --body "/publish"
# Check if publish already ran
gh pr view <number> --repo $REPO --json statusCheckRollup \
--jq '.statusCheckRollup[] | select(.name | contains("publish"))'
Guards before triggering:
do-not-merge labelSee ../rhdh/references/github-reference.md for full patterns. If unavailable, use standard gh CLI patterns.
</inline_publish_trigger>
<reference_index> Overlay repo patterns: references/overlay-repo.md CI feedback interpretation: references/ci-feedback.md Metadata format: references/metadata-format.md PR label priorities: references/label-priority.md RHDH Local testing: references/rhdh-local.md
For GitHub/JIRA patterns: See ../rhdh/references/ (if unavailable, use standard gh / acli patterns)
</reference_index>
<workflows_index>
| Workflow | Purpose |
|---|---|
| onboard-plugin.md | Full 6-phase process to add new plugin |
| update-plugin.md | Bump to newer upstream version |
| fix-build.md | Debug and resolve CI failures |
| Workflow | Purpose |
|---|---|
| triage-prs.md | Prioritize open PRs by criticality |
| analyze-pr.md | Deep-dive on single PR (assignment, compat, readiness) |
| doctor.md | Environment setup guidance |
| </workflows_index> |
<templates_index>
| Template | Purpose |
|---|---|
| workspace-files.md | source.json, plugins-list.yaml, backstage.json |
| </templates_index> |
<success_criteria>
/publish succeeds)$RHDH log add$RHDH todo
</success_criteria>npx claudepluginhub redhat-developer/rhdh-skill --plugin rhdhCreates, validates, publishes, and manages plugins for Claude Code and OpenCode coding agents. Handles plugin creation, marketplace setup, submission to directories, and deletion (with user confirmation).
Troubleshoots Claude Code plugin registry issues like installation scopes, orphaned entries, project-scoped visibility bugs, and debugging failures. Details structure of ~/.claude/plugins/installed_plugins.json.