Manage RHDH plugins in the overlay repository (rhdh-plugin-export-overlays). Onboard, update, maintain, and triage plugins in the Extensions Catalog.
Manages plugin onboarding, updates, and maintenance for the Red Hat Developer Hub Extensions Catalog.
/plugin marketplace add durandom/rhdh-skill/plugin install rhdh-plugin@rhdhThis skill inherits all available tools. When active, it can use any tool Claude has access to.
references/ci-feedback.mdreferences/label-priority.mdreferences/metadata-format.mdreferences/overlay-repo.mdreferences/rhdh-local.mdtemplates/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>
<principle name="overlay_repo_pattern"> 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. </principle> <principle name="version_fields"> 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. </principle>
<principle name="test_with_pr_artifacts"> Always test with PR artifacts before merge using rhdh-local. OCI format: `oci://<registry>/<image>:pr_<number>__<version>!<package-name>` Success = plugin loads and attempts API calls (auth errors are expected without real credentials). </principle> <principle name="copy_similar_workspaces"> When stuck, find a similar workspace and copy its patterns. AWS plugins → copy from `aws-ecs/` or `aws-codebuild/` Community plugins → copy from `backstage/` Check existing PRs for structure examples. </principle></essential_principles>
<intake> ## 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. </intake>
<routing> ### 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. </routing>
<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 references/github-reference.md (in rhdh skill) for full 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/
</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>Activates when the user asks about AI prompts, needs prompt templates, wants to search for prompts, or mentions prompts.chat. Use for discovering, retrieving, and improving prompts.
Search, retrieve, and install Agent Skills from the prompts.chat registry using MCP tools. Use when the user asks to find skills, browse skill catalogs, install a skill for Claude, or extend Claude's capabilities with reusable AI agent components.
Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.