mcpField
B
bloat-detector

bloat-detector

github.com/atholaテスト・品質343158 回インストール1 日前に更新
リポジトリ

bloat-detector について

bloat-detectorは、メンテナンスやリファクタリング、リリース前の整理に使う段階式のコードベース分析スキルです。コード、AI生成物、ドキュメント、依存関係、Git履歴を調べ、削除には事前承認を求めます。

主な機能

  1. 01段階式の3種類のスキャン
  2. 02コード・文書・依存関係の肥大化検出
  3. 03Git履歴と成長傾向の分析
  4. 04確信度と優先度による評価
  5. 05整理前の承認必須

活用シーン

  1. 01定期メンテナンスで冗長部分を発見
  2. 02リファクタリング前に整理対象を特定
  3. 03リリース前にコードベースを点検
  4. 04プラグイン設定やスキルファイルを監査

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/athola/claude-night-market --skill bloat-detector

インストール後、Claude Code で/bloat-detectorを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

modules/
ai-generated-bloat.md
code-bloat-patterns.md
documentation-bloat.md
git-history-analysis.md
growth-analysis.md
quick-scan.md
remediation-types.md
static-analysis-integration.md

詳細

肥大化検出器

段階的な分析レベルを通じて、コードベースの肥大化を体系的に検出し、解消します。

肥大化のカテゴリ

カテゴリ例
コードデッドコード、God クラス、Lava flow、重複
AI 生成タブ補完による肥大化、バイブコーディング、幻覚による依存関係
ドキュメント冗長性、冗長な記述、古いコンテンツ、質の低い内容
依存関係未使用のインポート、依存関係の肥大化、幻のパッケージ
Git 履歴古いファイル、変更頻度の低いコード、巨大な単一コミット

クイックスタート

レベル 1:クイックスキャン(2~5 分、ツール不要)
/bloat-scan

検出対象:大きなファイル、古いコード、古い TODO、コメントアウトされたブロック、基本的な重複

レベル 2:対象を絞った分析(10~20 分、ツールは任意)
/bloat-scan --level 2 --focus code   # or docs, deps

追加項目:静的解析(Vulture/Knip)、Git の変更頻度が高い箇所、ドキュメントの類似性

レベル 3:詳細監査(30~60 分、すべてのツールを使用)
/bloat-scan --level 3 --report audit.md

追加項目:ファイル間の冗長性、依存関係グラフ、可読性指標

使用する場合

使用する使用しない
コンテキストの使用率が 30% 超機能を積極的に開発しているとき
四半期ごとのメンテナンス時間に制約のあるバグ対応
リリース前の整理コードベースが 1000 行未満
大規模なリファクタリングの前ツールを利用できない場合(レベル 2/3)

使用しない場合

  • 機能を積極的に開発しているとき
  • 時間に制約のあるバグ対応
  • コードベースが 1000 行未満

確信度レベル

レベル確信度対応
HIGH90~100%安全に削除できます
MEDIUM70~89%まず確認してください
LOW50~69%調査してください

優先順位付け

Priority = (Token_Savings × 0.4) + (Maintenance × 0.3) + (Confidence × 0.2) + (Ease × 0.1)

モジュール構成

レベル 1(常に利用可能):

  • modules/quick-scan.md を参照 - ヒューリスティック、ツール不要
  • modules/git-history-analysis.md を参照 - 古さ、変更頻度、バイブコーディングの兆候
  • modules/growth-analysis.md を参照 - 増加速度、予測、しきい値アラート

レベル 2(任意のツール):

  • modules/code-bloat-patterns.md を参照 - アンチパターン(God クラス、Lava flow)
  • modules/ai-generated-bloat.md を参照 - AI 固有のパターン(タブ補完による肥大化、幻覚)
  • modules/documentation-bloat.md を参照 - 冗長性、可読性、質の低い内容の検出
  • modules/static-analysis-integration.md を参照 - Vulture、Knip

共有:

  • modules/remediation-types.md を参照 - DELETE、REFACTOR、CONSOLIDATE、ARCHIVE

エコシステムレベルの検出

プラグインの境界やマニフェスト設定をまたぐパターンを、 エコシステム全体の監査を通じて検出します。

alwaysApply の蓄積

alwaysApply: true のスキルが 3 個以上あるプラグインにフラグを設定します。 常時有効なスキルはそれぞれ、セッションごとに全文を挿入するため、 ユーザーが何も入力する前から、ベースラインのトークン消費が発生します。 estimated_tokens の値を合計し、セッションあたりの総コストを報告します。

フック登録の不足

plugin.json または openpackage.yml で宣言されたフックと、 hooks.json のエントリーを比較します。hooks.json に存在しても マニフェストに記載されていないフックは、プラグインローダーから認識されず、 通常のプラグイン管理を通じて監査、バージョン管理、無効化を行えません。

定型フッターの検出

スキルファイルをスキャンし、同一の複数行テキストブロックが 10 個以上のファイルに繰り返し登場していないか確認します(例: 「コマンドが見つからない/権限エラー/予期しない動作」といった汎用的な トラブルシューティングのセクション)。これらはコピー&ペーストの残骸であり、 スキル固有の価値を加えることなくトークン消費を増加させます。

スキル内の目次による肥大化

モデルのコンテキストに読み込まれるスキルでは、HTML 形式の 目次に利点はありません。## Table of Contents に続く 箇条書きのアンカーリンク一覧を検出します。モデルはハイパーリンクではなく 順番に読み進めるため、これらはトークンの無駄になります。

未登録のモジュールサブディレクトリ

skills/*/modules/ 内のディスク上のファイルと、各スキルの SKILL.md の フロントマターにある modules: リストを比較します。ディスク上に存在するものの マニフェストに記載されていないファイルは、段階的な読み込みで認識されず、 不要なファイルであるか、読み込みパスから漏れている可能性があります。

自動除外

常に除外されます:.venv、__pycache__、.git、node_modules、dist、build、vendor

以下も尊重します:.gitignore、.bloat-ignore

安全性

  • 自動削除は行いません - すべての変更に承認が必要です
  • ドライランに対応 - プレビューには --dry-run を使用します
  • バックアップブランチ - 一括変更の前に作成されます

関連項目

  • bloat-auditor エージェント - スキャンを実行します
  • unbloat-remediator エージェント - 安全に修正します
  • context-optimization スキル - MECW の原則
  • /bloat-scan コマンド - このスキルを呼び出す、ユーザー向けのスラッシュコマンドです。独立した bloat-scan スキルはありません

完了条件

  • 少なくとも1つのスキャン階層(Tier 1、2、または3)が完了し、肥大化のカテゴリ(コード、AI 生成、ドキュメント、依存関係、Git 履歴)ごとに検出事項が列挙されている
  • 各検出事項に信頼度(HIGH/MEDIUM/LOW)が割り当てられ、次の式から優先度スコアが算出されている `(Token_Savings × 0.4) + (Maintenance × 0.3) + (Confidence × 0.2)
    • (Ease × 0.1)`
  • ユーザーの明示的な承認なしに自動削除を実行していない。削除候補はすべて、modules/remediation-types.md に従って DELETE、REFACTOR、CONSOLIDATE、または ARCHIVE として記録されている
  • スキャン対象にプラグインディレクトリが含まれる場合、エコシステムレベルのパターン(alwaysApply の蓄積、フック登録の不足、定型フッター、目次の肥大化)が確認されている

コメント