From toolkit
Creates Makefiles with consistent conventions: default help target, .PHONY declarations, self-documenting help via grep/parsing, common targets like init, build, dev, test. Reminds to use tabs.
How this skill is triggered — by the user, by Claude, or both
Slash command
/toolkit:makefile-developmentThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Create Makefiles following consistent conventions.
Create Makefiles following consistent conventions.
default: help
.PHONY: help
help: # Show help for each of the Makefile recipes.
@grep -E '^[a-zA-Z0-9 -]+:.*#' Makefile | sort | while read -r l; do printf "\033[1;32m$$(echo $$l | cut -f 1 -d':')\033[00m:$$(echo $$l | cut -f 2- -d'#')\n"; done
.PHONY: init
init: # Initialise the development environment.
./scripts/init.sh
| Element | Convention |
|---|---|
| Filename | Makefile (capitalised, no extension) |
| Default target | default: help as the first line |
.PHONY | Declare directly above each target |
| Help comments | Single # on the target line: target: # Description. |
| Target names | Lowercase, hyphen-separated (test-e2e, type-check) |
| Complex logic | Delegate to scripts (./scripts/build.sh) rather than inline |
The self-documenting help target parses # comments and prints sorted, colour-coded output:
.PHONY: help
help: # Show help for each of the Makefile recipes.
@grep -E '^[a-zA-Z0-9 -]+:.*#' Makefile | sort | while read -r l; do printf "\033[1;32m$$(echo $$l | cut -f 1 -d':')\033[00m:$$(echo $$l | cut -f 2- -d'#')\n"; done
Every target must have a # Description. comment or it won't appear in help output.
| Target | Purpose |
|---|---|
help | Show available targets (always present) |
init or setup | Install dependencies, configure environment |
build | Compile or bundle artifacts |
dev | Start local development server |
test | Run test suite |
lint | Run linters and formatters |
After creating or modifying Makefiles, remind the user:
Use tabs. Makefile recipes require literal tab characters for indentation, not spaces.
npx claudepluginhub dwmkerr/claude-toolkit --plugin toolkitGenerates Makefiles for C/C++, Python, Go, Java projects with .PHONY targets, GNU standards, standard targets, security hardening, and CI/CD integration.
Generates Makefiles for Python, Rust, and TypeScript projects with standard targets for help, install, lint, format, typecheck, test, build, clean, and automation. Use when projects lack Makefiles or need dev workflow setup.
Checks and configures project Makefile with standard targets (help, test, build, clean, lint) for Python, Node, Rust, Go, or generic projects. Detects project type and services; supports --check-only and --fix.