mcpField
P
PreCommit

PreCommit

github.com/julianobarbosa测试与质量1459 次安装2 天前更新
代码仓库

关于 PreCommit

用于管理 pre-commit 钩子的技能,面向需要自动化代码质量、格式化、Lint 和安全扫描的多语言项目。它提供配置生成与验证、钩子管理以及设置和故障排查工作流。

主要功能

  1. 01生成 pre-commit 配置模板
  2. 02验证钩子配置
  3. 03管理多语言钩子
  4. 04设置与排查工作流
  5. 05涵盖格式化、Lint 和安全扫描

适用场景

  1. 01为新项目设置 Git 钩子
  2. 02为 Terraform 添加验证钩子
  3. 03加入密钥检测扫描
  4. 04排查失败的代码检查钩子

安装

复制下面的命令,在终端中运行。

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

安装后在 Claude Code 中输入/precommit确认已加载。

包含的文件

除 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

详细介绍

PreCommit

用于管理 pre-commit 钩子的综合技能——这是一个用于管理多语言提交前钩子的框架,可自动执行代码质量检查、格式化、代码检查和安全扫描。

快速参考

命令描述
pre-commit install安装 git 钩子
pre-commit run --all-files对所有文件运行所有钩子
pre-commit autoupdate将钩子更新到最新版本
pre-commit run <hook-id>运行指定钩子

工作流路由

工作流触发条件文件
Setup“设置 pre-commit”、“初始化钩子”、“创建配置”Workflows/Setup.md
AddHooks“添加钩子”、“添加代码检查”、“添加格式化工具”、“添加安全检查”Workflows/AddHooks.md
Troubleshoot“修复 pre-commit”、“钩子运行失败”、“调试钩子”Workflows/Troubleshoot.md
CIIntegration“CI 流水线”、“GitHub Actions”、“GitLab CI”Workflows/CIIntegration.md
CustomHook“创建自定义钩子”、“本地钩子”、“编写钩子”Workflows/CustomHook.md

文档

文档用途
QuickStartGuide.md安装和首次设置
HooksReference.md按语言/用途分类的完整钩子目录
ConfigurationGuide.md高级配置选项
SecurityHooks.md密钥检测和安全扫描

工具

工具用途
Tools/PreCommitManager.ts用于管理 pre-commit 配置的命令行工具
Tools/HookGenerator.ts生成 .pre-commit-config.yaml 模板
Tools/HookValidator.ts验证钩子配置

示例

示例 1:为新项目设置 pre-commit

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

示例 2:添加 Terraform 钩子

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

示例 3:添加安全扫描

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

示例 4:调试运行失败的钩子

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

支持的钩子类别

  • Python:black、isort、flake8、mypy、bandit、pyupgrade
  • JavaScript/TypeScript:prettier、eslint、biome
  • 基础设施:terraform、terragrunt、helm、kustomize
  • Kubernetes:kubeconform、kubeval、checkov
  • 安全:gitleaks、detect-secrets、trufflehog、trivy
  • 通用:yamllint、jsonlint、shellcheck、markdownlint

评论

支持 Markdown