← ClaudeAtlas

makefile-standardlisted

Use when the user asks to create or edit a Makefile, add or rename a make target, or review Make target names.
painhardcore/developer-standards · ★ 1 · Data & Documents · score 74
Install: claude install-skill painhardcore/developer-standards
# makefile-standard Naming and shape coach for Makefiles. Not a maximal generator: an operation with no evidence gets no target. ## Scope Not here: Compose file contents (`compose-standard`), image builds (`dockerfile-standard`), GitHub Actions wiring (`ci-standard`), Go layout and golangci (`go-project-standard`). This skill names the Make wrappers for all of them. ## Workflow ### 1. Inspect needs, not possibilities List the operations that **exist or were requested**: scripts, CI, README, Compose, deploy, DB tools, current targets. Ignore "nice to have" capabilities with no evidence. ### 2. Name each needed operation Read [`references/profiles.md`](references/profiles.md) first. Full rules: [`references/makefile-standard.md`](references/makefile-standard.md). For each needed operation, and only those: 1. Decide where it acts: production is `prod-*`, local is the plain name, shipping code from this machine is `deploy` (never `prod-deploy`). A production backup is `prod-backup`. 2. Map it to a canonical name via profiles or [`references/targets.yaml`](references/targets.yaml). 3. Apply shape: `##` help text, `.PHONY`, kebab-case, `ENV=` where it applies. 4. Add or rename that one target. Adding `deploy` does not drag in `prod-*`. Greenfield: start from [`assets/Makefile.template`](assets/Makefile.template) and replace every `$(error Adapt…)` with a real recipe. Append a snippet from `assets/snippets/` only when that capability is evidenced (`compose`, `deploy`, `pr