← ClaudeAtlas

tech-debt-audit-flutterlisted

Flutter / Dart プロジェクトの技術的負債を調査し、優先度付きレポートを生成する
tatsushige-i/shared-claude-code · ★ 0 · AI & Automation · score 59
Install: claude install-skill tatsushige-i/shared-claude-code
# Flutter 技術的負債調査スキル Flutter / Dart プロジェクトの技術的負債を調査する。`rules/tech-debt-checklist.md` の各カテゴリを Flutter / Dart 固有の手順で調査し、フレームワーク固有のチェック(Widget 肥大化、ステート管理の一貫性、生成コードの鮮度等)も実施する。ファイルパス・行番号・改善案を含む優先度付きレポートを出力する。 ## Steps ### Step 1: プロジェクト検出 1. リポジトリルートに `pubspec.yaml` が存在することを確認し、`flutter:` ブロックまたは `dependencies:` 配下の `flutter` SDK 制約を含むことで Flutter / Dart プロジェクトであることを検証する - `pubspec.yaml` が存在しない場合 → 「エラー: Dart プロジェクトではありません(pubspec.yaml が見つかりません)。」と表示して終了 - `pubspec.yaml` は存在するが `flutter` 依存がない場合 → 「警告: 純粋な Dart パッケージのようです。Flutter 固有のチェック(Step 3 の Widget / State / Navigation)はスキップします。」と表示して続行 2. アプリケーションプロジェクトの場合は `lib/main.dart` の存在を確認する。`main.dart` を持たないライブラリパッケージも有効な調査対象とする 3. 後続コマンドで参照する Flutter CLI プレフィックスを決定する: - `.fvmrc` または `.fvm/` が存在する → `fvm flutter ...` / `fvm dart ...` を使用 - それ以外 → `flutter ...` / `dart ...` を使用 4. プロジェクト構造をスキャンしてレイアウトを把握する: - `lib/` 配下のトップレベルディレクトリ(例: `app/`、`core/`、`features/`)を一覧化 - 各 feature ディレクトリについて、クリーンアーキテクチャレイヤリング(`presentation/` / `application/` / `domain/` / `data/`)を採用しているか、その他の構造かを記録 - `test/`、`integration_test/`、`analysis_options.yaml`、`.github/workflows/` の有無と内容を確認 ### Step 2: 共通チェックリスト調査 `rules/tech-debt-checklist.md` の各カテゴリを Flutter / Dart コンテキストで調査する: #### コードの重複 - 画面間で繰り返される Widget ツリーパターン(類似の `Scaffold` + `AppBar` + `ListView` の骨格、繰り返される `Padding` / `Container` のネスト等)の検索 - feature 間で重複するデータ取得や Repository 実装の確認 - `lib/core/` および `features/*/` 間で重複するユーティリティ関数の検索 - 共有 value object の不在を示唆する `freezed` モデルフィール