From git
Guides git hook implementation, framework selection (Husky.Net, lefthook, Husky, pre-commit), and best practices for .NET/C#, JS/TS, Python repos including Conventional Commits, secret scanning, and CI/CD integration.
npx claudepluginhub melodic-software/claude-code-plugins --plugin gitThis skill is limited to using the following tools:
This skill provides comprehensive guidance on modern git hook implementations across multiple ecosystems, with primary focus on .NET/C# and strong support for JavaScript/TypeScript and Python. It covers framework selection, setup workflows, performance optimization, security integration, testing strategies, and team collaboration patterns.
examples/README.mdexamples/commitlint.config.jsexamples/husky-javascript-package.jsonexamples/husky-net-dotnet-format.jsonexamples/lefthook-dotnet.ymlexamples/lefthook-polyglot.ymlexamples/pre-commit-python.yamlreferences/README.mdreferences/conventional-commits.mdreferences/framework-comparison.mdreferences/performance-optimization.mdreferences/secret-scanning.mdreferences/setup-workflows.mdreferences/testing-strategies.mdreferences/troubleshooting.mdSets up Git hooks with Husky, lint-staged, pre-commit framework, and commitlint to automate linting, formatting, testing, and commit message validation before CI.
Sets up Git hooks with Husky, pre-commit, and custom scripts to enforce linting, testing, commit messages, secret scanning, and code quality before commits and pushes.
Sets up pre-commit, pre-push, and commit-msg git hooks for Node.js (husky, lint-staged) and Python (pre-commit) projects to automate linting, testing, formatting, and commit conventions.
Share bugs, ideas, or general feedback.
This skill provides comprehensive guidance on modern git hook implementations across multiple ecosystems, with primary focus on .NET/C# and strong support for JavaScript/TypeScript and Python. It covers framework selection, setup workflows, performance optimization, security integration, testing strategies, and team collaboration patterns.
Key capabilities:
Use this skill when you need to:
Trigger scenarios:
Answer these questions:
What's your primary ecosystem?
What's your team size/scale?
What's your performance requirement?
| Ecosystem | Solo/Small Team | Medium Team | Large Team/Enterprise |
|---|---|---|---|
| .NET/C# | Husky.Net | Husky.Net or lefthook | lefthook |
| JavaScript/TypeScript | Husky + lint-staged | Husky + lint-staged | Husky + lint-staged or lefthook |
| Python | pre-commit | pre-commit | pre-commit or lefthook |
| Polyglot | lefthook or pre-commit | lefthook | lefthook |
| Feature | Husky.Net | lefthook | Husky (JS) | pre-commit |
|---|---|---|---|---|
| Performance | Moderate | Excellent (parallel) | Good (with lint-staged) | Good |
| Ecosystem | .NET/C# | Any | JavaScript/TS | Any (Python primary) |
| Config Format | JSON (task-runner.json) | YAML | Shell scripts + package.json | YAML |
| Parallel Execution | ❌ No | ✅ Yes | ❌ No | Partial |
| Learning Curve | Low (.NET devs) | Moderate | Low (JS devs) | Low (Python devs) |
| Monorepo Support | Moderate | Excellent | Excellent | Good |
📖 For detailed comparison: See references/framework-comparison.md for comprehensive feature analysis, pros/cons, and selection criteria.
Quick Start: Install Husky.Net (dotnet tool install Husky) or lefthook (scoop install lefthook), configure task-runner.json or lefthook.yml, and verify.
Key patterns:
${staged} or {staged_files} for incremental processing📖 For complete setup: See references/setup-workflows.md
Examples:
Quick Start: Install dependencies (npm install --save-dev husky lint-staged @commitlint/cli), initialize Husky (npx husky init), configure lint-staged in package.json, and add hooks.
Key patterns:
📖 For complete setup: See references/setup-workflows.md
Examples:
Quick Start: Install pre-commit (pip install pre-commit), create .pre-commit-config.yaml with Black/Ruff/mypy hooks, and run pre-commit install.
Key patterns:
📖 For complete setup: See references/setup-workflows.md
Examples:
For repositories with multiple languages, use lefthook (recommended for performance) or pre-commit.
📖 For complete setup: See references/setup-workflows.md
Examples:
Tools: commitlint (validation), commitizen (interactive prompts), semantic-release (automated versioning)
Quick Start: Install commitlint, configure rules, add commit-msg hook
📖 For complete setup: See references/conventional-commits.md
Examples:
Tools: gitleaks (secret detection), TruffleHog (800+ secret types with API validation)
Quick Start: Install gitleaks/TruffleHog, add to pre-commit hooks, configure allowlist for false positives
Best Practice: Scan locally (pre-commit) AND in CI/CD (pull requests)
📖 For complete setup: See references/secret-scanning.md
Key strategies:
📖 For detailed strategies: See references/performance-optimization.md
Levels:
📖 For examples and patterns: See references/testing-strategies.md
Common issues:
Migration strategies: Gradual rollout (formatting → linting → commit validation → testing/security)
📖 For complete troubleshooting: See references/troubleshooting.md
Complete examples are available in the examples/ directory:
User Query: "I need to set up git hooks for my C# project with 15 developers"
Expected Behavior:
User Query: "My pre-commit hook is taking 35 seconds and blocking developers from committing"
Expected Behavior:
User Query: "Should I use Husky.Net or lefthook for our .NET team?"
Expected Behavior:
User Query: "How do I enforce Conventional Commits in my JavaScript project?"
Expected Behavior:
User Query: "I want to prevent developers from accidentally committing secrets to our repository"
Expected Behavior:
Official Documentation (access via MCP servers):
Detailed references:
Date: 2025-11-28 Model: claude-opus-4-5-20251101
Research Sources: Microsoft Learn MCP, Context7 MCP (Husky.Net, lefthook, Husky, pre-commit repositories), Perplexity MCP (2024-2025 best practices), Firecrawl MCP (official documentation sites), Ref MCP (commitlint, semantic-release).