PluginBench
Skill
Fail
Audit score 45

repo-scan

affaan-m/ecc

Cross-stack source code audit: classify files, detect embedded libraries, assign refactoring verdicts.

What is repo-scan?

Scans C++, Java, iOS, and Web codebases in a single pass to classify every file as project code, third-party, or build artifact, detects 50+ embedded libraries with versions, and assigns four-level refactoring verdicts (Core Asset / Extract & Merge / Rebuild / Deprecate) per module. Use it when taking over legacy code, planning major refactoring, or auditing undeclared third-party dependencies.

  • Scans C/C++, Java/Android, iOS (ObjC/Swift), and Web (TS/JS/Vue) codebases in one pass
  • Classifies every file as project code, third-party, or build artifact
  • Detects 50+ known embedded libraries (FFmpeg, Boost, OpenSSL, etc.) with version extraction
  • Assigns four-level verdicts per module: Core Asset, Extract & Merge, Rebuild, or Deprecate
  • Generates interactive HTML reports with drill-down navigation and dark theme
  • Supports monorepo hierarchical scanning with summary and sub-project reports

How to install repo-scan

npx skills add null --skill repo-scan
Prerequisites
  • Git installed to clone the repository
  • Node.js and npm (for npx command)
Claude Code
Cursor
Windsurf
Cline

How to use repo-scan

  1. 1.Clone the skill repository to ~/.claude/skills/repo-scan using the provided git commands
  2. 2.Run repo-scan on your target repository with a chosen depth level (fast, standard, deep, or full)
  3. 3.Review the generated interactive HTML report to see file classifications and module verdicts
  4. 4.Drill down into specific modules to inspect detected libraries and structural risks
  5. 5.Use the findings to prioritize refactoring, extraction, or deprecation decisions

Use cases

Good for
  • Taking over a large legacy codebase to understand structural composition and ownership
  • Before major refactoring to identify core code, duplicates, and dead weight
  • Auditing third-party dependencies bundled directly in source rather than declared in package managers
  • Preparing architecture decision records for monorepo reorganization or module extraction
  • Discovering outdated vendored libraries and duplicated wrapper code across sub-projects
Who it's for
  • Legacy codebase maintainers and architects
  • Engineering leads planning refactoring or monorepo reorganization
  • Security and compliance teams auditing undeclared dependencies
  • Teams managing large multi-language codebases (C++, Java, iOS, Web)

repo-scan FAQ

What does each analysis depth level do?

fast reads 1-2 files per module for quick inventory; standard (default) reads 2-5 files with full dependency checks; deep reads 5-10 files adding thread safety and memory analysis; full reads all files for comprehensive pre-merge review.

Can it scan monorepos?

Yes. It performs hierarchical scanning and produces both a summary report and individual sub-project reports for drill-down analysis.

What languages does it support?

C/C++, Java/Android, iOS (Objective-C and Swift), and Web (TypeScript, JavaScript, Vue).

How does it detect embedded libraries?

It inspects directory names, header files, license files, and version markers to identify bundled dependencies and extract likely versions.

What are the four verdicts and what do they mean?

Core Asset (keep and maintain), Extract & Merge (pull into package manager), Rebuild (rewrite or replace), and Deprecate (remove or phase out).

Full instructions (SKILL.md)

Source of truth, from affaan-m/ecc.


name: repo-scan description: Cross-stack source code asset audit — classifies every file, detects embedded third-party libraries, and delivers actionable four-level verdicts per module with interactive HTML reports. metadata: origin: community

repo-scan

Every ecosystem has its own dependency manager, but no tool looks across C++, Android, iOS, and Web to tell you: how much code is actually yours, what's third-party, and what's dead weight.

When to Use

  • Taking over a large legacy codebase and need a structural overview
  • Before major refactoring — identify what's core, what's duplicate, what's dead
  • Auditing third-party dependencies embedded directly in source (not declared in package managers)
  • Preparing architecture decision records for monorepo reorganization

Installation

# Fetch only the pinned commit for reproducibility
mkdir -p ~/.claude/skills/repo-scan
git init repo-scan
cd repo-scan
git remote add origin https://github.com/haibindev/repo-scan.git
git fetch --depth 1 origin 2742664
git checkout --detach FETCH_HEAD
cp -r . ~/.claude/skills/repo-scan

Review the source before installing any agent skill.

Core Capabilities

CapabilityDescription
Cross-stack scanningC/C++, Java/Android, iOS (OC/Swift), Web (TS/JS/Vue) in one pass
File classificationEvery file tagged as project code, third-party, or build artifact
Library detection50+ known libraries (FFmpeg, Boost, OpenSSL…) with version extraction
Four-level verdictsCore Asset / Extract & Merge / Rebuild / Deprecate
HTML reportsInteractive dark-theme pages with drill-down navigation
Monorepo supportHierarchical scanning with summary + sub-project reports

Analysis Depth Levels

LevelFiles ReadUse Case
fast1-2 per moduleQuick inventory of huge directories
standard2-5 per moduleDefault audit with full dependency + architecture checks
deep5-10 per moduleAdds thread safety, memory management, API consistency
fullAll filesPre-merge comprehensive review

How It Works

  1. Classify the repo surface: enumerate files, then tag each as project code, embedded third-party code, or build artifact.
  2. Detect embedded libraries: inspect directory names, headers, license files, and version markers to identify bundled dependencies and likely versions.
  3. Score each module: group files by module or subsystem, then assign one of the four verdicts based on ownership, duplication, and maintenance cost.
  4. Highlight structural risks: call out dead-weight artifacts, duplicated wrappers, outdated vendored code, and modules that should be extracted, rebuilt, or deprecated.
  5. Produce the report: return a concise summary plus the interactive HTML output with per-module drill-down so the audit can be reviewed asynchronously.

Examples

On a 50,000-file C++ monorepo:

  • Found FFmpeg 2.x (2015 vintage) still in production
  • Discovered the same SDK wrapper duplicated 3 times
  • Identified 636 MB of committed Debug/ipch/obj build artifacts
  • Classified: 3 MB project code vs 596 MB third-party

Best Practices

  • Start with standard depth for first-time audits
  • Use fast for monorepos with 100+ modules to get a quick inventory
  • Run deep incrementally on modules flagged for refactoring
  • Review the cross-module analysis for duplicate detection across sub-projects

Links