Agent Skills by ALSEL
OpenAIソフトウェア開発⭐ リポ 2品質スコア 64/100

knip

knipを実行して、未使用のファイル、依存関係、エクスポートを検出し削除できます。デッドコードと未使用の依存関係をクリーンアップする際に活用します。

description の原文を見る

Run knip to find and remove unused files, dependencies, and exports. Use for cleaning up dead code and unused dependencies.

SKILL.md 本文

Knip コードクリーンアップ

knip を実行して、このコードベースから未使用のファイル、依存関係、エクスポートを検出して削除します。

セットアップ

  1. knip が利用可能か確認します:

    • npx knip --version を実行してテストします
    • 失敗するか非常に遅い場合は、knip が package.json の devDependencies に含まれているか確認します
    • ローカルにインストールされていない場合は、npm install -D knip でインストールします(lockfile に応じて pnpm/yarn の同等のコマンドを使用)
  2. knip.json または knip.jsonc 設定が存在せず、knip が多くの誤検知を報告する場合は、package.json で検出されたフレームワークに基づいて最小限の設定を作成することを検討します

実行

  1. npx knip を実行して初期レポートを取得します
  2. 出力のカテゴリを確認します:
    • Unused files - どこにもインポートされていないファイル
    • Unused dependencies - package.json に含まれているがインポートされていないパッケージ
    • Unused devDependencies - 使用されていない開発用パッケージ
    • Unused exports - エクスポートされているが他の場所でインポートされていない関数や変数
    • Unused types - 使用されていないエクスポート済みの型

クリーンアップ戦略

自動削除 (信頼度が高い):

  • 明らかに内部的な未使用エクスポート (パブリック API の一部ではない)
  • 未使用の型エクスポート
  • 未使用の依存関係 (package.json から削除)
  • 明らかに孤立している未使用ファイル (エントリポイントではない、設定ファイルではない)

これらについては、確認なしに削除を進めてください。自動修正には --fix --allow-remove-files を使用するか、必要に応じて手動で削除・編集します。

確認後に実施 (明確化が必要):

  • エントリポイントまたは動的にインポートされる可能性があるファイル
  • パブリック API の一部である可能性があるエクスポート (index.ts、lib エクスポート)
  • CLI またはピア依存関係を通じて使用される可能性がある依存関係
  • src/indexlib/ などのパスや名前に "public" または "api" が含まれるファイル

これらを削除する前に、AskUserQuestion ツールを使用して確認してください。

ワークフロー

  1. knip を実行して、完全な出力をキャプチャします
  2. 各問題を自動削除または確認が必要なものに分類します
  3. 不明確な項目について一括で確認します
  4. すべての削除を実行します (Edit ツールを使用してエクスポートを削除、Bash を使用してファイル/依存関係を削除)
  5. knip を再実行してクリーンアップが完了したことを確認します
  6. 問題がなくなるか、意図的に無視される項目のみになるまで繰り返します

一般的なコマンド

# 基本的な実行
npx knip

# 本番環境のみ (テストファイルを無視)
npx knip --production

# 安全な修正を自動実行
npx knip --fix

# ファイル削除を含む自動修正
npx knip --fix --allow-remove-files

# 解析用の JSON 出力
npx knip --reporter json

注意事項

  • knip 設定が存在する場合は、そのパターンの無視を尊重してください
  • モノレポのセットアップに注意してください - --workspace フラグが必要な場合があります
  • 一部のフレームワークでは、設定でプラグインを有効にする必要があります
  • 修正の各バッチ後に再実行して、新たに露出した未使用コードをキャッチします

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
roderik
リポジトリ
roderik/mpe
ライセンス
MIT
最終更新
2026/3/1

Source: https://github.com/roderik/mpe / ライセンス: MIT

関連スキル

汎用ソフトウェア開発⭐ リポ 39,967

doubt-driven-development

重要な判断はすべて、本番環境への展開前に新しい視点から対抗的レビューを実施します。速度より正確性が重要な場合、不慣れなコードを扱う場合、本番環境・セキュリティに関わるロジック・取り消し不可の操作など影響度が高い場合、または後でバグを修正するよりも今検証する方が効率的な場合に活用してください。

by addyosmani
汎用ソフトウェア開発⭐ リポ 1,175

apprun-skills

TypeScriptを使用したAppRunアプリケーションのMVU設計に関する総合的なガイダンスが得られます。コンポーネントパターン、イベントハンドリング、状態管理(非同期ジェネレータを含む)、パラメータと保護機能を備えたルーティング・ナビゲーション、vistestを使用したテストに対応しています。AppRunコンポーネントの設計・レビュー、ルートの配線、状態フローの管理、AppRunテストの作成時に活用してください。

by yysun
OpenAIソフトウェア開発⭐ リポ 797

desloppify

コードベースのヘルスチェックと技術負債の追跡ツールです。コード品質、技術負債、デッドコード、大規模ファイル、ゴッドクラス、重複関数、コードスメル、命名規則の問題、インポートサイクル、結合度の問題についてユーザーが質問した場合に使用してください。また、ヘルススコアの確認、次の改善項目の提案、クリーンアップ計画の作成をリクエストされた際にも対応します。29言語に対応しています。

by Git-on-my-level
汎用ソフトウェア開発⭐ リポ 39,967

debugging-and-error-recovery

テストが失敗したり、ビルドが壊れたり、動作が期待と異なったり、予期しないエラーが発生したりした場合に、体系的な根本原因デバッグをガイドします。推測ではなく、根本原因を見つけて修正するための体系的なアプローチが必要な場合に使用してください。

by addyosmani
汎用ソフトウェア開発⭐ リポ 39,967

test-driven-development

テスト駆動開発により実装を進めます。ロジックの実装、バグの修正、動作の変更など、あらゆる場面で活用できます。コードが正常に動作することを証明する必要がある場合、バグ報告を受けた場合、既存機能を修正する予定がある場合に使用してください。

by addyosmani
汎用ソフトウェア開発⭐ リポ 39,967

incremental-implementation

変更を段階的に実施します。複数のファイルに影響する機能や変更を実装する場合に使用してください。大量のコードを一度に書こうとしている場合や、タスクが一度では完結できないほど大きい場合に活用します。

by addyosmani
本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: roderik · roderik/mpe · ライセンス: MIT