Backstage scaffolder template review
Skill Raishin/vanguard-frontier-agentic/skills/backstage/backstage-scaffolder-template-review
Use this skill when reviewing Backstage Scaffolder software templates. Trigger when the user asks whether a template is safe for developer self-service, whether template RBAC gates are in place, whether input parameters are validated, whether a step action has excessive blast radius, or whether template outputs expose secrets.From its SKILL.md
npx -y skills add Raishin/vanguard-frontier-agentic --skill backstage-scaffolder-template-reviewAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 20 stars20 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
2.8 KB, 469 tokens by cl100k_base, as published. Nobody here has run it
Backstage Scaffolder Template Review
Purpose
Review Backstage Scaffolder Template kind resources for action blast-radius, input parameter injection risk, RBAC permission gate coverage, integration secret scope, catalog entity poisoning via catalog:register, and plaintext secret exposure in output: stanzas. Backstage Scaffolder gives developers a curated UI to trigger powerful backend actions — without RBAC gates and input validation, every authenticated developer effectively has write access to whatever the Scaffolder integration credentials can reach.
Lean operating rules
- Prefer user-provided sanitized Template YAML as primary evidence; official Backstage docs are the authoritative fallback.
- Treat any
steps:action that provisions real cloud infrastructure (Terraform, Crossplane CRD apply, CloudFormation deploy,kubectl apply) with no RBAC permission gate as a CRITICAL finding. - Treat input parameters flowing unsanitized into
publish:github.repoUrl, file-path actions, or shell-exec actions as a HIGH finding — path traversal and injection are realistic. - Treat
publish:githubwithvisibility: publicas the default or without anallowedHostsconstraint as a HIGH finding. - Treat
output:stanzas exposing plaintext generated credentials, connection strings, or API keys in the Backstage UI as a HIGH finding. - Treat the absence of
@backstage/plugin-permission-backendpolicies for infrastructure-provisioning templates as a HIGH finding — any authenticated Backstage user can trigger them. - Treat
catalog:registeraccepting arbitrary user-supplied YAML without server-side entity schema validation as a MEDIUM finding — catalog poisoning overwrites ownership and lifecycle metadata. - Keep the answer scoped: report what was reviewed, the evidence level, and exactly which steps or fields triggered each finding.
References
Load these only when needed:
Response minimum
- Scoped target (Template
metadata.name) and evidence level - Each
steps:action type and its provisioning blast radius - Input parameter validation gaps (missing
maxLength,pattern,enum) - RBAC permission gate verdict (present / absent / partial)
- Integration secret scope assessment
output:stanza exposure assessment- Safe next actions and open questions
What ships with it: 2 files
7.8 KB alongside SKILL.md
references/
- workflow-and-output.md6.6 KB
- metadata.json1.2 KB