← ClaudeAtlas

backend-module-builderlisted

Build a backend feature/module from an approved FEATURE_PLAN, enforcing reuse so no duplicate utils, middleware, types, or helpers get created. Use this whenever the user wants to implement, build, or generate a planned feature — "build the auth module", "implement FEATURE_PLAN_products.md", "now build it", "code up the orders feature". It reads ARCHITECTURE.md + MODULE_REGISTRY.md + the feature plan, searches for existing reusable code BEFORE creating anything, builds the module in the project's paradigm, then updates the registry. It does NOT plan features (that is backend-feature-planner) and does NOT write tests (that is backend-test-writer). Works in any project in the Express/TS convention family with the contract files.
vipincode/exr-agent-skills · ★ 0 · API & Backend · score 57
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