uniapp-analyzer-script

脚本版 (PowerShell) - 精确统计离线分析,依赖 skill-seekers

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "uniapp-analyzer-script" with this command: npx skills add include5943/uniapp-analyzer-script

uniapp-analyzer-script | uni-app/Vue 项目分析器 (脚本版)

PowerShell 脚本驱动,精确统计分析,依赖 skill-seekers

专为 uni-app 和 Vue 项目打造的智能代码分析工具。5 分钟生成项目体检报告,量化技术债务,发现代码隐患,让项目架构一目了然。

核心能力

  • 📊 技术债务评分 - 0-100 分量化代码健康度,A-F 等级评定
  • 🔍 代码隐患扫描 - 自动发现大文件、低注释、旧语法、复杂函数
  • 🏗️ 架构可视化 - 识别设计模式(Module/Observer/Factory/Strategy),梳理模块关系
  • 📋 项目元信息提取 - 解析 manifest/pages.json(uni-app)或 package.json/router(Vue)
  • 📝 生成体检报告 - 人类可读的 report.md + AI 可用的 SKILL.md

何时使用此 Skill

当用户需要以下帮助时触发此 skill:

  • "分析这个项目"
  • "分析 uni-app 项目"
  • "分析 Vue 项目"
  • "帮我理解这个项目的结构"
  • "生成项目文档"
  • "分析代码架构"
  • "查看项目依赖关系"
  • "检查代码质量"
  • "评估技术债务"
  • "项目体检"
  • "代码审查"
  • "重构建议"

核心功能

1. 智能项目检测

自动识别项目类型(uni-app / Vue),无需手动指定。

检测依据:

  • uni-app: manifest.json、pages.json、uni.scss、appid 等特征
  • Vue: vue.config.js、vite.config.js、package.json 中的 vue 依赖、.vue 文件等

2. 精准排除规则

基于项目类型自动应用最佳排除配置,避免分析非核心文件。

排除内容:

  • 依赖目录:node_modules、uni_modules、vendor
  • 构建产物:dist、build、unpackage、.output
  • 测试文件:.test.js、.spec.js、test/、tests/
  • 日志文件:*.log、logs/
  • 锁文件:package-lock.json、yarn.lock
  • 临时文件:*.tmp、.cache、temp/
  • 配置文件:.env、tsconfig.json(保留核心代码)

3. 预览模式

分析前先预览将要处理的文件列表,确认无误后再执行。

4. 结构化输出

生成完整的分析报告:

  • SKILL.md: 项目技能文档,包含架构概览和使用指南
  • code_analysis.json: 详细的代码分析数据
  • code_quality.json: 代码质量评分与技术债务分析
  • references/: API 文档、依赖关系、配置模式等参考文档
  • report.md: AI 解读报告(需 AI 生成)

代码质量分析

自动分析以下指标:

指标说明阈值
技术债务评分综合评分 0-100 分≥80 优秀,<60 需改进
文件大小检测标记超大文件>500 行警告,>1000 行严重
函数长度检测标记超长函数>100 行警告
注释覆盖率注释行占比<5% 警告,<1% 严重
变量声明分析var/let/const 分布var >20% 建议改进
条件编译复杂度#ifdef 等指令统计过多时建议重构
设计模式识别Module/Observer/Factory/Strategy识别项目架构风格

使用方法

Windows (PowerShell)

# 分析当前目录项目(自动检测类型)
.\analyze-project.ps1

# 分析指定路径项目
.\analyze-project.ps1 -ProjectPath "D:\my-uniapp-project"

# 指定项目类型(跳过自动检测)
.\analyze-project.ps1 -ProjectPath "D:\project" -ProjectType uniapp

# 先预览将要分析的文件
.\analyze-project.ps1 -ProjectPath "D:\project" -Preview

# 跳过确认提示
.\analyze-project.ps1 -ProjectPath "D:\project" -SkipConfirm

# 启用深度分析(解析 manifest.json、pages.json 等配置)
.\analyze-project.ps1 -ProjectPath "D:\project" -DeepAnalysis

# 查看帮助
.\analyze-project.ps1 -Help

Linux/macOS (Bash)

# 分析当前目录项目(自动检测类型)
./analyze-project.sh

# 分析指定路径项目
./analyze-project.sh -p /path/to/my-uniapp-project

# 指定项目类型(跳过自动检测)
./analyze-project.sh -p /path/to/project -t uniapp

# 先预览将要分析的文件
./analyze-project.sh -p /path/to/project --preview

# 跳过确认提示
./analyze-project.sh -p /path/to/project -y

# 启用深度分析
./analyze-project.sh -p /path/to/project -d

# 查看帮助
./analyze-project.sh -h

工作流程

1. 项目检测 → 2. 配置加载 → 3. 预览确认 → 4. 执行分析 → 5. 生成报告

详细流程

  1. 项目类型检测

    • 扫描关键文件(manifest.json、package.json 等)
    • 根据特征匹配确定项目类型
    • 无法检测时默认使用 Vue 配置
  2. 配置加载

    • 加载基础排除配置(base.json)
    • 加载项目类型专属配置(uniapp.json / vue.json)
    • 合并自定义配置(如有)
  3. 预览确认(可选)

    • 显示将要分析的文件统计
    • 显示文件类型分布
    • 列出部分文件示例
    • 用户确认后继续
  4. 执行分析

    • 复制项目文件到临时目录(应用排除规则)
    • 调用 skill-seekers 进行深度分析
    • 生成 SKILL.md 和 code_analysis.json
  5. 生成报告

    • 输出目录结构
    • 显示生成的文件列表
    • 创建 report.md 占位符,等待 AI 解读

AI 解读要求

分析完成后,AI 需要:

  1. 读取 SKILL.mdcode_analysis.json
  2. 如果启用了深度分析,同时读取 project_metadata.json
  3. 生成适合人类阅读的项目分析报告
  4. 将报告内容写入 report.md

报告应包含:项目概览、核心模块分析、代码质量评估、架构特点、改进建议。

深度分析(-DeepAnalysis)

启用深度分析后,工具会额外解析项目配置文件:

uni-app 项目:

  • manifest.json: 应用名称、AppID、版本、权限、原生插件、广告 SDK
  • pages.json: 页面路由、TabBar 配置、全局样式

Vue 项目:

  • package.json: 项目名、版本、依赖列表、Vue 版本
  • router/index.js: 路由配置、页面列表
  • vite.config.js: Vite 插件、构建配置
  • UI 框架检测: Element UI/Plus、Ant Design Vue、Vuetify、Vant 等
  • 状态管理检测: Vuex、Pinia

这些信息会保存到 project_metadata.json,帮助 AI 生成更全面的报告。

配置文件

基础配置 (config/base.json)

通用排除规则,适用于所有项目类型:

  • 排除目录:node_modules、.git、dist、build、logs 等
  • 排除文件:*.log、package-lock.json、.env 等
  • 文件大小限制:最大 1MB
  • 文件类型白名单:代码文件和文档

uni-app 配置 (config/uniapp.json)

uni-app 项目专属规则:

  • 排除:uni_modules、unpackage、nativeplugins
  • 排除:各平台组件目录(wxcomponents、mycomponents 等)
  • 识别:pages/、components/、mixins/、utils/、api/

Vue 配置 (config/vue.json)

Vue 项目专属规则:

  • 排除:public/、assets/、tests/、cypress/、.nuxt/
  • 排除:配置文件(vue.config.js、vite.config.ts 等)
  • 识别:views/、components/、composables/、stores/、router/

最佳实践

1. 分析前预览

首次分析新项目时,建议先使用 -Preview 参数查看将要分析的文件,确保排除规则正确。

2. 自定义排除规则

如需添加自定义排除规则,可创建配置文件:

{
  "exclude": {
    "directories": ["my-custom-dir"],
    "files": ["custom.log"],
    "patterns": ["**/temp/**"]
  }
}

然后使用 -CustomConfig 参数加载。

3. 处理大型项目

对于文件数量超过 1000 的大型项目:

  • 考虑调整 max_files 配置
  • 或分模块多次分析

4. 查看分析报告

分析完成后,重点查看以下文件:

  • SKILL.md: 项目整体概览,适合快速了解项目
  • references/api_reference/: API 文档,了解代码接口
  • references/dependencies/: 依赖关系图
  • references/architecture/: 架构分析

依赖要求

必需依赖

  • PowerShell 5.0+
  • skill-seekers: 核心分析引擎

安装 skill-seekers

如果系统未安装 skill-seekers,脚本会自动提示并尝试安装:

# 手动安装
pip install skill-seekers

# 或使用特定 Python 版本
python -m pip install skill-seekers
py -3 -m pip install skill-seekers

自动安装

运行脚本时如果检测到 skill-seekers 未安装,会提示是否自动安装。选择 y 后脚本会尝试使用上述命令自动安装。

用户配置

配置文件位置

用户配置保存在:~/.workbuddy/skills/uniapp-vue-analyzer/user-config.json

自定义文件大小限制

默认文件大小限制为 1MB,可以通过以下方式自定义:

# 临时调整(仅本次运行)
.\analyze-project.ps1 -ProjectPath "D:\project" -MaxFileSize 5

# 调整并保存为默认值
.\analyze-project.ps1 -ProjectPath "D:\project" -MaxFileSize 5 -SaveConfig

# 查看当前使用的限制
# 运行时会显示:"Using user-defined file size limit: 5 MB"

手动编辑配置

直接编辑配置文件:

{
  "max_file_size": 5242880,
  "max_file_size_mb": 5,
  "saved_at": "2026-04-11 17:00:00"
}

故障排除

问题:无法检测项目类型

解决: 手动指定 -ProjectType 参数

问题:排除了不该排除的文件

解决: 使用 -Preview 查看排除效果,调整配置文件

问题:分析的文件太多/太少

解决:

  • 检查配置文件中的 max_file_size 设置
  • 检查 include_extensions 白名单
  • 使用 -Preview 查看实际处理的文件

问题:skill-seekers 安装失败

解决:

  1. 确保已安装 Python 3.7+
  2. 尝试手动安装: pip install skill-seekers
  3. 检查 pip 是否可用: pip --version
  4. 如果使用虚拟环境,确保已激活

技术细节

依赖工具

  • skill-seekers: 核心分析引擎
  • PowerShell: 脚本执行环境

项目结构

uniapp-vue-analyzer/
├── SKILL.md                      # 本文件
├── analyze-project.ps1           # 主分析脚本 (Windows)
├── analyze-project.sh            # 主分析脚本 (Linux/macOS)
├── _skillhub_meta.json           # SkillHub 元数据
├── config/
│   ├── base.json                # 基础排除配置
│   ├── uniapp.json              # uni-app 专属配置
│   └── vue.json                 # Vue 专属配置
├── scripts/
│   └── code-quality-analyzer.ps1  # 代码质量分析模块
├── references/
│   └── api_reference.md          # API 参考文档
└── assets/
    └── example_asset.txt         # 示例资源

输出结构

analysis-output/
└── {project-name}/
    ├── SKILL.md               # 项目技能文档(AI 使用)
    ├── code_analysis.json     # 代码分析数据
    ├── report.md              # AI 解读报告(人类阅读)
    ├── project_metadata.json  # 项目元数据(深度分析时生成)
    └── references/
        ├── api_reference/     # API 文档
        ├── dependencies/      # 依赖关系
        ├── architecture/      # 架构分析
        └── ...

提示: 此 skill 是分析项目的第一步,生成的 SKILL.md 可以被加载为技能,帮助 AI 更好地理解和使用项目代码。

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

Huo15 Openclaw Enhance

火一五·克劳德·龙虾增强插件 v5.7.8 — 全面适配 openclaw 2026.4.24:peerDep ^4.24 + build/compat 同步到 4.24 + 14 处 api.on 全部去掉 as any 改成 typed hook(hookName 联合类型 + handler 自动推断 Pl...

Registry SourceRecently Updated
General

Content Trend Analyzer

Aggregates and analyzes content trends across platforms to identify hot topics, user intent, content gaps, and generates data-driven article outlines.

Registry SourceRecently Updated
General

Prompt Debugger

Debug prompts that produce unexpected AI outputs — diagnose failure modes, identify ambiguity and conflicting instructions, test variations, compare model re...

Registry SourceRecently Updated
General

Indie Maker News

独行者 Daily - 变现雷达。读对一条新闻,少走一年弯路。每天5分钟,给创业者装上商业雷达。聚焦一人公司、副业、创业变现资讯,智能分类,行动导向。用户下载即能用,无需本地部署!

Registry SourceRecently Updated