Pre-Commit Guard
おすすめイベント駆動Pre-Commit Guard について
イベントで起動するループで、Cursor 上でコミット前に npm test を実行します。テストが終了コード 0 で終わった場合のみコミットを進め、それ以外はブロックしたままにします。
主な機能
- 01イベントトリガーで手動の起動が不要
- 02npm test の終了コードを許可の基準にする
- 03テスト失敗中はコミットをブロック
- 04Cursor に対応
活用シーン
- 01失敗するテストがコミット履歴に入るのを防ぐ
- 02エージェントがコミットのたびに変更を自動検証
- 03繰り返しの変更の中でメインブランチのテスト通過を維持
- 目標
- git コミットの前に、毎回 npm test が終了コード 0 で終わる状態にします。
- 終了条件
- コミット前に npm test が終了コード 0 で終わった時点でコミットを許可します。
- 各ラウンドの間に実行
- npm test
起動プロンプト
Cursor に貼り付けて実行すると、終了条件を満たすまでエージェントが以下の手順を繰り返します。
prompt.md
「Pre-Commit Guard」ループを開始します。 目標:git コミットの前に、毎回 npm test が終了コード 0 で終わる状態にします。 ステップ 1:テストを実行 — コミットの前に npm test を実行し、終了コードと出力を確認します。 `npm test` ステップ 2:許可を判断 — 終了コードが 0 ならコミットを進めます。それ以外はブロックしたままにし、失敗を修正して再度検証します。 各ラウンドの間に実行:`npm test` 終了条件:コミット前に npm test が終了コード 0 で終わった時点でコミットを許可します。
手順
各ラウンドは順番に実行され、終了条件を満たさなければ次のラウンドへ進みます(最大 1 ラウンド)。
01
テストを実行
コミットの前に npm test を実行し、終了コードと出力を確認します。
$
npm test02
許可を判断
終了コードが 0 ならコミットを進めます。それ以外はブロックしたままにし、失敗を修正して再度検証します。
未達 → 次のラウンド条件を満たせば終了
対応エージェント
この Loop をそのまま実行できるコーディングエージェントです。
Cursor
Claude Code
コメント
Markdown 対応