← ClaudeAtlas

backstage-repo-discoverylisted

Map an unfamiliar Backstage monorepo — release line, frontend/backend generation, plugin inventory, config layering, real validation commands — before changing anything.
bendaamerahmed/backstage-idp-plugin · ★ 1 · API & Backend · score 65
Install: claude install-skill bendaamerahmed/backstage-idp-plugin
# Backstage repo discovery Produce a compact, evidence-backed map of a Backstage monorepo. Every other Backstage skill assumes this map exists. Detect by import source and composition, never by version number alone. ## Preconditions - Repository root is readable and `ripgrep` (`rg`) is available; fall back to `grep -rn`. - Discovery is read-only: no installs, builds, or codegen. - If `backstage.json`, `packages/app` and `packages/backend` are all absent, this is probably a standalone plugin repo, not an app monorepo; note that and adapt. ## Procedure 1. **Anchor the repo.** Read `backstage.json` at the root — its `version` field is the release line the app was last bumped to (not the version of any single package). Read root `package.json`: `name`, `workspaces` globs, `engines.node`, `packageManager`, `resolutions`, and the whole `scripts` block. Record all of it. 2. **Package manager and Node.** `yarn.lock` + `.yarnrc.yml` means Yarn Berry (Backstage's default; recent scaffolds pin Yarn 4.x via `packageManager` + `corepack`). `package-lock.json` or `pnpm-lock.yaml` means the repo diverged from upstream — every later command must be translated. Current Backstage supports Node 22 and 24 only; an `engines.node` allowing older majors means the repo is behind. 3. **Inventory packages.** Expand every `workspaces` glob (commonly `packages/*` and `plugins/*`). For each, capture `name`, `version`, `private`, and `backstage.role` from its `package.j