1 hour
How to コードベースをリファクタリングする with Eigent
動作を変えずに、不要コードを削除し、レガシーなパターンを最新化します。小さく、レビューしやすい単位で進めます。
What you need
- Eigent デスクトップアプリ
- コードベースへのアクセス(ローカルまたは接続済みリポジトリ)
- テストスイートまたは CI パイプライン
Best for
- 不要コード、肥大化したモジュール、古い抽象化により、日常的な変更コストが高くなっているコードベース
- 作業をスタック移行にせず、既存のコードをそのまま最新化したいチーム
- 新機能やチームのオンボーディングに向けてコードベースを整えたいエンジニア
Starter Prompt
このコードベースを最新化し、リファクタリングしてください。 要件: - 私が明示的に機能変更を求めない限り、動作を維持してください。 - まず、変更を遅くしている不要コード、重複した処理経路、肥大化したモジュール、古い抽象化、レガシーなパターンを特定してください。 - 提案する各パスについて、現在の動作、構造上の改善点、そして動作が安定していることを証明すべき検証項目を示してください。 - 不要コードの削除、制御フローの簡素化、ヘルパーの抽出、リポジトリの現在の規約に合わせた古いパターンの置き換えなど、小さくレビューしやすいリファクタリング単位に分割してください。 - リファクタリング上必要でない限り、公開 API は安定したままにしてください。 - フレームワーク移行、依存関係のアップグレード、API 変更、アーキテクチャ変更など、別の移行タスクに分けるべき内容があれば明記してください。 これを進める計画を提案してください。
仕組み
- 編集前に、Eigent に対象領域のマッピングを依頼します。ノイズの多いモジュール、重複ロジック、未使用コード、古いパターンを洗い出します。
- 一度に 1 つの整理テーマだけを選びます。不要コードの削除、制御フローの簡素化、古いパターンの最新化、大きなファイルの分割のいずれかに絞ります。
- Eigent がファイルを修正する前に、現在の動作、構造上の改善点、そして動作が安定していることを示す最小の検証方法を明示させます。
- すべてをまとめて 1 つの差分にするのではなく、各パスごとに最小限の有用な検証を実行して確認します。
- スタック変更、依存関係の移行、アーキテクチャ変更は、整理を完了するために必要な場合を除き、別タスクとして扱います。
試す追加プロンプト
- この領域で、不要コードや未使用の export が最も多いファイルはどれですか?
- 同じロジックが重複している箇所をすべて特定し、統合の単一ポイントを提案してください。
- このモジュールで、リポジトリの現在の規約と衝突しているレガシーパターンは何ですか?
- 公開 API を変えずに、この肥大化したファイルを、より小さく責任範囲が明確な複数ファイルに分割してください。
使い方
まず Eigent に散らかった領域のマッピングを依頼します。すると、コードに触れる前に最も価値の高い整理候補を特定します。1 テーマずつ進め、各差分を確認してから次へ進みます。各パスの後には、テストスイートまたは CI を検証項目として使用します。Eigent がスタック移行や依存関係変更を提案した場合は、別タスクとして扱い、現在のリファクタリングは構造改善のみに集中させてください。
期待される出力
優先順位付きの整理計画、少しずつ絞った小さな差分の連続(1 パスにつき 1 つ)、および各パスの検証サマリー。そこには、何を変更したかと、どの確認によって動作が安定していると判断できるかを含めます。
制限事項
- 対象領域に既存のテストスイート、または検証可能な明確な動作契約がある場合に最も効果を発揮します。
- 大規模なモノレポでは、1 度に 1 つのサービスまたはモジュールに絞ると効果的です。
- アーキテクチャ変更、ランタイムのアップグレード、フレームワーク移行は別タスクにしてください。リファクタリングと混ぜると差分がレビュー不能になります。