backend-module-builderlisted
Install: claude install-skill vipincode/exr-agent-skills
# backend-module-builder
Execute an approved `_docs/FEATURE_PLAN_<name>.md` into working code, following the project's conventions exactly and — critically — reusing what already exists instead of regenerating it. Duplicate utils/middleware are the failure mode this skill exists to prevent, so the search-before-create gate is mandatory, not advisory.
## Step 1 — Load everything
**First resolve the project dir** for this (`backend`) domain via `../LAYOUT.md` (read
`.claude/workspace.json`; fall back to the repo root if a root `ARCHITECTURE.md` exists with no
manifest). Everything below — the plan, the contract files, the dedup greps, the new `src/`
files, the registry, and the `src/app.ts` router mount — is **relative to that project dir**.
1. The feature plan: `_docs/FEATURE_PLAN_<name>.md` (planner docs live under `_docs/`). If none exists, stop and point the user to backend-feature-planner — do not improvise a plan.
2. `ARCHITECTURE.md` — paradigm, response envelope, error model, validation flow, **import convention** (e.g. NodeNext `.js` extensions), layout, auth primitives. Follow it literally; do not impose patterns from memory that contradict it.
3. `MODULE_REGISTRY.md` — the catalog of shared pieces and existing modules.
## Step 2 — The dedup gate (run before creating ANY shared code)
This is the heart of the skill. Before writing any util, middleware, helper, type, constant, or model that *could* be shared, follow `references/dedup-protocol.md`:
1. Check the pla