super-linting
Super-Linting: local linters for every file type
Pick the right linter for each file type a project uses, then make those linters a required step before every commit — written as instructions the agent will follow in the project's agent guide, plus a make lint command a human can run.
How linting gets enforced (default vs opt-in)
The default enforcement is soft and zero-install: a ## Linting section in AGENTS.md/CLAUDE.md that tells the agent to lint before committing, backed by a make lint target. This is enough for most projects and adds no git machinery.
A git pre-commit hook is a stronger, harder gate (it blocks the actual git commit), but it's extra setup the user didn't necessarily ask for. So do not add a git hook or a pre-commit-framework config by default. After you've written the agent-guide contract, ask the user whether they want it:
"I've set up linting as instructions in your agent guide +
make lint. Want me to also add a real git pre-commit hook that blocks commits when a linter fails, or is relying on the agent (andmake lint) enough for you?"
Only wire up .githooks/ + a make hooks target (or a .pre-commit-config.yaml) if the user opts in. The point is to not surprise the user with git hooks they didn't request.
The goal is a tight local feedback loop: catch lint problems while code is being written, not in CI. This skill is not about building CI workflows (use the github-actions-workflow-pro skill for that). It is about equipping the agent and the human with the linters that fit this project, drawn from the super-linter project's curated list so the recommendations stay current.
Why super-linter as the source
super-linter aggregates the popular, well-maintained linters the community actually uses, organized by language. Rather than guessing or relying on a stale memory of "the Python linter," consult super-linter's live list so recommendations track what the ecosystem has moved to (for example, ruff's rise in Python). super-linter is the catalog; this skill turns that catalog into concrete local install + run commands and bakes them into the project's agent guide.