rhdh-forge
Reads GitHub and GitLab and constructs unexecuted forge payloads for the other RHDH skills: parse an issue, pull request, or merge request reference, fetch…
Skill by redhat-developer
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/redhat-developer-rhdh-forge
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: writing
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md and code. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Network hosts it talks to 2
codeload.github.com· found in install commandgithub.com· found in code
Files it touches
~/.claude/skills/rhdh-forge
What's inside
- Skill name
rhdh-forge- Description
- Reads GitHub and GitLab and constructs unexecuted forge payloads for the other RHDH skills: parse an issue, pull request, or merge request reference, fetch issue detail, resolve a plugin workspace, inspect checks or pipelines, read repository files, or build the exact command for a GitHub pull request, GitLab merge request, comment, label, assignee, approval, or /publish write. Use for a forge URL, a bare #number, a !number merge request, "which workspace is this issue in", a stale statusCheckRollup, "why did that check fail", or safe gh, glab, and jq command construction.
- License
- Apache-2.0
- Compatibility
- GitHub CLI authenticated through gh auth login, plus Python 3. glab is optional and needed only for GitLab work, authenticated through glab auth login --hostname.
- Instructions
- 137 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Files (6)
- SKILL.md
- openai.yaml · agents/
- gh-cli.md · references/
- glab-cli.md · references/
- issue-context.md · references/
- fetch_issue_context.py · scripts/
SKILL.md (first lines)
# RHDH Forge
One home for reading a forge and constructing its write payloads. Issue parsing,
issue fetch, workspace resolution, check and pipeline reads, repository content
reads, and the `gh` and `glab` behaviours that mislead a caller who has not met
them before all live here. Otherwise, every skill that touches a forge keeps its
own drifting copy.
This skill reads. It never executes a write.
GitHub work runs through `gh`. GitLab work — `rhidp/rhdh` and
`rhidp/rhdh-plugin-catalog` on `gitlab.cee.redhat.com` — runs through `glab`,
which is only needed when a GitLab host is in play.
## Route by outcome
| Outcome | Load and follow |
|---|---|
| Turn a GitHub issue reference into structured context | Run `uv run scripts/fetch_issue_context.py <reference>` |
| Parse a GitHub or GitLab reference without a network call | `references/issue-context.md` |
| Resolve the plugin workspace an issue belongs to | `references/issue-context.md` |
| Read PR state, labels, assignees, files, or check status | `references/gh-cli.md` |
| Explain a failing, stale, or missing check | `references/gh-cli.md` |
| Read a file from a repository or a PR branch | `references/gh-cli.md` |
| Read a GitLab issue, MR state, pipeline status, or file | `references/glab-cli.md` |
| Prepare a GitHub pull-request creation payload | `references/gh-cli.md`, then the caller's mutation gate |
| Prepare a GitLab merge-request creation payload | `references/glab-cli.md`, then the caller's mutation gate |
| Prepare a comment, label, assignee, or `/publish` payload | `references/issue-context.md`, then the caller's mutation gate |
| Prepare a GitLab comment, label, or approval payload | `references/glab-cli.md`, then the caller's mutation gate |
Callers invoke this skill by name and consume what it returns. Do not load its
files from another skill.
## Invariants
- Every route here is read-only. A caller that needs a write gets a payload, not
an execution.
- Construct an issue, PR, or MR URL from the resolved namespace, repository, and
number. Never retain the user's raw URL; it may carry a fragment or a query
string.
- A Jira key is not this skill's work. Extract it, hand it back, and let the
caller invoke `/rhdh-jira-api` for the detail.
- `gh pr checks` and `statusCheckRollup` are cached views and go stale. Confirm
a check verdict against `gh run list --branch` before acting on it.
- A GitLab pipeline verdict belongs to a commit, not to a merge request. Compare
the pipeline's SHA against the MR head SHA before reporting it.
- Report an unresolved workspace as unresolved. Guessing one sends a caller into
the wrong repository.
- Never read a credential file. If `gh auth status` or `glab auth status` fails,
stop and report the missing capability.
## Mutation boundary
The command patterns in the references are payloads, not authorization. This
skill builds the command and hands it back unexecuted, which is what leaves the
decision with the user rather than with the module that knows the syntax.
Before any pull request, merge request, comment, label, assignee, review,
approval, or `/publish` write, the calling skill invokes `/mutation-gate` and
follows it. This skill returns the exact argument vector and a shell-safe
rendering, the canonical host and repository, the target object or base and head
branches, the title when applicable, and the absolute body-file path. It also
returns the body-file contents for preview and a read-only verification command.
It never runs the write command.
For PR and MR creation, reject a missing or multiline title, a relative or
unreadable body file, an unresolved repository, or an empty base or head branch.
Treat each value as one argument. Do not interpolate a title or body into shell
syntax, use `eval`, or replace the body file with a heredoc.
A request to fetch, triage, or analyze is intent to read. It approves no write.
## Issue context output
`scripts/fetch_issue_context.py` prints one JSON object and nothing else. There
is no envelope: the issue fields are the whole document.
```json
{
"key": "owner/repo#607",
"summary": "issue title",
"source": "github",
"url": "https://github.com/owner/repo/issues/607",
"repository": "owner/repo",
"number": 607,
"state": "OPEN",
"labels": [],
"description": "full issue body",
"workspace": {"name": null, "strategy": "label"},
"comments": []
}
```
`key` is `owner/repo#number`, `summary` is the issue title, `state` is `OPEN` or
`CLOSED`, and `workspace.strategy` is one of `label`, `body`, `title`,
`package`, or `unresolved`.
`/rhdh-jira-api` returns the same issue shape with `source: jira`, and a GitLab
issue read through `references/glab-cli.md` fills the same fields with
`source: gitlab`, so a caller consumes any of the three without branching on
shape.
Keep an unresolved workspace `null` with `strategy: unresolved` rather than
inventing a name.
## Scripts and references
- `scripts/fetch_issue_context.py` deterministically builds that document from a
GitHub issue URL, a bare `#number`, or `owner/repo#number`. A GitLab issue is
read with `glab` instead.
- `references/issue-context.md` covers reference parsing for both forges, field
extraction, workspace resolution, and the gated interaction payloads.
- `references/gh-cli.md` covers `gh` and `jq` read patterns, pull-request
creation payloads, check and workflow-run reads, repository content reads,
the failure table, and the overlay repository's `/publish` rules.
- `references/glab-cli.md` covers `glab` reads for merge requests, pipelines,
and repository content, GitLab merge-request creation payloads, the GitLab
field names that differ from GitHub's, and the other commands it constructs
but never runs.From redhat-developer/rhdh-skills, Apache-2.0.
More from redhat-developer/rhdh-skills
- 0.641score
rhdh-plugin-bug-fix
redhat-developer
Reproduces, diagnoses, and fixes a defect in a Backstage plugin inside the rhdh-plugins or community-plugins repositories: resolve the report from a RHIDP…
SkillAFreshness: A★ 18Claude Code +9 - 0.641score
rhdh-local
redhat-developer
Operates a local Red Hat Developer Hub environment with the rhdh-local-setup customization system: enable or disable dynamic plugins, apply configuration…
SkillAFreshness: A★ 18Claude Code +9 - 0.641score
rhdh-pr-mr
redhat-developer
Pushes a topic branch and opens a GitHub pull request or GitLab CEE merge request for CI and agent automation, then links Jira via /rhdh-jira-link only when…
SkillAFreshness: A★ 18Claude Code +9 - 0.641score
rhdh-overlay
redhat-developer
Manages the rhdh-plugin-export-overlays repository and Extensions Catalog: onboard plugins, update upstream versions, repair export or publish failures…
SkillAFreshness: A★ 18Claude Code +9 - 0.641score
rhdh-backport
redhat-developer
Automate the RHDH plugin backport process from PR cherry-pick to changelog.
SkillAFreshness: A★ 18Claude Code +9 - 0.641score
rhdh-yarn-bump
redhat-developer
Bumps Yarn Berry across the RHDH repos — rhdh-plugins, rhdh midstream, rhdh-plugin-export-overlays, rhdh-cli, and GitLab CEE rhidp/rhdh and…
SkillAFreshness: A★ 18Claude Code +9 - 0.641score
rhdh-jira-create
redhat-developer
Opens new work in RHDH Jira and decides what kind of work it is — Feature or Feature Request in RHDHPLAN, Epic, Story, Task, Spike or Vulnerability in RHIDP…
SkillAFreshness: A★ 18Claude Code +9 - 0.641score
rhdh-jira-link
redhat-developer
Ties a GitHub pull request or GitLab merge request to an RHDH Jira issue in RHIDP, RHDHPLAN, RHDHBUGS, or RHDHSUPP: attach the Jira Web link titled `repo #N…
SkillAFreshness: A★ 18Claude Code +9 - 0.641score
rhdh-konflux-tasks
redhat-developer
Bumps Konflux Tekton task bundle digests in `.tekton` and `.tekton-templates`, applies each task's MIGRATION.md, regenerates PipelineRuns, and checks pins…
SkillAFreshness: A★ 18Claude Code +9 - 0.641score
rhdh-base-images
redhat-developer
Analyzes and updates the `FROM` base images, Node headers, Go toolchain, and `rpms.lock.yaml` files in rhdh, rhdh-operator, and rhdh-must-gather; pin…
SkillAFreshness: A★ 18Claude Code +9 - 0.641score
rhdh-plugin-catalog-index-status-and-update-flow
redhat-developer
Reports Red Hat Developer Hub plugin catalog index status for a release branch or x.y.z and updates the downstream quay.io/rhdh/plugin-catalog-index after you…
SkillAFreshness: A★ 18Claude Code +9 - 0.641score
rhdh-plugin-nfs-migration
redhat-developer
Converts a legacy Backstage frontend plugin used by Red Hat Developer Hub to the New Frontend System (NFS): replace createPlugin and createRoutableExtension…
SkillAFreshness: A★ 18Claude Code +9
Signals
- Stars
- 18
- Forks
- 40
- Open issues
- 1
- Last commit (this folder)
- Oct 1, 2026 (28 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- Repository
- github.com/redhat-developer/rhdh-skills
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from redhat-developer
- 0.641score
rhdh-base-images
redhat-developer
Analyzes and updates the `FROM` base images, Node headers, Go toolchain, and `rpms.lock.yaml` files in rhdh, rhdh-operator, and rhdh-must-gather; pin…
SkillAFreshness: A★ 18Claude Code +9 - 0.641score
rhdh-yarn-bump
redhat-developer
Bumps Yarn Berry across the RHDH repos — rhdh-plugins, rhdh midstream, rhdh-plugin-export-overlays, rhdh-cli, and GitLab CEE rhidp/rhdh and…
SkillAFreshness: A★ 18Claude Code +9 - 0.641score
rhdh-pr-mr
redhat-developer
Pushes a topic branch and opens a GitHub pull request or GitLab CEE merge request for CI and agent automation, then links Jira via /rhdh-jira-link only when…
SkillAFreshness: A★ 18Claude Code +9 - 0.641score
rhdh-konflux-tasks
redhat-developer
Bumps Konflux Tekton task bundle digests in `.tekton` and `.tekton-templates`, applies each task's MIGRATION.md, regenerates PipelineRuns, and checks pins…
SkillAFreshness: A★ 18Claude Code +9 - 0.641score
rhdh-plugin-catalog-index-status-and-update-flow
redhat-developer
Reports Red Hat Developer Hub plugin catalog index status for a release branch or x.y.z and updates the downstream quay.io/rhdh/plugin-catalog-index after you…
SkillAFreshness: A★ 18Claude Code +9 - 0.641score
rhdh-jira-create
redhat-developer
Opens new work in RHDH Jira and decides what kind of work it is — Feature or Feature Request in RHDHPLAN, Epic, Story, Task, Spike or Vulnerability in RHIDP…
SkillAFreshness: A★ 18Claude Code +9
Cite this page
rhdh-forge skill. Agent Mart. https://agentmart.dev/skills/redhat-developer-rhdh-forge (last updated 2026-10-24)