Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
athola avatar

Makefile Generation

  • 105 installs
  • 325 repo stars
  • Updated August 2, 2026
  • athola/claude-night-market

makefile-generation is an agent skill that generates or updates Makefiles with test, lint, format, and automation targets for Python, Rust, or TypeScript projects.

About

makefile-generation is an agent skill that writes or updates Makefiles for solo and indie builders who want one command surface for testing, linting, formatting, and routine automation. It fits early in a repo lifecycle when there is no Makefile yet, when an old Makefile is missing modern targets, or when you are standardizing the same `make` verbs across several stacks. The skill follows a fixed pipeline: detect the primary language, load the Python/Rust/TypeScript template, gather project-specific names and tools, render the file, then verify targets run. It is aimed at Claude Code–style agents with read, write, and shell access, not at replacing npm-only or exclusively Bazel-style pipelines where Make is never the source of truth. Use it to reduce tribal knowledge about how to run checks before ship and to give coding agents predictable, documented entry points instead of ad-hoc shell one-liners.

  • Detects Python, Rust, or TypeScript and picks a matching Makefile template
  • Standard targets for test, lint, format, and common automation workflows
  • Five-step workflow: detect language → load template → collect project info → render → verify
  • Supports creating a new Makefile or extending an existing one with new targets
  • Globs Makefile paths so the skill can align with repo layout

Makefile Generation by the numbers

  • 105 all-time installs (skills.sh)
  • Ranked #779 of 2,715 Automation & Workflows skills by installs in the Skillselion catalog
  • Security screen: LOW risk (skills.sh audit)
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/athola/claude-night-market --skill makefile-generation

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs105
repo stars325
Security audit3 / 3 scanners passed
Last updatedAugust 2, 2026
Repositoryathola/claude-night-market

What it does

Scaffold or refresh a project Makefile so `make test`, `make lint`, and `make fmt` work the same way across Python, Rust, or TypeScript repos.

Who is it for?

Greenfield or small-team repos where you want Make as the single dev command layer across Python, Rust, or TypeScript.

Skip if: Repos that already have a current, complete Makefile, or projects that rely exclusively on another build system with no intent to use Make.

When should I use this skill?

Starting a project or standardizing build automation when you need testing, linting, formatting, and automation targets in a Makefile.

What you get

You get a language-aware Makefile with standard targets and a verified workflow so agents and you can run the same commands via `make` instead of hunting scripts.

  • Rendered Makefile with standard test, lint, format, and automation targets
  • Language-specific template applied after project metadata collection

By the numbers

  • Supports three language templates: Python, Rust, and TypeScript
  • Five-step workflow from language detection through verify

Files

SKILL.mdMarkdownGitHub ↗

Table of Contents

Makefile Generation Skill

Generate a Makefile with standard development targets for Python, Rust, or TypeScript projects.

When To Use

  • Need a Makefile for a project without one
  • Want to update Makefile with new targets
  • Standardizing build automation across projects
  • Setting up development workflow commands
  • Creating language-specific build targets

When NOT To Use

  • Makefile already exists and is current
  • Project uses alternative build system exclusively (e.g., npm scripts only)
  • Complex custom build process that doesn't fit standard patterns
  • Use /attune:upgrade-project instead for updating existing Makefiles

Standard Targets

Python Makefile

Common targets:

  • help - Show available targets
  • install - Install dependencies with uv
  • lint - Run ruff linting
  • format - Format code with ruff
  • typecheck - Run mypy type checking
  • test - Run pytest
  • test-coverage - Run tests with coverage report
  • check-all - Run all quality checks
  • clean - Remove generated files and caches
  • build - Build distribution packages
  • publish - Publish to PyPI

Rust Makefile

Common targets:

  • help - Show available targets
  • fmt - Format with rustfmt
  • lint - Run clippy
  • check - Cargo check
  • test - Run tests
  • build - Build release binary
  • clean - Clean build artifacts

TypeScript Makefile

Common targets:

  • help - Show available targets
  • install - Install npm dependencies
  • lint - Run ESLint
  • format - Format with Prettier
  • typecheck - Run tsc type checking
  • test - Run Jest tests
  • build - Build for production
  • dev - Start development server

Workflow

1. Detect Language

# Check for language indicators
if [ -f "pyproject.toml" ]; then
    LANGUAGE="python"
elif [ -f "Cargo.toml" ]; then
    LANGUAGE="rust"
elif [ -f "package.json" ]; then
    LANGUAGE="typescript"
fi

Verification: Run the command with --help flag to verify availability.

2. Load Template

from pathlib import Path

template_path = Path("plugins/attune/templates") / language / "Makefile.template"

Verification: Run the command with --help flag to verify availability.

3. Collect Project Info

metadata = {
    "PROJECT_NAME": "my-project",
    "PROJECT_MODULE": "my_project",
    "PYTHON_VERSION": "3.10",
}

Verification: Run the command with --help flag to verify availability.

4. Render Template

from template_engine import TemplateEngine

engine = TemplateEngine(metadata)
engine.render_file(template_path, Path("Makefile"))

Verification: Run the command with --help flag to verify availability.

5. Verify

make help

Verification: Run make --dry-run to verify build configuration.

Customization

Users can add custom targets after the generated ones:

# ============================================================================
# CUSTOM TARGETS
# ============================================================================

deploy: build ## Deploy to production
	./scripts/deploy.sh

Verification: Run the command with --help flag to verify availability.

Related Skills

  • Skill(attune:project-init) - Full project initialization
  • /abstract:make-dogfood command - Makefile testing and validation

Exit Criteria

  • [ ] A Makefile is created at the project root containing at minimum a help target and

all standard targets for the detected language (Python: install/lint/format/typecheck/test; Rust: fmt/lint/check/test/build; TypeScript: install/lint/format/typecheck/test/build).

  • [ ] make help runs without error and lists all generated targets with descriptions.
  • [ ] make --dry-run <target> exits 0 for each standard target, confirming recipe syntax

is valid.

  • [ ] If no language is detected (no pyproject.toml, Cargo.toml, or package.json), the

skill reports the detection failure and stops rather than generating a blank Makefile.

Related skills

How it compares

Use instead of copying Makefile snippets by hand or leaving test/lint commands undocumented in README-only form.

FAQ

Who is makefile-generation for?

Developers—and agents helping them—who want predictable `make test`, `make lint`, and `make fmt` targets when bootstrapping or standardizing a Python, Rust, or TypeScript codebase.

When should I use makefile-generation?

Use it during Build when you need a new Makefile, want to add targets to an outdated one, or are aligning automation across projects; it is less useful once Make is already complete or you never use Make.

Is makefile-generation safe to install?

Review the Security Audits panel on this Prism page for install risk and file integrity; the skill writes Makefiles and may run shell verification, so skim generated targets before running them in production environments.

Automation & Workflowsdevopsintegrations

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.