mcpField
L
ln-625-dependency-reuse-auditor

ln-625-dependency-reuse-auditor

github.com/levnikolaevichTesting & quality58473 installsUpdated 2d ago
Repository

About ln-625-dependency-reuse-auditor

A skill for auditing package health and reuse risks, including outdated or unused dependencies, vulnerabilities, and generic custom utilities that may be replaceable. It supports full audits and vulnerability-only runs, and reports findings without modifying dependencies.

Key features

  1. 01Checks outdated packages
  2. 02Finds unused dependencies
  3. 03Reviews available native alternatives
  4. 04Assesses generic custom utilities for replacement
  5. 05Scans vulnerabilities across supported ecosystems
  6. 06Supports vulnerability-only mode

Use cases

  1. 01Reviewing packages before a release
  2. 02Identifying dependencies no longer used
  3. 03Scanning package manifests for vulnerabilities
  4. 04Evaluating custom utilities for reuse alternatives

MCP support

The skill prefers hex-line for local code reads and hex-graph when dependency references or reuse evidence help the audit. It falls back to built-in repository tools if MCP is unavailable or unsupported.

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/levnikolaevich/claude-code-skills --skill ln-625-dependency-reuse-auditor

After installing, type/ln-625-dependency-reuse-auditorin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

references/
audit_output_schema.md
audit_scoring.md
audit_summary_contract.md
audit_worker_core_contract.md
ci_integration_guide.md
cvss_severity_mapping.md
mcp_integration_patterns.md
mcp_tool_preferences.md
two_layer_detection.md
vulnerability_commands.md
references/templates/
audit_worker_report_template.md

Details

From the project README

Paths: File paths (references/, ../ln-*) are relative to this skill directory.

Dependencies & Reuse Auditor (L3 Worker)

Type: L3 Worker

Specialized worker auditing dependency health and reuse risk.

Purpose & Scope

  • Supports vulnerabilities_only mode for vulnerability-only runs
  • Audit dependency and reuse risk (Categories 7+8: Medium Priority)
  • Check outdated/unmaintained packages, unused deps, CVE vulnerabilities, and generic custom utility/integration modules that should use native/existing/OSS alternatives
  • Emit PATCH_DEPENDENCY, REMOVE_DEPENDENCY, or REPLACE_CUSTOM_UTILITY
  • Calculate compliance score (X/10)

Parameters

ParamValuesDefaultDescription
modefull / vulnerabilities_onlyfullfull = all 5 checks, vulnerabilities_only = only CVE scan

Inputs

MANDATORY READ: Load references/audit_worker_core_contract.md and references/mcp_tool_preferences.md. Tool policy: You may run as an isolated subagent where host AGENTS.md is not in scope, so default to hex-line MCP first for file reads, search, and edits. Load references/mcp_integration_patterns.md only when MCP behavior is unclear.

Receives contextStore with tech stack, package manifest paths, codebase root, output_dir.

Use mode=full by default. Use mode=vulnerabilities_only when only package vulnerability findings are requested.

Use hex-graph first when dependency references or code reuse evidence materially improve the audit. Use hex-line first for local code reads when available. If MCP is unavailable, unsupported, or not indexed, continue with built-in Read/Grep/Glob/Bash and state the fallback in the report.

Workflow

Detection policy: use two-layer detection (candidate scan, then context verification); load references/two_layer_detection.md only when the verification method is ambiguous.

  1. Parse context + mode parameter + output_dir
  2. Run dependency checks (Layer 1: audit tools, based on mode)
  3. Analyze context per candidate (Layer 2):
    • Available Features: read usage -- is lodash used for 1 function (easy replace) or deeply integrated (hard)?
    • Custom Utility Replacement: read code -- truly generic utility/integration, or domain-specific logic?
    • Vulnerability: read code -- is the vulnerable API actually called in this project?
  4. Collect findings
  5. Calculate score
  6. Write Report: Build full markdown report in memory per references/templates/audit_worker_report_template.md, write to {output_dir}/ln-625--global.md in single Write call
  7. Return Summary: Return minimal summary

Audit Rules (5 Checks)

1. Outdated Packages

Mode: full only

Detection:

  • Run npm outdated --json (Node.js)
  • Run pip list --outdated --format=json (Python)
  • Run cargo outdated --format=json (Rust)

Severity:

  • HIGH: Major version behind (security risk)
  • MEDIUM: Minor version behind
  • LOW: Patch version behind

Recommendation: Update to latest version, test for breaking changes

Effort: S-M (update version, run tests)

2. Unused Dependencies

Mode: full only

Detection:

  • Parse package.json/requirements.txt
  • Grep codebase for import/require statements
  • Find dependencies never imported

Severity:

  • MEDIUM: Unused production dependency (bloats bundle)
  • LOW: Unused dev dependency

Recommendation: Remove from package manifest

Effort: S (delete line, test)

3. Available Features Not Used

Mode: full only

Detection:

  • Check for axios when native fetch available (Node 18+)
  • Check for lodash when Array methods sufficient
  • Check for moment when Date.toLocaleString sufficient

Severity:

  • MEDIUM: Unnecessary dependency (increases bundle size)

Recommendation: Use native alternative

Effort: M (refactor code to use native API)

4. Generic Custom Utility / Integration Replacement

Mode: full only

Detection:

  • Find significant custom utility/integration files in utils/, lib/, helpers/, common/, shared/, pkg/, internal/
  • Look for names such as parser, formatter, validator, converter, encoder, serializer, logger, cache, queue, scheduler, mailer, http, client, wrapper, adapter, connector
  • Read code to classify purpose before recommending replacement
  • Prefer native platform APIs, existing project dependencies, then well-maintained OSS packages

Severity:

  • HIGH: high-confidence replacement for generic module >200 LOC or custom crypto/serialization with safer established alternative
  • MEDIUM: high-confidence replacement for 100-200 LOC, or medium-confidence replacement with clear maintenance win
  • LOW: partial replacement opportunity or native API cleanup

Layer 2:

  • Skip domain-specific business logic
  • Skip when feature parity is <80%
  • Before recommending OSS, check maintenance, license compatibility, and known security advisories using available research tools

Recommendation: Replace with native API, existing dependency feature, or vetted OSS alternative

Effort: M (integrate library, replace calls)

5. Vulnerability Scan (CVE/CVSS)

Mode: full AND vulnerabilities_only

Detection:

  • Detect ecosystems: npm, NuGet, pip, Go, Bundler, Cargo, Composer
  • Run audit commands per references/vulnerability_commands.md
  • Parse results with CVSS mapping per references/cvss_severity_mapping.md

Severity:

  • CRITICAL: CVSS 9.0-10.0 (immediate fix required)
  • HIGH: CVSS 7.0-8.9 (fix within 48h)
  • MEDIUM: CVSS 4.0-6.9 (fix within 1 week)
  • LOW: CVSS 0.1-3.9 (fix when convenient)

Fix Classification:

  • Patch update (x.x.Y) -> safe auto-fix
  • Minor update (x.Y.0) -> usually safe
  • Major update (Y.0.0) -> manual review required
  • No fix available -> document and monitor

Recommendation: Update to fixed version, verify lock file integrity

Effort: S-L (depends on breaking changes)


Scoring Algorithm

MANDATORY READ: Load references/audit_scoring.md.

Note: When mode=vulnerabilities_only, score based only on vulnerability findings.

Output Format

MANDATORY READ: Load references/templates/audit_worker_report_template.md.

Write JSON summary per references/audit_summary_contract.md. In managed mode the caller passes both runId and summaryArtifactPath; in standalone mode the worker generates its own run-scoped artifact path per shared contract.

Write report to {output_dir}/ln-625--global.md with category: "Dependency & Reuse Risk" and checks: outdated_packages, unused_deps, available_natives, custom_utility_replacement, vulnerability_scan.

Return summary per references/audit_summary_contract.md.

When summaryArtifactPath is absent, write the standalone runtime summary under .hex-skills/runtime-artifacts/runs/{run_id}/evaluation-worker/{worker}--{identifier}.json and optionally echo the same summary in structured output.

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)

Reference Files

FilePurpose
references/vulnerability_commands.mdEcosystem-specific audit commands
references/ci_integration_guide.mdCI/CD integration guidance
references/cvss_severity_mapping.mdCVSS to severity level mapping
references/audit_output_schema.mdAudit output schema

Critical Rules

Apply the already-loaded references/audit_worker_core_contract.md.

  • Do not auto-fix: Report only, never modify package manifests or lock files
  • Mode-aware execution: In vulnerabilities_only mode, skip checks 1-4 entirely
  • Effort realism: S = <1h, M = 1-4h, L = >4h
  • CVSS-based severity: Map vulnerability severity strictly via references/cvss_severity_mapping.md
  • Exclusions: Skip devDependencies for vulnerability severity escalation, skip vendored/bundled deps
  • Unique angle: Audit dependency/package health and generic reuse opportunities only. Do not audit application exploitability, architecture modernization, or domain-specific business logic.
  • Action required: Every finding uses PATCH_DEPENDENCY, REMOVE_DEPENDENCY, or REPLACE_CUSTOM_UTILITY.

Definition of Done

Apply the already-loaded references/audit_worker_core_contract.md.

  • contextStore parsed (including mode parameter and output_dir)
  • All applicable checks completed (5 for full, 1 for vulnerabilities_only)
  • Generic custom utility/integration candidates classified before replacement recommendations
  • Findings collected with severity, location, effort, action, fix_type, recommendation
  • Score calculated per references/audit_scoring.md
  • Report written to {output_dir}/ln-625--global.md (atomic single Write call)
  • Summary written per contract

Version: 4.0.0 Last Updated: 2026-02-05

Comments

Markdown supported