git-workspace-review について
git-workspace-reviewは、コミットメッセージ作成、PR準備、リリースノートなど、Gitの状態に依存する作業の前に使うスキルです。状態、コード品質、差分を確認し、後続作業向けに変更内容を記録します。
主な機能
- 01リポジトリとブランチ情報の確認
- 02ステージ済み・未ステージ変更の確認
- 03make lintによるコード品質チェック
- 04差分の統計と詳細の確認
- 05後続作業向けの変更要点の記録
活用シーン
- 01コミットメッセージ作成前の状態確認
- 02PR準備時の対象変更の整理
- 03リリースノート用の差分情報収集
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ athola/ claude-night-market --skill git-workspace-reviewインストール後、Claude Code で/git-workspace-reviewを入力して読み込まれたか確認します。
同梱ファイルmodules/git-commands.md
詳細
Git ワークスペースレビュー
使用しない場合
- コミットメッセージの作成(
sanctum:commit-messagesを使用) - PR 前の完全なチェックの実行(
sanctum:pr-prepを使用)
検証
レビュー後にgit statusを実行し、ワークスペースの状態が想定どおりであることを確認します。
テスト
pytest plugins/sanctum/tests/test_git_workspace_review.pyを実行して、レビューワークフローを検証します。
使用方法
コミットメッセージの生成、PR の準備、リリースノートの作成など、リポジトリの状態に依存するワークフローの前にこのスキルを使用します。セッションごとに 1 回、またはステージ済みの変更が更新されるたびに実行します。
必須の進捗管理
git-review:repo-confirmedgit-review:status-overviewgit-review:code-quality-checkgit-review:diff-statgit-review:diff-details
対応するステップを完了したら、各項目を完了済みとしてマークします。
ステップ 1:リポジトリを確認する(repo-confirmed)
pwdを実行して、正しいリポジトリディレクトリにいることを確認します。git status -sbを実行して現在のブランチと簡潔なステータスを確認し、ブランチ名と上流の情報を記録します。
ステップ 2:ステータスの概要を確認する(status-overview)
git status -sbの出力を分析し、ステージ済みと未ステージの変更を確認します。後続のワークフローで意図した差分が扱われるよう、ファイルをステージまたはステージ解除します。
ステップ 3:コード品質を確認する(code-quality-check)
コミット前のコード品質を検証するため、リポジトリのルートでmake lintを実行します。ruff format のチェック、プラグインごとの ruff check、bandit を実行します。これは何も書き換えません。ツリーを編集するチェックでは、検出を依頼された差分を報告できないためです。失敗した場合は、変更を加える処理の組み合わせ(ruff formatとruff check --fix)であるmake fixを案内します。ルートの Makefile にはformatターゲットがなく、これを定義しているプラグインの Makefile も、それぞれのディレクトリ内でのみ適用されます。
エラーがあれば、すぐに修正します。--no-verifyを使って pre-commit フックを回避しないでください。このチェックで問題を早期に見つけ、パイプラインの終盤での失敗を防ぎます。
ステップ 4:差分の統計を確認する(diff-stat)
ステージ済みの変更にはgit diff --cached --statを実行し、未ステージの作業にはgit diff --statを実行します。変更されたファイル数を記録し、追加または削除の数が多い箇所を特定します。
sem が利用できる場合(leyline:sem-integrationを参照)、統計情報とあわせてエンティティ単位の概要を表示するため、sem diff --format plain --stagedも実行します。これにより、行数だけでなく、変更された関数、クラス、メソッドを確認できます。
ステップ 5:詳細な差分を確認する(diff-details)
実際の変更を調べるため、git diff --cachedを実行します。未ステージの作業にはgit diffを使用します。Makefile の調整や新しいスキルの追加など、重要なテーマを特定して、後続の概要作成に必要な背景情報を提供します。
完了条件
後続のワークフローでは、git を再実行せずにこの情報を利用します。
-
git status -sbからブランチ名と上流が記録されている -
git diff --cached --statに、次のコミットに含める意図のあるファイルだけが過不足なく表示され、意図したファイルに未ステージのものがない -
make lintが終了コード 0 で完了するか、報告された各失敗が修正済み、またはユーザーに明示されている - ステージ済みの差分の重要なテーマが、続く概要作成用に書き留められている
関連モジュール
- Git コマンドリファレンス - sanctum ワークフローで使用する diff、status、ブランチ操作
トラブルシューティング
pre-commit フックがコミットをブロックする場合は、--no-verifyを使うのではなく、報告された問題を解決します。make lintはスタイルを自動修正し、残るロジック上の失敗を明らかにします。マージの競合が発生した場合は、再試行する前にgit merge --abortを使ってクリーンな状態に戻します。