关于 pre-commit-manager
此技能用于在代码仓库中安装和管理 pre-commit hooks,面向希望统一提交前检查的开发团队。它可从语言模板生成配置,并记住自动安装偏好。
主要功能
- 01安装并检查 pre-commit hooks
- 02从 Python、JavaScript、TypeScript 或通用模板生成配置
- 03设置自动安装偏好
- 04查看仓库、配置和安装状态
- 05生成 detect-secrets 基线
适用场景
- 01为新仓库配置提交前检查
- 02为现有项目安装 hooks
- 03检查 hooks 与配置是否就绪
- 04为 detect-secrets 创建基线
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ rysweet/ amplihack --skill pre-commit-manager安装后在 Claude Code 中输入/pre-commit-manager确认已加载。
附带文件README.mdprecommit_manager.py
详细介绍
Pre-Commit 管理器技能
通过偏好记忆和基于模板的配置管理 pre-commit 钩子。
操作
1. 安装
在当前仓库中安装 pre-commit 钩子。
用法:
Install pre-commit hooks now
功能:
- 检查
.pre-commit-config.yaml是否存在 - 确认 pre-commit 二进制文件可用
- 运行
pre-commit install - 报告成功或失败
2. 配置
根据模板生成 .pre-commit-config.yaml。
用法:
Configure pre-commit with python template
Configure pre-commit with javascript template
Configure pre-commit with generic template
模板:
python- Python 项目(black、ruff、mypy)javascript- JS/TS 项目(prettier、eslint)typescript- TypeScript 项目generic- 语言无关(尾随空白、文件大小、detect-secrets)
3. 启用
将偏好设置为“始终”自动安装。
用法:
Enable pre-commit auto-install
4. 禁用
将偏好设置为“从不”自动安装。
用法:
Disable pre-commit auto-install
5. 状态
显示当前的 pre-commit 状态。
用法:
Show pre-commit status
Check pre-commit status
显示内容:
- Git 仓库状态
- 配置文件是否存在
- 钩子安装状态
- 当前偏好设置
- pre-commit 二进制文件是否可用
6. 基线
为 detect-secrets 生成 .secrets.baseline。
用法:
Generate secrets baseline
Create detect-secrets baseline
实现
此技能使用以下文件:
.claude/tools/amplihack/hooks/precommit_prefs.py- 偏好管理.claude/tools/amplihack/hooks/precommit_installer.py- 钩子安装templates/目录中的模板
安全性
- 防止路径遍历
- 验证模板白名单
- 子进程调用不使用
shell=True - 强制执行子进程超时
参考
评论
支持 Markdown