Backstage app bootstrap
Create the smallest viable Backstage adopter application while preserving an existing repository
and keeping app creation approval-gated.
When to invoke
- "Create a new Backstage app."
- "Bootstrap an internal developer portal with Backstage."
- "Validate this freshly generated Backstage repository."
- "Set up the Backstage app and backend packages."
Inputs
- Target directory and whether it must be empty.
- Package scope and app name.
- Target Backstage release policy.
- Package manager and supported Node.js version.
- Development database and initial sign-in mode.
Procedure
- Confirm the target is an adopter app, not
backstage/backstage, Open Horizons, or RHDH.
- Read the current official getting-started page and record the verification date.
- Inspect the destination for existing files, symlinks, or unrelated work.
- Present the exact create-app command, destination, network downloads, and files it will create.
- Obtain explicit approval before running
@backstage/create-app.
- Run the current official scaffolder command without embedding credentials.
- Inspect
backstage.json, root scripts, packages/app, packages/backend, and config layers.
- Run the generated repository's existing install, typecheck, test, and start validation as
applicable. Do not invent replacement scripts.
- Record the generated Backstage version, Node.js requirement, package manager, config files, and
next authentication or catalog steps.
Safety
- Dry-run the destination assessment before app creation.
- Never scaffold over a non-empty directory without explicit user approval.
- Do not use the Backstage core contributor workflow for an adopter app.
- Keep production credentials and provider secrets out of generated files.
Output template
## Backstage bootstrap result
**Status:** planned | created | validated | blocked
**Destination:** <path>
**Backstage version:** <version and source>
| Check | Result |
| --- | --- |
### Next configuration
- <auth, catalog, database, or deployment step>
Quality gate
1---2name: backstage-app-bootstrap3description: Create or assess a standalone Backstage adopter application with version-aware prerequisites, package layout, first-run configuration, and baseline validation. Use when starting a Backstage app, reinstalling an app shell, or checking whether a repository is a valid adopter app.4---56<!-- Generated from harness/github-copilot/plugins/backstage-expert/skills/backstage-app-bootstrap/SKILL.md by harness/claude-code/scripts/convert_from_copilot.py. Edit the source, not this file. -->78# Backstage app bootstrap910Create the smallest viable Backstage adopter application while preserving an existing repository11and keeping app creation approval-gated.1213## When to invoke1415- "Create a new Backstage app."16- "Bootstrap an internal developer portal with Backstage."17- "Validate this freshly generated Backstage repository."18- "Set up the Backstage app and backend packages."1920## Inputs2122- Target directory and whether it must be empty.23- Package scope and app name.24- Target Backstage release policy.25- Package manager and supported Node.js version.26- Development database and initial sign-in mode.2728## Procedure29301. Confirm the target is an adopter app, not `backstage/backstage`, Open Horizons, or RHDH.312. Read the current official getting-started page and record the verification date.323. Inspect the destination for existing files, symlinks, or unrelated work.334. Present the exact create-app command, destination, network downloads, and files it will create.345. Obtain explicit approval before running `@backstage/create-app`.356. Run the current official scaffolder command without embedding credentials.367. Inspect `backstage.json`, root scripts, `packages/app`, `packages/backend`, and config layers.378. Run the generated repository's existing install, typecheck, test, and start validation as38 applicable. Do not invent replacement scripts.399. Record the generated Backstage version, Node.js requirement, package manager, config files, and40 next authentication or catalog steps.4142## Safety4344- Dry-run the destination assessment before app creation.45- Never scaffold over a non-empty directory without explicit user approval.46- Do not use the Backstage core contributor workflow for an adopter app.47- Keep production credentials and provider secrets out of generated files.4849## Output template5051```markdown52## Backstage bootstrap result5354**Status:** planned | created | validated | blocked55**Destination:** <path>56**Backstage version:** <version and source>5758| Check | Result |59| --- | --- |6061### Next configuration62- <auth, catalog, database, or deployment step>63```6465## Quality gate6667- [ ] The target is positively identified as an adopter application.68- [ ] Current first-party create-app guidance was checked.69- [ ] The destination and network effects were approved before scaffolding.70- [ ] Generated package and config layout was inspected.71- [ ] Existing validation commands ran or the blocker is explicit.72- [ ] No credentials or unrelated files were overwritten.