If you are a platform engineer or developer building Red Hat Developer Hub software templates, you know the friction of wrestling with Nunjucks syntax, guessing location.yaml placements, and discovering errors only after rendering in your developer portal. While AI coding agents handle generic YAML, they lack Red Hat Developer Hub and Backstage-specific conventions.
To address this, the rhdh-templates skill, part of the RHDH Users Skill Pack, equips your AI assistant with Red Hat Developer Hub best practices, Nunjucks conventions, and local template validation. It brings schema checking, Nunjucks helpers, and reference templates directly into your coding assistant.
What you get
Install the skill once into your coding agent, then use it in 3 common situations to build Backstage software templates faster:
- Validate before merge: Schema and gotcha checks on
template.yamlfrom your laptop without a running cluster. - Templatize a repo: Interactive parameterization when you turn an existing codebase into a template. You confirm each mapping instead of accepting speculative YAML.
- Talk to your instance: Connect to a reachable Red Hat Developer Hub deployment to list active Scaffolder actions (the automated tasks that execute workflow steps like fetching templates, publishing repos, and registering entities), read action schemas directly, and dry-run templates against the API.
Whether you start from scratch or convert an existing repo, you end up with a clean, validated template ready for your catalog.
Quick start: Build Backstage software templates in 5 minutes
Prerequisites:
- An agent-enabled editor (such as Cursor, Claude Code, Codex, or Pi)
- A Git repository where you store software templates (
location.yaml,templates/, and so on) - A Red Hat Developer Hub instance (optional) to run the finished template. (Note: A running Red Hat Developer Hub instance is optional for developing the template; local validation runs offline.)
This walkthrough templatizes a real repository. Converting a live repository by hand is tedious work. You spend hours manually picking out parameter values, fighting Nunjucks syntax, and debugging broken YAML links.
1. Install the skill
Run the following command in your terminal, then open your template repository in your agent-enabled editor:
npx skills add redhat-developer/rhdh-users-skill-pack --skill rhdh-templates2. Scaffold the layout
If this is a new template repo, ask the skill to set up the recommended tree:
Set up template authoring in this repo. Check my tooling and scaffold the recommended layout.You should get a root location.yaml that registers templates under ./templates/**/template.yaml and a layout you can extend.
3. Templatize a reference repository
Pick a code base your team might standardize on for new services. We used the Quarkus getting-started quick start:
Help me turn the Quarkus getting-started quickstart into an RHDH software template. Walk parameterization interactively and wire fetch, publish, and catalog-register steps.The skill should propose which values become parameters, update templated files, and shape template.yaml for your instance.
4. Validate locally
Before you merge or import anything:
Validate the template locallyA clean run reports 0 critical findings. Fix anything the skill flags, then validate again. That is your signal the template is ready to merge or import.
5. Try it out on Red Hat Developer Hub
If you have rhdh-local or a cluster deployment available, refresh your catalog (or import the repo's location.yaml), navigate to self-service, and launch your newly authored Quarkus template to see it in action.
Under the hood: Commands and scripts
rhdh-templates bundles reference docs, JSON schema, example templates, and Python scripts your agent can run for deterministic checks. You invoke workflows in plain language; the skill routes to the right command. The following quick start uses init, template creation, and validate. When you need more, these are the main entry points:
| Command | Description |
|---|---|
init | Check tooling and scaffold the recommended template repo layout |
create | Author a new template from scratch with guided steps |
templatize | Turn an existing codebase into a parameterized template |
add-parameter | Add a form field or parameter group to template.yaml |
add-step | Add a Scaffolder step to an existing template |
add-skeleton | Add or parameterize files copied into the target repo |
create-location | Generate or fix root location.yaml for catalog registration |
fix-gotchas | Auto-fix common Red Hat Developer Hub template mistakes |
validate | Run local schema, gotcha, and optional Nunjucks checks |
examples | Browse curated reference templates to study or compare |
list-actions | List Scaffolder actions exposed on your Red Hat Developer Hub instance |
dry-run | Test template execution against the API |
explain-action | Show an action or parameter schema from your instance |
Local commands such as validate and fix-gotchas run on your laptop. Commands like list-actions, dry-run, and explain-action need a reachable Red Hat Developer Hub back-end URL and an optional API token. See the skill source on GitHub for full reference docs.
Ready to speed up your workflow? Install rhdh-templates today to turn your team's core repository into a self-service template. Explore the subcommand reference on GitHub, or try Red Hat Developer Hub in a hands-on sandbox environment.