mcpField
C
configure-dead-code

configure-dead-code

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

configure-dead-code について

デッドコード検出を設定、監査するプロジェクト構成スキルです。プロジェクトの言語に応じて Knip、Vulture、cargo-machete を選び、設定や CI チェックを追加できます。

主な機能

  1. 01言語とデッドコードツールの検出
  2. 02ツール設定の監査
  3. 03ツール設定とスクリプトの作成
  4. 04ブロックしない CI チェックの追加
  5. 05確認のみ・自動修正モード

活用シーン

  1. 01新規プロジェクトへのデッドコード検査設定
  2. 02Knip、Vulture、cargo-machete 設定の確認
  3. 03デッドコード検出の CI への追加
  4. 04モノレポ内の検査方法の統一

インストール

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

$npx skills add https://github.com/laurigates/claude-plugins --skill configure-dead-code

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

同梱ファイルREFERENCE.md

詳細

/configure:dead-code

デッドコード検出ツールを確認し、設定します。

このスキルを使用するタイミング

次の場合はこのスキルを使用します...次の場合は別の方法を使用します...
新しいプロジェクトにデッドコード検出を設定する既存のデッドコードスキャン(knip、vulture)を実行する
Knip、Vulture、または cargo-machete が正しく設定されているか監査する特定の未使用エクスポートやインポートを手動で削除する
デッドコード検出ツールを移行する特定のファイルが未使用としてフラグ付けされる理由をデバッグする
CI/CD パイプラインにデッドコードチェックを追加するデッドコードの検出結果を一つずつ確認する
モノレポ全体でデッドコード検出を標準化するlint ルールを設定する(代わりに /configure:linting を使用)

コンテキスト

  • プロジェクトルート:!pwd
  • パッケージファイル:!find . -maxdepth 1 \( -name 'package.json' -o -name 'pyproject.toml' -o -name 'Cargo.toml' \)
  • Knip 設定:!find . -maxdepth 1 \( -name 'knip.json' -o -name 'knip.config.*' \)
  • Vulture 設定:!find . -maxdepth 1 \( -name '.vulture' -o -name 'vulture.ini' \)
  • Pre-commit:!find . -maxdepth 1 -name '.pre-commit-config.yaml'
  • プロジェクト標準:!find . -maxdepth 1 -name '.project-standards.yaml'

パラメーター

コマンド引数から解析します。

  • --check-only:変更を加えず、準拠状況を報告します(CI/CD モード)
  • --fix:確認を求めずに修正を自動適用します
  • --tool <knip|vulture|deadcode|machete>:ツールの検出結果を上書きします

デッドコード検出ツール:

  • JavaScript/TypeScript:Knip(未使用のファイル、エクスポート、依存関係を検出)
  • Python:Vulture または deadcode(未使用のコードを検出)
  • Rust:cargo-machete(未使用の依存関係を検出)

実行

次のデッドコード検出の準拠チェックを実行します。

ステップ 1:プロジェクトの言語と既存ツールを検出する

言語とツールを示す情報を確認します。

指標言語ツール
knip.json または knip.config.*JavaScript/TypeScriptKnip
knip を含む package.jsonJavaScript/TypeScriptKnip
pyproject.toml の [tool.vulture]PythonVulture
.vulture または vulture.iniPythonVulture
Cargo.tomlRustcargo-machete

設定する前に、WebSearch または WebFetch を使用して最新バージョンを確認します。

ステップ 2:現在の設定を分析する

検出されたツールについて、設定が十分か確認します。

Knip:

  • 設定ファイルが存在する(knip.json または knip.config.*)
  • エントリーポイントが設定されている
  • 除外パターンが設定されている
  • プラグイン設定がある
  • ワークスペースに対応している(モノレポ)
  • CI に統合されている

Vulture:

  • 設定ファイルが存在する
  • 最小信頼度が設定されている
  • パスが設定されている
  • 除外パターンが設定されている
  • 許可リストファイルがある(必要な場合)

cargo-machete:

  • cargo サブコマンドとしてインストールされている
  • ワークスペース設定がある
  • CI に統合されている
ステップ 3:準拠レポートを生成する

書式付きの準拠レポートを出力します。

Dead Code Detection Compliance Report
======================================
Project: [name]
Language: [TypeScript | Python | Rust]
Tool: [Knip 5.x | Vulture 2.x | cargo-machete 0.6.x]

Configuration:
  Config file             knip.json                  [EXISTS | MISSING]
  Entry points            configured                 [CONFIGURED | AUTO-DETECTED]
  Ignore patterns         node_modules, dist         [CONFIGURED | INCOMPLETE]
  Plugin support          enabled                    [ENABLED | N/A]

Detection Scope:
  Unused files            enabled                    [ENABLED | DISABLED]
  Unused exports          enabled                    [ENABLED | DISABLED]
  Unused dependencies     enabled                    [ENABLED | DISABLED]
  Unused types            enabled                    [ENABLED | DISABLED]

Scripts:
  dead-code command       package.json scripts       [CONFIGURED | MISSING]

Integration:
  Pre-commit hook         .pre-commit-config.yaml    [OPTIONAL | MISSING]
  CI/CD check             .github/workflows/         [CONFIGURED | MISSING]

Overall: [X issues found]

--check-only が指定されている場合は、ここで終了します。

ステップ 4:デッドコード検出を設定する(--fix が指定されている場合、またはユーザーが確認した場合)

検出された言語に基づいて設定します。REFERENCE.md のテンプレートを使用します。

  1. ツールをインストールする(例:bun add --dev knip、uv add --group dev vulture)
  2. エントリーポイント、除外設定、プラグインを含む 設定ファイルを作成する
  3. スクリプトを追加する(package.json に追加するか、実行コマンドを作成する)
  4. CI ワークフローのステップを追加する(ブロックせず、警告モードにする)
ステップ 5:標準の追跡情報を更新する

.project-standards.yaml を更新します。

standards_version: "2025.1"
last_configured: "[timestamp]"
components:
  dead_code: "2025.1"
  dead_code_tool: "[knip|vulture|deadcode|machete]"
  dead_code_ci: true
ステップ 6:最終レポートを出力する

適用した変更の概要を出力し、可能であれば初回スキャンを実行して、検出結果を確認するための次の手順を提示します。

詳細な設定テンプレートと使用例については、REFERENCE.md を参照してください。

エージェント向け最適化

コンテキストコマンド
簡易コンプライアンスチェック/configure:dead-code --check-only
すべての問題を自動修正/configure:dead-code --fix
Knip スキャン(JS/TS)を実行npx knip --reporter compact
Vulture スキャン(Python)を実行vulture . --min-confidence 80
cargo-machete を実行(Rust)cargo machete
CI モード(JSON 出力)npx knip --reporter json

フラグ

フラグ説明
--check-only修正を提示せずに状態を報告します
--fixプロンプトを表示せずにすべての修正を自動適用します
--tool <tool>ツールの検出を上書きします(knip、vulture、deadcode、machete)

例

# Check compliance and offer fixes
/configure:dead-code

# Check only, no modifications
/configure:dead-code --check-only

# Auto-fix with Knip
/configure:dead-code --fix --tool knip

エラー処理

  • 言語を検出できない場合:適切なツールを判断できないため、エラーになります
  • ツールのインストールに失敗した場合:エラーを報告し、手動でのインストールを提案します
  • 設定が競合している場合:複数のツールについて警告し、統合を提案します
  • 検出結果が多い場合:許可リストから始めることを提案します

関連項目

コメント