ln-625-dependencies-auditor について
依存関係管理、コード再利用、セキュリティ脆弱性を監査するワーカー用スキルです。全項目の検査、または CVE のみの検査を実行し、マニフェストやロックファイルを変更せずに結果と準拠スコアを報告します。
主な機能
- 01古い依存関係と未使用依存関係の確認
- 02未使用のライブラリ機能と独自実装の調査
- 03CVE 脆弱性のスキャン
- 04全項目または脆弱性のみのモード
- 05調査結果と準拠スコアの報告
活用シーン
- 01コードベースの依存関係監査
- 02セキュリティパイプラインでの脆弱性のみの検査
- 03冗長な依存関係や独自の再実装の特定
MCP 対応
利用可能な場合、依存関係の根拠には hex-graph を、ローカルコードの読み取りには hex-line を優先します。MCP が利用不可、非対応、または未インデックスの場合は、組み込みツールにフォールバックします。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ levnikolaevich/ claude-code-skills --skill ln-625-dependencies-auditorインストール後、Claude Code で/ln-625-dependencies-auditorを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/audit_output_schema.mdaudit_scoring.mdaudit_summary_contract.mdaudit_worker_core_contract.mdci_integration_guide.mdcleanup_evidence_contract.mdcvss_severity_mapping.mdevaluation_coordinator_runtime_contract.mdevaluation_parallelism_policy.mdevaluation_research_contract.mdevaluation_summary_contract.mdevaluation_worker_runtime_contract.mdloop_health_contract.mdmcp_integration_patterns.mdmcp_tool_preferences.mdrefinement_trace_contract.mdreferences/scripts/coordinator-runtime/lib/artifacts.mjscli-helpers.mjscore.mjsloop-health.mjsruntime-constants.mjsschemas.mjsvalidate.mjsworker-guards.mjsworker-runtime.mjsreferences/scripts/evaluation-runtime/cli.mjsreferences/scripts/evaluation-runtime/lib/guards.mjsstore.mjsreferences/scripts/evaluation-worker-runtime/cli.mjsreferences/scripts/evaluation-worker-runtime/lib/guards.mjs詳細
**パス:**ファイルパス(
references/、../ln-*)は、このスキルディレクトリからの相対パスです。
依存関係と再利用の監査担当(L3 ワーカー)
**種類:**L3 ワーカー
依存関係の管理、コードの再利用、セキュリティ脆弱性を監査する専門ワーカーです。
目的と範囲
- ln-760 セキュリティセットアップパイプラインのワーカー(vulnerabilities_only モード)
- 依存関係と再利用を監査します(カテゴリー 7+8:中優先度)
- 古いパッケージ、未使用の依存関係、既存機能の再実装、CVE 脆弱性を確認します
- コンプライアンススコアを算出します(X/10)
パラメーター
| パラメーター | 値 | デフォルト | 説明 |
|---|---|---|---|
| mode | full / vulnerabilities_only | full | full = 5 つのチェックすべて、vulnerabilities_only = CVE スキャンのみ |
入力
必ず読み込むこと:references/audit_worker_core_contract.mdを読み込みます。
必ず読み込むこと:references/mcp_tool_preferences.mdとreferences/mcp_integration_patterns.mdを読み込みます。
tech stack、パッケージマニフェストのパス、コードベースのルート、output_dir を含むcontextStoreを受け取ります。
**ln-620(codebase-auditor)から:**mode=full(デフォルト) **ln-760(security-setup)から:**mode=vulnerabilities_only
依存関係の参照やコード再利用の根拠によって監査の質が大きく向上する場合は、まずhex-graphを使用します。ローカルコードを読み取る場合は、利用可能であればまずhex-lineを使用します。MCP が利用できない、未対応、またはインデックス化されていない場合は、組み込みのRead/Grep/Glob/Bashを使用して続行し、レポートにフォールバックしたことを記載します。
ワークフロー
**必ず読み込むこと:**検出方法についてreferences/two_layer_detection.mdを読み込みます。
- context + mode パラメーター + output_dir を解析します
- 依存関係のチェックを実行します(レイヤー 1:監査ツール。mode に基づきます)
- 候補ごとにコンテキストを分析します(レイヤー 2):
- 利用可能な機能:使用状況を読み取ります。lodash が 1 つの関数に使われている(簡単に置き換えられる)のか、深く統合されている(置き換えが難しい)のかを確認します。
- カスタム実装:コードを読み取ります。ライブラリを本当に再実装しているのか、ドメイン固有のロジックなのかを確認します。
- 脆弱性:コードを読み取ります。このプロジェクトで脆弱な API が実際に呼び出されているかを確認します。
- 検出結果を収集します
- スコアを算出します
- レポートを作成:
references/templates/audit_worker_report_template.mdに従って完全な Markdown レポートをメモリ上に作成し、単一の Write 呼び出しで{output_dir}/ln-625--global.mdに書き込みます - **概要を返す:**コーディネーターに最小限の概要を返します
監査ルール(5 項目)
1. 古いパッケージ
**モード:**full のみ
検出方法:
npm outdated --jsonを実行します(Node.js)pip list --outdated --format=jsonを実行します(Python)cargo outdated --format=jsonを実行します(Rust)
重要度:
- **HIGH:**メジャーバージョンが遅れている(セキュリティリスク)
- **MEDIUM:**マイナーバージョンが遅れている
- **LOW:**パッチバージョンが遅れている
**推奨事項:**最新バージョンに更新し、破壊的変更がないかテストします。
**作業量:**S-M(バージョンを更新し、テストを実行)
2. 未使用の依存関係
**モード:**full のみ
検出方法:
- package.json/requirements.txt を解析します
- コードベースで
import/require文を grep します - 一度もインポートされていない依存関係を特定します
重要度:
- **MEDIUM:**未使用の本番環境用依存関係(バンドルを肥大化させます)
- **LOW:**未使用の開発用依存関係
**推奨事項:**パッケージマニフェストから削除します。
**作業量:**S(行を削除してテスト)
3. 利用可能な機能が使われていない
**モード:**full のみ
検出方法:
- ネイティブの fetch が利用可能な場合(Node 18+)に axios が使われていないか確認します
- Array メソッドで十分な場合に lodash が使われていないか確認します
- Date.toLocaleString で十分な場合に moment が使われていないか確認します
重要度:
- **MEDIUM:**不要な依存関係(バンドルサイズが増加します)
**推奨事項:**ネイティブの代替機能を使用します。
**作業量:**M(コードをリファクタリングしてネイティブ API を使用)
4. カスタム実装
**モード:**full のみ
検出方法:
- カスタムのソートアルゴリズムを grep します
- 手作業で実装されたバリデーション(validator.js との比較)を確認します
- カスタムの日付解析(date-fns/dayjs との比較)を特定します
重要度:
- **HIGH:**カスタム暗号処理(セキュリティリスク)
- **MEDIUM:**十分にテストされた代替手段があるカスタムユーティリティ
**推奨事項:**実績のあるライブラリに置き換えます。
**作業量:**M(ライブラリを統合し、呼び出しを置き換え)
5. 脆弱性スキャン(CVE/CVSS)
モード: full AND vulnerabilities_only
検出:
- エコシステムを検出します:npm、NuGet、pip、Go、Bundler、Cargo、Composer
references/vulnerability_commands.mdに従って監査コマンドを実行しますreferences/cvss_severity_mapping.mdに従ってCVSSをマッピングし、結果を解析します
重大度:
- CRITICAL: CVSS 9.0-10.0(即時の修正が必要)
- HIGH: CVSS 7.0-8.9(48時間以内に修正)
- MEDIUM: CVSS 4.0-6.9(1週間以内に修正)
- LOW: CVSS 0.1-3.9(都合のよいときに修正)
修正の分類:
- パッチアップデート(x.x.Y)→安全に自動修正可能
- マイナーアップデート(x.Y.0)→通常は安全
- メジャーアップデート(Y.0.0)→手動レビューが必要
- 修正が利用できない場合→記録して監視
推奨事項: 修正済みバージョンに更新し、ロックファイルの整合性を確認します
作業量: S-L(破壊的変更によって異なります)
スコアリングアルゴリズム
必須の読み込み: references/audit_worker_core_contract.md と references/audit_scoring.md を読み込みます。
注: mode=vulnerabilities_only の場合、脆弱性の検出結果のみを基にスコアを算出します。
出力形式
必須の読み込み: references/audit_worker_core_contract.md と references/templates/audit_worker_report_template.md を読み込みます。
references/audit_summary_contract.md に従ってJSONサマリーを書き込みます。管理モードでは呼び出し元から runId と summaryArtifactPath の両方が渡されます。スタンドアロンモードでは、ワーカーは共通コントラクトに従って、実行単位のアーティファクトパスを独自に生成します。
{output_dir}/ln-625--global.md に、category: "Dependencies & Reuse" および以下のチェック項目を含むレポートを書き込みます:outdated_packages、unused_deps、available_natives、custom_implementations、vulnerability_scan。
references/audit_summary_contract.md に従ってサマリーを返します。
summaryArtifactPath がない場合は、.hex-skills/runtime-artifacts/runs/{run_id}/evaluation-worker/{worker}--{identifier}.json にスタンドアロンの実行時サマリーを書き込み、必要に応じて同じサマリーを構造化出力にも含めます。
Report written: .hex-skills/runtime-artifacts/runs/{run_id}/audit-report/ln-625--global.md
Score: X.X/10 | Issues: N (C:N H:N M:N L:N)
参照ファイル
| ファイル | 目的 |
|---|---|
references/vulnerability_commands.md | エコシステム固有の監査コマンド |
references/ci_integration_guide.md | CI/CDの統合ガイダンス |
references/cvss_severity_mapping.md | CVSSから重大度レベルへのマッピング |
references/audit_output_schema.md | 監査出力スキーマ |
重要なルール
必須の読み込み: references/audit_worker_core_contract.md を読み込みます。
- 自動修正は禁止: レポートのみを作成し、パッケージマニフェストやロックファイルは変更しません
- モードに応じた実行:
vulnerabilities_onlyモードでは、チェック1〜4をすべてスキップします - 現実的な作業量: S = 1時間未満、M = 1〜4時間、L = 4時間超
- CVSSベースの重大度:
references/cvss_severity_mapping.mdに厳密に従って脆弱性の重大度をマッピングします - 除外対象: 脆弱性の重大度を引き上げる際はdevDependenciesをスキップし、ベンダー提供またはバンドルされた依存関係もスキップします
完了の定義
必須の読み込み: references/audit_worker_core_contract.md を読み込みます。
- contextStoreを解析済み(modeパラメーターとoutput_dirを含む)
- 該当するすべてのチェックを完了済み(fullでは5項目、vulnerabilities_onlyでは1項目)
- 重大度、場所、作業量、fix_type、推奨事項を含む検出結果を収集済み
-
references/audit_scoring.mdに従ってスコアを算出済み -
{output_dir}/ln-625--global.mdにレポートを書き込み済み(単一のWrite呼び出しでアトミックに書き込み) - コントラクトに従ってサマリーを書き込み済み
バージョン: 4.0.0 最終更新日: 2026-02-05