Agent skill

commit-hooks

Git commit フック(pre-commit/commit-msg/pre-push)の設計・実装・検証を体系化するスキル。 Husky と lint-staged を軸に、品質ゲートと運用ルールを整理する。 Anchors: • Pro Git / 適用: Git Hooks設計 / 目的: フック運用の基礎 • Clean Code / 適用: 品質ゲート設計 / 目的: コミット品質の維持 • Accelerate / 適用: フィードバックループ / 目的: 継続改善 Trigger: Use when designing commit hooks, integrating husky/lint-staged, enforcing commit message rules, or validating pre-push checks. commit hooks, husky, lint-staged, commit-msg, pre-commit, pre-push

Stars 163
Forks 31

Install this agent skill to your Project

npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/development/commit-hooks

SKILL.md

commit-hooks

概要

Git commit フックの設計から実装・検証までを整理し、品質ゲートと運用ルールを一貫して支援する。

ワークフロー

Phase 1: 要件整理

目的: 対象フック、品質要件、制約を明確化する。

アクション:

  1. references/Level1_basics.md で基本概念を確認する。
  2. assets/hook-requirements-template.md で要件を整理する。
  3. references/requirements-index.md で要件整合を確認する。

Task: agents/analyze-hook-requirements.md を参照

Phase 2: フック設計

目的: Husky と lint-staged の構成を設計し、品質ゲートを定義する。

アクション:

  1. references/husky-configuration.md で導入前提を確認する。
  2. references/lint-staged-patterns.md で対象範囲を設計する。
  3. assets/hook-policy-checklist.md で設計観点を整理する。

Task: agents/design-hook-configuration.md を参照

Phase 3: 実装と準備

目的: フック設定を実装し、検証に備える。

アクション:

  1. assets/pre-commit-basic.sh で pre-commit を整備する。
  2. assets/commit-msg-template.sh で commit-msg を整備する。
  3. assets/pre-push-template.sh で pre-push を整備する。
  4. assets/lint-staged-advanced.js で lint-staged を整備する。

Task: agents/implement-hook-setup.md を参照

Phase 4: 検証と運用

目的: フックの動作を検証し、改善サイクルを回す。

アクション:

  1. scripts/test-hooks.mjs で動作検証する。
  2. references/performance-optimization.md で改善観点を確認する。
  3. scripts/log_usage.mjs で記録を更新する。

Task: agents/validate-hook-setup.md を参照

Task仕様ナビ

Task 起動タイミング 入力 出力
analyze-hook-requirements Phase 1開始時 対象/要件 要件整理メモ、品質ゲート一覧
design-hook-configuration Phase 2開始時 要件整理メモ フック設計、検証ルール
implement-hook-setup Phase 3開始時 フック設計 導入手順、設定案
validate-hook-setup Phase 4開始時 設定案 検証レポート、改善提案

詳細仕様: 各Taskの詳細は agents/ ディレクトリを参照

ベストプラクティス

すべきこと

推奨事項 理由
フックごとに目的を定義する 冗長な検証を避ける
lint-stagedで対象を限定する 実行時間を安定させる
commit-msg規約を明文化する 品質と履歴を揃える
検証結果を記録する 改善が継続する

避けるべきこと

禁止事項 問題点
すべてのファイルを処理する コミットが遅くなる
依存ツールなしで有効化する 失敗が続く
目的の重複 フックが冗長化する
記録を残さない 改善が途切れる

リソース参照

scripts/(決定論的処理)

スクリプト 機能
scripts/test-hooks.mjs フック動作テスト
scripts/log_usage.mjs 使用記録と評価メトリクス更新
scripts/validate-skill.mjs スキル構造の検証

references/(詳細知識)

リソース パス 読込条件
レベル1 基礎 references/Level1_basics.md 要件整理時
レベル2 実務 references/Level2_intermediate.md 設計時
レベル3 応用 references/Level3_advanced.md 実装時
レベル4 専門 references/Level4_expert.md 改善時
Husky設定 references/husky-configuration.md Husky設計時
lint-staged references/lint-staged-patterns.md lint-staged設計時
最適化 references/performance-optimization.md 改善時
要求仕様索引 references/requirements-index.md 仕様確認時
旧スキル references/legacy-skill.md 互換確認時

assets/(テンプレート・素材)

アセット 用途
assets/hook-requirements-template.md 要件整理テンプレート
assets/hook-policy-checklist.md 設計チェックリスト
assets/pre-commit-basic.sh pre-commit フックテンプレート
assets/commit-msg-template.sh commit-msg フックテンプレート
assets/pre-push-template.sh pre-push フックテンプレート
assets/lint-staged-advanced.js lint-staged 設定テンプレート

運用ファイル

ファイル 目的
EVALS.json レベル評価・メトリクス管理
LOGS.md 実行ログの蓄積
CHANGELOG.md 改善履歴の記録

Didn't find tool you were looking for?

Be as detailed as possible for better results