request-refactor-plan について
リファクタリングの依頼を明確にし、コードベースを調査して実装・テストの判断を整理するスキルです。合意した範囲を細かなコミット計画にまとめ、指定テンプレートで GitHub issue を作成します。
主な機能
- 01リファクタリングの課題を明確化
- 02コードベースを調査し主張を検証
- 03選択肢を比較して範囲を確定
- 04テストカバレッジと計画を確認
- 05小さく安全なコミットに分割
- 06テンプレートに沿って GitHub issue を作成
活用シーン
- 01曖昧なリファクタリング案を具体化
- 02実装前に設計やインターフェースの判断を記録
- 03小さなコミット単位で作業を計画
- 04テスト方針と対象外の作業を文書化
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ vinvcn/ mattpocock-skills-zh-cn --skill request-refactor-planインストール後、Claude Code で/request-refactor-planを入力して読み込まれたか確認します。
同梱ファイルagents/openai.yaml
詳細
ユーザーがリファクタリングの依頼を作成したい場合は、このスキルを呼び出してください。以下の手順に従ってください。不要だと思う手順は省略できます。
-
解決したい問題と、考えられる解決策のアイデアについて、ユーザーに詳しく説明してもらいます。
-
リポジトリを調査し、ユーザーの主張を検証して、コードベースの現状を把握します。
-
他の選択肢を検討したかどうかを尋ね、別の選択肢を提示します。
-
実装についてユーザーにヒアリングします。非常に詳細かつ徹底的に行ってください。
-
実装の正確な範囲を確定します。変更する内容と変更しない内容を明確にします。
-
コードベース内で該当領域のテストカバレッジを確認します。カバレッジが不十分な場合は、テスト計画をユーザーに尋ねます。
-
実装を細かなコミットに分けた計画を作成します。Martin Fowler の提案を念頭に置いてください。「リファクタリングの各ステップは、プログラムが常に動作していることを確認できるよう、できるだけ小さくする。」
-
リファクタリング計画を使って GitHub issue を作成します。issue の説明には、以下のテンプレートを使用します。
問題の説明
開発者が直面している問題を、開発者の視点から説明します。
解決策
問題の解決策を、開発者の視点から説明します。
コミット
非常に長く詳細な実装計画を記載します。平易な英語で記述し、実装を可能な限り小さなコミットに分割します。各コミットの後も、コードベースが動作する状態を保つ必要があります。
決定事項
これまでに行った実装上の決定事項を列挙します。以下を含めることができます。
- ビルドまたは変更するモジュール
- 変更するモジュールのインターフェース
- 開発者による技術的な明確化
- アーキテクチャ上の決定
- スキーマの変更
- API コントラクト
- 具体的なインタラクション
具体的なファイルパスやコードスニペットは含めないでください。すぐに古くなる可能性があります。
テストに関する決定事項
これまでに行ったテストに関する決定事項を列挙します。以下を含めてください。
- 適切なテストの説明(実装の詳細ではなく、外部の振る舞いのみをテストする)
- テスト対象となるモジュール
- テストの先例(つまり、コードベース内にある同様の種類のテスト)
対象外
このリファクタリングの対象外となる事項を説明します。
補足事項(任意)
リファクタリングに関するその他の補足事項。