agentsclimarketplace

Repo scan

Skill mturac/everything-openai-codex/docs/zh-CN/skills/repo-scan

跨栈源代码资产审计——对每个文件进行分类,检测嵌入的第三方库,并为每个模块提供可操作的四级判定结果,附带交互式HTML报告。From its SKILL.md

Install
npx -y skills add mturac/everything-openai-codex --skill repo-scan

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

SKILL.md

3.2 KB, ~1.2k tokens by cl100k_base, as published. Nobody here has run it

repo-scan

每个生态系统都有自己的依赖管理器,但没有工具能跨 C++、Android、iOS 和 Web 告诉你:有多少代码真正属于你,哪些是第三方代码,哪些是冗余负担。

适用场景

  • 接手大型遗留代码库,需要了解整体结构
  • 重大重构前——识别核心代码、重复代码和废弃代码
  • 审计直接嵌入源码(而非通过包管理器声明)的第三方依赖
  • 为单体仓库重组准备架构决策记录

安装

# Fetch only the pinned commit for reproducibility
mkdir -p ~/.codex/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 . ~/.codex/skills/repo-scan

安装任何代理技能前,请先审查源码。

核心能力

能力描述
跨技术栈扫描一次扫描 C/C++、Java/Android、iOS(OC/Swift)、Web(TS/JS/Vue)
文件分类每个文件标记为项目代码、第三方代码或构建产物
库检测识别 50+ 已知库(FFmpeg、Boost、OpenSSL…)并提取版本号
四级判定核心资产 / 提取合并 / 重建 / 废弃
HTML 报告交互式深色主题页面,支持逐层下钻导航
单体仓库支持分层扫描,提供摘要 + 子项目报告

分析深度级别

级别读取文件数适用场景
fast每模块 1-2 个快速盘点大型目录
standard每模块 2-5 个默认审计,含完整依赖 + 架构检查
deep每模块 5-10 个增加线程安全、内存管理、API 一致性检查
full所有文件合并前全面审查

工作原理

  1. 分类仓库表面:枚举文件,将每个文件标记为项目代码、嵌入的第三方代码或构建产物。
  2. 检测嵌入的库:检查目录名、头文件、许可证文件和版本标记,识别捆绑的依赖及其可能版本。
  3. 为每个模块评分:按模块或子系统分组文件,根据所有权、重复度和维护成本分配四种判定之一。
  4. 突出结构风险:指出冗余产物、重复的封装器、过时的供应商代码,以及应提取、重建或废弃的模块。
  5. 生成报告:返回简洁摘要及交互式 HTML 输出,支持按模块下钻,便于异步审查审计结果。

示例

在一个 50,000 文件的 C++ 单体仓库中:

  • 发现仍在使用 FFmpeg 2.x(2015 年版本)
  • 发现同一 SDK 封装器重复了 3 次
  • 识别出 636 MB 已提交的 Debug/ipch/obj 构建产物
  • 分类结果:3 MB 项目代码 vs 596 MB 第三方代码

最佳实践

  • 首次审计时从 standard 深度开始
  • 对包含 100+ 模块的单体仓库使用 fast 快速盘点
  • 对标记为需重构的模块增量运行 deep
  • 审查跨模块分析结果,检测子项目间的重复代码

链接

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.