mcpField
P
PreCommit

PreCommit

github.com/julianobarbosaTesting & quality1459 installsUpdated 2d ago
Repository

About PreCommit

A skill for managing pre-commit hooks in multi-language projects that automate code quality, formatting, linting and security scanning. It includes configuration generation and validation tools, along with setup and troubleshooting workflows.

Key features

  1. 01Generate pre-commit configuration templates
  2. 02Validate hook configurations
  3. 03Manage hooks across languages
  4. 04Setup and troubleshooting workflows
  5. 05Cover formatting, linting and security scans

Use cases

  1. 01Set up Git hooks for a new project
  2. 02Add Terraform validation hooks
  3. 03Add secret-detection scanning
  4. 04Troubleshoot a failing code-check hook

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/julianobarbosa/claude-code-skills --skill precommit

After installing, type/precommitin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

ConfigurationGuide.md
HooksReference.md
QuickStartGuide.md
SecurityHooks.md
Tools/
HookGenerator.ts
HookValidator.ts
PreCommitManager.ts
package.json
Workflows/
AddHooks.md
CIIntegration.md
CustomHook.md
Setup.md
Troubleshoot.md

Details

From the project README

PreCommit

A comprehensive skill for managing pre-commit hooks - the framework for multi-language pre-commit hook management that automates code quality, formatting, linting, and security scanning.

Quick Reference

CommandDescription
pre-commit installInstall git hooks
pre-commit run --all-filesRun all hooks on all files
pre-commit autoupdateUpdate hooks to latest versions
pre-commit run <hook-id>Run specific hook

Workflow Routing

WorkflowTriggerFile
Setup"setup pre-commit", "initialize hooks", "create config"Workflows/Setup.md
AddHooks"add hook", "add linting", "add formatter", "add security"Workflows/AddHooks.md
Troubleshoot"fix pre-commit", "hook failing", "debug hooks"Workflows/Troubleshoot.md
CIIntegration"CI pipeline", "GitHub Actions", "GitLab CI"Workflows/CIIntegration.md
CustomHook"create custom hook", "local hook", "write hook"Workflows/CustomHook.md

Documentation

DocumentPurpose
QuickStartGuide.mdInstallation and first-time setup
HooksReference.mdComprehensive hook catalog by language/purpose
ConfigurationGuide.mdAdvanced configuration options
SecurityHooks.mdSecret detection and security scanning

Tools

ToolPurpose
Tools/PreCommitManager.tsCLI for managing pre-commit configurations
Tools/HookGenerator.tsGenerate .pre-commit-config.yaml templates
Tools/HookValidator.tsValidate hook configurations

Examples

Example 1: Setup pre-commit for a new project

User: "Setup pre-commit for my Python project"
→ Invokes Setup workflow
→ Creates .pre-commit-config.yaml with Python hooks (black, isort, flake8)
→ Runs pre-commit install

Example 2: Add Terraform hooks

User: "Add Terraform validation hooks"
→ Invokes AddHooks workflow
→ Adds terraform_fmt, terraform_validate, terraform_docs hooks
→ Configures tflint and checkov integration

Example 3: Add security scanning

User: "Add secret detection to pre-commit"
→ Invokes AddHooks workflow
→ Adds gitleaks, detect-secrets, trufflehog hooks
→ Configures appropriate exclusion patterns

Example 4: Debug failing hook

User: "My eslint pre-commit hook is failing"
→ Invokes Troubleshoot workflow
→ Checks hook configuration and dependencies
→ Provides fix recommendations

Supported Hook Categories

  • Python: black, isort, flake8, mypy, bandit, pyupgrade
  • JavaScript/TypeScript: prettier, eslint, biome
  • Infrastructure: terraform, terragrunt, helm, kustomize
  • Kubernetes: kubeconform, kubeval, checkov
  • Security: gitleaks, detect-secrets, trufflehog, trivy
  • General: yamllint, jsonlint, shellcheck, markdownlint

Comments

Markdown supported