de-sloppify について
de-sloppify は、.NET コードベースを順序立てて検証しながら整理するスキルです。各段階でビルドとテストを行い、個別にコミットすることで、開発作業と整理作業を分離できます。
主な機能
- 017段階の .NET 整理パイプライン
- 02状況に応じた手順の選択
- 03各段階後のビルドとテスト
- 04各段階を個別にコミット
- 05不要コード削除前の安全確認
- 06最終整理レポートの作成
活用シーン
- 01.NET プロジェクトのリリース準備
- 02大規模な機能マージ後の整理
- 03依存関係更新後の警告対応
- 04定期的な技術的負債の整理
MCP 対応
一部の整理手順で get_diagnostics、find_dead_code、get_type_hierarchy、detect_antipatterns などの MCP ツールを使用します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ codewithmukesh/ dotnet-claude-kit --skill de-sloppifyインストール後、Claude Code で/de-sloppifyを入力して読み込まれたか確認します。
同梱ファイルreferences/cleanup-steps.md
詳細
/de-sloppify — 7ステップのクリーンアップパイプライン
概要
.NET コードベースに対して、順序を守って検証しながらクリーンアップパイプラインを実行します。順序が重要です。まずフォーマットを行います(すべてのファイルに影響するため、ほかの作業の前に変更をまとめて処理します)。デッドコードは後半で処理します(前のステップによって見つかるためです)。場当たり的なクリーンアップでは見落としが生じ、マージコンフリクトも発生しますが、このパイプラインならそれを防げます。
安全に実行するためのルールは3つです。
- 各ステップの後に検証する — ステップの間に
dotnet buildとdotnet testを実行します。何かを壊すクリーンアップは、修正しようとしていた問題よりも悪い結果を招きます。 - ステップごとにコミットする — 各ステップを個別にコミットするため、Step 4 に問題があっても、Step 1~3 を失わずに取り消せます。
- 安全な削除のみ行う — 「デッド」コードを削除する前に、Roslyn では検出できないリフレクション、DI の規約、シリアライズでの使用箇所がないか確認します。
各ステップのコマンド、安全確認チェックリスト、コード例は references/cleanup-steps.md にあります。実行前に読んでください。
実行するタイミング
- 「クリーンアップ」「整理」「de-sloppify」「保守作業」「技術的負債」への対応
- 大規模な機能のマージや依存関係のアップグレードの後(新たな警告が蓄積するため)
- リリース前の安定化、または四半期ごとに予定されたクリーンアップスプリント
- パフォーマンス改善作業の前(デッドコードを取り除き、クラスをシールして仮想呼び出しを排除するため)
- 機能開発と同時には行わないでください。クリーンアップのコミットだけにします。
手順
ステップ 0:実行するステップを選ぶ
| シナリオ | 実行するステップ |
|---|---|
| 全体的なクリーンアップ/リリース前/四半期ごとの実施 | 7つすべて |
| PR 前の簡単な整理 | 1、2、6 |
| 大規模な機能のマージ後 | 1、2、3、4 |
| 依存関係のアップグレード後 | 2、3 |
| パフォーマンス改善作業の前 | 4、6 |
| CI の警告しきい値を超過 | 3 のみ |
| 技術的負債の解消スプリント | 4、5 |
ステップ 1~7(順番に実行。詳細は references/cleanup-steps.md を参照)
| # | ステップ | ツール | コミットメッセージ |
|---|---|---|---|
| 1 | すべてのコードをフォーマット | dotnet format | chore: apply dotnet format |
| 2 | 未使用の using を削除 | dotnet format analyzers --diagnostics IDE0005 | chore: remove unused using statements |
| 3 | アナライザーの警告を修正 | MCP get_diagnostics → カテゴリ別にトリアージ | chore: fix analyzer warnings |
| 4 | デッドコードを削除 | MCP find_dead_code + 安全確認(リフレクション/DI/シリアライズの grep) | chore: remove dead code |
| 5 | TODO を解消 | TODO/HACK/FIXME を grep → 修正、issue を登録、または削除 | chore: resolve TODO comments |
| 6 | 継承されていないクラスをシール | 候補ごとに MCP get_type_hierarchy を実行 + テストプロジェクトを grep | chore: seal non-inherited classes |
| 7 | CancellationToken を伝播 | MCP detect_antipatterns → 非同期チェーンを追跡 | chore: propagate CancellationToken through async chains |
各ステップの後に dotnet build と dotnet test を実行してから、コミットします。ステップによってビルドやテストに失敗した場合は、続行する前にそのステップを修正するか取り消してください。失敗状態のまま次のステップに進んではいけません。構造に関わるステップ(4、6、7)は refactor-cleaner エージェントに委任してください。
最終レポート
## De-Sloppify Report
| Step | Changes | Files Affected |
|------|---------|----------------|
| 1. Format | Applied consistent formatting | 23 files |
| 2. Usings | Removed 47 unused usings | 18 files |
| 3. Analyzers | Fixed 12 warnings (8 nullability, 3 unused vars, 1 obsolete) | 9 files |
| 4. Dead Code | Removed 3 unused types, 5 unused methods | 6 files |
| 5. TODOs | Fixed 2, created issues for 3, removed 1 stale | 5 files |
| 6. Sealed | Sealed 14 classes | 14 files |
| 7. CancellationToken | Added propagation to 8 async chains | 11 files |
**Total: 7 commits, 86 files improved**
例
User: /de-sloppify — full pass before the release
Claude: Running the 7-step pipeline...
Step 1: dotnet format — 23 files reformatted. Build + tests green. Committed.
Step 2: IDE0005 — 47 unused usings removed across 18 files. Green. Committed.
Step 3: 12 warnings triaged: 8 nullability fixed with null checks,
3 unused vars removed, 1 CS0618 migrated off the obsolete API. Committed.
Step 4: find_dead_code → 9 candidates. Safety check: PaymentProcessor is
registered via DI convention — kept. Removed 3 types, 5 methods. Committed.
Step 5: 6 TODOs → 2 fixed, 3 became issues (#141-#143), 1 stale removed. Committed.
Step 6: 14 classes sealed (2 skipped: xUnit fixture base, virtual members). Committed.
Step 7: 8 async chains now propagate ct end-to-end. Committed.
7 commits, 86 files improved. Full report above.
関連項目
references/cleanup-steps.md— 各ステップのコマンド、安全確認、例/verify— クリーンアップ後に完全な検証パイプラインを実行/health-check— プロジェクトを再評価し、改善度を定量化/code-review— クリーンアップではスタイルを扱い、レビューではロジックと設計を扱います