← ClaudeAtlas

backstage-scaffolderlisted

Author Backstage Software Templates and custom scaffolder actions — parameters, pickers, steps, outputs, action backend modules, dry runs, permissions, and failed or stuck tasks.
bendaamerahmed/backstage-idp-plugin · ★ 1 · API & Backend · score 65
Install: claude install-skill bendaamerahmed/backstage-idp-plugin
# Backstage Scaffolder Write `Template` entities and custom scaffolder actions that survive review, run under the permission framework, and fail loudly instead of silently. ## Preconditions - Release line from `backstage.json`; scaffolder packages resolved via `yarn why @backstage/plugin-scaffolder-backend`. - Backend generation: `createBackend()` + `backend.add(import('@backstage/plugin-scaffolder-backend'))` in `packages/backend/src/index.ts` is the new backend system. A `packages/backend/src/plugins/scaffolder.ts` router is legacy — migrate first (`backstage-plugin-migrate`) or register actions through the router's options and say so in your report. - Frontend generation matters only for custom field extensions: NFS uses `FormFieldBlueprint` + `createFormField` from `@backstage/plugin-scaffolder-react/alpha`. Read the installed package's exports rather than assuming the legacy registration shape. - `@backstage/plugin-catalog-backend-module-scaffolder-entity-model` present in the backend — without it `kind: Template` does not validate and no template appears. - Working SCM `integrations` in `app-config.yaml` for whichever host the template publishes to. - A local backend you may run. Any run that touches a real SCM org is an external mutation — stop and get authorization first. ## Procedure 1. **Inventory before authoring.** `GET /api/scaffolder/v2/actions` (or the `/create/actions` page) for installed actions and their input/output schemas; `GET /api/scaffolder/v2/tem