impact について
impact は、シンボル変更が呼び出し元、処理フロー、テストに及ぼす影響を分析する GitNexus のコマンドラインスキルです。インデックス状態、依存方向、テストカバレッジを用いて変更リスクを評価します。README では MCP サーバーは存在しないと明記されています。
主な機能
- 01インデックス状態の確認と必要時の再構築
- 02シンボルの上流呼び出し元を分析
- 03下流依存関係を確認
- 04関連テストのカバレッジを特定
- 05影響範囲とリスクのレポートを作成
活用シーン
- 01関数変更前に影響範囲を評価
- 02シンボル変更の安全性を判断
- 03関連する処理フローやテストを確認
MCP 対応
README では CLI 専用で MCP サーバーは存在しないと明記されています。gitnexus:// URI に readMcpResource を使用しないでください。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ terrylica/ cc-skills --skill impactインストール後、Claude Code で/impactを入力して読み込まれたか確認します。
詳細
GitNexus の影響分析
CLI のみ — MCP サーバーは存在しません。
gitnexus://URI でreadMcpResourceを使用しないでください。
シンボルを変更したときの影響範囲を分析します。呼び出し元、そのシンボルが関与するプロセス、およびそのシンボルを対象とするテストを確認します。
自己進化型スキル:このスキルは使用を通じて改善されます。指示が誤っている場合、パラメーターにずれが生じた場合、または回避策が必要になった場合は、先送りせず、ただちにこのファイルを修正してください。実際に再現できる問題がある場合にのみ更新してください。
使用するタイミング
- 多数の呼び出し元を持つ関数を変更する前
- 「X を変更すると何が壊れますか?」
- 「Y を変更しても安全ですか?」
- 「Z を変更した場合の影響範囲はどのくらいですか?」
ワークフロー
ステップ 0:事前確認 — CLI が呼び出せることを確認する
gitnexus バイナリは npm/mise 経由でインストールされています。現在のプロジェクトで node が有効になっていない場合、mise の shim が失敗することがあります。gitnexus コマンドを実行する前に、次の事前確認を実行してください。
# Test if gitnexus is actually callable (not just a broken shim)
gitnexus --version 2>/dev/null || mise use [email protected]
以下のすべてのコマンドは、リポジトリのルートから実行します。ワークスペースに複数のリポジトリがインデックスされている場合は、対象を指定するために --repo <repo-name> を追加してください。それ以外の場合、--repo は任意です。
ステップ 1:古くなっている場合は自動で再インデックスする
gitnexus status
古くなっている場合(インデックスのコミット ≠ HEAD)、処理を続ける前に自動で再インデックスしてください。ユーザーに確認しないでください。
gitnexus analyze
その後、ステータスを再確認し、インデックスが最新であることを確認します。
ステップ 2:上流の影響範囲
gitnexus impact "<symbol>" --depth 3
シンボルに依存するもの(呼び出し元、および深さ 3 までの推移的な呼び出し元)がすべて表示されます。
候補が複数返された場合は、対象を特定してください。
gitnexus impact "<symbol>" --uid "<full-uid>" --depth 3
# or
gitnexus impact "<symbol>" --file "<file-path>" --depth 3
ステップ 3:下流の依存関係(任意)
gitnexus impact "<symbol>" --direction downstream --depth 3
シンボルが依存するものを表示します。依存関係が変更される可能性があるかを把握するのに役立ちます。
ステップ 4:テストカバレッジ
gitnexus impact "<symbol>" --include-tests
このシンボルを実行するテストファイルが表示されます。
ステップ 5:リスク評価
直接の依存先の数に基づいて評価します。
| 依存先 | リスクレベル | 推奨事項 |
|---|---|---|
| < 5 | 低 | 基本的なテストを行えば、安全に変更できます |
| 5–20 | 中 | すべての呼び出し元を確認し、関連するテストを実行してください |
| 20–50 | 高 | 後方互換性のある API を検討し、広範なテストを実施してください |
| 50+ | 重大 | 非推奨化の戦略と段階的な移行が必要です |
ステップ 6:構造化レポート
以下を提示します。
- リスクレベルと依存先の数
- 主な影響対象プロセス — このシンボルを含む実行フロー
- 直接の呼び出し元 — このシンボルを直接呼び出す関数/メソッド
- テストカバレッジ — このシンボルを実行するテスト(またはカバレッジの不足)
- 推奨事項 — 安全に変更可能、テストが必要、または移行計画が必要
例
ユーザー:「RangeBarProcessor を変更すると何が壊れますか?」
gitnexus impact "RangeBarProcessor" --depth 3
gitnexus impact "RangeBarProcessor" --include-tests
出力:「リスクは重大です。12 個のプロセスにわたって依存先が 73 個あります。8 個のテストファイルでカバーされています。後方互換性のある変更のみを推奨します。」
実行後の振り返り
このスキルの実行後、タスクを終了する前に振り返ってください。
- 自身の場所を特定する。 — 編集する前に、この SKILL.md の正式なパスを確認します。
- 何が失敗したか? — 原因となった指示を修正します。
- 予想以上にうまくいったことは何か? — 推奨されるプラクティスとして反映します。
- 何にずれが生じたか? — 現状と一致しなくなったスクリプト、参照先、依存関係を修正します。
- 記録する。 — 発生要因、修正内容、根拠を記載した進化ログを追加します。
先送りしないでください。次回の実行では、ここに残した内容が引き継がれます。