Help us improve
Share bugs, ideas, or general feedback.
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.
npx claudepluginhub redhat-developer/rhdh-skill --plugin rhdhHow 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.mdGuides Claude Code plugin creation, structure (plugin.json, commands/agents/skills/hooks), installation (/plugin), marketplaces, team workflows, testing, debugging, and settings. Delegates to docs-management.
Creates, 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).
Share bugs, ideas, or general feedback.
<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>